A bug was recently discovered in the Ordinals inscription system by Super Testnet, a Bitcoin-focused independent freelance software developer. This led to the Ordinals’ inscription numbering system crashing, prompting concerns over the integrity of the entire protocol.
Super Testnet shared information on the bug via its Twitter page:
Wait did I just break ordinals? https://t.co/V41NQt9aQz
— Super Testnet (@super_testnet) May 4, 2023
Notably, Ordinal inscriptions are a type of Bitcoin transaction metadata sometimes known as “proof of ownership” inscriptions. This metadata can comprise the digital asset’s title, description, and ownership information. However, Ordinal inscriptions do not require a sidechain or specialized tokens in order to be recorded on the Bitcoin blockchain, which differentiates it from the likes of Ethereum-based NFTs.
The issue was found in the program’s inscription No. 349272, which had zero value in both output and input but could still be programmed into a number, causing the Ordinal Inscriptions numbering system to crash. The transaction in question was discovered in block 788200 and did not include any satoshis. According to Super Testnet, a system update would fix the bug for all inscriptions made after No. 3492721.
Ludo Galabru, a staff engineer at Hiro Systems, commented on the issue on GitHub:
Philosophically, the satoshi inscribed was transferred to the miner as a transaction fee but was nevertheless inscribed by its previous owner.
Casey Rodarmor, the creator of Ordinals, agreed that it shouldn’t be possible to inscribe satoshis that one doesn’t own, indicating that the transaction is indeed a bug. However, Rodarmor expressed uncertainty regarding the best course of action to fix the bug since ignoring the inscription would alter subsequent inscription numbers.
Danny Diekroeger, the founder of the Bitcoin Lightning platform Deezy, stated that the bug does not pose any risk to the Ordinals protocol itself:
Personally, I think this is totally fine. In fact, I think inscription numbers were broken already early on anyway.
Super Testnet, stated that there was no immediate danger to the protocol but also admitted uncertainty about potential long-term consequences.
Following the discovery of the bug, Super Testnet provided a guide for other programmers to conduct similar tests on Ordinals. However, the developer warned that participants in the challenge would lose 10,000 sats if unsuccessful.