Code Monkey home page Code Monkey logo

ssimon's People

Contributors

adameunson avatar coodos avatar jannemandev avatar manyadua16 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

ssimon's Issues

Remove Stronghold Storage Interface

Description

Allow stronghold to be purged, as it messes everything up :/

Type Of Change

  • Breaking (any change that would cause existing functionality to not work as expected)

Requirements

  • No Stronghold
  • New Storage Driver

Feat - Make Core driver take reader and writer promises

Description

Issue details

Type Of Change

Choose a type of change, and delete any options that are not relevant.

  • Update (a change which updates existing functionality)

Requirements

  • separate the concern of FsDriver

Additional Notes

Add Status List 2021 support.

Description

Add support for Status List 2021 https://www.w3.org/TR/vc-status-list/

This will provide the addition of revocation list support for credential issuance and revocation in line with W3C standards.

Type Of Change

  • Breaking (any change that would cause existing functionality to not work as expected)
  • New (a change which implements a new feature)

Requirements

  • 1 - Integrate the W3C standard for status list 2021 for issuance
  • 2 - Update verification flows using OIDC4VP to support status list 2021
  • 3 - Integrate across all methods.

Additional Notes

Breaking: Change the result type which is returned by `credentials.verifyCredential`

Description

Currently the verifyCredential method returns a single bool value which is the result of an and operation between the DVID result and the VC verification result, what we should do instead is return a result in form of an object which tells results in a more granular fashion and tells if DVID failed, VC integrity failed or both failed.

something like this

Result {
  DVID: true, 
  VC: true
}

Type Of Change

  • Breaking (any change that would cause existing functionality to not work as expected)
  • Update (a change which updates existing functionality)

Requirements

  • Different return type than a single bool

Additional Notes

implementing this change does mean we will need to bump minor version once we are ready

Add support for EBSI Interoperability Profile.

Description

Update the libraries to support the EBSI framework using the standards outlined in the EBSI documentation.

https://api-pilot.ebsi.eu/docs/

Type Of Change

  • New (a change which implements a new feature)

Requirements

Additional Notes

Add ISO18013-5 mDL support

Description

Add support for mDL as outlined in ISO18013-5

Type Of Change

  • New (a change which implements a new feature)

Requirements

  • 1 - Add CBOR support
  • 2 - implement COSE standard
  • 3 - add ISO framework support

Additional Notes

VC Schemas interface

Description

IdentityManager must be able to remember schemas for VCs to abstract away most of the complexity around VCs

Type Of Change

  • Breaking (any change that would cause existing functionality to not work as expected)

Add support for Dutch Decentralized Identity Profile

Description

Update libraries to support the DDIP - https://www.dutchblockchaincoalition.org/bouwstenen/self-sovereign-identity-ssi/ddip

Both Animo & Sphereon support the DDIP.

DDIP components:

  • OpenID for Verifiable Credential Issuance
  • OpenID for Verifiable Presentations
  • SIOP V2
  • DIF Presentation Exchange
  • W3C Verifiable Credential JWT
  • DID methods: DID:WEB and DID:JWK
  • Signature types ES256
  • Revocation method: StatusList 2021

Type Of Change

  • New (a change which implements a new feature)

Requirements

  • 1 - Add WEB and JWK DID methods
  • 2 - Add Status List 2021 support
  • 3 - Add W3C Verifiable Credential JWT support.

Additional Notes

Move Storage Drivers to Plugins

Description

Storage drivers to plugins which can be installed as separate packages

Type Of Change

Choose a type of change, and delete any options that are not relevant.

  • Breaking (any change that would cause existing functionality to not work as expected)

Requirements

  • storage drivers can be moved to plugins and shall

Additional Notes

Allow custom writer and reader filesystem methods

Description

When working on mobile wallets, the fs api doesn't work normally so we need the ability to be able to override the default filesystem methods, probably use a storage factory to do this

