I'm a math student interested in Cryptography. Is there any paper or book which explains, in mathematics and cryptography terms, how bitcoin (more general, a digital cryptocurrency system) works? In my course book there is only about 4 pages on how cryptocurrencies work, but I'm hungry for more.
www.springer.com catalog is worth checking out - technical and well respected.
Andreas Antonopolous has a book out from O'Reilly (it is also available on github).
https://bitcoin.org/en/resources - check out the Developer Guide here, it's great.
Your school library will probably have loads of journals or access to them online (eg IEEE or local equiv).
Satoshi's original whitepaper is very readable: https://bitcoin.org/bitcoin.pdf
The bitcoin wiki.
There's enough resources online you probably don't need a book.
Here are some suggestions to get you started:
- Mastering Bitcoin: Unlocking Digital Cryptocurrencies by Andreas M. Antonopoulos. It's light on math, but is an excellent overview of all the pieces involved, in case you don't know yet what you want to deep-dive into.
- Guide to Elliptic Curve Cryptography by Hankerson, Darrel; Menezes, Alfred J.; Vanstone, Scott
- Elliptic Curve Cryptography Tutorial
- Elliptic Curve Cryptography: An Implementation Tutorial by Anoop MS
Very little of Bitcoin is new cryptography. Most of the cryptography in Bitcoin has been around for a pretty long time. Some of it is a little obscure, like Hashcash or ECDSA.
Saotshi Nakmoto's original paper is a good resource for how Bitcoin works.
You should also check out the cryptography papers that he references: (there aren't many)
- W. Dai, "b-money," http://www.weidai.com/bmoney.txt, 1998.
- H. Massias, X.S. Avila, and J.-J. Quisquater, "Design of a secure timestamping service with minimal trust requirements," In 20th Symposium on Information Theory in the Benelux, May 1999.
- S. Haber, W.S. Stornetta, "How to time-stamp a digital document," In Journal of Cryptology, vol 3, no 2, pages 99-111, 1991.
- D. Bayer, S. Haber, W.S. Stornetta, "Improving the efficiency and reliability of digital time-stamping," In Sequences II: Methods in Communication, Security and Computer Science, pages 329-334, 1993.
- S. Haber, W.S. Stornetta, "Secure names for bit-strings," In Proceedings of the 4th ACM Conference on Computer and Communications Security, pages 28-35, April 1997.
- A. Back, "Hashcash - a denial of service counter-measure," http://www.hashcash.org/papers/hashcash.pdf, 2002.
- R.C. Merkle, "Protocols for public key cryptosystems," In Proc. 1980 Symposium on Security andPrivacy, IEEE Computer Society, pages 122-133, April 1980.