December 4, 2019

Nakasendo™ (Beta) SDK Version 0.2.0 Goes Live

By:

nChain is pleased to announce the early-access beta program for the Nakasendo™ SDK v0.2.0 [BETA]. Nakasendo™ is a cryptographic library and toolset that can be used to enhance the security of any cryptocurrency exchange and, more broadly, ensure the effective control of access to any type of digital asset or resource.

Click here to go to the Nakasendo™ website.

Threshold Signature Scheme

Nakasendo™ allows for the improvement in the design of key management systems.

With the Nakasendo™ SDK, you can now secure private keys with dealer-less distribution using multi-party computations. The advantage is that the private key no longer presents a single point of failure; each party holds just one part of an encryption key. The same can be done for signing transactions.

The current Threshold Signature library compromises several steps and solutions:

1. Generate Shared Secret
Each player in a dealer-less group generates and secures a secret share of a key. Hackers would need to compromise the whole threshold of computers in the signature scheme to be able to reconstruct the key.

2. Verify Shared Secret
All players in the group encrypt their secret share, and broadcast it to the rest of the group. Given the encrypted information, everyone can verify the validity of the shared secret.

3. Generate Ephemeral Key and Pre-Signature Data
For each signature, each player generates a temporary random private key (ephemeral key) and prepares the relevant data, which is then safely broadcast amongst the group.

4. Sign Message
Upon receiving the relevant data, the players use the Nakasendo™ Threshold Signature algorithm to reconstruct the key, allowing them to sign without revealing any of their private information.

Click here to start using the Nakasendo™ Threshold Signature Scheme.

Libraries Available in the Nakasendo™ SDK

The Nakasendo™ SDK is an easy-to-use toolkit. It will do all the heavy lifting for you and provide you with a convenient user-friendly set of commonly used cryptographic functions.

Learn more about the different libraries and functions here.

Language-Binding Components

Nakasendo™ currently offers support through the following languages:

JavaScript – The node-js addon enables the Nakasendo™ library to be called from JavaScript.

Python – The core library ships with Python interfaces to the Nakasendo™ API, whereby a series of higher-level abstractions of Python classes, provided in Nakasendo.py, allows for the library to be used in a natural manner.

Improving the Development Experience

To ease the development experience, each library comes with its own example code available in C++, Python, and JavaScript. Take a peek here.

Stabilising the WebAssembly Build

Our core library has been cross-compiled for WebAssembly, enabling the usage in browsers through JavaScript. The feature is currently experimental; the WebAssembly API is still subject to change, and should be used for preliminary experimentation only.

Upon release of the latest version of Nakasendo™, nChain Chief Technology Officer Steve Shadders commented:

nChain is excited to reach this milestone with the Nakasendo™ SDK, which is designed to help developers navigate some of the cryptographically obscure elements of blockchain engineering work. The SDK is one of many foundational tools nChain will use to help ignite Bitcoin SV development and the growth of business-friendly tools to take Bitcoin into the realm of global adoption.

The Nakasendo™ SDK v0.2.0 marks a key milestone in bringing blockchain applications closer to global enterprise-level scalability and adoption. By equipping developers with the necessary tools to make the integration of solutions on the blockchain feasible and frictionless, we allow businesses to focus on what they do best, while benefitting from the efficient and secure control of access to digital assets and resources.

For early access to the SDK, visit the Nakasendo™ website here.

For advice on how to build enterprise-level applications using the Nakasendo™ SDK, get in touch with nChain Business Services here.