TypeScript icon, indicating that this package has built-in type declarations

1.3.5 • Public • Published

npm Twitter Follow

DID Specification | Getting Started

FAQ and helpdesk support

uPort Credentials Library

Required Upgrade to uport-credentials@1.3.0

Starting with version 1.3.0 you are required to specify either a Resolver instance, or a valid configuration object for ethr-did-resolver. Previous versions of this library were relying on the automatic configuration of some default DID resolvers but this pattern was both limiting and prone to errors of misconfiguration or interference. This has caused an outage in credential verification on 2020-01-20 and continued use of previous versions are highly likely to no longer function properly because of this.

An example configuration with a resolver:

import { Credentials, SimpleSigner } from 'uport-credentials'
import { Resolver } from 'did-resolver'
import { getResolver } from 'ethr-did-resolver'
const providerConfig = { rpcUrl: 'https://mainnet.infura.io/<YOUR INFURA PROJECT ID>' }
const resolver = new Resolver(getResolver(providerConfig))
const credentials = new Credentials({
    did: process.env.APPLICATION_DID,
    signer: SimpleSigner(process.env.PRIVATE_KEY),

See ethr-did-resolver#43 for more info.

Integrate uPort Into Your Application

uPort provides a set of tools for creating and managing identities that conform to the decentralized identifier (DID) specification, and for requesting and exchanging verified data between identities.

uPort Credentials simplifies the process of identity creation within JavaScript applications; additionally, it allows applications to easily sign and verify data — signed by other identities to facilitate secure communication between parties. These pieces of data take the form of signed JSON Web Tokens (JWTs), they have specific fields designed for use with uPort clients, described in the uPort specifications, collectively referred to as verifications.

To allow for maximum flexibility, uPort Credential’s only deals with creation and validation of verifications. To pass verifications between a JavaScript application and a user via the uPort mobile app, we have developed the uPort Transports library, use it in conjunction with uPort Credentials when necessary.

To hit the ground running with uPort Credentials, visit the Getting Started guide.

For details on uPort's underlying architecture, read our spec repo

This library is part of a suite of tools maintained by the uPort Project, a ConsenSys formation. For more information on the project, visit uport.me

FAQ and helpdesk support


Please see our contribution guidelines if you wish to contribute to this project.




Package Sidebar


npm i uport-credentials

Weekly Downloads






Unpacked Size

1.01 MB

Total Files


Last publish


  • simonas-notcat
  • mirceanis
  • uport-automation-bot
  • zachferland
  • pelleb
  • rmw2
  • mike.xu