Blockchain Puzzle Scripts for Conditional Shared Key Exchange

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for secure key exchange between parties do not allow one party to calculate a shared cryptographic key until certain conditions are met, compromising security and control over the key generation process.

Innovation Solution

Utilizing blockchain transactions with puzzle locking scripts and unlocking scripts to generate a shared cryptographic key, where private keys are revealed on the blockchain only when specific conditions are met, ensuring that only authorized parties can calculate the key.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If private keys are revealed on the blockchain immediately, then key generation is fast and transparent, but security is compromised and unauthorized parties can access the key

Engineering Contradiction:
ImprovesecurityVSAvoidkey generation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The puzzle locking script is prepared in advance with the target public key embedded, but the private key revelation is delayed until conditions are met. This allows the system to be ready for key generation while maintaining security through conditional revelation timing.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The blockchain transaction transitions from a locked state with puzzle locking script to an unlocked state with revealed private key in unlocking script, dynamically changing the accessibility of the key based on condition satisfaction. This enables secure initial state and fast key generation state.

Inventive Principle:
Principle #15Dynamics

2Reliability

If blockchain transactions are used to control key revelation, then security and control are improved, but system complexity increases

Engineering Contradiction:
Improvecontrol over key generationVSAvoidtransaction structure complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The blockchain transaction serves multiple functions: it acts as both a key generation mechanism and a conditional control system. The same transaction structure handles both the mathematical key derivation and the conditional logic for revelation, reducing the need for separate control systems.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The blockchain network acts as an intermediary that enforces the conditional revelation of private keys. Instead of requiring complex direct control mechanisms between parties, the blockchain mediates the key generation process through its transaction validation and condition enforcement capabilities.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If puzzle locking scripts are used to hide private keys, then security is enhanced, but the difficulty of detecting and measuring key revelation increases

Engineering Contradiction:
ImprovesecurityVSAvoidkey revelation detection
Core Design Contradiction:
ReliabilityVSDifficulty of detecting and measuring

Solution Approach 1:

The transition from puzzle locking script to unlocking script with revealed private key creates a detectable state change in the transaction. The change in script type and key visibility provides clear signals for detecting when key revelation conditions are met, making monitoring feasible while maintaining security during the locked state.

Inventive Principle:
Principle #32Color changes

Data Source

PatentUS20260074894A1Determining shared secrets using a blockchain
Publication Date: 2026.03.12 NCHAIN LICENSING AG
  • US20260074894A1 patent drawing
  • US20260074894A1 patent drawing
  • US20260074894A1 patent drawing

AI summary

A method for enabling a second party to determine a shared cryptographic key, comprising: generating a puzzle blockchain transaction comprising one or more outputs, each output comprising a puzzle locking script, wherein each puzzle locking script comprises a target public key and is configured to, when executed together with a unlocking script comprising a candidate value, convert the candidate value into a candidate public key and require the candidate public key to match the target public key; and sending the puzzle blockchain transaction to one or more nodes of a blockchain network and/or the second party, wherein the first party is configured to generate the shared cryptographic key based on the first private key, the second public key, and each target public key, and wherein the second party is configured to generate the shared cryptographic key based on the second private key, the first public key, and each candidate value.