The zk-STARK is a type of highly secure cryptographic testing that uses Zero Knowledge Testing (ZKP) principles to create encrypted data that can be easily verified without revealing sensitive information about such data, and best of all, with resistance to quantum computing guaranteeing its security in the not so distant future.
Lhe Zero Knowledge (ZKP) tests (or protocols) have evolved greatly since their inception, and one such evolution is the zk-STARKs. The term zk-STARK It is the acronym for Zero-Knowledge Scalable Transparent Arguments of Knowledge. This is a term that in Spanish means; Zero Knowledge Test with Transparent Scalable Arguments. This concept refers to a derivation of the well-known tests ZK-snarks what projects like Zcash they use in their blockchain, to provide a high degree of privacy and anonymity, and which we have previously studied.
However, the zk-STARKs are more than just a small derivation, but are actually a significant improvement on the zk-SNARKs. And this is not only because they are less complex to perform, but because they are more secure, and even resistant to quantum computing. Simply put, they are the immediate future of zero-knowledge testing, especially if we want to be secure in the face of ever-closer quantum computing technology.
But how does a zk-STARKs work? What are its advantages and risks? What blockchain projects are you planning to use in the near future? Well, you will know below.
zk-STARKS, an improvement for something already surprising in itself
As we mentioned at the beginning, zk-STARKs are an improvement on the well-known zk-SNARKs. A necessary improvement due to the enormous algorithmic, mathematical and cryptographic complexity represented by the zk-SNARKs tests. Admittedly, zk-SNARKs are great and very safe tests, but they are very complex at the algorithmic level. So much so, that even crypto specialists have problems detecting errors in them.
The above may sound incredible, but it is the truth, and this was evident when Zcash presented a very serious mistake in your code. The bug in question allowed anyone to create cryptocurrencies from scratch. In this way, what we all believed was impossible in cryptocurrencies, generating coins out of thin air, a small bug in Zcash's zk-SNARK crypto made it possible.
However, to some reassurance for the Zcash developers, the bug was so complex to detect that only a few people in the world would have had the necessary knowledge to detect it and exploit the bug. In a way, they averted the disaster of an avalanche of “fake” coins just because cryptography is so complex that few understand it. But this situation is far from ideal and should be avoided at all costs, because "Security by obscurity" is not real security.
Extreme complexity is the enemy of security
On the other hand, this fact also put the emphasis on a reality: zk-SNARKS could become the worst enemy of privacy coins like Zcash. And it is that, although it is difficult to admit, that a cryptographic security system is so complex to debug, it is not a good thing. Luckily, this is a reality that was already known long before this error, and it was what led to the development of the zk-STARKs.
Below we will talk in more detail about the origin of zk-STARKS and how they can offer us more security, with less complexity.
The beginnings of powerful but simple crypto
To know the beginnings of the zk-STARKs we must go back to the year 1990, the date on which the first work on these tests began. Preliminary research and development of the zk-STARKs technology began at that time. However, these initial systems turned out to be impractical.
It wasn't until Eli Ben Sasson, Iddo bentov, Yinon horesh y Michael Ryabzev, they presented in 2018 their joint work "Scalable, transparent, and post-quantum secure computational integrity" (in Spanish, scalable, transparent and post-quantum secure computational integrity). The work presented is one of a kind, demonstrating a solid crypto construct, far outperforming Zcash's well-known zk-SNARKs tests. And the best of all: they were much easier to apply and more secure than their counterparts.
They would do this with a much more basic approach to how to create a zero knowledge test. More specifically, forgoing the construction of a highly reliable cryptographic workspace or “black box”. What seems contrary to any security principle in crypto, was applied in this new system. But at the same time, said decision reduced the complexity of the system, the work necessary to carry it out, and did not renounce security, but instead enabled new ways to offer greater.
In this way and making use of homomorphic cryptography, secure multiparty computing (MPC) and interactive tests, these researchers managed to design zk-STARK. Simply put, zk-STARK is the union of at least 50 years of crypto research. A work in which minds as brilliant as those of Shafrira Goldwasser y Silvio Micali.
So with this risky approach, zk-STARK would begin its journey to become a worthy rival to zk-SNARK, aimed to be the crypto system that many cryptocurrencies will use in the future, a future that could be dominated by quantum computers.
What does zk-STARK stand for?
The term zk-STARK can be sectioned as follows:
- zk, as in zero knowledge and with great emphasis on preservation of privacy,
- Scalable (S - Scalable), since the test is of a relatively "small" (or acceptable) size, and verification takes exponentially less time than running naive computations (i.e., it is almost instantaneous, even for large tests)
- Transparent (T - Transparent), since there are no requirements for a reliable configuration, as in zk-SNARK systems.
- Argument (AR - ARgument), as in a computationally secure cryptographic test scheme that achieves the integrity and robustness of a specific language.
- Knowledge (K - Knowledge), as it is based on statements related to publicly known information.
Uses of zk-STARK systems
The main use of knowledge testing systems such as zk-STARK, focuses on the creation of highly secure and private systems. Systems where there is a total decentralization of information, and it can only be accessed under a series of clearly expressed conditions. Conditions that are also difficult to reach by unconventional means, such as a hack.
This obviously includes systems such as cryptocurrencies, where the use of crypto not only enables network security, but also protects its users, provides them with privacy and anonymity as the case may be. And it is precisely in the latter where zk-SNARK shine, because like all zero knowledge tests, they are perfect for privacy and anonymity by not disclosing the information in any way, but at the same time leaving a tool to validate the transaction of unequivocal and deterministic. That is to say, zk-STARK does not reveal the information it encrypts, but you can always validate its veracity no matter what.
Improve the scalability of blockchains
Another possible use of the zk-STARK is in boost blockchain scalability, allowing cryptographic tests to take up less space. In cryptocurrencies like Bitcoin, where block size is a limitation on the number of transactions that can be processed per second, this is vital. With smaller cryptographic tests, transactions also take up less space, and more transactions can fit in each block. The effect becomes larger as it is applied to thousands of transactions, and with it, scalability is improved. However, this is only part of a scalability solution, since the smallest cryptographic tests will not cause the blockchain to dramatically increase its performance.
Other possible uses of this type of systems would be, for example, Fully encrypted and secure copyrighted streaming system. This would not require the current encryption systems based on mostly symmetric cryptography. The Electronic voting systems also benefit greatly from these types of systems.. This is because they allow the voter to cast their vote, it can be verified, but in no way will we know who cast it.
As you can see the potential of the zk-STARK is not only in the blockchain world, but also far beyond.
How much do you know, cryptonuta?
Will ZKP tests like zk-STARK become a cryptographic standard in the future?TRUE!
The advancement of quantum computing increasingly draws to a close the era of asymmetric cryptographic testing as we have applied it thus far. New protocols like ZKP and zk-STARK will undoubtedly be the basis of the new cryptography that will protect our digital world and this also involves the blockchain.
Main differences between zk-STARK and zk-SNARK
- Zk-SNARKs require a reliable configuration phase while zk-STARKs use publicly verifiable randomness to create verifiable computing systems without trust.
- Zk-STARKs are more scalable in terms of speed and computational size compared to zk-SNARKs.
- Zk-SNARKs are vulnerable to attack by quantum computers due to the cryptography they use. The zk-STARKs are currently resistant to quantum computers.
Other important aspects, we can see in the following comparative table, where we can see the different fields where zk-STARK stands out against other known ZKP tests.
zk-STARK and its applications today
Surely you have found everything that zk-STARK offers us surprising, but unfortunately the technology is so new (2018) that it has not been extensively tested, studied, and still not applied in any real production system. Not even in the world of cryptocurrencies.
At the moment, the only known utility of the zk-STARK is being developed by Starkwar to, a company created by the designers of zk-STARK. The goal is to design a test layer that enables the technology to be used on the blockchain, decentralized exchanges and much more. However, it will be a few more years before we can see the technology applied in those spaces. Surely the future of zk-STARK crypto is looking to be bright.