I was REALLY stoked about cryptoeconics.study when it first came out, and then even more stoked when I found out that they got a grant from the Ethereum Grants Foundation to build out the project. Since then, activity seems to be dwindling rather than increasing
I’m so glad that you’ve been excited and following CES! It means a lot that you care enough about the project to be worried about the apparent lack of activity. I’m sad that you’re worried, but please rest assured we are working hard to make this real. The past few months have been hectic but we will have a community call after everyone is back from the holidays to catch up in person.
Here’s a little status update:
- I’m currently working on chapter 3 in the lecture series.
- Jing is working hard on the book – she just released https://medium.com/crypto-economics/introduction-to-cryptography-part-1-646893e87d5d and will be releasing parts 2 and 3 over the next few days. A large portion of the book is complete, but ahead lies the daunting task of formatting 120 pages of diagrams and writing into markdown.
Beyond posting to the forum, how can people get involved and help out?
The biggest thing that can help me right now is helping me with slide creation! Would you be interested?
I could certainly use a proofreader/ fact checker
@karl I’m down, but I have minimal experience with slides/animation. Is there an easy way I can try it out to see if it’s something I’d actually be able to help on?
@Jinglan Absolutely! I love reading and doing research. The more the merrier
Would you be down to jump on an extra call before the community call on Jan 3rd? You me and Jing can all coordinate. Actually @burrrata are you free right now?
Ok sorry I just logged in to my normal forum account
I have some things posted here, but I mainly need help with this lengthy Cryptography Primitives chapter I’m working on currently. I want to be sure my explanation of the cryptonote bug is understandable, because so far people have been getting lost. The first part of it is on the medium, but part 2 and 3 need more finessing.
However, if you find anything wrong with any of the blog posts on the cryptoeconomics.study medium, please let me know.
Yeah for sure. What’s the best way to do that?
YES! I’m actually (slowly) working on a Rust book to explain all the crypto primitives in Grin, but it’s much more nebulous that I intended. That being said, a lot of the core building blocks are the same across various blockchains so this would be a great way to explore and refine those concepts further. Would it be better to start a new thread in the forum for feedback and ideas so that the community can weigh in on it too, or is there another process you guys are using as you build stuff?
Anyways, started reading through the crypto tutorial by @jinglebells. I really liked the idea of explaining the basic cryptography that goes into cryptoeconomic protocols, but one thing that frustrated me is that the example of mixing colors doesn’t correlate at all to the actual implementation of pub/priv key crypto and it’s nearly impossible to code. I also kept trying to come up with a fun, ~believable, and practical story to expand on the colors metaphor, but they all broke because when you mix colors they all become brown. Rather than just complaining about a problem, I thought I’d try to prototype ideas and options.
One idea was to build a Crytpoeconomics Cookbook. It could have ingredients (crypto/economics basics), recipes (protocols), and meals (blockchains, plasma, etc…). Then things like the 3 part crypto series could be like a 3 part tasting menu with links to more in depth resources if people are still hungry. You could then do more tasting menus for various aspects like crypto, blockchain basics, economics/incentives, attacks, etc…
That was cute, but… as I started brainstorming stories to explain crypto concepts practical yet human relatable way, it quickly became obvious that there would need to be a cat and mouse game between Alice/Bob and Eve in order for there to be any justification as to why these things are important. Over the past 24hrs this has slowly morphed from a friendly family cookbook into Crypto Wars, which I’ll admit is a tad off-brand from the current cryptoeconomics.study gerbils, but I think it’s pretty cool non the less.
Anyways, I’m in the process of cleaning up the spaghetti code and thinking through if there’s better ways to explain these concepts (both in story lines and code). Not sure if any of this is helpful, but any and all feedback would be warmly welcome
Also, as I’m brainstorming code examples and story lines it would be great to be aware of all the concepts we want to include. @jinglebells do you have a framework or outline for the 3 part crypto series and the specific crypto concepts you wanted to include and why, particularly the attacks section?
Also, the GitBook for the Cryptoeconomics.Study Course seems like it would make a great Rust book. @karl Besides the overview, is there a draft/skeleton of the material/narrative used to build the lecture videos that could be used to build a companion book with words and code that follows the videos?
- edit: just saw that the website got updated! Yay
Hi everyone, Austin here. I’m down to help proofread/fact check. I like math - I can help with putting pointers to more math-y explanations to those so inclined. Something really useful would be math explainers in diagrams (like proofs without words). Btw, I need to do a reading class on blockchain stuff for CS undergrads next quarter so I probably need to do some of this stuff on my own anyway. Let me know how I can help!
A picture says a thousand words Do you have some examples of what that might look like, either applied to blockchain/cryptoeconomics stuff or just really good examples you’ve found applied to other stuff?
Only somewhat related to blockchains but perhaps Lagrange’s theorem?: https://math.stackexchange.com/questions/336812/understanding-lagranges-theorem-group-theory
I was thinking of drawing a pie (and group elements on its slices), but the hockey table diagram is also good.
I’m trying to get through some zero-knowledge stuff and diagrams for that help too (Turing machines/complexity classes/diagrams of the entire interactive proof sequence, etc. - will doodle more after I get through it)
Cool! Anything that helps to clarify ideas and provide another avenue to think about and explore them is great
Right now I’m working on understanding and creating intuitive tutorials for a lot of the basic stuff, but hopefully relatively soon I’ll be past that and working on more interesting mechanisms like ZK stuff! Curious, do you code too (and if so do you have a preferred language? - mine’s Rust), or is your interest mainly understanding things from a conceptual standpoint?
The first part has an outline for the second and third parts. Second part is digital signatures, which will have implementations that are heavily commented. Third part is on the cofactor bug in monero, but if you have other cool bugs you think should be featured, let me know.
Also, the mixing colors example is meant to serve as intuition for how the math works, for a broader audience, not as an implementation guide. However, it might be too confusing to try to appeal to more than one level of audience at once.
Are you referring to this?
Part 1) Cryptography 101
Part 2) Digital Signatures
Part 3) Attacks
In this post, we’re going to go over some foundational concepts in cryptography, get a taste of number theory and group theory by going through how public key cryptography works.
In part 2, we’ll look through a thoroughly commented implementation of digital signatures so those who don’t code can follow along as well. We’ll also examine other common signature types used in cryptocurrencies.
In part 3, we will hammer home the lesson of “don’t roll your own crypto,” by examining some fantastically obscure and potentially devastating real-life cryptography bugs by using the tools we learned in part 1 and 2.
If so I’m asking if there’s something more specific like the overview for the book, but for this 3 part crypto series. The reason this is important is that creating meaningful examples/metaphors/stories for crypto really requires context, esp if it’s following a story arc and going to be extended with code examples. I’ve already started brainstorming for attacks here and improved defenses (also including digital signatures) here in Crypto Wars.
- SUPER confused rn. I was looking through the cryptoeconomics.study GitHub for code to build a Rust version of the video tutorials and… found this. Literally all the stuff for the 3 part crypto tutorials, already written! Why does the Medium post say to stay tuned when these are already done? Also, why didn’t you guys share this sooner if you wanted feedback?
I understand that it’s purpose is to serve as intuition, but that intuition breaks down quickly as soon as anyone actually starts to think about it. Colors all turn brown, but modulo operations create a infinite field of possibilities. For anyone who legitimately curious and interested in learning this stuff that’s going to be frustrating af. It’s important to have a single solid example that is grounded in truth and can be extended naturally into a believable system. Otherwise the reader learns one thing, but then has to context switch to the real thing that’s actually totally different. That creates cognitive friction, and you can’t continue the learning process with code, links to other tutorials/resources, or production ready libraries
Literally all the stuff for the 3 part crypto tutorials, already written! Why does the Medium post say to stay tuned when these are already done? Also, why didn’t you guys share this sooner if you wanted feedback?
Because I only just posted it yesterday! (look at the commit time), and wanted to wait til after the holidays to pester people for feedback. Also, it has to be posted before people can give it feedback
I understand that it’s purpose is to serve as intuition, but that intuition breaks down quickly as soon as anyone actually starts to think about it.
It’s one of the most commonly used examples to explain key exchange to noobs, and it was helpful for me personally as a noob. However, you’re not the first person to say that it’s confusing so I’m open to replacing it with another example, or removing it entirely and just extrapolating more on the math. Do you have any ideas in mind?
Regarding an example to explain Diffie-Hellman / Public/Private key exchange, I like the idea of using clocks. Everyone knows how clocks work and they’re a natural transition to explain modulo operations. Bonus points because you can use a modulus of 23 and a base of 5 and it works! (just like in the wikipedia article). I storylined and coded an example here: https://burrrata.github.io/crypto_wars/a_new_club.html. Also, there’s an ongoing list of TODOS at the end of the story, so if you have comments/suggestions or ideas that weren’t addressed please let me know!