Speedy covenants (OP_CAT2)



Summary:

In a conversation between Jorge and ZmnSCPxj, it was clarified that OP_CAT in combination with other introspection operations could enable covenants, including recursive covenants. Recursive covenants are close to true Turing-completeness, which is problematic as it would make it impossible to guarantee termination of scripts, creating a risk of denial-of-service attacks on the network. However, non-recursive covenants can be enabled with OP_CTV and SIGHASH_ANYPREVOUT. While some suggest limiting opcode processing, this would drop the system from Turing-complete to total programming without codata. It may be possible to treat data as code, which could lead to equivalent behavior to total-with-codata, but proof-of-safety is necessary before enabling such opcodes.


Updated on: 2023-06-15T20:33:11.210351+00:00