diff --git a/chapters/authorization-authentication.adoc b/chapters/authorization-authentication.adoc index 0b0c3b8f..00f82a74 100644 --- a/chapters/authorization-authentication.adoc +++ b/chapters/authorization-authentication.adoc @@ -742,8 +742,8 @@ RETURN ---- ((("Proof of Existence")))((("DOCPROOF prefix")))The data portion is -limited to 80 bytes and most often represents a hash, such as the output -from the SHA256 algorithm (32 bytes). Many applications put a prefix in +often represents a hash, such as the output +from the SHA256 algorithm (32 bytes). Some applications put a prefix in front of the data to help identify the application. For example, the http://proofofexistence.com[Proof of Existence] digital notarization service uses the 8-byte prefix +DOCPROOF+, which is ASCII encoded as +44 @@ -763,27 +763,6 @@ script to "RETURN" with a +FALSE+ and halt. Thus, if you accidentally reference a +RETURN+ output as an input in a transaction, that transaction is invalid. -A standard transaction (one that conforms to the +IsStandard()+ checks) -can have only one +RETURN+ output. However, a single +RETURN+ output can -be combined in a transaction with outputs of any other type. - -Two new command-line options have been added in Bitcoin Core as of -version 0.10. The option +datacarrier+ controls relay and mining of -+RETURN+ transactions, with the default set to "1" to allow them. The -option +datacarriersize+ takes a numeric argument specifying the maximum -size in bytes of the +RETURN+ script, 83 bytes by default, which, allows -for a maximum of 80 bytes of +RETURN+ data plus one byte of +RETURN+ -opcode and two bytes of +PUSHDATA+ opcode. - -[NOTE] -==== -+RETURN+ was initially proposed with a limit of 80 bytes, but the limit -was reduced to 40 bytes when the feature was released. In February 2015, -in version 0.10 of Bitcoin Core, the limit was raised back to 80 bytes. -Nodes may choose not to relay or mine +RETURN+, or only relay and mine -+RETURN+ containing less than 80 bytes of data. -==== - [[locktime_limitations]] ===== Transaction locktime limitations