Author

Topic: Theory of bitcoin - Suggestions - MOOC / books / etc? (Read 1360 times)

sr. member
Activity: 362
Merit: 262
Try to understand how Bitcoin solves the byzantine general's problem because it is crucial to understanding how Bitcoin works.

In this old thread on the cryptography mailing lists, Satoshi himself describes how nodes in the Bitcoin network come to consensuses: http://www.mail-archive.com/[email protected]/msg09997.html

Great read that.  Thanks.
newbie
Activity: 8
Merit: 0
Try to understand how Bitcoin solves the byzantine general's problem because it is crucial to understanding how Bitcoin works.

In this old thread on the cryptography mailing lists, Satoshi himself describes how nodes in the Bitcoin network come to consensuses: http://www.mail-archive.com/[email protected]/msg09997.html
sr. member
Activity: 362
Merit: 262
Knowing Bitcoin and ECC is not the same.
I know Bitcoin, and implemented it in .NET, but I don't know how ECC works.

If you are interested in Bitcoin then look a my articles : (Yes, I explain and code the crytpo without having to understand the math behind it)

http://www.codeproject.com/Articles/768412/NBitcoin-The-most-complete-Bitcoin-port-Part-Crypt
http://www.codeproject.com/Articles/775226/NBitcoin-Cryptography-Part
http://www.codeproject.com/Articles/784519/NBitcoin-How-to-scan-the-Blockchain

Thanks I think you are right.  I'm leaning to understand the math also.
hero member
Activity: 714
Merit: 662
Knowing Bitcoin and ECC is not the same.
I know Bitcoin, and implemented it in .NET, but I don't know how ECC works.

If you are interested in Bitcoin then look a my articles : (Yes, I explain and code the crytpo without having to understand the math behind it)

http://www.codeproject.com/Articles/768412/NBitcoin-The-most-complete-Bitcoin-port-Part-Crypt
http://www.codeproject.com/Articles/775226/NBitcoin-Cryptography-Part
http://www.codeproject.com/Articles/784519/NBitcoin-How-to-scan-the-Blockchain
sr. member
Activity: 362
Merit: 262
Try this, it's excellent:
http://arstechnica.com/security/2013/10/a-relatively-easy-to-understand-primer-on-elliptic-curve-cryptography/

After you digest it thoroughly, it depends where you want to go. If you are interested in programming implementations of those algorithms there are some excellent blogs.

Thanks, I've read that, but think I need a better build up to really understand it.
sr. member
Activity: 362
Merit: 262
I am looking at this MOOC but not sure if this will be worthwhile?
https://www.coursera.org/course/crypto

Any other suggestions?
This course is talking about public key encryption/decryption, e.g. RSA, and how that's used to share a secret key. This and the public key signing algorithm (ECDSA - for signing only, not encryption/decryption) are quite different technologies (although you'd probably find both interesting).
I'd look for some sort of introduction to elliptic curve cryptography.
I've started it as it seems a bit more general (plus I'm starting late, so I thought the sooner I start the sooner I can catch up).  I guess I'm letting go my initial requirement of focussed on bitcoin only.
Quote
Cryptography is an indispensable tool for protecting information in computer systems. This course explains the inner workings of cryptographic primitives and how to correctly use them. Students will learn how to reason about the security of cryptographic constructions and how to apply this knowledge to real-world applications. The course begins with a detailed discussion of how two parties who have a shared secret key can communicate securely when a powerful adversary eavesdrops and tampers with traffic. We will examine many deployed protocols and analyze mistakes in existing systems. The second half of the course discusses public-key techniques that let two or more parties generate a shared secret key. We will cover the relevant number theory and discuss public-key encryption, digital signatures, and authentication protocols. Towards the end of the course we will cover more advanced topics such as zero-knowledge, privacy mechanisms, and other forms of encryption. Throughout the course students will be exposed to many exciting open problems in the field.

The the follow-up course also cover ECC.  
https://www.coursera.org/course/crypto2
Quote
Cryptography is an indispensable tool for protecting information in computer systems.  This course is a continuation of Crypto I and explains the inner workings of public-key systems and cryptographic protocols.   Students will learn how to reason about the security of cryptographic constructions and how to apply this knowledge to real-world applications. The course begins with constructions for digital signatures and their applications.   We will then discuss protocols for user authentication and zero-knowledge protocols.    Next we will turn to privacy applications of cryptography supporting anonymous credentials and private database lookup.  We will conclude with more advanced topics including multi-party computation and elliptic curve cryptography.  Throughout the course students will be exposed to many exciting open problems in the field.   The course will include written homeworks and optional programming labs.  The material is self-contained, but the course assumes knowledge of the topics covered in Crypto I as well as a basic understanding of discrete probability theory.
legendary
Activity: 1974
Merit: 1077
^ Will code for Bitcoins
I'm really interested in understanding more about the underlying cryptography and theory of elyptic curve crypto.  And basically all the theoretical underpinnings of bitcoin.  I don't really have time to go much broader than bitcoin stuff and I suspect this is already too broad.

Any suggestion on where to start?

I did third year maths at uni.  But haven't really focussed on much on that in my career to date. I do program a bit but nothing too formal.

I am looking at this MOOC but not sure if this will be worthwhile?
https://www.coursera.org/course/crypto

Any other suggestions?

Thanks

Try this, it's excellent:
http://arstechnica.com/security/2013/10/a-relatively-easy-to-understand-primer-on-elliptic-curve-cryptography/

After you digest it thoroughly, it depends where you want to go. If you are interested in programming implementations of those algorithms there are some excellent blogs.
sr. member
Activity: 250
Merit: 253
I am looking at this MOOC but not sure if this will be worthwhile?
https://www.coursera.org/course/crypto

Any other suggestions?
This course is talking about public key encryption/decryption, e.g. RSA, and how that's used to share a secret key. This and the public key signing algorithm (ECDSA - for signing only, not encryption/decryption) are quite different technologies (although you'd probably find both interesting).
I'd look for some sort of introduction to elliptic curve cryptography.
sr. member
Activity: 362
Merit: 262

I'm really interested in understanding more about the underlying cryptography and theory of elyptic curve crypto.  And basically all the theoretical underpinnings of bitcoin.  I don't really have time to go much broader than bitcoin stuff and I suspect this is already too broad.

Any suggestion on where to start?

I did third year maths at uni.  But haven't really focussed on much on that in my career to date. I do program a bit but nothing too formal.

I am looking at this MOOC but not sure if this will be worthwhile?
https://www.coursera.org/course/crypto

Any other suggestions?

Thanks
Jump to: