Keyring releases update to support OP_FALSE, OP_RETURN

Steve Shadders, nChain’s lead developer and cryptocurrency guru, inarguably understands the inner workings of digital currency better than almost anyone. He brought his expertise to Bitcoin SV (BSV) to help keep the original Bitcoin alive, and has been working tirelessly to further Bitcoin’s innovation. So, if he believes that changes should be made, it’s a good idea to listen. The company behind the BSV JavaScript libraries Keyring, BitBoss, did just that and has announced that it has upgraded Keyring to support the new OP_FALSE OP_RETURN script type.

Shadders first explained the entire issue surrounding OP_RETURN in a detailed blog post that is definitely worth reading. BitBoss was paying attention and announced in its own post on Medium that it had taken the programming expert’s viewpoints into consideration, making the appropriate changes to its offerings to tighten up applications and prepare for BSV’s Genesis upgrade, scheduled for next February.

Bitboss explains, “This change will ensure that all apps being developed with Keyring will maintain consistent behavior both now and after the Bitcoin SV Genesis upgrade. Instead of starting a script with OP_RETURN, it should start with OP_FALSE OP_RETURN. A locking script that contains this will always fail when it hits this sequence of op codes both now and after the Genesis upgrade, which is the proper, secure behavior.”

Keyring was initially designed to be a series of JavaScript libraries BitBoss could use for its specialty, online gaming solutions. However, it quickly morphed into something that was found to be beneficial to the entire Bitcoin ecosystem and is continuously updated in order to “help the entire Bitcoin SV community of developers.”

This is an important update, as the original use of OP_RETURN, combined with the OP_SEPARATOR field, was such that there was a bug that could have allowed coins to be spent without going through the proper verification procedures. The issue dates back to the original Bitcoin code and had been patched by Satoshi, but the patch was nothing more than a temporary band-aid that didn’t completely resolve the issue. Shadders’ solution helped to close the loophole completely and support for OP_FALSE OP_RETURN was included when Bitcoin SV v0.2.1 was rolled out in July.