This question already has an answer here:

What computational questions are solved by bitcoin miners and what is the computational complexity of one instance of this question. Essentially, how would someone program an application for bitcoin mining.

marked as duplicate by dchapes, Salvador Dali, cdecker, Murch, Dr.Haribo Dec 7 '13 at 12:10

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

  • I want even more low level details which would give me enough information to make a bitcoin miner of my own – user2472071 Dec 1 '13 at 3:40

If you want a bitcoin miner of your own, don't reinvent the wheel and instead use efficient software. You're wasting your time if you aren't mining with ASICs anyways.

I like to think of mining Bitcoins as a way of bruteforcing SHA-256. Basically the difficulty of the Bitcoin network determines how long it should take the total computing power of the entire Bitcoin network to brute force or 'guess' the input to a SHA-256 function. By making the input sufficiently complex, the Bitcoin network can control how often new blocks are awarded. This concept decentralizes the currencies by enforcing a proof of work system. It comes down to the math behind computing algorithms and time.

Not the answer you're looking for? Browse other questions tagged or ask your own question.