Onboarding — Registering your DID
To register a DID in ISBE you need two things: generate your cryptographic keys and derive the DID from them. Once done, you have two paths to complete the registration.
The DID Registry API does not custody private keys. Each endpoint that modifies the state of the registry returns an unsigned transaction. The entity must sign it off-chain with its own key and send it using the POST /api/v1/transactions/send endpoint. This ensures that ISBE never has access to the users' private material.
Prerequisites
- Be authenticated in the ISBE portal of the target environment.
- Have
isbe-identity-did-geninstalled for DID generation. - Have funds in the EOA associated with your control keys. If you do not have them, request them in the Faucet section of the portal (only the PRE environment).
1. Generate secp256k1 Keys
From the directory of the isbe-identity-did-gen repository:
npm install
chmod +x did-gen
./did-gen keys
Expected output (summarized):
Private Key (hex):
0x<PRIVATE_KEY>
Public Key (hex):
0x04<X><Y>
EOA (Ethereum Address):
0x<EOA>
Save the private key and EOA in a secure manager. If you lose the private key, you will lose control of the DID and will not be able to modify or revoke it.
2. Derive the DID
With the private key in hexadecimal, run:
./did-gen did -m <modelDeploy> -p 0x<PRIVATE_KEY>
Replace <modelDeploy> according to the environment (uc-pre, uc). If you omit -m, uc (production) will be used by default.
Expected output:
DID:
did:isbe:uc:z12kVar5p6bD5WCjEJcQ18Zyt8XV
Public Key:
0x041243f50ac70fc996ccc92a2119ce64b6f70bbf4ca1fd3b292fffa8939d06c4f75143e0f7e23b32139cce3a33d2207f937c0b85714d207877e3eca7137dc33214
Proof:
0x70bc9d8cdf399369f0b213a7da5985e5cd533d85bb5562615c98bfb5ac33d40e491436a3086a87ccaae773cbc20a098ef70928dc24b2c636dc8413965f2959a51c
Save the three values. You will need them for registration.
3. Register the DID
With the DID, public key, and proof already generated, you have two paths:
Option A — Guided registration from the portal
ISBE provides a wizard in the portal that does not require operating directly against the API:
- Access the portal at Identity → Enrollment → I already have my DID.
- Paste the DID, public key, and proof generated in the previous steps.
- Confirm. The portal will invoke the API and send the transaction for you.
Option B — Registration via the API
For integrators who prefer to operate directly, the complete API call flow (create transaction, sign it, and send it) is documented at:
→ DID Registration via the API
Next Steps
Once the DID is registered:
- Add a P-256 key — Necessary to issue verifiable credentials.
- Create the trust chain — If the entity is going to act as a TAO or TI.
- Resolve DIDs — To verify credentials issued by third parties.