There have been a number of interesting developments in the field of cryptography in the past few years. Despite Satoshi’s blockchain, it may be the first major hack after blinding and zero-knowledge proofs Fully symmetric encryption, a technology that allows you to upload your data to a server in an encrypted form so that the server can then perform calculations on it and send you the results, all without having any idea what the data is. In 2013, we saw the beginnings Brief computational safety and privacy (SCIP), a toolkit created by Eli Ben-Sasson in Israel, allows you to prove in an encrypted way that you performed some calculations and obtained a certain result. On the more mundane side, we have it now Sponge jobs, an innovation that greatly simplifies the previous chaos of hash functions, stream ciphers, and pseudorandom number generators into one beautiful construct. However, more recently, there has been another major development in the crypto scene, the applications of which are likely to be very far-reaching in both the cryptocurrency space and software as a whole: Jamming.
The idea behind obfuscation is an old one, and cryptographers have been trying to solve the problem for years. The problem behind obfuscation is: Is it possible to somehow encode a program to produce another program that does the same thing, but is so completely obfuscated that there is no way to understand what’s going on inside it? The most obvious use case is proprietary software – if you have software that involves advanced algorithms, and you want to allow users to use the software on specific inputs without being able to reverse engineer the algorithm, then the only way to do such a thing is to obfuscate the code. Proprietary software is, for obvious reasons, very unpopular in the tech community, so the idea hasn’t received much enthusiasm, a problem exacerbated by the fact that every time a company tries to put an obfuscation scheme into practice, it quickly crashes. Five years ago, researchers put what might seem like the final nail in the coffin: a mathematical proof, using arguments vaguely similar to those used to show the impossibility of the halting problem, a general-purpose obfuscation tool that turns any program into a program. “Black box” is impossible.
But at the same time, the crypto community is starting to take a different path. Realizing that the “black box” model of complete obfuscation would never be achieved, the researchers set out to aim for a weaker goal instead: indistinguishable obfuscation. The definition of an indistinguishable fuzzer is as follows: Given two programs A and B that compute the same function, if an effective indistinguishable fuzzer O computes two new programs X=O(A) and Y=O(B), given X and Y there is no way (mathematically possible) to determine which X and Y came from A and which came from B. In theory, this is the best anyone can do; If there is a better blurr, P, then if you put A and P(A) through the indistinguishable blurrO, there will be no way to distinguish between O(A) and O(P(A)), which means that the extra step of adding P does not It can hide any information about the inner workings of the program that O does not. Creating such obfuscation is a problem that many cryptographers have been preoccupied with for the past five years. In 2013, UCLA cryptographer Amit Sahai, symmetric cryptography pioneer Craig Gentry and several other researchers Find out how to do it.
Does the indistinguishable obfuscation tool hide private data within the program? To see what the answer is, consider the following. Let’s say your secret password is bobalot_13048, and the SHA256 of the password starts with 00b9bbe6345de82f. Now, build two programs. A only outputs 00b9bbe6345de82f, while B actually stores bobalot_13048 inside, and when you run it it computes the SHA256(bobalot_13048) and returns the first 16 hex digits of the output. According to the indistinguishability property, O(A) and O(B) are indistinguishable. If there was some way to extract bobalot_13048 from B, it would be possible to extract bobalot_13048 from A, which would imply that you could crack SHA256 (or therefore any hash function for that matter). By standard assumptions, this is impossible, so the obfuscation tool must also make it impossible to detect bobalot_13048 from B. Thus, we can be absolutely sure that Sahai’s obfuscation tool is indeed obfuscating.
So what’s the point?
In many ways, code obfuscation is one of the holy grails of cryptography. To understand why, consider how easy it is to implement almost all other primitives using it. Do you want public key encryption? Take any symmetric key encryption system, and create a decryption program with your secret key built into it. Obfuscate it, and publish it on the web. You now have a public key. Want a signature chart? Public key cryptography provides you with this as an easy corollary. Do you want fully symmetric encryption? Create a program that takes two numbers as input, decodes them, adds up the results, encrypts them, and scrambles the program. Do the same for multiplication, send both programs to the server, and the server will swap the addend and multiplier into its code and perform your calculation.
However, apart from that, obfuscation is powerful in another key way, and it has profound consequences especially in the field of cryptocurrencies and… Decentralized autonomous organizations: Publicly run contracts can now contain private data. On top of second generation blockchains such as EthereumIt will be possible to run so-called “autonomous agents” (or, when agents act primarily as a voting system among human actors, “decentralized autonomous organizations”) whose code is entirely executed on the blockchain, and which have the authority to maintain the currency balance and send Transactions within the Ethereum system. For example, one might have a contract with a non-profit organization that contains a currency balance, with the rule that funds can be withdrawn or spent if 67% of the organization’s members agree on the amount and destination to be sent.
Unlike Bitcoin’s vaguely similar multisig function, the rules can be very flexible, for example allowing a maximum of 1% withdrawal per day with only 33% approval, or making the organization a for-profit company whose shares are tradable and whose shareholders automatically receive dividends. Until now, such contracts were thought to be essentially limited — they could only have effect within the Ethereum network, and perhaps other systems that had deliberately set themselves up to listen to the Ethereum network. However, with disruption, there are new possibilities.
Consider the simplest case: an obfuscated Ethereum contract could contain a private key to an address within the Bitcoin network, and this private key is used to sign Bitcoin transactions when the conditions of the contract are met. Thus, as long as the Ethereum blockchain exists, one can effectively use Ethereum as a kind of controller for the money contained within Bitcoin. But from there, things get more interesting. Now let’s say you want a decentralized organization to control a bank account. With an obfuscated contract, you can have the contract hold the login details for a bank account’s website, have the contract perform a full HTTPS session with the bank, log in and then allow certain transfers. You would need some users to act as an intermediary to send packets between the bank and the node, but this would be a completely trust-free role, like an ISP, and anyone could trivially do this and even get a reward for the task. Autonomous agents can now also have accounts on social networks, accounts on virtual private servers to perform more computation-heavy operations than can be done on a blockchain, and almost anything a regular human or private server can do.
He looks forward
Thus, we can see that in the next few years DAOs are likely to become much stronger than they are today. But what will be the consequences? In the developed world, the hope is that there will be a significant reduction in the cost of starting a new company, organization or partnership, and a tool for creating organizations that are difficult to corrupt. Often, organizations adhere to rules that are little more than honorary conventions in practice, and once some members of the organization gain a certain amount of power, they gain the ability to twist every interpretation to their advantage.
So far, the only partial solution has been to codify some rules in contracts and laws – a solution that has strengths, but also weaknesses, as the laws are numerous and too complex to navigate without help (and often very expensive). professional. With DAOs, there is now also another alternative: creating an organization whose bylaws are 100% crystal clear, embedded in mathematical code. Of course, there are many things whose definitions are too vague to be defined mathematically; In these cases, we will still need some arbitrators, but their role will be limited to a limited, commodity-like function defined by the contract, rather than potentially complete control over everything.
But in the developing world, things will be more radical. The developed world has access to a legal system that is sometimes almost corrupt, but its main problems are simply that it is too biased toward lawyers, too outdated, too bureaucratic, and too inefficient. On the other hand, the developing world suffers from legal systems that are completely corrupt at best, and actively conspire to plunder their subjects at worst. There, almost all businesses are gentleman’s agreements, and there are opportunities for people to betray each other at every step. The mathematically coded internal regulations that DAOs can have are not just a substitute; They are probably the first legal system that people have that is actually there to help them. Reviewers can build their reputation online, as do the organizations themselves. Eventually, perhaps blockchain voting, like the one he pioneered BitCongressIt may even form the basis for new experimental governments. If Africa can jump directly from oral communications to mobile phones, why not move from tribal legal systems with local governments intervening directly in decentralized autonomous organizations?
Of course many will be concerned that having uncontrollable entities moving money around is dangerous, as there is high potential for criminal activity using this type of power. However, one can offer two simple responses to this. First, although it would be impossible to shut down these decentralized, autonomous organizations, it would certainly be very easy to monitor and track them every step of the way. It will be possible to detect when one of these entities makes a transaction, it will be easy to know its balance and relationships, and it will be possible to collect a lot of information about its organizational structure if the blockchain is voted on. . As with Bitcoin, DAOs would likely be too transparent to be practical for much of the underworld; As FINCEN Director Jennifer Shasky Calfrey He said recently“Cash may still be the best way to launder money.” Second, DAOs ultimately cannot do anything that regular organizations cannot do; All it is is a set of voting rules for a group of humans or other human-controlled agents to manage ownership of digital assets. Even if it is not possible to shut down the DAO, its members can certainly be as if they were running a regular old organization offline.
Whatever the mainstream applications of this new technology, one thing seems more and more certain: cryptography and distributed consensus are about to make the world a lot more interesting.





















.jpg)
