I searched for a lot. Previous answers on the bitcoin stack exchange did not answer my question.
Well, According to my research, Any node can collect a set up unconfirmed transactions into a block and broadcast to the rest of the network as a suggestion for what the next block in the chain should be, by solving the cryptographic hash by random guesses. Moreover, the hash function creates something like a 32byte number might be using SHA256. So, I want to know who creates random numbers? and how nodes do guessing?
Please let me know if my concept is wrong. I will appreciate your guidance. Thanks