Type Of Change

  • Breaking (any change that would cause existing functionality to not work as expected)
  • New (a change which implements a new feature)

Requirements

  • custom FS methods
  • capacitor works

Additional Notes

See @capacitorjs/filesystem

Api Reference

Description

Add API Reference

Type Of Change

  • Docs (changes to the documentation)

Feat: Backup management in `IdentityAccount` and `IdentityManager`

Description

IdentityManager needs to be able to handle creating and recovering from backups, we can't unfortunately just use the stroghold snapshot. so instead we need to write a bit of our own Backup creation and recovery mechanism

Type Of Change

  • New (a change which implements a new feature)

Requirements

  • IdentityAccount needs a createBackup method which takes a backup password and filepath as args and dump an encrypted backup to the specified filepath
  • IdentityManager needs a recoverFromBackup method which takes the backup or the filepath for a backup.
  • Backups need to be AES256 encrypted

Feat: Create a driver that allows you to securely hold credentials

Description

CredentialsManager currently only handles creating credentials and not securely storing, them.

I propose we add a StorageDriver, which implements FS CRUD operations to store VCs and we can use that as a base abstract definition to create multiple other drivers.

At the end I want the instantiation of StorageDriver to have options which allow us to choose the driver

const storage = new StorageDriver({
  type: StorageDrivers.MongoDB, 
  options: {
    connectionUri: process.env.MONGO_URI
  }
});

or

const storage = new StorageDriver({
  type: StorageDrivers.Filesystem, 
  options: {
    storageDir: process.env.STORAGE_DIR
  }
});

Type Of Change

  • New (a change which implements a new feature)

Requirements

  • CredentialsManager shall be able to securely manager credentials
  • Easy and expandable driver interface which allows us to spin up as many drivers as we want
  • Ability to encrypt and decrypt credentials and create VerifialblePresentations

Logger Integration

Description

Integrate a logger

Type Of Change

  • New (a change which implements a new feature)

Requirements

  • generate logs
  • take a log function and use that to log stuff

Additional Notes

Add eIDAS 2.0 Signatures, Seals, & Timestamps

Description

Integrate standards for electronic signatures, seals, and timestamps as outlined in the eIDAS 2.0 specifications.
https://ec.europa.eu/digital-building-blocks/wikis/display/DIGITAL/Standards+and+specifications

Type Of Change

  • New (a change which implements a new feature)

Requirements

  • 1 - Add support for different level signatures - sES, AdES, and QES
  • 2 - Integrate XAdES
  • 3 - Integrate CAdES
  • 4 - Integrate PAdES
  • 5 - Integrate ASiC
  • 6 - Integrate Trusted List standards

Additional Notes

Better Documentation

Description

The current readme currently happens to be pretty vague and it would be good to have a more verbose and articulate readme.

Type Of Change

  • Docs (changes to the documentation)

Requirements

  • articulate information about the library

Additional Notes

see blog posts on our website for more details

Overwrite Password for Strongehold Backup Firefly

Description

A overwrite my password for Stronghold Backup which is needed in the Firefly

Type Of Change

  • Update (a change which updates existing functionality) after the actually update, i wouldn't come in the software

Requirements

can anybody help me the get this failure fixed? I have older backups, can we use this for the old password letters?

Additional Notes

Please help

Regards
Patrick

HyperLedger Network Support

Description

Add support for Hyperledger network and move IOTA out so that the main library becomes generic enough

Type Of Change

  • New (a change which implements a new feature)

Requirements

  1. Ability to choose a network
const iotaManager = await IdentityManager.newInstance({ networkAdapter: IOTAAdapter });
const hyperledgerManager = await IdentityManager.newInstance({ networkAdapter: HyperledgerAdapter });

Feature: Make the store set from manager

Description

Make it so that the store gets set from the manager directly when invoking the create and get DID methods rather than having to pass the store as a prop

Type Of Change

  • New (a change which implements a new feature)

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.