by uport-project

uport-project / uport-credentials

Library for integrating uPort into node server side applications

135 Stars 46 Forks Last release: about 1 month ago (1.3.5) Apache License 2.0 560 Commits 69 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

npm Twitter Follow

DID Specification | Getting Started

FAQ and helpdesk support

uPort Credentials Library

Required Upgrade to [email protected]

Starting with version 1.3.0 you are required to specify either a

instance, or a valid configuration object for
. 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/' } const resolver = new Resolver(getResolver(providerConfig))

const credentials = new Credentials({ did: process.env.APPLICATION_DID, signer: SimpleSigner(process.env.PRIVATE_KEY), resolver })

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.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.