delvingbitcoin

Exploding Keys - Covenant construction

Exploding Keys - Covenant construction

Original Postby ajtowns

Posted on: April 30, 2024 02:28 UTC

The discussion revolves around the concept of a cryptographic mechanism that involves private key holders, labeled as A, B, and C, having the capability to collaboratively sign off on transactions using what is referred to as an "explodable key." This mechanism allows these key holders to transfer the key under certain conditions.

However, the effectiveness of such a setup is questioned due to the lack of a timeout enforcement mechanism for the exploding path, which significantly reduces its utility in adversarial scenarios. In situations where there is no opposition, the direct use of the key path for transactions is preferred, bypassing the need for an intermediate exploding transaction, especially when transaction fees are low.

The proposed solution aims to enhance the design by incorporating a commitment mechanism that binds the action of the key holders to specific transaction parameters such as nLockTime, nSequence, and annex. These parameters are derived from the conditions of the exploding spend. The modification suggests that the private key holders have a finite window, determined by the locktime and sequence number, to execute a key path spend collaboratively. Failing to do so within this timeframe results in the execution of the exploding transaction, essentially returning the funds to the participants.

This approach introduces the possibility of creating a one-time payment pool, enabling a more flexible handling of transactions among participants. Nonetheless, it also highlights a limitation in achieving a dual-path transaction model that includes both an exploding spend path and a script spend path simultaneously. The necessity to disclose the script (or its hash) in the exploding path undermines the potential benefits of having a separate script path, suggesting that in practice, choosing one path over the other might be more pragmatic than attempting to maintain both.