Each Friday I will post the results of my reading challenge and in my pilot article I described reasons why I took on this task.
Start is 6th of November 2022 - end is 31st.Dec.2022.
I have no specific strategy, chosen white papers are in no particular order reviewed here. In no way is this opinion an expert analysis. I am just reader and my final results, viewpoints are just that: my own understanding during a learning process.
Hope to learn something and maybe improve my own writing skills during this challenge. I usually read English/American literature, sometime French short stories and in most cases I read in my native language because is easier and that really is my bedtime routine. But, in time I found out this new passion for blockchain and so I must make better understanding and learn about ti every day. So, dedicate 1-2 hours per day for this are and my favourite place is the Binance Academy, their learning programs are amazing to say the least. Coursera is a second place as it has more general trainings.
Concerning the Whitepaper I read this week, it is chosen randomly and is called: Zerocoin: An Anonymous Distributed E-cash from Bitcoin).
I will not even pretend I understood the mathematical stuff in there, but hey trust me I read it and searched on Google some of the terms. My education is in the Translation Studies field, language and literature so math at that level is some kind of extraterrestrial language that I tried to read. And to think that math really is the universal language. Or was it love?
Starting with my favourite part (because I could understand it almost fully): Introduction. I like how is written and committed to go through it throughly, because how else can I continue with the rest if the Intro is not clear to me.
Indeed it has excellent grammar and for me an ample source of knowledge. The first thing I noticed is the clarity and promptness of all sentences, no unnecessary words and nothing is put to just add volume to the topic. They just flow naturally and are easy to follow.
It clarifies the scope and what problem this project tries to solve. I admire that from first page they are honest in admitting they are not the first to propose e-cash techniques for solving the privacy issues that Bitcoin has. Although many issues can be addressed to the privacy problem, the Zerocoin proposes to remove e-cash protocols that rely solely on the trusted currency issuer, the party who creates coins using a blind signature strategy. They will solve it by appointing that party though a different model that eliminates the connection between mint and spend, so the current transition cannot be linked to a preceding transaction.
To better understand this concept they give a pencil and paper as example to explain the logic and mathematical formulations behind the impossibility to retrieve a link or identify the person/user/transaction of o minted coin to its previous transactions. The distributed digital backing currency that Bitcoin provides to run this strategy or model throughout the network is critical and necessary. In practice there are few problems identified and the one that Zerocash wants to solve is described further on, following page 3.
In what concerns the mathematical formulas and concepts detailed following the definition of what decentralised E-cash Scheme consists of, I will just not comment because from there I could barely understand the basic terms. Is not for an average reader like me, so I just read it but could not possibly imagine or explain what it means. It does seem trustworthy and right:). It addressed security, correctness during the process of minting or minting algorithm with all terms and steps defined further on page 5.
I appreciate the explanations in human language following all these formulas, so the authors are indeed admirable.
Next chapter offers an actual example of the above defined model. The context is created as proposed in the strategy also known as instantiation. The concrete decentralised e-cash scheme is described using the algorithms that will be described as: Setup - Mint - Spend - Verify - Accumulate. The accumulator trapdoor can either be destroyed after all other parameters are generated by the procedures (as it does not follow in the order after the Setup) or its parameters without a trapdoor could be made with another technique called RSA UFOs.
Next, a security analysis id demonstrated by two theorems described more in depth and also briefly at Appendix A.
Following next page 6, integration with Bitcoin gives us a good overview and example of how minting and securing the zero coin process is taking place. As soon as the minting transaction is approved into the blockcahin, the Zerocoin is basically being secured so that it can only be accessed via a spend event, so is positioned into escrow. If all conditions are met in next steps, the transaction will be accepted by the network as valid and a certain amount of bitcoins can be redeemed. An optimisation at the computing of accumulator is done when the witness is computed from the previous checkpoint during the mint phase.
Because it is possible to integrate into the existing bitcoin script operations that expand more the network and possibilities, the strategy next presented is to add a new instruction called ZERO-COIN_MINT. The next script will send transaction to the nodes that must validate the created coin, spending, verifier and accumulator steps will validate the transaction as described in more detail at page 7. All transactions must be signed as a prevention of attack.
Proof of verification suggestions is next discussed, followed by addressed issues of anonymity and security. The suggested approach and optimisations that are brought forward in these whitepaper are Cleary described and exemplified with simple scenarios at each case, So, there is no place for misinterpretations. The proposed solution was t make the spend transaction just after the coin is minted, with a checkpoint that will probably reduce anonymity at a greater cost of the secured transactions. So, there is a risk that data will be leaked (when the coin was minted) but the attacker cannot link any zerocoins to their mint transactions, because it would be a compromised wallet. Next, on points C and D, page 8 the code changes and incremental deployment are described.
The verification part of the paper explains all steps during the practical stage, on an Intel Xeon E3-1270 V2 with 16GB of RAM, running a 64-bit Ubuntu Server 11.04, Linux kernel 2.6.38. Experiments were done on a single thread of the processor with all 3 parameters, performed 500 times and using their average at the results phase.
In the end, conclusions and findings are presented with a good overview of all the limitations of this work and suggestions for further research.
Acknowledgements are being given to the authors and the anonymous contributors, reviewers.
All in all, reading this white paper was for me a good experience and although I had a hard time reading and translating it from English to English, I had a lot to learn.
It was an opportunity and time well spent.
Here I include a table with my progress and what new words/phrases I learnt:

See you next week, with next whitepaper.
