fix: Remove primary pub key - #142
Open
cosminm-affnd wants to merge 31 commits into
Open
Conversation
* fix: update algos to match JOSE definitions * fix: update * fix: remove ed25519_sha256 completely * fix: tests * fix: tests * fix: check for EdDsa encryption
* fix: Remove DidDocument as a param for DidSigner * fix: Removing the publicKey getter from DidSigner * fix: dart analyze issues
* feat: enhance proof verification with new data integrity suites * fix: Align ECDSA/EdDSA hashing and ECDSA curve with specifications Corrects hashing for ecdsa-rdfc-2019 (P-256/SHA-256) and eddsa-rdfc-2022 (SHA-256 components). Updates ECDSA verifier to use P-256 curve. * feat: improve ECDSA/EdDSA generators with signature scheme validation * feat: added DiDManager and DiDManagerStore * feat: enhance service endpoint handling * refactor: restructure DID manager architecture for better separation of concerns - Extract DidKeyManager and DidPeerManager from base DidManager class - Remove addVerificationMethodToDocument from all managers (immutable DIDs) - Make createDidDocument private (_createDidDocumentFromState) - Fix DidPeer.generateDocument to properly separate auth/agreement keys * refactor: renamed DID Manager to DID Controller * docs: clarify keyId distinction between KeyPair and DID contexts * feat: implement DidKeyPair class * refactor: deprecate KeyPair.id and update PublicKey to use keyId for DID operations * refactor: update service endpoint type from DIDCommMessaging to GenericService and adjust related tests and fixtures * feat: Implement DID Controller for did:key and did:peer methods - Added DiDControllerStore for managing mappings between DID key identifiers and wallet key identifiers. - Introduced DefaultDiDControllerStore as an in-memory implementation of DiDControllerStore. - Created DidKeyController for handling DID documents using the did:key method, supporting single public key management. - Developed DidPeerController for managing DID documents with multiple keys and service endpoints using the did:peer method. - Removed obsolete DidKeyManager and DidPeerManager classes to streamline the architecture. - Updated exports in index.dart and ssi.dart to reflect new controller structure. * feat: add computeEcdhSecret method to KeyPair interface and its implementations * fix: improve DID controller architecture • Replace PublicKey objects with key IDs throughout all controllers • Consolidate key management logic in base DidController class • Add validation for empty key IDs and wallet key existence • Make wallet operations async across all controllers • Remove createXXXVerificationMethod methods (use addXXX with existing keys) • Simplify DIDKey/DIDPeer controllers to use base class implementation * feat: did controller (#126) * feat: commiting wip * feat: did store now keeps references to method purposes * feat: updated controllers and in memory store * feat: key pairs default signature scheme * fix: did signer to use proper verification methods * fix: did peer to support multiple service endpoints * fix: type issue with signer * fix: did peer tests * fix: add id param to remove service * feat: add and remove of service endpoints * chore: rename * fix: move did signer code_snippet * fix: update in memory did store * docs: did key example * fix: prevent adding verification method on did key * feat: examples * fix: redundancy * fix: keys being referenced incorrectly * fix: outdated context and verification method type * fix: did peer tests and fragment id * fix: lint * fix: update didkeypair tests * fix: did peer tests * feat: Add unit tests for DidKeyController and DidPeerController - Implement tests for DidKeyController covering key generation, document creation, and verification methods. - Include tests for different key types (P256, ED25519) and their respective behaviors in DID documents. - Develop tests for DidPeerController focusing on multiple keys with different purposes, service endpoint handling, and proper indexing in verification method IDs. * fix: DidPeerController tests to enhance verification method handling and document generation * Merge branch 'main' into feat-didmanager * fix: Refactor DID Controller Tests for Verification Methods and Service Endpoints * fix: update DID controller examples to use async methods and improve clarity * fix: update algos to match JOSE definitions (#114) * fix: update algos to match JOSE definitions * fix: update * fix: remove ed25519_sha256 completely * fix: tests * fix: tests * fix: check for EdDsa encryption * fix: update algos to match JOSE definitions (#114) * fix: update algos to match JOSE definitions * fix: update * fix: remove ed25519_sha256 completely * fix: tests * fix: tests * fix: check for EdDsa encryption * docs: removed duplicate docs * fix: test * fix: X25519 key reference for did peer BREAKING CHANGE: getX25519PublicKey from Bip32Ed25519Wallet and ed25519KeyToX25519PublicKey from Ed25519KeyPair now return a PublicKey object * feat: addKey convenience method * fix: did peer 2 capability and assertion method purposes * feat: example * fix: did key * fix: tests * fix: tests * fix: test * fix: test * fix: remove test * fix: lint * fix: formatting * fix: proper verification method id for X key in did key * fix: formatting * fix: update examples and tests to use correct DID controller API * chore: remove unused code * feat: be more permissive allowing secp256k1 for key agreement * docs: improve add verification method docs --------- Co-authored-by: Carlos Rincon <86779651+carlos-affinidi@users.noreply.github.com> Co-authored-by: Cosmin Mogos <88316789+cosminm-affnd@users.noreply.github.com> Co-authored-by: Carlos Rincon <carlos.r@affinidi.com>
feat: supported signature checks unified
feat: key-pair abstraction improved
* chore: explicit key types * qa: merge did peer tests * qa: did peer 0 test * fix: spec compliant no deduplication of verification methods * qa: merged tests * fix: formatting
* fix: did peer store misalignment * fix: test * fix: merge methods * fix: remove non virtual
|
Coverage after merging remove-primaryPubKey into main will be
Coverage Report |
|
Coverage after merging remove-primaryPubKey into v2 will be
Coverage Report |
|
Coverage after merging remove-primaryPubKey into v2 will be
Coverage Report |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.