Account Opening

To start using Cobo MPC Co-Managed Custody, you will need to open an account in the development environment by heading to https://home.dev.cobo.com/#/login. Alternatively, you may contact Cobo to request an invitation email.

To improve security, you will need to download Google Authenticator (GA) on your mobile device. To complete the setup, please use your GA to scan the QR code displayed on the Cobo Custody Web.

You are also required to install Cobo Guard, which is a dedicated mobile application that leverages cutting-edge Trusted Execution Environment (TEE) technologies for secure authentication, risk control verification, and MPC-TSS key share management. It provides robust protection for your account, particularly during critical actions such as withdrawals and risk policy adjustments. Currently, Cobo Guard only supports the iOS system. The app is compatible with iPhone 5s and newer models, and the operating system must be iOS 13.0 or later. Prior to installation, kindly make sure that your mobile device meets the aforementioned requirements.

To download Cobo Guard (development environment) from TestFlight, click here. Please be advised that Cobo Guard downloaded from the Apple Store will only be compatible with the production environment.

After downloading Cobo Guard, you need to click on the scan icon on the top-right corner of your Cobo Guard to scan the QR code displayed on the Cobo Custody Web.

On the Cobo Custody Web, you can invite more team members to your org. To do so, head to Settings > Teams > Invite Users. Note that your invitees will also need to follow the aforementioned steps for setup and authentication.

MPC Setup

If you want to set up your own TSS Node, please prepare the testing environment for TSS Node deployment. Alternatively, you can contact Cobo to acquire Cobo-managed testing nodes, which will enable you to bypass the MPC Setup process for your development environment.

Currently, you can deploy TSS Nodes on an off-the-shelf server, a server that supports Intel® Software Guard Extensions (Intel® SGX), or an Apple MacBook.

Please head to Cobo’s TSS Node Library to download a version of the TSS Node package that fits your server model and deployment method. For user guides on the deployment process, please click here. The following initialization output uses the off-the-shelf server as an example.

Following the initialization of each TSS Node, a TSS Node ID will be automatically generated. Please manually enter the TSS Node IDs on the Cobo Custody web.

Once all TSS Node IDs have been added on the Cobo Custody Web, the key generation ceremony will automatically start. This process requires all TSS Nodes to be online in order to generate a set of MPC key-shares in an independent manner. The MPC root extended public key will also be created.

MPC Wallet Setup

Once the MPC root extended public key is successfully generated, you can proceed to create one or multiple types of MPC wallets on the Cobo Custody Web.

To add coins to MPC wallet, simply click “+Add Coins” and then search for your preferred coin types. Currently, Cobo Custody Web supports four mainnets (BTC, ETH, TRON, XRP) and two testnets (GETH, XTN).

Please make sure that you have added coins to your MPC Custody wallets first before making any API calls.

API Integration

If you are using APIs, please first choose an appropriate SDK from Cobo’s GitHub repository. Cobo Custody provides SDKs in five programming languages - Java, PHP, Python, JavaScript and Go.

Next, you will need to generate an API key and secret. The following code snippet provides an example using the Python SDK. You can locate instructions for generating API keys in the GitHub SDK README for your chosen programming language.

Python
from cobo_custody.signer.local_signer import generate_new_key
api_secret, api_key = generate_new_key()
print(api_secret)
print(api_key)

api_secret is your private key and should be stored securely.

api_key is your public key and needs to be set in your WaaS account via Cobo Custody web interface.

After successfully generating an API key and opening an account, you can head to the API dashboard on the Cobo Custody Web.

Please manually enter your key into the “API Key” field and ensure that the status of your API key is displayed as “Active”. You can now proceed to use the relevant SDKs to make API calls.

Test API by SDKs

Python
from cobo_custody.client.mpc_client import MPCClient
from cobo_custody.config import DEV_ENV
from cobo_custody.signer.local_signer import LocalSigner

# input your API SECRET
signer = LocalSigner("YOUR_API_SECRET")
mpc_client = MPCClient(signer=signer, env=DEV_ENV, debug=True)
res = mpc_client.get_supported_chains()

Test API by Playground

To learn what is Playground, please refer to the (Interactive API Playground) section.