Skip to content

Latest commit

 

History

History
126 lines (104 loc) · 3.97 KB

CHANGELOG.md

File metadata and controls

126 lines (104 loc) · 3.97 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

v1.0.0

Removed

  • Generation of decentralized identifiers and creation of DID documents based on old Hedera DID Method
  • Creation of identity networks within appnets.
  • Address book - a file on Hedera File Service that provides information about HCS topics and appnet servers.
  • Creation and initialization of the VC topic - an HCS topic playing a role of verifiable credentials' registry.
  • Creation (publishing), update, deletion and resolution of DID documents in appnet identity networks.
  • Issuance, revocation and status verification of Verifiable Credentials.

Added

  • Generation of decentralized identifiers and creation of DID documents based on new Hedera DID Method Creation and initialization of the DID registration on HCS Private Topic
  • Create, update, revoke, deletion, and resolution of DID documents based on DID Document Core Properties event/log messages recorded on HCS Topic
  • Transferring ownership of DID identifier and DID Document to another party.
  • Publishing DID Events Messages to resolve and validate DID Document

DID API's

  • Generate & Register

    ...
    const registeredDid = await did.register();
  • Resolve

    ...
    const didDoc = await registeredDid.resolve();
  • Change Ownership

    ...
    await registeredDid.changeOwner({
    controller: newOwnerIdentifier,
    newPrivateKey: newOwnerDidPrivateKey,
    });
  • Create, Update and Revoke DID Document Core Properties

    • Service

      ...
      await registeredDid.addService({
          id: serviceIdentifier + "#service-1",
          type: "LinkedDomains",
          serviceEndpoint: "https://example.com/vcs",
      });
      ...
      await registeredDid.updateService({
          id: serviceIdentifier + "#service-1",
          type: "LinkedDomains",
          serviceEndpoint: "https://test.com/did",
      });
      ...
      await registeredDid.revokeService({
          id: serviceIdentifier + "#service-1",
      });
  • Verification Method

    ...
    await registeredDid.addVerificationMethod({
        id: verificationMethodIdentifier + "#key-1",
        type: "Ed25519VerificationKey2018",
        controller: registeredDid.getIdentifier(),
        publicKey: verificationMethodPublicKey,
    });
    ...
    await registeredDid.updateVerificationMethod({
        id: verificationMethodIdentifier + "#key-1",
        type: "Ed25519VerificationKey2018",
        controller: registeredDid.getIdentifier(),
        publicKey: updatedVerificationMethodPublicKey,
    });
    ...
    await registeredDid.revokeVerificationMethod({
        id: verificationMethodIdentifier + "#key-1",
    });
  • Verification Relationship

    ...
    await registeredDid.addVerificationRelationship({
        id: verificationRelationshipIdentifier + "#key-1",
        relationshipType: verificationRelationshipType,
        type: "Ed25519VerificationKey2018",
        controller: registeredDid.getIdentifier(),
        publicKey: verificationRelationshipPublicKey,
    });
    ...
    await registeredDid.updateVerificationRelationship({
        id: verificationRelationshipIdentifier + "#key-1",
        relationshipType: verificationRelationshipType,
        type: "Ed25519VerificationKey2018",
        controller: registeredDid.getIdentifier(),
        publicKey: updatedVerificationRelationshipPublicKey,
    });
    ...
    await registeredDid.revokeVerificationRelationship({
        id: verificationRelationshipIdentifier + "#key-1",
        relationshipType: verificationRelationshipType,
    });