Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
166 commits
Select commit Hold shift + click to select a range
b728e54
- HcsDid uses new DID string format;
linasi Jan 26, 2022
b45fe92
fill in missing didRootKey information
vijayshiyani Jan 27, 2022
c59a4d1
added package lock
vijayshiyani Jan 27, 2022
1dd1cbb
remove public_key from did document
vijayshiyani Jan 27, 2022
cc8608f
topic id can not be optional
vijayshiyani Jan 27, 2022
2851b60
addressbook and appnet no loger required
vijayshiyani Jan 27, 2022
c029fcd
removed unwanted DID Method specificaitons prams and DidSyntax
vijayshiyani Jan 27, 2022
cd21033
removed hcs did creation without topic id
vijayshiyani Jan 27, 2022
506d57d
removed code idStringToPublicKey buggy code
vijayshiyani Jan 27, 2022
0f168a7
fix hcs did test and added hedera network constant
vijayshiyani Jan 27, 2022
c3b99e9
fix did creation and message creation tests
vijayshiyani Jan 27, 2022
e948a3c
fix more tests
vijayshiyani Jan 27, 2022
08a9577
fix identity network and related tests
vijayshiyani Jan 27, 2022
439fefe
Remove left references to the AddressBook, make sure package builds, …
linasi Jan 27, 2022
b06729f
Add basic prettier configuration and format the source
linasi Jan 27, 2022
822fe5f
Merge pull request #1 from Meeco/feature/setup-prettier
vijayshiyani Jan 28, 2022
b12260e
added minimum node version
vijayshiyani Jan 28, 2022
f306905
adding demo page to test did and did document creation
vijayshiyani Jan 28, 2022
586a579
added property assertion method to did-doc
vijayshiyani Jan 28, 2022
c78c2ae
Merge pull request #2 from Meeco/feature/fix-node-version
linasi Jan 28, 2022
19de76a
Merge pull request #3 from Meeco/task/demo-page
linasi Jan 28, 2022
208bd46
Merge pull request #4 from Meeco/feature/add-assertion-method-to-did-doc
linasi Jan 28, 2022
32a31ef
added multibase support for public key
vijayshiyani Jan 31, 2022
bfc6701
updated did document to have publicKeyMultibase prop
vijayshiyani Jan 31, 2022
fe675c8
test fixies
vijayshiyani Jan 31, 2022
ef8eb81
Merge pull request #5 from Meeco/featuer/add-multibase-encoding
linasi Jan 31, 2022
90a2268
Did event models
linasi Jan 31, 2022
39bf3ed
Trying to integrate events
linasi Jan 31, 2022
61fd2fa
added support for Multicodec with Ed25519pub codec
vijayshiyani Feb 1, 2022
c621e1c
added a test
vijayshiyani Feb 1, 2022
97933eb
Merge pull request #7 from Meeco/feature/add-multi-codec-Ed25519
linasi Feb 1, 2022
c9c5d7e
Merge feature/upgrade-did in
linasi Feb 1, 2022
69d572f
Demo flows; No public key is required to build HcsDid; Introduce HcsD…
linasi Feb 1, 2022
ed4713f
apply events and resolve did
vijayshiyani Feb 2, 2022
abb03e1
added multiple services event
vijayshiyani Feb 2, 2022
c05d298
added dragonglass explorer link
vijayshiyani Feb 2, 2022
b5d8680
Reading does not need private keys
linasi Feb 2, 2022
327f1f7
MEE-3130 / 32 remove all code related to VC & appnet
vijayshiyani Feb 3, 2022
4a3fc50
Merge pull request #8 from Meeco/task/cleanup
linasi Feb 3, 2022
517257c
New DID class; #register implementation
linasi Feb 3, 2022
61cd89b
Implement first version of resolve method
linasi Feb 3, 2022
1db951b
removed hcs identity network
vijayshiyani Feb 4, 2022
a2d50a7
rename HscDidv2 to HscDid removed hcs-did-root-key classes and test fix
vijayshiyani Feb 4, 2022
2c3b31c
fix the demo with new hsc did api
vijayshiyani Feb 4, 2022
c685c3f
added add service method to DID
vijayshiyani Feb 4, 2022
d6b76a8
added add verification method event message
vijayshiyani Feb 4, 2022
a6acce8
added add verification relationship event
vijayshiyani Feb 4, 2022
b0d85a1
Merge pull request #9 from Meeco/feature/new-did-api
linasi Feb 4, 2022
deb571e
Merge pull request #6 from Meeco/feature/events
linasi Feb 4, 2022
bf2ffa6
Move some code around; Fix a few tests; Disable no longer relevant te…
linasi Feb 4, 2022
87eff89
Fix submitTransaction to return Promise other function can await for
linasi Feb 4, 2022
98d97e4
Cleanup of unused code; Change HcsDidResolver API
linasi Feb 4, 2022
0a76853
Resolve other item CREATE events
linasi Feb 4, 2022
a1c35f1
updating, revoking and deleting event message write to hedera
vijayshiyani Feb 7, 2022
5f7c15c
renaming and fixing tests
vijayshiyani Feb 7, 2022
bd311e9
changing it to jest test from mocha
vijayshiyani Feb 7, 2022
6998cea
Merge pull request #10 from Meeco/feature/resolve-add-events
linasi Feb 7, 2022
5ad1792
Fix jest configuration
linasi Feb 7, 2022
91d7e8e
fix demo
vijayshiyani Feb 7, 2022
e37ee68
Drop MessageMode; Code style fixes; Renamings
linasi Feb 7, 2022
cd10888
Service or Key ID is set by user. Fixing some tests. Adding ID valida…
linasi Feb 7, 2022
c4d020f
Update and revoke logic for Services, VerificationMethods and Verific…
linasi Feb 7, 2022
0a298ae
Bug fixes; Success scenario tests for DidDocument
linasi Feb 7, 2022
2b788ba
Task/multiple event classes (#11)
vijayshiyani Feb 8, 2022
57bb498
Implementation of did delete event
linasi Feb 8, 2022
7a98c5f
Cleanup; fixes; renamings
linasi Feb 8, 2022
4f5604e
Event tests; bug fixes
linasi Feb 8, 2022
40e4199
Better handling of invalid/non-did related events that might to appea…
linasi Feb 8, 2022
4d1f023
git actions to run test on develop branch and main branch and for rel…
vijayshiyani Feb 8, 2022
5a1dc7a
fix npm command
vijayshiyani Feb 8, 2022
7b53501
updated read me and added demo files for add update and revoke events
vijayshiyani Feb 9, 2022
62dbfbc
added DELETE DID to READ ME
vijayshiyani Feb 9, 2022
36f12ea
fix some typos
vijayshiyani Feb 9, 2022
107f644
jest config to setup env var
vijayshiyani Feb 9, 2022
1ef6506
updated read me on how to run integration test
vijayshiyani Feb 9, 2022
dbbbb4f
added signature varificaiton back to topic listner (#12)
vijayshiyani Feb 9, 2022
7880844
Logic to handle UPDATE DID_OWNER event
linasi Feb 9, 2022
8ae0e9b
HcsDid changeOwner API method
linasi Feb 9, 2022
f5c818c
Add some tests for HcsDidMessage
linasi Feb 9, 2022
4baa75c
added integration test for revoke and re-add service with same id
vijayshiyani Feb 10, 2022
0db9958
style: Fix some typos(MEE-3046).
Feb 10, 2022
d4fc11a
Merge pull request #13 from Meeco/MEE-3046_Small_fixes
vijayshiyani Feb 10, 2022
f2029d3
minor fixies and added tests
vijayshiyani Feb 10, 2022
d15945b
fix has owner bug
vijayshiyani Feb 10, 2022
6e126f7
added few more tests
vijayshiyani Feb 10, 2022
b2c3dcc
Set submitKey to topic; Implemented change topic ownership logic; Mor…
linasi Feb 10, 2022
dcb546e
Fetch receipt after the transaction to make sure message was successf…
linasi Feb 10, 2022
988150e
Move some event validation logic to Event classes; Add tests;
linasi Feb 10, 2022
a10ddf2
Change the way errors are tested. Don't do validation in catch{} bloc…
linasi Feb 10, 2022
94f5bca
Make all imports target specific files
linasi Feb 10, 2022
0283908
Merge pull request #14 from Meeco/feature/change-did-owner
vijayshiyani Feb 10, 2022
462a2e2
updated demo files and added change did owner step (#15)
vijayshiyani Feb 11, 2022
02fda34
Task/more tests (#17)
vijayshiyani Feb 11, 2022
9ad8a2d
Task/update demo files (#19)
vijayshiyani Feb 11, 2022
dad6de7
Ignore event if operation or target type was not recognised without t…
linasi Feb 11, 2022
29215bd
Get rid of unnecessary hierarcy structure
linasi Feb 11, 2022
73c9ef2
Move a few demo flow variables to config.js file
linasi Feb 11, 2022
056703f
#changeOwner method no longer requires did of the current did owner
linasi Feb 11, 2022
9770821
Refactoring
linasi Feb 11, 2022
31e0ec2
Upgrade @hashgraph/sdk dependency
javereec Feb 13, 2022
a17c8ac
Merge pull request #20 from Meeco/feature/cleanup
vijayshiyani Feb 13, 2022
8016d96
Update did resolve result to be more inline with https://w3c-ccg.gith…
linasi Feb 14, 2022
3ce4d50
added change log and bump up package version
vijayshiyani Feb 15, 2022
6a0022f
added did resolver package and resolver for universal resolver driver
vijayshiyani Feb 15, 2022
6c09baa
added resolver to index
vijayshiyani Feb 15, 2022
a4e92b5
Merge pull request #23 from Meeco/task/changelog-version-bump
vijayshiyani Feb 15, 2022
b9bdd90
Introduce DidError; Resolver makes better decisions on error types; C…
linasi Feb 15, 2022
6f9ab45
Handle possible case when created and updated timestamps are not present
linasi Feb 15, 2022
c4e4f86
DID resolver client param is optional. If not passed, client is chose…
linasi Feb 15, 2022
f8987d1
Merge pull request #21 from Meeco/feature/did-resolve-map-to-spec
vijayshiyani Feb 15, 2022
81307b1
style: Fix some typos(MEE-3046).
Feb 16, 2022
f72b343
Merge pull request #24 from Meeco/Fix_some_typos_
vijayshiyani Feb 17, 2022
46f6dd0
style: Change 'Private Topic' to 'Restricted Topic' in the readme fil…
Feb 18, 2022
d2dc726
refactor: Change conf.js to .env file for demo. (MEE-3225).
Feb 18, 2022
0a55b8f
refactor: Change conf.js to .env in readme file. (MEE-3225).
Feb 18, 2022
3537271
refactor: Fix some typos. (MEE-3225).
Feb 21, 2022
e76707b
refactor: Remove dotenv package and rename .env file to .env.json. (M…
Feb 21, 2022
74d0fb4
refactor: Rename .env file to .env.json. (MEE-3225).
Feb 21, 2022
018e5fa
refactor: Rename .env file to .env.json in README. (MEE-3225).
Feb 21, 2022
b99739f
refactor: Use `ledgerId` instead of deprecated 'networkName'. (MEE-32…
Feb 21, 2022
9c4fd03
Add option to pass onMessageConfirmed callback to HcsDid constructor
linasi Feb 21, 2022
b4780c0
read did messages from timestamp
vijayshiyani Feb 22, 2022
a320910
Merge pull request #26 from Meeco/feature/message-submit-callback
vijayshiyani Feb 22, 2022
439e3fb
Merge branch 'develop' into MEE-3225_Small_fixes
vijayshiyani Feb 22, 2022
cc0fde8
Merge pull request #25 from Meeco/MEE-3225_Small_fixes
vijayshiyani Feb 22, 2022
257bfe8
minor fixies
vijayshiyani Feb 22, 2022
f73503b
added async to read messages method
vijayshiyani Feb 22, 2022
071a0bb
HcsDidEventMessageResolver always gives back envelopes; Remove HcsDid…
linasi Feb 22, 2022
b3dd1de
Missing import fix
linasi Feb 22, 2022
929d536
Use TopicMessageQuery completion handler
linasi Feb 22, 2022
2911022
Use existing helper function instead of building manual values map
linasi Feb 22, 2022
9d20598
Merge pull request #27 from Meeco/feature/consistent-result-from-mess…
vijayshiyani Feb 23, 2022
ff914da
updated package-lock file
vijayshiyani Feb 24, 2022
743dc71
style: Fix some typos and add some small fixes. (MEE-3225).
Mar 8, 2022
c248fb8
Merge pull request #28 from Meeco/Small_fixes
emurova Mar 8, 2022
8a784d5
docs: Add a few diagrams.
Mar 9, 2022
6fdd861
Merge pull request #29 from Meeco/docs/Add_a_few_diagrams
linasi Mar 29, 2022
3b12204
Update sequence diagrams
linasi Apr 7, 2022
86a29f9
Merge pull request #30 from Meeco/fix/update-diagrams
vijayshiyani Apr 7, 2022
381918d
Merge pull request #31 from Meeco/develop
linasi May 27, 2022
c994c79
fix hashgraph SDK version to last stable version 2.15.0. Version 2.16…
vijayshiyani Jun 24, 2022
e7b10ea
updated hashgraph sdk to only have patch release
vijayshiyani Jun 24, 2022
dbad75b
Squashed commit of the following:
vijayshiyani Jun 24, 2022
76c405a
update hashgraph SDK to latest, as previous issue was with mirror nod…
vijayshiyani Jun 24, 2022
5b3e022
Merge branch 'main' into develop
vijayshiyani Jun 24, 2022
bc97036
Merge pull request #32 from Meeco/develop
vijayshiyani Jun 24, 2022
c45bb8d
updated package lock file
vijayshiyani Jun 24, 2022
0045323
Merge pull request #33 from Meeco/develop
vijayshiyani Jun 24, 2022
017fa26
Don't apply key codec before encoding with multibase
Feb 23, 2023
5d59105
Upgrade @hashgraph/sdk. Fix tests
Feb 27, 2023
7e72bd0
fixing integration test and small
vijayshiyani Feb 28, 2023
e51ee6e
Merge pull request #34 from Meeco/feature/no-public-key-codec-applied
derek-meeco Jul 3, 2023
1a5cd22
Upgrade @hashgraph/sdk to 2.28.0; publicKeyMultibase is replaced with…
Jul 17, 2023
d6b1339
Use default mirror nodes that sdk provides
Jul 17, 2023
ee38494
Update tests with better logic to read mirror nodes
Jul 17, 2023
e849b00
Add delayUntil for test checking already registered DID flow
Jul 17, 2023
b971b82
Merge pull request #36 from Meeco/feature/sdk-upgrade
derek-meeco Jul 17, 2023
30ab850
Merge pull request #1 from Meeco/main
nextalias Jul 19, 2023
0f8ba6e
Add support for resolving DID documents from IPFS
zbarbuto Jun 30, 2023
0ecfe46
Switch returns to continues
zbarbuto Jul 20, 2023
f61abe1
Merge pull request #35 from NextFaze/feature/ipfs-did-resolution
linasi Jul 20, 2023
43d6910
Update few integration tests
Jul 20, 2023
1fb2141
Fix some issues resolving IPFS DIDs
zbarbuto Aug 17, 2023
ca5265a
Merge pull request #37 from NextFaze/fix/ipfs-resolve-bugs
linasi Aug 18, 2023
a6006ab
Update issue templates
derek-meeco Jan 24, 2024
9f5a709
Update README
derek-meeco May 17, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 38 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''

---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.

**Screenshots**
If applicable, add screenshots to help explain your problem.

**Desktop (please complete the following information):**
- OS: [e.g. iOS]
- Browser [e.g. chrome, safari]
- Version [e.g. 22]

**Smartphone (please complete the following information):**
- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- Browser [e.g. stock browser, safari]
- Version [e.g. 22]

**Additional context**
Add any other context about the problem here.
10 changes: 10 additions & 0 deletions .github/ISSUE_TEMPLATE/custom.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
name: Custom issue template
about: Describe this issue template's purpose here.
title: ''
labels: ''
assignees: ''

---


20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
5 changes: 3 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,15 +12,16 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
node: [ '14', '16' ]
node: [ '16' ]
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v2
with:
cache: 'npm'
node-version: ${{ matrix.node }}
- run: npm ci
- run: npm test
- run: npm run build --if-present
- run: npm run test
env:
OPERATOR_ID: ${{ secrets.OPERATOR_ID }}
OPERATOR_KEY: ${{ secrets.OPERATOR_KEY }}
Expand Down
29 changes: 29 additions & 0 deletions .github/workflows/test.unit.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: Test

on:
pull_request:
branches:
- develop
push:
branches:
- develop

jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node: [ '16' ]
steps:
- uses: actions/checkout@v2
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v2
with:
node-version: ${{ matrix.node-version }}
- name: install dependencies
run: npm ci
- name: build
run: npm run build --if-present
- name: run unit test
run: npm run test:unit

22 changes: 14 additions & 8 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,24 +2,30 @@ name: Test

on:
pull_request:
branches: [ main ]
branches:
- main
push:
branches: [ main ]
branches:
- main

jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node: [ '14', '16' ]
node: [ '16' ]
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v2
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v2
with:
cache: 'npm'
node-version: ${{ matrix.node }}
- run: npm ci
- run: npm test
node-version: ${{ matrix.node-version }}
- name: install dependencies
run: npm ci
- name: build
run: npm run build --if-present
- name: run all tests
run: npm run test
env:
OPERATOR_ID: ${{ secrets.OPERATOR_ID }}
OPERATOR_KEY: ${{ secrets.OPERATOR_KEY }}
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
/node_modules/
/dist/
/demo/.env.json
1 change: 1 addition & 0 deletions .npmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
engine-strict=true
1 change: 1 addition & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/dist/
6 changes: 6 additions & 0 deletions .prettierrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"singleQuote": false,
"printWidth": 120,
"tabWidth": 4,
"trailingComma": "es5"
}
126 changes: 126 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@

# Changelog

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

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

# v1.0.0

## Removed

* Generation of decentralized identifiers and creation of DID documents based on old [Hedera DID Method][did-method-spec]
* 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][did-method-spec]
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][did-core-prop] `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-core-prop]: https://w3c.github.io/did-core/#core-properties
[did-method-spec]: https://github.com/hashgraph/did-method

### DID API's

* Generate & Register

```js
...
const registeredDid = await did.register();
```

* Resolve

```js
...
const didDoc = await registeredDid.resolve();
```

* Change Ownership

```js
...
await registeredDid.changeOwner({
controller: newOwnerIdentifier,
newPrivateKey: newOwnerDidPrivateKey,
});
```

* Create, Update and Revoke [DID Document Core Properties][did-core-prop]
* Service

```js
...
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

```js
...
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

```js
...
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,
});
```
Loading