CRUX Protocol

The CRUX Developer Hub

Welcome to the CRUX Developer Hub!

Learn more about CRUX, and about how to integrate CRUX Protocol into your Wallet.

Get Started    

We propose a solution centered around a user owned identity called CRUX ID. This identity is used in two distinct protocols - the CRUXPay Protocol & the CRUXGateway Protocol.

CRUXPay tackles the problem of easy human readable identifiers for cryptocurrency addresses.

CRUXGateway aims to bridge the gap between Wallets & Applications with a secure end-to-end encrypted communication channel and establishes a language for Wallets & Applications to understand each other.

CRUX ID - Universal Identity

Our solution to the above outlined problems is centered around the concept of a Universal Identity owned by the User - called a CRUX ID.
The CRUX ID is represented by a globally unique human readable name such as [email protected]. This human readable name is tied to a Private Key stored securely in any Wallet of the user's choice.

It's a way for Users to represent cryptocurrency addresses of their choice with an easy to remember human readable name.

A CRUX ID is required to be

  • Globally unique - Every User can have 1 or more unique CRUX ID
  • Human readable - IDs must be easy to read and communicate
  • Strongly owned - The proof of identity must reside securely only in any secure Wallet of User's choice

CRUX IDs simply establish the ownership of a private key to a human readable name. This ownership must be held to the highest level of security standards and must be cryptographically verifiable by anybody.

CRUX IDs are independent - they do not depend on its creators. CRUX does not introduce any specific platform requirement. Users can choose any CRUX compatible Wallet, and any Wallet is free to implement support for CRUX IDs.

CRUXPay - P2P Crypto Payments for Humans

With CRUX IDs we have a universal verifiable identity owned by Users in their Wallets.

CRUXPay Protocol is a layer which allows Users to bind cryptocurrency addresses of their choice - to this identity.

Lets say Matt is trying to send cryptocurrencies to Emily. With CRUXPay the scenario looks like this -
Matt should be able to pay to Emily by simply entering her CRUX ID [email protected] in his Wallet. Matt may or may not have a CRUX ID himself.
Matt should not be exposed to any other blockchain implementation details. The only things relevant to him are -

  • Emily's CRUX ID
  • The cryptocurrency he wants to pay in
  • How much he wants to pay

Matt must have the same experience across all cryptocurrencies. He should not be at risk of incorrect payments due to ongoing forks or migrations of the underlying technology powering the cryptocurrency.

This needs to happen with Emily's privacy in mind. Only addresses that she consents to must be made public. The addresses which Emily explicitly consents to being made public against her CRUX ID are referred to as 'Public Addresses'

The CRUX ID to Address mapping powering this experience should be securely verifiable by Matt's Wallet. Matt must be guaranteed he is paying to the right address.

CRUXGateway - Ecosystem Interoperability

With CRUX IDs we have a universal verifiable identity owned by Users in their Wallets.

CRUXGateway protocol establishes the following:

Firstly, an on-demand end-to-end encrypted communication channel between User's Wallet and any Application (decentralized or conventional)
Secondly, A common language for Applications to 'talk' to Wallets. Todays Applications want to interact with the Blockchain in a variety of ways.

  • Applications should be able to request payments from the User.
  • Applications should be able to schedule recurring payment requests
  • Applications should be able to access a smart contract's interface using a transaction
  • Applications should be able to simply validate the identity of its User, using CRUX ID, similarly to how "Login With Google" works. CRUX should enable Applications to 'Login With CRUX'.

CRUXGateway lets any application securely 'talk' to any Wallet supporting CRUX. That means, Applications can support interactions with multiple cryptocurrencies through a uniform API. They will automatically support any old or new Wallets that support CRUX. Anyone is free to integrate CRUX.

Updated 9 months ago


What's Next

Understand CRUX's architecture

CRUX ID
CRUXPay Protocol
CRUXGateway Protocol

Solution


Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.