What Are They And What Do They Do?

Alliance: A usually formal, solemn and binding agreement.

This word has become one of the most charged words in the Bitcoin space. I’m the best thing from sliced ​​bread. They are the most dangerous thing from the atomic bomb. They will really don’t do anything to downsize Bitcoin, but they are clean.

Everyone has a completely different attitude towards them. We have the farm, the anti-infection, the ambivalent faction. To worsen things, the alliance is frankly a very vague term in its description of mature and concrete proposals to the protocol which would be classified as an alliance.

The degrees of difference between the functionality of different proposals that have been advanced are enormous. Some of them create completely new design spaces for what can be based on Bitcoin, while others rigorously do not add any new functionality, simply optimize things that are already possible with a great degree of complexity and general expenses.

We create a new specific definition for Bitcoin.

Alliance: Any script that guarantees some, or all, of the outputs created by a transaction that spent an input with an alliance script will have to adapt to certain specific criteria to be valid for the transaction of spending.

Therefore in less rigorous terms, if a bitcoin script currently limits Who can spend a coin by asking for an authorization test, that is, a cryptographic signature or When It can be spent, that is, after the expiry of the past or the Spender can show the Preimage to a hash, a writing of the alliance is limited As It can be spent, that is, to whom, as for which person, etc. A script of the alliance can even limit a coin so that it should be spent on another script of the alliance.

The latter part is the nucleus of what has made the alliance such a controlled word. Many people have great reserves on the addition of a new way of “blocking” bitcoins capable of self-propagating and ensuring that future coins are limited in a similar way. Many people have doubts that this is used to damage the censorship regimes of fungia or institute.

I feel it is necessary to emphasize that both of these things can be made at this moment, without the ability to script the alliance, simply by using Multisig. Any authority can refuse to allow the processing of withdrawals from exchanges unless they are in a Multisig 2 out of 2 in which this authority holds a key. From there they can simply refuse to sign the transactions by sending to the addresses in which they do not have a required key and establish any Blacklist or Whitelist scheme that wanted opaque and completely out of chain.

Having said that, it is still important that Bitcoin users have an understanding and understanding of the difference in power and flexibility between all the different proposals of alliance currently existing.

There are two fundamental things that alliances try to enable to apply restrictions a As Coins are spent, introspection AND Transport of forward data.

Introspection is the ability to inspect different parts of the transaction that is evaluated in an attempt to spend a specific currency. So, for example, if you want to limit a coin so that it must be spent on a specific address, you must be able to compare the specified address in the script of the Patto of the APUT with the address specified in the output of the transaction that the shopping. The workers who allow introspection are those that give us the opportunity to compare different parts of the transaction of expenditure with respect to the restrictions included in the script during the evaluation phase. You can get more granular with the introspection on which particular parts of a transaction you can examine, the more powerful it becomes.

The transport of forward data is related to introspection and in many ways a consequence, which allows to ensure that some information is carried out and included in each new script of the alliance so that it can be used in the next evaluation of the script of the alliance. This is achieved using introspection to limit some parts of the transaction so strictly to include the desired exact data or are not valid. More powerful introspective capacity you have, the more flexible you can transport the data forward and more flexible you can use that data.

This is only the first introduction to a series of articles that come in the coming weeks to look at all the main alliance proposals that are in a mature state, have received a recent interest or are conceptually of fundamental importance that developers agree on their usefulness but not yet a concrete design. This will not be 100%complete, but it will be relatively complete. Even some of them are not strictly alliances, but they make up very closely with them.

These will include:

  1. Controllaemplavify
  2. Checksigfromstack
  3. Txhash
  4. Op_vault
  5. Checkcontractsify
  6. CAT
  7. Mweakverify

Leave a Comment