Author: ZmnSCPxj 2022-03-22 16:39:10
Published on: 2022-03-22T16:39:10+00:00
In a recent conversation between two individuals, the efficiency of using hashes to refer to microcodes was discussed. A microcode is a mapping of `OP_` codes to a variable-length sequence of `UOP_` micro-opcodes, and a microcode hash refers to an entire language of redefined `OP_` codes rather than each individual opcode. If it costs 1 Bitcoin to create a new microcode, only 21 million possible microcodes exist, making 50 bits of hash sufficient to specify them with low probability of collision. The use of a 20-byte RIPEMD . SHA256 can also be used for 160 bits. However, there is a possibility of a deliberate attack. If users of multiple different SCRIPTs band together to define a single microcode, they can map their SCRIPTs to different `OP_` codes and share the cost of defining the new microcode that shortens all their SCRIPTs.
Updated on: 2023-06-15T18:17:27.872599+00:00