Skip to content
/ sleeve Public

Sleeve is a novel way of embedding a quantum secure key in the generation of curve based, non quantum secure keys.

License

Notifications You must be signed in to change notification settings

xx-labs/sleeve

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sleeve

Sleeve is a novel way of embedding a quantum secure key in the generation of curve based, non quantum secure keys.

A complete diagram of the Sleeve wallet generation can be found in docs. This implementation of Sleeve uses a WOTS+ key as the underlying quantum secure key, and the diagram for the generation of this key can also be found in docs.

The input for wallet generation is random entropy, which is encoded into a mnemonic phrase using BIP39. Then a BIP44 custom path of m/44'/1955'/0'/0'/0' is used in a BIP32 derivation to generate a 256 bit child private key and 256 bit chain code.

The private key and chain code are used, respectively, as the secret and public seeds in WOTS+ generation. After the WOTS+ key is generated, we save the quantum secure public key (PK). This public key will be used as the Wallet address when full quantum secure capabilities are implemented in the future.

The private key is also used to derive a "sleeve secret key". This secret key allows the WOTS+ public key to be safely shared at anytime, without compromising the non quantum secure keys generated by Sleeve. This secret key will be used in the future to redeem non quantum secure wallets into the WOTS+ quantum secure wallet.

The Sleeve output is generated using SHA3_256 to hash the sleeve secret key and WOTS+ public key together. The resulting hash value is then encoded using BIP39, providing the output mnemonic, which can be used to generate non quantum secure keys on any blockchain platform.

Academic papers for Sleeve can be found here and here.

This implementation of Sleeve has been audited, and the report can be found in audit.

About

Sleeve is a novel way of embedding a quantum secure key in the generation of curve based, non quantum secure keys.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages