Coder Social home page Coder Social logo

lauravuo-techlab / verity-sdk Goto Github PK

View Code? Open in Web Editor NEW

This project forked from evernym/verity-sdk

0.0 0.0 0.0 1.98 MB

Documentation and developer tools for using Evernym Verity. This is a read-only mirror.

License: Apache License 2.0

Dockerfile 0.61% Shell 1.23% Java 54.31% JavaScript 19.16% Makefile 0.13% Python 24.56%

verity-sdk's Introduction

Verity SDK

Overview

The goal of the Verity SDK is to provide easy application integration with the Verity server. The Verifiable Credentials data model defines Issuer, Verifier, and Holder. The Issuer is an organization that creates and issues Verifiable Credentials to individuals, also known as Holders. Holders typically have a digital wallet app to store credentials securely and control how those credentials are being shared with Verifiers. Verifier is an organization that verifies information from the credentials that Holders have stored on their digital wallet app.

With Verity SDK, you can enable issuing or verifying or both functions into your project and interact with individuals using Connect.Me or some other compatible digital wallet app.

Verity SDK provides methods that enable you to initiate basic SSI protocols such are establishing a DID connection between your organization and individuals, issuing a Verifiable Credential to holding individuals, and requesting verifiable presentation of these Credentials from holding individuals. Besides SSI protocols, Verity SDK provides methods for writing Schemas and Credential Definitions to the ledger.

The SDK uses libindy and Agent-to-Agent protocols to securely authenticate and communicate with the Verity server. With the creation of language-specific bindings, developers can quickly integrate their backend services into the world of SSI with minimal overhead.

Architecture

By design, Verity SDK is largely stateless (requiring only a small configuration context and a single public/private key pair), which allows applications to orchestrate SSI integrations without heavy involvement in the interactions.

Terminology

The instructions for this SDK use the following terms:

  • Verity Application agent -- An Identity agent run on Evernym's Verity Application. This agent is controlled by the Verity SDK.

  • Example application -- A sample application provided by Evernym that demonstrates the basic steps involved in various Connect.Me transactions

First Steps

These are the general steps for getting going with the Verity SDK:

  1. Get an Agent on Evernym's Verity Application.
  2. Integrate the language-specific Verity SDK library.
  3. Optional -- Walk-through the 'Getting Started' guided tutorial.

1. Get an Agent on Evernym's Verity Application

Verity SDK requires access to an agent running on Evernym's Verity Application. Contact Evernym to get access to an Agent.

Firewall Rules

Using the Verity SDK requires the following rules in your firewall:

Direction Protocol Port MIME Type
Outbound HTTP 80 application/octet-stream
Outbound HTTPS 443 application/octet-stream
Inbound HTTP [user-defined] application/octet-stream
Inbound HTTPS [user-defined] application/octet-stream

2. Integrate the language-specific Verity SDK library

The Verity SDK comes is several language-specific libraries. See the respective README documents to get the latest version, read the API documentation and other information:

3. Optional -- Walk-through the 'Getting Started' guided tutorial

The 'Getting Started' guide is a guided tutorial that walks-through a couple of simple SSI use-cases using Verity and the Verity SDK. The guide can be done with Docker to simplify setting up an environment or can be done using a local developer environment.

See the Getting Started guide documentation.


For more information about Evernym products, visit https://www.evernym.com/products/.

© 2013-2020, ALL RIGHTS RESERVED, EVERNYM INC.

verity-sdk's People

Contributors

dkulic avatar orspetol avatar rytmarsh avatar rajeshkalaria80 avatar vujke1903 avatar toktar avatar danielnoliva avatar bonniemay333 avatar divacvl avatar ckochenower avatar jonathan-rayback avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.