Complex Script Options

Revision as of 08:58, 2 April 2020 by AlexGraham (talk | contribs)

Transactions are mostly input and output to a number of standard scripts that cover 99% of transactional activity.

A difference occurs in Bitcoin SV between ‘Standard’ and ‘Non Standard’ or ‘customized’ scripts for transaction inputs and outputs.

Defining ‘Standard’

According to WP1321 there are 5 standard scripts for BitcoinSV

  • P2PK – Pay to Public Key
  • P2PKH – Pay to Public Key Hash
  • P2MS – Pay to MultiSignature
  • P2SH – Pay to Script Hash (deprecated with Genesis….?)
  • OP_RETURN – opcode able to contain data

Benefits of Non-standard Why do we need non-standard scripts.

=====================================================================

The upgrade to the Bitcoin SV node software (v1.0.0) will introduce a number of consensus changes intended to enable Bitcoin to fulfil its original design as digitally programmable money. This includes lifting several scripting restrictions currently imposed by the network, thereby enabling users to create custom scripts. These changes are being made to enable the Bitcoin SV network to support a range of complex spending conditions and computational capabilities. However, this will be the first time in Bitcoin’s history that restrictive limits imposed on script will be lifted and therefore caution is required to avoid security risks.

======================================================================

Defining ‘Non-standard’

However it is possible to expand scripting particularly in the latest versions of SV with ‘Non Standard’ or ‘customised’ scripting. The use of non standard scripts allows flexibility in the outputs potentially providing conditionality, enhanced security and computational possibilities. These changes are being made to enable the Bitcoin SV network to support a range of complex spending conditions and computational capabilities activity. The use of customised scripts should lead to the extension of BSV services. Currently, there are some customized scripts under development as defined in WP1321.

  • R Puzzle
  • Rabin Signature
  • Multi Signature Accumulator

Non-standard or customised scripts need to be declared. A registration process is involved. A link with a specific miner may need to be established. Other non-standard declarations can include: Public Key Infrastructure (Root Authority, Certificate Issuer, Certificates, Signatures) Where authenticating or verification information can be placed within a transaction. Use of customized Address Generation See WP1322 – which allows for the creation of payment addresses through a script that is non-standard or customised.