Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(pollux): add sdjwt capability #174

Merged
merged 2 commits into from
Jul 18, 2024
Merged

feat(pollux): add sdjwt capability #174

merged 2 commits into from
Jul 18, 2024

Conversation

goncalo-frade-iohk
Copy link
Contributor

@goncalo-frade-iohk goncalo-frade-iohk commented Jul 10, 2024

Description:

Add SDJWT capability to receive issued credentials and create presentations

Fixes ATL-7314

Checklist:

  • My PR follows the contribution guidelines of this project
  • My PR is free of third-party dependencies that don't comply with the Allowlist
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • I have added tests that prove my fix is effective or that my feature works
  • I have checked the PR title to follow the conventional commit specification

Copy link

github-actions bot commented Jul 11, 2024

Unit Test Results

100 tests   - 1   96 ✅  - 1   6s ⏱️ -1s
 24 suites ±0    4 💤 ±0 
 24 files   ±0    0 ❌ ±0 

Results for commit e4bd372. ± Comparison against base commit 82b03cc.

This pull request removes 1 test.
org.hyperledger.identus.walletsdk.pollux.PolluxImplTest ‑ testGetSchema_whenAnoncred_thenSchemaCorrect

♻️ This comment has been updated with latest results.

@coveralls
Copy link

coveralls commented Jul 11, 2024

Pull Request Test Coverage Report for Build 9988130389

Warning: This coverage report may be inaccurate.

This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • 578 unchanged lines in 10 files lost coverage.
  • Overall coverage decreased (-0.7%) to 38.872%

Files with Coverage Reduction New Missed Lines %
org/hyperledger/identus/walletsdk/apollo/utils/X25519PrivateKey.kt 15 48.48%
org/hyperledger/identus/walletsdk/apollo/utils/Secp256k1PrivateKey.kt 16 60.0%
org/hyperledger/identus/walletsdk/apollo/utils/Ed25519PublicKey.kt 19 33.33%
org/hyperledger/identus/walletsdk/apollo/utils/X25519PublicKey.kt 19 28.57%
org/hyperledger/identus/walletsdk/apollo/utils/Ed25519PrivateKey.kt 19 35.29%
org/hyperledger/identus/walletsdk/apollo/utils/Secp256k1PublicKey.kt 21 51.11%
org/hyperledger/identus/walletsdk/pollux/models/JWTCredential.kt 94 31.2%
org/hyperledger/identus/walletsdk/pollux/models/AnonCredential.kt 108 25.21%
org/hyperledger/identus/walletsdk/pollux/PolluxImpl.kt 121 58.15%
org/hyperledger/identus/walletsdk/edgeagent/EdgeAgent.kt 146 58.6%
Totals Coverage Status
Change from base Build 9979949121: -0.7%
Covered Lines: 2650
Relevant Lines: 6067

💛 - Coveralls

Fixes ATL-7314

Signed-off-by: goncalo-frade-iohk <goncalo.frade@iohk.io>
@goncalo-frade-iohk goncalo-frade-iohk merged commit cd3baf8 into main Jul 18, 2024
4 checks passed
@goncalo-frade-iohk goncalo-frade-iohk deleted the feature/sd-jwt branch July 18, 2024 08:26
cristianIOHK pushed a commit that referenced this pull request Aug 27, 2024
Signed-off-by: goncalo-frade-iohk <goncalo.frade@iohk.io>
hyperledger-bot added a commit that referenced this pull request Sep 12, 2024
# [3.1.0](v3.0.1...v3.1.0) (2024-09-12)

### Bug Fixes

* anoncred verification and breaking changes missing ([#196](#196)) ([149adda](149adda))
* backup recovery was linking incorrectly dids with private keys ([#178](#178)) ([06e9a8f](06e9a8f))
* bitstring for revocation registry ([#188](#188)) ([22a2da9](22a2da9))
* DbConnection cannot be extended ([#169](#169)) ([82b03cc](82b03cc))
* e2e test broken after pull credential changed based on validUntil ([#158](#158)) ([f21df25](f21df25))
* JWT proof ([#163](#163)) ([4e52aed](4e52aed))
* missed renaming ([c71741f](c71741f))
* renaming ([9585d1a](9585d1a))
* renaming reference issues ([3adb41f](3adb41f))
* restore process duplicates did peers ([#173](#173)) ([da747c5](da747c5))
* restore process from swift/ts jwe ([#175](#175)) ([b9571b2](b9571b2))
* Upgrade gradle ([#140](#140)) ([1e11da4](1e11da4))
* wrong casting KeyPair instead of PublicKey ([#139](#139)) ([7d0a5c9](7d0a5c9))
* zkp presentation could not be verified on the agent ([#157](#157)) ([3319dc4](3319dc4))

### Features

* Anoncreds verification ([#186](#186)) ([52c3895](52c3895))
* back up and restore ([#159](#159)) ([dcb10fd](dcb10fd))
* contactless presentation request ([#192](#192)) ([e03ebbc](e03ebbc))
* experimental opt-in for mediator live mode ([#150](#150)) ([0e30346](0e30346))
* **pollux:** add sdjwt capability ([#174](#174)) ([cd3baf8](cd3baf8))
* revocation notification event ([#148](#148)) ([e1753ec](e1753ec))
* support for mediator live mode (websocket) ([#147](#147)) ([823b8b3](823b8b3))
* verification from SDK ([#155](#155)) ([61720b8](61720b8))
* Verification JWT Revocation registry check ([#165](#165)) ([755a7ef](755a7ef))
github-actions bot pushed a commit that referenced this pull request Sep 12, 2024
# [3.1.0](v3.0.1...v3.1.0) (2024-09-12)

### Bug Fixes

* anoncred verification and breaking changes missing ([#196](#196)) ([149adda](149adda))
* backup recovery was linking incorrectly dids with private keys ([#178](#178)) ([06e9a8f](06e9a8f))
* bitstring for revocation registry ([#188](#188)) ([22a2da9](22a2da9))
* DbConnection cannot be extended ([#169](#169)) ([82b03cc](82b03cc))
* e2e test broken after pull credential changed based on validUntil ([#158](#158)) ([f21df25](f21df25))
* JWT proof ([#163](#163)) ([4e52aed](4e52aed))
* missed renaming ([c71741f](c71741f))
* renaming ([9585d1a](9585d1a))
* renaming reference issues ([3adb41f](3adb41f))
* restore process duplicates did peers ([#173](#173)) ([da747c5](da747c5))
* restore process from swift/ts jwe ([#175](#175)) ([b9571b2](b9571b2))
* Upgrade gradle ([#140](#140)) ([1e11da4](1e11da4))
* wrong casting KeyPair instead of PublicKey ([#139](#139)) ([7d0a5c9](7d0a5c9))
* zkp presentation could not be verified on the agent ([#157](#157)) ([3319dc4](3319dc4))

### Features

* Anoncreds verification ([#186](#186)) ([52c3895](52c3895))
* back up and restore ([#159](#159)) ([dcb10fd](dcb10fd))
* contactless presentation request ([#192](#192)) ([e03ebbc](e03ebbc))
* experimental opt-in for mediator live mode ([#150](#150)) ([0e30346](0e30346))
* **pollux:** add sdjwt capability ([#174](#174)) ([cd3baf8](cd3baf8))
* revocation notification event ([#148](#148)) ([e1753ec](e1753ec))
* support for mediator live mode (websocket) ([#147](#147)) ([823b8b3](823b8b3))
* verification from SDK ([#155](#155)) ([61720b8](61720b8))
* Verification JWT Revocation registry check ([#165](#165)) ([755a7ef](755a7ef))
hyperledger-bot added a commit that referenced this pull request Sep 13, 2024
# [2.0.0](v1.0.0...v2.0.0) (2024-09-13)

* chore!: update did peer library version  ([#128](#128)) ([df3cd49](df3cd49))

### Bug Fixes

* adds env var for maven central publication ([#134](#134)) ([6ee16ad](6ee16ad))
* agent start and mediation achieved ([#60](#60)) ([98b6c42](98b6c42))
* anoncred verification and breaking changes missing ([#196](#196)) ([149adda](149adda))
* **ATL-4978:** fix OOB connection ([#79](#79)) ([411bcb3](411bcb3))
* ATL-5864 pr changes ([#109](#109)) ([48ca913](48ca913))
* backup recovery was linking incorrectly dids with private keys ([#178](#178)) ([06e9a8f](06e9a8f))
* base64 attachments and http correct request headers ([#85](#85)) ([f7d887c](f7d887c))
* bitstring for revocation registry ([#188](#188)) ([22a2da9](22a2da9))
* bump version for prism-agent v1.16 compatibility ([#99](#99)) ([48a0200](48a0200))
* create peer DID with updateMediator false does not ignore provided services ([#73](#73)) ([9bd7268](9bd7268))
* credentials duplicated when stored localy ([#69](#69)) ([1d63628](1d63628))
* DbConnection cannot be extended ([#169](#169)) ([82b03cc](82b03cc))
* delete unwanted comment from README.md ([#84](#84)) ([480dc86](480dc86))
* **DIDCommWrapper:** Crash when body is empty string ([#124](#124)) ([6be4add](6be4add))
* **docs:** Add general docs & code docs & CI ([7978f50](7978f50))
* e2e test broken after pull credential changed based on validUntil ([#158](#158)) ([f21df25](f21df25))
* **enhancements:** add @jvmoverloads for JWTJsonPayload ([#81](#81)) ([0f41fac](0f41fac))
* Fix dependencies to fully integrate with latest version of packages in prism-protos + protosLib. ([ccd2df8](ccd2df8))
* Fix key pair creation from private key for ED25519 ([#56](#56)) ([c3fe948](c3fe948))
* Fix key pair creation from private key for X25519 ([#57](#57)) ([eecaa92](eecaa92))
* Fix key pair creation from private key using SECP256K1 ([#55](#55)) ([57170c3](57170c3))
* Fix linting issues ([6e7dab6](6e7dab6))
* fixes demo app fetching job ([#110](#110)) ([85de871](85de871))
* Fixes for all committed code on main branch ([1d33dfa](1d33dfa))
* Implement test for key pair creation using mnemonics and seed for curve SECP256K1 ([#54](#54)) ([a87d65d](a87d65d))
* JWT proof ([#163](#163)) ([4e52aed](4e52aed))
* JWTJsonPayload fields are optional except ([#80](#80)) ([94b4c8f](94b4c8f))
* kmm agent up to date with swift public apis ([#67](#67)) ([fd1f5c8](fd1f5c8))
* Linting issue & project structure fixed ([b1953a0](b1953a0))
* make forward message and its body non internal ([#82](#82)) ([b9baa4b](b9baa4b))
* message model id generates a duplicity issue ([#86](#86)) ([55e7736](55e7736))
* missed renaming ([c71741f](c71741f))
* move hardcoded values into constants ([#72](#72)) ([5da8492](5da8492))
* override received message if already exists ([#87](#87)) ([bf64413](bf64413))
* pick up messages and mark as read ([#63](#63)) ([1ca24da](1ca24da))
* **pollux:** fix JWTPayload serlization & Update Error Handling ([#97](#97)) ([700f145](700f145))
* pr change request ATL-4965 ([#90](#90)) ([13c5e5e](13c5e5e))
* protolib ([957c563](957c563))
* release 4.0 ([#201](#201)) ([f4db465](f4db465))
* release 4.0 ([#202](#202)) ([122aeaa](122aeaa))
* release pipeline variable ([#135](#135)) ([1271809](1271809))
* remove private key storage duplicity ([#75](#75)) ([e4a1e9c](e4a1e9c))
* renaming ([9585d1a](9585d1a))
* renaming reference issues ([3adb41f](3adb41f))
* replace antlr with regex to solve did creation issues ([#114](#114)) ([7cd04d0](7cd04d0))
* request and achieve mediation ([#62](#62)) ([fe80e19](fe80e19))
* restore process duplicates did peers ([#173](#173)) ([da747c5](da747c5))
* restore process from swift/ts jwe ([#175](#175)) ([b9571b2](b9571b2))
* **sdk:** replace GlobalScope with correct coroutine scope ([c067f4c](c067f4c))
* Upgrade gradle ([#140](#140)) ([1e11da4](1e11da4))
* workaround PrismSdkInternal ([38860cc](38860cc))
* wrong casting KeyPair instead of PublicKey ([#139](#139)) ([7d0a5c9](7d0a5c9))
* zkp presentation could not be verified on the agent ([#157](#157)) ([3319dc4](3319dc4))

### Features

* [ALT-3065] Agent ability to start listening for messages ([#42](#42)) ([5af34da](5af34da))
* [ATL-2994] [Wallet SDK] Define domain interfaces and models ([#3](#3)) ([2c86672](2c86672))
* [ATL-2996] Add lifecycle management to the prism agent ([#39](#39)) ([abfa088](abfa088))
* [ATL-3001] Add out of band invitation protocol and out of band parse message ([#40](#40)) ([fdd164f](fdd164f))
* [ATL-3002&ATL-3003] Implement connection protocol, accept and request ([#41](#41)) ([79b25c5](79b25c5))
* [ATL-3066] Implement logic for received messages ([#43](#43)) ([1c728eb](1c728eb))
* [ATL-3103] Implement Request presentation and Presentation logic ([#46](#46)) ([2acaa79](2acaa79))
* [ATL-3104] Proof presentation implemented ([#47](#47)) ([fdd34b2](fdd34b2))
* Add CredentialPreview and CredentialFormat data classes to implement the IssueCredential Protocol. ([#26](#26)) ([3710bab](3710bab))
* add logging component to the sdk ([#77](#77)) ([f9bc7e1](f9bc7e1))
* add protobuf-gradle-plugin ([88f733f](88f733f))
* **agent:** add extra headers that were missing ([#96](#96)) ([44df235](44df235))
* **agent:** add mediation and ability to send messages ([4701ed0](4701ed0))
* **agent:** add mediation grant message ([c2888fa](c2888fa))
* **agent:** add mediator key list update ([613d6a1](613d6a1))
* **agent:** add mediator request message ([1c40530](1c40530))
* **agent:** add mediator request message ([#5](#5)) ([cd2db41](cd2db41))
* **agent:** add prism agent and create did functionalities ([03ca5cf](03ca5cf))
* **Agent:** Implement Credential Issue Protocol in PrismAgent ([#27](#27)) ([d30d6f0](d30d6f0))
* **agent:** Implementation Onboarding invitation on Agent ([#18](#18)) ([48413e6](48413e6))
* **Agent:** Logic to parse out of band invitations ([#25](#25)) ([1ad5e11](1ad5e11))
* **Agent:** Persist key pairs into local storage ([#22](#22)) ([62e42df](62e42df))
* anoncreds receive and store ([#91](#91)) ([4d4ce9f](4d4ce9f))
* Anoncreds verification ([#186](#186)) ([52c3895](52c3895))
* **Apollo:** Ed25519 key pair generation ([4411cdd](4411cdd))
* back up and restore ([#159](#159)) ([dcb10fd](dcb10fd))
* **build:** remove grpc dependencies and simplify protobufs ([8a980a5](8a980a5))
* **castor:** Add peerDID Create method + tests. ([#15](#15)) ([485b557](485b557))
* **castor:** Add peerDID resolver + tests. ([#14](#14)) ([df39ea3](df39ea3))
* **castor:** Resolve LongFormatPrismDIDs in Castor ([#23](#23)) ([e07a79f](e07a79f))
* contactless presentation request ([#192](#192)) ([e03ebbc](e03ebbc))
* credential abstraction ([#88](#88)) ([505e022](505e022))
* cryptographic abstraction and apollo integration ([#100](#100)) ([e0f5e05](e0f5e05))
* **didparser:** Adding amtlr4 grammar did parser with specification and tests ([#10](#10)) ([7bd96ce](7bd96ce))
* **didUrlParser:** add did url parser and g4 grammar ([#12](#12)) ([2b221d1](2b221d1))
* document models and make some classes internal ([#78](#78)) ([358008e](358008e))
* document the latest development ([#115](#115)) ([4b7361c](4b7361c))
* experimental opt-in for mediator live mode ([#150](#150)) ([0e30346](0e30346))
* implement derivableKey an include it into Secp256k1PrivateKey ([#112](#112)) ([f69a421](f69a421))
* Implement ED25519 - Keypair generation ([#52](#52)) ([1e6c6e6](1e6c6e6))
* Implement sign and verify for Ed25519 ([#59](#59)) ([6bb1564](6bb1564))
* Implement X25519 - Keypair generation ([83f80c8](83f80c8))
* Importable/Exportable keys ([#107](#107)) ([7597b91](7597b91))
* improve error handling ([#74](#74)) ([af71c74](af71c74))
* integrate authenticate-sdk, buildSrc (Deps + Version globals), Protos and basic dependencies from old SDK ([0c1fdfd](0c1fdfd))
* KeyRestoration ([#111](#111)) ([34e589e](34e589e))
* mediator DID can be updated from sample app UI ([#106](#106)) ([7da5a36](7da5a36))
* **mercury:** add default secrets resolver ([#34](#34)) ([bfa0d78](bfa0d78))
* **mercury:** add extra headers and add to pickup return route ([#94](#94)) ([4c3461e](4c3461e))
* **Mercury:** Orchestration and tests ([#49](#49)) ([935c13f](935c13f))
* Out of Band ([#64](#64)) ([47d2d45](47d2d45))
* **pluto db:** Implement db ([#13](#13)) ([a7ec245](a7ec245))
* **Pluto:** Add back flows to add reactiveness to the DB  ([#38](#38)) ([ea35a4b](ea35a4b))
* **pluto:** Implementation of pluto ([#17](#17)) ([ca2896b](ca2896b))
* **pollux:** add create credential request and presentation jwt string and prism agent higher functionality ([f61be88](f61be88))
* **pollux:** add create credential request and presentation jwt string and prism agent higher functionality ([4b59854](4b59854))
* **pollux:** add sdjwt capability ([#174](#174)) ([cd3baf8](cd3baf8))
* **Prism Agent:** Add connection data persistency ([#37](#37)) ([46b8461](46b8461))
* **PrismAgent:** Implement message signature ([#21](#21)) ([fac2bf8](fac2bf8))
* project init ([5fb48c2](5fb48c2))
* receive and process presentation request ([#120](#120)) ([ddb8940](ddb8940))
* release first production version ([22f4948](22f4948))
* revocation notification event ([#148](#148)) ([e1753ec](e1753ec))
* Sample app with full flow ([#66](#66)) ([fa94311](fa94311))
* support for mediator live mode (websocket) ([#147](#147)) ([823b8b3](823b8b3))
* Update README.md ([#83](#83)) ([39c0d39](39c0d39))
* verification from SDK ([#155](#155)) ([61720b8](61720b8))
* Verification JWT Revocation registry check ([#165](#165)) ([755a7ef](755a7ef))
* Wallet SDK init ([17bdfdb](17bdfdb))
* wallet-core module init ([b99add5](b99add5))
* X25519 ([#48](#48)) ([0c2e02c](0c2e02c))

### BREAKING CHANGES

* Support OEA 1.26+ due to updates on the PeerDID Specs changes.
Co-authored-by: Ahmed Moussa <ahmed.moussa@iohk.io>
Signed-off-by: Cristian G <cristian.castro@iohk.io>
* first release version
Co-authored-by: Ahmed Moussa <ahmed.moussa@iohk.io>
Signed-off-by: Anton Baliasnikov <Anton.baliasnikov@iohk.io>
hyperledger-bot added a commit that referenced this pull request Sep 13, 2024
# [2.0.0](v1.0.0...v2.0.0) (2024-09-13)

* chore!: update did peer library version  ([#128](#128)) ([df3cd49](df3cd49))

### Bug Fixes

* adds env var for maven central publication ([#134](#134)) ([6ee16ad](6ee16ad))
* agent start and mediation achieved ([#60](#60)) ([98b6c42](98b6c42))
* anoncred verification and breaking changes missing ([#196](#196)) ([6b0fb55](6b0fb55))
* **ATL-4978:** fix OOB connection ([#79](#79)) ([411bcb3](411bcb3))
* ATL-5864 pr changes ([#109](#109)) ([48ca913](48ca913))
* backup recovery was linking incorrectly dids with private keys ([#178](#178)) ([06e9a8f](06e9a8f))
* base64 attachments and http correct request headers ([#85](#85)) ([f7d887c](f7d887c))
* bitstring for revocation registry ([#188](#188)) ([22a2da9](22a2da9))
* bump version for prism-agent v1.16 compatibility ([#99](#99)) ([48a0200](48a0200))
* create peer DID with updateMediator false does not ignore provided services ([#73](#73)) ([9bd7268](9bd7268))
* credentials duplicated when stored localy ([#69](#69)) ([1d63628](1d63628))
* DbConnection cannot be extended ([#169](#169)) ([82b03cc](82b03cc))
* delete unwanted comment from README.md ([#84](#84)) ([480dc86](480dc86))
* **DIDCommWrapper:** Crash when body is empty string ([#124](#124)) ([6be4add](6be4add))
* **docs:** Add general docs & code docs & CI ([7978f50](7978f50))
* e2e test broken after pull credential changed based on validUntil ([#158](#158)) ([f21df25](f21df25))
* **enhancements:** add @jvmoverloads for JWTJsonPayload ([#81](#81)) ([0f41fac](0f41fac))
* Fix dependencies to fully integrate with latest version of packages in prism-protos + protosLib. ([ccd2df8](ccd2df8))
* Fix key pair creation from private key for ED25519 ([#56](#56)) ([c3fe948](c3fe948))
* Fix key pair creation from private key for X25519 ([#57](#57)) ([eecaa92](eecaa92))
* Fix key pair creation from private key using SECP256K1 ([#55](#55)) ([57170c3](57170c3))
* Fix linting issues ([6e7dab6](6e7dab6))
* fixes demo app fetching job ([#110](#110)) ([85de871](85de871))
* Fixes for all committed code on main branch ([1d33dfa](1d33dfa))
* Implement test for key pair creation using mnemonics and seed for curve SECP256K1 ([#54](#54)) ([a87d65d](a87d65d))
* JWT proof ([#163](#163)) ([4e52aed](4e52aed))
* JWTJsonPayload fields are optional except ([#80](#80)) ([94b4c8f](94b4c8f))
* kmm agent up to date with swift public apis ([#67](#67)) ([fd1f5c8](fd1f5c8))
* Linting issue & project structure fixed ([b1953a0](b1953a0))
* make forward message and its body non internal ([#82](#82)) ([b9baa4b](b9baa4b))
* message model id generates a duplicity issue ([#86](#86)) ([55e7736](55e7736))
* missed renaming ([c71741f](c71741f))
* move hardcoded values into constants ([#72](#72)) ([5da8492](5da8492))
* override received message if already exists ([#87](#87)) ([bf64413](bf64413))
* pick up messages and mark as read ([#63](#63)) ([1ca24da](1ca24da))
* **pollux:** fix JWTPayload serlization & Update Error Handling ([#97](#97)) ([700f145](700f145))
* pr change request ATL-4965 ([#90](#90)) ([13c5e5e](13c5e5e))
* protolib ([957c563](957c563))
* release pipeline variable ([#135](#135)) ([1271809](1271809))
* remove private key storage duplicity ([#75](#75)) ([e4a1e9c](e4a1e9c))
* renaming ([9585d1a](9585d1a))
* renaming reference issues ([3adb41f](3adb41f))
* replace antlr with regex to solve did creation issues ([#114](#114)) ([7cd04d0](7cd04d0))
* request and achieve mediation ([#62](#62)) ([fe80e19](fe80e19))
* restore process duplicates did peers ([#173](#173)) ([da747c5](da747c5))
* restore process from swift/ts jwe ([#175](#175)) ([b9571b2](b9571b2))
* **sdk:** replace GlobalScope with correct coroutine scope ([c067f4c](c067f4c))
* Upgrade gradle ([#140](#140)) ([1e11da4](1e11da4))
* workaround PrismSdkInternal ([38860cc](38860cc))
* wrong casting KeyPair instead of PublicKey ([#139](#139)) ([7d0a5c9](7d0a5c9))
* zkp presentation could not be verified on the agent ([#157](#157)) ([3319dc4](3319dc4))

### Features

* [ALT-3065] Agent ability to start listening for messages ([#42](#42)) ([5af34da](5af34da))
* [ATL-2994] [Wallet SDK] Define domain interfaces and models ([#3](#3)) ([2c86672](2c86672))
* [ATL-2996] Add lifecycle management to the prism agent ([#39](#39)) ([abfa088](abfa088))
* [ATL-3001] Add out of band invitation protocol and out of band parse message ([#40](#40)) ([fdd164f](fdd164f))
* [ATL-3002&ATL-3003] Implement connection protocol, accept and request ([#41](#41)) ([79b25c5](79b25c5))
* [ATL-3066] Implement logic for received messages ([#43](#43)) ([1c728eb](1c728eb))
* [ATL-3103] Implement Request presentation and Presentation logic ([#46](#46)) ([2acaa79](2acaa79))
* [ATL-3104] Proof presentation implemented ([#47](#47)) ([fdd34b2](fdd34b2))
* Add CredentialPreview and CredentialFormat data classes to implement the IssueCredential Protocol. ([#26](#26)) ([3710bab](3710bab))
* add logging component to the sdk ([#77](#77)) ([f9bc7e1](f9bc7e1))
* add protobuf-gradle-plugin ([88f733f](88f733f))
* **agent:** add extra headers that were missing ([#96](#96)) ([44df235](44df235))
* **agent:** add mediation and ability to send messages ([4701ed0](4701ed0))
* **agent:** add mediation grant message ([c2888fa](c2888fa))
* **agent:** add mediator key list update ([613d6a1](613d6a1))
* **agent:** add mediator request message ([1c40530](1c40530))
* **agent:** add mediator request message ([#5](#5)) ([cd2db41](cd2db41))
* **agent:** add prism agent and create did functionalities ([03ca5cf](03ca5cf))
* **Agent:** Implement Credential Issue Protocol in PrismAgent ([#27](#27)) ([d30d6f0](d30d6f0))
* **agent:** Implementation Onboarding invitation on Agent ([#18](#18)) ([48413e6](48413e6))
* **Agent:** Logic to parse out of band invitations ([#25](#25)) ([1ad5e11](1ad5e11))
* **Agent:** Persist key pairs into local storage ([#22](#22)) ([62e42df](62e42df))
* anoncreds receive and store ([#91](#91)) ([4d4ce9f](4d4ce9f))
* Anoncreds verification ([#186](#186)) ([52c3895](52c3895))
* **Apollo:** Ed25519 key pair generation ([4411cdd](4411cdd))
* back up and restore ([#159](#159)) ([dcb10fd](dcb10fd))
* **build:** remove grpc dependencies and simplify protobufs ([8a980a5](8a980a5))
* **castor:** Add peerDID Create method + tests. ([#15](#15)) ([485b557](485b557))
* **castor:** Add peerDID resolver + tests. ([#14](#14)) ([df39ea3](df39ea3))
* **castor:** Resolve LongFormatPrismDIDs in Castor ([#23](#23)) ([e07a79f](e07a79f))
* contactless presentation request ([#192](#192)) ([e03ebbc](e03ebbc))
* credential abstraction ([#88](#88)) ([505e022](505e022))
* cryptographic abstraction and apollo integration ([#100](#100)) ([e0f5e05](e0f5e05))
* **didparser:** Adding amtlr4 grammar did parser with specification and tests ([#10](#10)) ([7bd96ce](7bd96ce))
* **didUrlParser:** add did url parser and g4 grammar ([#12](#12)) ([2b221d1](2b221d1))
* document models and make some classes internal ([#78](#78)) ([358008e](358008e))
* document the latest development ([#115](#115)) ([4b7361c](4b7361c))
* experimental opt-in for mediator live mode ([#150](#150)) ([0e30346](0e30346))
* implement derivableKey an include it into Secp256k1PrivateKey ([#112](#112)) ([f69a421](f69a421))
* Implement ED25519 - Keypair generation ([#52](#52)) ([1e6c6e6](1e6c6e6))
* Implement sign and verify for Ed25519 ([#59](#59)) ([6bb1564](6bb1564))
* Implement X25519 - Keypair generation ([83f80c8](83f80c8))
* Importable/Exportable keys ([#107](#107)) ([7597b91](7597b91))
* improve error handling ([#74](#74)) ([af71c74](af71c74))
* integrate authenticate-sdk, buildSrc (Deps + Version globals), Protos and basic dependencies from old SDK ([0c1fdfd](0c1fdfd))
* KeyRestoration ([#111](#111)) ([34e589e](34e589e))
* mediator DID can be updated from sample app UI ([#106](#106)) ([7da5a36](7da5a36))
* **mercury:** add default secrets resolver ([#34](#34)) ([bfa0d78](bfa0d78))
* **mercury:** add extra headers and add to pickup return route ([#94](#94)) ([4c3461e](4c3461e))
* **Mercury:** Orchestration and tests ([#49](#49)) ([935c13f](935c13f))
* Out of Band ([#64](#64)) ([47d2d45](47d2d45))
* **pluto db:** Implement db ([#13](#13)) ([a7ec245](a7ec245))
* **Pluto:** Add back flows to add reactiveness to the DB  ([#38](#38)) ([ea35a4b](ea35a4b))
* **pluto:** Implementation of pluto ([#17](#17)) ([ca2896b](ca2896b))
* **pollux:** add create credential request and presentation jwt string and prism agent higher functionality ([f61be88](f61be88))
* **pollux:** add create credential request and presentation jwt string and prism agent higher functionality ([4b59854](4b59854))
* **pollux:** add sdjwt capability ([#174](#174)) ([cd3baf8](cd3baf8))
* **Prism Agent:** Add connection data persistency ([#37](#37)) ([46b8461](46b8461))
* **PrismAgent:** Implement message signature ([#21](#21)) ([fac2bf8](fac2bf8))
* project init ([5fb48c2](5fb48c2))
* receive and process presentation request ([#120](#120)) ([ddb8940](ddb8940))
* release first production version ([22f4948](22f4948))
* revocation notification event ([#148](#148)) ([e1753ec](e1753ec))
* Sample app with full flow ([#66](#66)) ([fa94311](fa94311))
* support for mediator live mode (websocket) ([#147](#147)) ([823b8b3](823b8b3))
* Update README.md ([#83](#83)) ([39c0d39](39c0d39))
* verification from SDK ([#155](#155)) ([61720b8](61720b8))
* Verification JWT Revocation registry check ([#165](#165)) ([755a7ef](755a7ef))
* Wallet SDK init ([17bdfdb](17bdfdb))
* wallet-core module init ([b99add5](b99add5))
* X25519 ([#48](#48)) ([0c2e02c](0c2e02c))

### BREAKING CHANGES

* Pollux Module
- `restoreCredential` now requires a third parameter `revoked`.
- Removed: `createVerifiablePresentationJWT`, `createVerifiablePresentationAnoncred`, `getCredentialDefinition`, and `getSchema`.
- Added new method: `processCredentialRequestSDJWT`.
- `PolluxImpl` now implements `processCredentialRequestSDJWT`.
- Pollux methods `parseCredential` and `processCredentialRequestAnoncreds` now accept `linkSecret: String` instead of `linkSecret: LinkSecret`.

ConnectionManager
- `ConnectionManager` is now an interface, and `ConnectionManagerImpl` is the new implementation.
- `ConnectionManager` construct now requires a Pollux instance.

Edge Agent (formerly PrismAgent)
- The constructor now requires a new parameter: `AgentOptions`.
- `PrismAgent` renamed to `EdgeAgent`.
- `preparePresentationForRequestProof` now expects a `Credential` of type T, where T can be `Credential` or `ProvableCredential`.

JWT Verifiable Credential
- The `JWTVerifiableCredential` constructor replaces the parameter `credentialStatus: VerifiableCredentialTypeContainer` with `credentialStatus: CredentialStatus`.

Pluto Module
- `getDIDPrivateKeysByDID` and `getDIDPrivateKeyByID` now return `Flow<List<StorablePrivateKey?>>`.
- New method added: `getAllPrivateKeys`.
- `PlutoImpl` deprecated `storeCredentialMetadata(name: String, metadata: CredentialRequestMeta)` and replaced it with `storeCredentialMetadata(name: String, linkSecretName: String, json: String)`.

Apollo Module
- `restorePrivateKey(storablePrivateKey: StorablePrivateKey): PrivateKey` changed to `restorePrivateKey(restorationIdentifier: String, privateKeyData: String): PrivateKey`.

DbConnection
- `DbConnection` is now an interface.
- `DbConnectionImpl` is the new instance used for DB connections.

Presentation Submissions
- `createPresentationSubmission` parameter `presentationDefinitionRequest: PresentationDefinitionRequest` changed to `presentationDefinitionRequestString: String`, and the return type changed to `String`.
- New methods added: `createJWTPresentationSubmission`, `createAnoncredsPresentationSubmission`, and `getSchema`.
- `createPresentationDefinitionRequest` now returns a `String`.

OutOfBandInvitation
- New constructor parameters: `attachments`, `createdTime`, and `expiresTime`.

Module Renaming
- `AtalaPrismSDK` renamed to `EdgeAgentSDK`.
- Package name changed from `io.iohk.atala.prism.walletsdk` to `org.hyperledger.identus.walletsdk`.
- `publishedMavenId` changed from `io.iohk.atala.prism.walletsdk` to `org.hyperledger.identus`.
- Namespace changed from `org.hyperledger.identus.walletsdk` to `org.hyperledger.identus`.

Signed-off-by: Cristian G <cristian.castro@iohk.io>
Signed-off-by: Allain Magyar <allain.magyar@iohk.io>
* Support OEA 1.26+ due to updates on the PeerDID Specs changes.
Co-authored-by: Ahmed Moussa <ahmed.moussa@iohk.io>
Signed-off-by: Cristian G <cristian.castro@iohk.io>
* first release version
Co-authored-by: Ahmed Moussa <ahmed.moussa@iohk.io>
Signed-off-by: Anton Baliasnikov <Anton.baliasnikov@iohk.io>
hyperledger-bot added a commit that referenced this pull request Sep 13, 2024
# [2.0.0](v1.0.0...v2.0.0) (2024-09-13)

* chore!: update did peer library version  ([#128](#128)) ([df3cd49](df3cd49))

### Bug Fixes

* adds env var for maven central publication ([#134](#134)) ([6ee16ad](6ee16ad))
* agent start and mediation achieved ([#60](#60)) ([98b6c42](98b6c42))
* anoncred verification and breaking changes missing ([#196](#196)) ([6b0fb55](6b0fb55))
* **ATL-4978:** fix OOB connection ([#79](#79)) ([411bcb3](411bcb3))
* ATL-5864 pr changes ([#109](#109)) ([48ca913](48ca913))
* backup recovery was linking incorrectly dids with private keys ([#178](#178)) ([06e9a8f](06e9a8f))
* base64 attachments and http correct request headers ([#85](#85)) ([f7d887c](f7d887c))
* bitstring for revocation registry ([#188](#188)) ([22a2da9](22a2da9))
* bump version for prism-agent v1.16 compatibility ([#99](#99)) ([48a0200](48a0200))
* create peer DID with updateMediator false does not ignore provided services ([#73](#73)) ([9bd7268](9bd7268))
* credentials duplicated when stored localy ([#69](#69)) ([1d63628](1d63628))
* DbConnection cannot be extended ([#169](#169)) ([82b03cc](82b03cc))
* delete unwanted comment from README.md ([#84](#84)) ([480dc86](480dc86))
* **DIDCommWrapper:** Crash when body is empty string ([#124](#124)) ([6be4add](6be4add))
* **docs:** Add general docs & code docs & CI ([7978f50](7978f50))
* e2e test broken after pull credential changed based on validUntil ([#158](#158)) ([f21df25](f21df25))
* **enhancements:** add @jvmoverloads for JWTJsonPayload ([#81](#81)) ([0f41fac](0f41fac))
* Fix dependencies to fully integrate with latest version of packages in prism-protos + protosLib. ([ccd2df8](ccd2df8))
* Fix key pair creation from private key for ED25519 ([#56](#56)) ([c3fe948](c3fe948))
* Fix key pair creation from private key for X25519 ([#57](#57)) ([eecaa92](eecaa92))
* Fix key pair creation from private key using SECP256K1 ([#55](#55)) ([57170c3](57170c3))
* Fix linting issues ([6e7dab6](6e7dab6))
* fixes demo app fetching job ([#110](#110)) ([85de871](85de871))
* Fixes for all committed code on main branch ([1d33dfa](1d33dfa))
* Implement test for key pair creation using mnemonics and seed for curve SECP256K1 ([#54](#54)) ([a87d65d](a87d65d))
* JWT proof ([#163](#163)) ([4e52aed](4e52aed))
* JWTJsonPayload fields are optional except ([#80](#80)) ([94b4c8f](94b4c8f))
* kmm agent up to date with swift public apis ([#67](#67)) ([fd1f5c8](fd1f5c8))
* Linting issue & project structure fixed ([b1953a0](b1953a0))
* make forward message and its body non internal ([#82](#82)) ([b9baa4b](b9baa4b))
* message model id generates a duplicity issue ([#86](#86)) ([55e7736](55e7736))
* missed renaming ([c71741f](c71741f))
* move hardcoded values into constants ([#72](#72)) ([5da8492](5da8492))
* override received message if already exists ([#87](#87)) ([bf64413](bf64413))
* pick up messages and mark as read ([#63](#63)) ([1ca24da](1ca24da))
* **pollux:** fix JWTPayload serlization & Update Error Handling ([#97](#97)) ([700f145](700f145))
* pr change request ATL-4965 ([#90](#90)) ([13c5e5e](13c5e5e))
* protolib ([957c563](957c563))
* release pipeline variable ([#135](#135)) ([1271809](1271809))
* remove private key storage duplicity ([#75](#75)) ([e4a1e9c](e4a1e9c))
* renaming ([9585d1a](9585d1a))
* renaming reference issues ([3adb41f](3adb41f))
* replace antlr with regex to solve did creation issues ([#114](#114)) ([7cd04d0](7cd04d0))
* request and achieve mediation ([#62](#62)) ([fe80e19](fe80e19))
* restore process duplicates did peers ([#173](#173)) ([da747c5](da747c5))
* restore process from swift/ts jwe ([#175](#175)) ([b9571b2](b9571b2))
* **sdk:** replace GlobalScope with correct coroutine scope ([c067f4c](c067f4c))
* Upgrade gradle ([#140](#140)) ([1e11da4](1e11da4))
* workaround PrismSdkInternal ([38860cc](38860cc))
* wrong casting KeyPair instead of PublicKey ([#139](#139)) ([7d0a5c9](7d0a5c9))
* zkp presentation could not be verified on the agent ([#157](#157)) ([3319dc4](3319dc4))

### Features

* [ALT-3065] Agent ability to start listening for messages ([#42](#42)) ([5af34da](5af34da))
* [ATL-2994] [Wallet SDK] Define domain interfaces and models ([#3](#3)) ([2c86672](2c86672))
* [ATL-2996] Add lifecycle management to the prism agent ([#39](#39)) ([abfa088](abfa088))
* [ATL-3001] Add out of band invitation protocol and out of band parse message ([#40](#40)) ([fdd164f](fdd164f))
* [ATL-3002&ATL-3003] Implement connection protocol, accept and request ([#41](#41)) ([79b25c5](79b25c5))
* [ATL-3066] Implement logic for received messages ([#43](#43)) ([1c728eb](1c728eb))
* [ATL-3103] Implement Request presentation and Presentation logic ([#46](#46)) ([2acaa79](2acaa79))
* [ATL-3104] Proof presentation implemented ([#47](#47)) ([fdd34b2](fdd34b2))
* Add CredentialPreview and CredentialFormat data classes to implement the IssueCredential Protocol. ([#26](#26)) ([3710bab](3710bab))
* add logging component to the sdk ([#77](#77)) ([f9bc7e1](f9bc7e1))
* add protobuf-gradle-plugin ([88f733f](88f733f))
* **agent:** add extra headers that were missing ([#96](#96)) ([44df235](44df235))
* **agent:** add mediation and ability to send messages ([4701ed0](4701ed0))
* **agent:** add mediation grant message ([c2888fa](c2888fa))
* **agent:** add mediator key list update ([613d6a1](613d6a1))
* **agent:** add mediator request message ([1c40530](1c40530))
* **agent:** add mediator request message ([#5](#5)) ([cd2db41](cd2db41))
* **agent:** add prism agent and create did functionalities ([03ca5cf](03ca5cf))
* **Agent:** Implement Credential Issue Protocol in PrismAgent ([#27](#27)) ([d30d6f0](d30d6f0))
* **agent:** Implementation Onboarding invitation on Agent ([#18](#18)) ([48413e6](48413e6))
* **Agent:** Logic to parse out of band invitations ([#25](#25)) ([1ad5e11](1ad5e11))
* **Agent:** Persist key pairs into local storage ([#22](#22)) ([62e42df](62e42df))
* anoncreds receive and store ([#91](#91)) ([4d4ce9f](4d4ce9f))
* Anoncreds verification ([#186](#186)) ([52c3895](52c3895))
* **Apollo:** Ed25519 key pair generation ([4411cdd](4411cdd))
* back up and restore ([#159](#159)) ([dcb10fd](dcb10fd))
* **build:** remove grpc dependencies and simplify protobufs ([8a980a5](8a980a5))
* **castor:** Add peerDID Create method + tests. ([#15](#15)) ([485b557](485b557))
* **castor:** Add peerDID resolver + tests. ([#14](#14)) ([df39ea3](df39ea3))
* **castor:** Resolve LongFormatPrismDIDs in Castor ([#23](#23)) ([e07a79f](e07a79f))
* contactless presentation request ([#192](#192)) ([e03ebbc](e03ebbc))
* credential abstraction ([#88](#88)) ([505e022](505e022))
* cryptographic abstraction and apollo integration ([#100](#100)) ([e0f5e05](e0f5e05))
* **didparser:** Adding amtlr4 grammar did parser with specification and tests ([#10](#10)) ([7bd96ce](7bd96ce))
* **didUrlParser:** add did url parser and g4 grammar ([#12](#12)) ([2b221d1](2b221d1))
* document models and make some classes internal ([#78](#78)) ([358008e](358008e))
* document the latest development ([#115](#115)) ([4b7361c](4b7361c))
* experimental opt-in for mediator live mode ([#150](#150)) ([0e30346](0e30346))
* implement derivableKey an include it into Secp256k1PrivateKey ([#112](#112)) ([f69a421](f69a421))
* Implement ED25519 - Keypair generation ([#52](#52)) ([1e6c6e6](1e6c6e6))
* Implement sign and verify for Ed25519 ([#59](#59)) ([6bb1564](6bb1564))
* Implement X25519 - Keypair generation ([83f80c8](83f80c8))
* Importable/Exportable keys ([#107](#107)) ([7597b91](7597b91))
* improve error handling ([#74](#74)) ([af71c74](af71c74))
* integrate authenticate-sdk, buildSrc (Deps + Version globals), Protos and basic dependencies from old SDK ([0c1fdfd](0c1fdfd))
* KeyRestoration ([#111](#111)) ([34e589e](34e589e))
* mediator DID can be updated from sample app UI ([#106](#106)) ([7da5a36](7da5a36))
* **mercury:** add default secrets resolver ([#34](#34)) ([bfa0d78](bfa0d78))
* **mercury:** add extra headers and add to pickup return route ([#94](#94)) ([4c3461e](4c3461e))
* **Mercury:** Orchestration and tests ([#49](#49)) ([935c13f](935c13f))
* Out of Band ([#64](#64)) ([47d2d45](47d2d45))
* **pluto db:** Implement db ([#13](#13)) ([a7ec245](a7ec245))
* **Pluto:** Add back flows to add reactiveness to the DB  ([#38](#38)) ([ea35a4b](ea35a4b))
* **pluto:** Implementation of pluto ([#17](#17)) ([ca2896b](ca2896b))
* **pollux:** add create credential request and presentation jwt string and prism agent higher functionality ([f61be88](f61be88))
* **pollux:** add create credential request and presentation jwt string and prism agent higher functionality ([4b59854](4b59854))
* **pollux:** add sdjwt capability ([#174](#174)) ([cd3baf8](cd3baf8))
* **Prism Agent:** Add connection data persistency ([#37](#37)) ([46b8461](46b8461))
* **PrismAgent:** Implement message signature ([#21](#21)) ([fac2bf8](fac2bf8))
* project init ([5fb48c2](5fb48c2))
* receive and process presentation request ([#120](#120)) ([ddb8940](ddb8940))
* release first production version ([22f4948](22f4948))
* revocation notification event ([#148](#148)) ([e1753ec](e1753ec))
* Sample app with full flow ([#66](#66)) ([fa94311](fa94311))
* support for mediator live mode (websocket) ([#147](#147)) ([823b8b3](823b8b3))
* Update README.md ([#83](#83)) ([39c0d39](39c0d39))
* verification from SDK ([#155](#155)) ([61720b8](61720b8))
* Verification JWT Revocation registry check ([#165](#165)) ([755a7ef](755a7ef))
* Wallet SDK init ([17bdfdb](17bdfdb))
* wallet-core module init ([b99add5](b99add5))
* X25519 ([#48](#48)) ([0c2e02c](0c2e02c))

### BREAKING CHANGES

* Pollux Module
- `restoreCredential` now requires a third parameter `revoked`.
- Removed: `createVerifiablePresentationJWT`, `createVerifiablePresentationAnoncred`, `getCredentialDefinition`, and `getSchema`.
- Added new method: `processCredentialRequestSDJWT`.
- `PolluxImpl` now implements `processCredentialRequestSDJWT`.
- Pollux methods `parseCredential` and `processCredentialRequestAnoncreds` now accept `linkSecret: String` instead of `linkSecret: LinkSecret`.

ConnectionManager
- `ConnectionManager` is now an interface, and `ConnectionManagerImpl` is the new implementation.
- `ConnectionManager` construct now requires a Pollux instance.

Edge Agent (formerly PrismAgent)
- The constructor now requires a new parameter: `AgentOptions`.
- `PrismAgent` renamed to `EdgeAgent`.
- `preparePresentationForRequestProof` now expects a `Credential` of type T, where T can be `Credential` or `ProvableCredential`.

JWT Verifiable Credential
- The `JWTVerifiableCredential` constructor replaces the parameter `credentialStatus: VerifiableCredentialTypeContainer` with `credentialStatus: CredentialStatus`.

Pluto Module
- `getDIDPrivateKeysByDID` and `getDIDPrivateKeyByID` now return `Flow<List<StorablePrivateKey?>>`.
- New method added: `getAllPrivateKeys`.
- `PlutoImpl` deprecated `storeCredentialMetadata(name: String, metadata: CredentialRequestMeta)` and replaced it with `storeCredentialMetadata(name: String, linkSecretName: String, json: String)`.

Apollo Module
- `restorePrivateKey(storablePrivateKey: StorablePrivateKey): PrivateKey` changed to `restorePrivateKey(restorationIdentifier: String, privateKeyData: String): PrivateKey`.

DbConnection
- `DbConnection` is now an interface.
- `DbConnectionImpl` is the new instance used for DB connections.

Presentation Submissions
- `createPresentationSubmission` parameter `presentationDefinitionRequest: PresentationDefinitionRequest` changed to `presentationDefinitionRequestString: String`, and the return type changed to `String`.
- New methods added: `createJWTPresentationSubmission`, `createAnoncredsPresentationSubmission`, and `getSchema`.
- `createPresentationDefinitionRequest` now returns a `String`.

OutOfBandInvitation
- New constructor parameters: `attachments`, `createdTime`, and `expiresTime`.

Module Renaming
- `AtalaPrismSDK` renamed to `EdgeAgentSDK`.
- Package name changed from `io.iohk.atala.prism.walletsdk` to `org.hyperledger.identus.walletsdk`.
- `publishedMavenId` changed from `io.iohk.atala.prism.walletsdk` to `org.hyperledger.identus`.
- Namespace changed from `org.hyperledger.identus.walletsdk` to `org.hyperledger.identus`.

Signed-off-by: Cristian G <cristian.castro@iohk.io>
Signed-off-by: Allain Magyar <allain.magyar@iohk.io>
* Support OEA 1.26+ due to updates on the PeerDID Specs changes.
Co-authored-by: Ahmed Moussa <ahmed.moussa@iohk.io>
Signed-off-by: Cristian G <cristian.castro@iohk.io>
* first release version
Co-authored-by: Ahmed Moussa <ahmed.moussa@iohk.io>
Signed-off-by: Anton Baliasnikov <Anton.baliasnikov@iohk.io>
amagyar-iohk pushed a commit that referenced this pull request Sep 13, 2024
# [4.0.0](v3.0.1...v4.0.0) (2024-09-13)

### Bug Fixes

* anoncred verification and breaking changes missing ([#196](#196)) ([6b0fb55](6b0fb55))
* backup recovery was linking incorrectly dids with private keys ([#178](#178)) ([06e9a8f](06e9a8f))
* bitstring for revocation registry ([#188](#188)) ([22a2da9](22a2da9))
* DbConnection cannot be extended ([#169](#169)) ([82b03cc](82b03cc))
* e2e test broken after pull credential changed based on validUntil ([#158](#158)) ([f21df25](f21df25))
* JWT proof ([#163](#163)) ([4e52aed](4e52aed))
* missed renaming ([c71741f](c71741f))
* renaming ([9585d1a](9585d1a))
* renaming reference issues ([3adb41f](3adb41f))
* restore process duplicates did peers ([#173](#173)) ([da747c5](da747c5))
* restore process from swift/ts jwe ([#175](#175)) ([b9571b2](b9571b2))
* Upgrade gradle ([#140](#140)) ([1e11da4](1e11da4))
* wrong casting KeyPair instead of PublicKey ([#139](#139)) ([7d0a5c9](7d0a5c9))
* zkp presentation could not be verified on the agent ([#157](#157)) ([3319dc4](3319dc4))

### Features

* Anoncreds verification ([#186](#186)) ([52c3895](52c3895))
* back up and restore ([#159](#159)) ([dcb10fd](dcb10fd))
* contactless presentation request ([#192](#192)) ([e03ebbc](e03ebbc))
* experimental opt-in for mediator live mode ([#150](#150)) ([0e30346](0e30346))
* **pollux:** add sdjwt capability ([#174](#174)) ([cd3baf8](cd3baf8))
* revocation notification event ([#148](#148)) ([e1753ec](e1753ec))
* support for mediator live mode (websocket) ([#147](#147)) ([823b8b3](823b8b3))
* verification from SDK ([#155](#155)) ([61720b8](61720b8))
* Verification JWT Revocation registry check ([#165](#165)) ([755a7ef](755a7ef))

### BREAKING CHANGES

* Pollux Module
- `restoreCredential` now requires a third parameter `revoked`.
- Removed: `createVerifiablePresentationJWT`, `createVerifiablePresentationAnoncred`, `getCredentialDefinition`, and `getSchema`.
- Added new method: `processCredentialRequestSDJWT`.
- `PolluxImpl` now implements `processCredentialRequestSDJWT`.
- Pollux methods `parseCredential` and `processCredentialRequestAnoncreds` now accept `linkSecret: String` instead of `linkSecret: LinkSecret`.

ConnectionManager
- `ConnectionManager` is now an interface, and `ConnectionManagerImpl` is the new implementation.
- `ConnectionManager` construct now requires a Pollux instance.

Edge Agent (formerly PrismAgent)
- The constructor now requires a new parameter: `AgentOptions`.
- `PrismAgent` renamed to `EdgeAgent`.
- `preparePresentationForRequestProof` now expects a `Credential` of type T, where T can be `Credential` or `ProvableCredential`.

JWT Verifiable Credential
- The `JWTVerifiableCredential` constructor replaces the parameter `credentialStatus: VerifiableCredentialTypeContainer` with `credentialStatus: CredentialStatus`.

Pluto Module
- `getDIDPrivateKeysByDID` and `getDIDPrivateKeyByID` now return `Flow<List<StorablePrivateKey?>>`.
- New method added: `getAllPrivateKeys`.
- `PlutoImpl` deprecated `storeCredentialMetadata(name: String, metadata: CredentialRequestMeta)` and replaced it with `storeCredentialMetadata(name: String, linkSecretName: String, json: String)`.

Apollo Module
- `restorePrivateKey(storablePrivateKey: StorablePrivateKey): PrivateKey` changed to `restorePrivateKey(restorationIdentifier: String, privateKeyData: String): PrivateKey`.

DbConnection
- `DbConnection` is now an interface.
- `DbConnectionImpl` is the new instance used for DB connections.

Presentation Submissions
- `createPresentationSubmission` parameter `presentationDefinitionRequest: PresentationDefinitionRequest` changed to `presentationDefinitionRequestString: String`, and the return type changed to `String`.
- New methods added: `createJWTPresentationSubmission`, `createAnoncredsPresentationSubmission`, and `getSchema`.
- `createPresentationDefinitionRequest` now returns a `String`.

OutOfBandInvitation
- New constructor parameters: `attachments`, `createdTime`, and `expiresTime`.

Module Renaming
- `AtalaPrismSDK` renamed to `EdgeAgentSDK`.
- Package name changed from `io.iohk.atala.prism.walletsdk` to `org.hyperledger.identus.walletsdk`.
- `publishedMavenId` changed from `io.iohk.atala.prism.walletsdk` to `org.hyperledger.identus`.
- Namespace changed from `org.hyperledger.identus.walletsdk` to `org.hyperledger.identus`.

Signed-off-by: Cristian G <cristian.castro@iohk.io>
Signed-off-by: Allain Magyar <allain.magyar@iohk.io>
hyperledger-bot added a commit that referenced this pull request Sep 13, 2024
# [4.0.0](v3.0.1...v4.0.0) (2024-09-13)

### Bug Fixes

* anoncred verification and breaking changes missing ([#196](#196)) ([6b0fb55](6b0fb55))
* backup recovery was linking incorrectly dids with private keys ([#178](#178)) ([06e9a8f](06e9a8f))
* bitstring for revocation registry ([#188](#188)) ([22a2da9](22a2da9))
* DbConnection cannot be extended ([#169](#169)) ([82b03cc](82b03cc))
* e2e test broken after pull credential changed based on validUntil ([#158](#158)) ([f21df25](f21df25))
* JWT proof ([#163](#163)) ([4e52aed](4e52aed))
* missed renaming ([c71741f](c71741f))
* renaming ([9585d1a](9585d1a))
* renaming reference issues ([3adb41f](3adb41f))
* restore process duplicates did peers ([#173](#173)) ([da747c5](da747c5))
* restore process from swift/ts jwe ([#175](#175)) ([b9571b2](b9571b2))
* Upgrade gradle ([#140](#140)) ([1e11da4](1e11da4))
* wrong casting KeyPair instead of PublicKey ([#139](#139)) ([7d0a5c9](7d0a5c9))
* zkp presentation could not be verified on the agent ([#157](#157)) ([3319dc4](3319dc4))

### Features

* Anoncreds verification ([#186](#186)) ([52c3895](52c3895))
* back up and restore ([#159](#159)) ([dcb10fd](dcb10fd))
* contactless presentation request ([#192](#192)) ([e03ebbc](e03ebbc))
* experimental opt-in for mediator live mode ([#150](#150)) ([0e30346](0e30346))
* **pollux:** add sdjwt capability ([#174](#174)) ([cd3baf8](cd3baf8))
* revocation notification event ([#148](#148)) ([e1753ec](e1753ec))
* support for mediator live mode (websocket) ([#147](#147)) ([823b8b3](823b8b3))
* verification from SDK ([#155](#155)) ([61720b8](61720b8))
* Verification JWT Revocation registry check ([#165](#165)) ([755a7ef](755a7ef))

### BREAKING CHANGES

* Pollux Module
- `restoreCredential` now requires a third parameter `revoked`.
- Removed: `createVerifiablePresentationJWT`, `createVerifiablePresentationAnoncred`, `getCredentialDefinition`, and `getSchema`.
- Added new method: `processCredentialRequestSDJWT`.
- `PolluxImpl` now implements `processCredentialRequestSDJWT`.
- Pollux methods `parseCredential` and `processCredentialRequestAnoncreds` now accept `linkSecret: String` instead of `linkSecret: LinkSecret`.

ConnectionManager
- `ConnectionManager` is now an interface, and `ConnectionManagerImpl` is the new implementation.
- `ConnectionManager` construct now requires a Pollux instance.

Edge Agent (formerly PrismAgent)
- The constructor now requires a new parameter: `AgentOptions`.
- `PrismAgent` renamed to `EdgeAgent`.
- `preparePresentationForRequestProof` now expects a `Credential` of type T, where T can be `Credential` or `ProvableCredential`.

JWT Verifiable Credential
- The `JWTVerifiableCredential` constructor replaces the parameter `credentialStatus: VerifiableCredentialTypeContainer` with `credentialStatus: CredentialStatus`.

Pluto Module
- `getDIDPrivateKeysByDID` and `getDIDPrivateKeyByID` now return `Flow<List<StorablePrivateKey?>>`.
- New method added: `getAllPrivateKeys`.
- `PlutoImpl` deprecated `storeCredentialMetadata(name: String, metadata: CredentialRequestMeta)` and replaced it with `storeCredentialMetadata(name: String, linkSecretName: String, json: String)`.

Apollo Module
- `restorePrivateKey(storablePrivateKey: StorablePrivateKey): PrivateKey` changed to `restorePrivateKey(restorationIdentifier: String, privateKeyData: String): PrivateKey`.

DbConnection
- `DbConnection` is now an interface.
- `DbConnectionImpl` is the new instance used for DB connections.

Presentation Submissions
- `createPresentationSubmission` parameter `presentationDefinitionRequest: PresentationDefinitionRequest` changed to `presentationDefinitionRequestString: String`, and the return type changed to `String`.
- New methods added: `createJWTPresentationSubmission`, `createAnoncredsPresentationSubmission`, and `getSchema`.
- `createPresentationDefinitionRequest` now returns a `String`.

OutOfBandInvitation
- New constructor parameters: `attachments`, `createdTime`, and `expiresTime`.

Module Renaming
- `AtalaPrismSDK` renamed to `EdgeAgentSDK`.
- Package name changed from `io.iohk.atala.prism.walletsdk` to `org.hyperledger.identus.walletsdk`.
- `publishedMavenId` changed from `io.iohk.atala.prism.walletsdk` to `org.hyperledger.identus`.
- Namespace changed from `org.hyperledger.identus.walletsdk` to `org.hyperledger.identus`.

Signed-off-by: Cristian G <cristian.castro@iohk.io>
Signed-off-by: Allain Magyar <allain.magyar@iohk.io>
hyperledger-bot added a commit that referenced this pull request Sep 13, 2024
# [4.0.0](v3.0.1...v4.0.0) (2024-09-13)

### Bug Fixes

* anoncred verification and breaking changes missing ([#196](#196)) ([6b0fb55](6b0fb55))
* backup recovery was linking incorrectly dids with private keys ([#178](#178)) ([06e9a8f](06e9a8f))
* bitstring for revocation registry ([#188](#188)) ([22a2da9](22a2da9))
* DbConnection cannot be extended ([#169](#169)) ([82b03cc](82b03cc))
* e2e test broken after pull credential changed based on validUntil ([#158](#158)) ([f21df25](f21df25))
* JWT proof ([#163](#163)) ([4e52aed](4e52aed))
* missed renaming ([c71741f](c71741f))
* renaming ([9585d1a](9585d1a))
* renaming reference issues ([3adb41f](3adb41f))
* restore process duplicates did peers ([#173](#173)) ([da747c5](da747c5))
* restore process from swift/ts jwe ([#175](#175)) ([b9571b2](b9571b2))
* Upgrade gradle ([#140](#140)) ([1e11da4](1e11da4))
* wrong casting KeyPair instead of PublicKey ([#139](#139)) ([7d0a5c9](7d0a5c9))
* zkp presentation could not be verified on the agent ([#157](#157)) ([3319dc4](3319dc4))

### Features

* Anoncreds verification ([#186](#186)) ([52c3895](52c3895))
* back up and restore ([#159](#159)) ([dcb10fd](dcb10fd))
* contactless presentation request ([#192](#192)) ([e03ebbc](e03ebbc))
* experimental opt-in for mediator live mode ([#150](#150)) ([0e30346](0e30346))
* **pollux:** add sdjwt capability ([#174](#174)) ([cd3baf8](cd3baf8))
* revocation notification event ([#148](#148)) ([e1753ec](e1753ec))
* support for mediator live mode (websocket) ([#147](#147)) ([823b8b3](823b8b3))
* verification from SDK ([#155](#155)) ([61720b8](61720b8))
* Verification JWT Revocation registry check ([#165](#165)) ([755a7ef](755a7ef))

### BREAKING CHANGES

* Pollux Module
- `restoreCredential` now requires a third parameter `revoked`.
- Removed: `createVerifiablePresentationJWT`, `createVerifiablePresentationAnoncred`, `getCredentialDefinition`, and `getSchema`.
- Added new method: `processCredentialRequestSDJWT`.
- `PolluxImpl` now implements `processCredentialRequestSDJWT`.
- Pollux methods `parseCredential` and `processCredentialRequestAnoncreds` now accept `linkSecret: String` instead of `linkSecret: LinkSecret`.

ConnectionManager
- `ConnectionManager` is now an interface, and `ConnectionManagerImpl` is the new implementation.
- `ConnectionManager` construct now requires a Pollux instance.

Edge Agent (formerly PrismAgent)
- The constructor now requires a new parameter: `AgentOptions`.
- `PrismAgent` renamed to `EdgeAgent`.
- `preparePresentationForRequestProof` now expects a `Credential` of type T, where T can be `Credential` or `ProvableCredential`.

JWT Verifiable Credential
- The `JWTVerifiableCredential` constructor replaces the parameter `credentialStatus: VerifiableCredentialTypeContainer` with `credentialStatus: CredentialStatus`.

Pluto Module
- `getDIDPrivateKeysByDID` and `getDIDPrivateKeyByID` now return `Flow<List<StorablePrivateKey?>>`.
- New method added: `getAllPrivateKeys`.
- `PlutoImpl` deprecated `storeCredentialMetadata(name: String, metadata: CredentialRequestMeta)` and replaced it with `storeCredentialMetadata(name: String, linkSecretName: String, json: String)`.

Apollo Module
- `restorePrivateKey(storablePrivateKey: StorablePrivateKey): PrivateKey` changed to `restorePrivateKey(restorationIdentifier: String, privateKeyData: String): PrivateKey`.

DbConnection
- `DbConnection` is now an interface.
- `DbConnectionImpl` is the new instance used for DB connections.

Presentation Submissions
- `createPresentationSubmission` parameter `presentationDefinitionRequest: PresentationDefinitionRequest` changed to `presentationDefinitionRequestString: String`, and the return type changed to `String`.
- New methods added: `createJWTPresentationSubmission`, `createAnoncredsPresentationSubmission`, and `getSchema`.
- `createPresentationDefinitionRequest` now returns a `String`.

OutOfBandInvitation
- New constructor parameters: `attachments`, `createdTime`, and `expiresTime`.

Module Renaming
- `AtalaPrismSDK` renamed to `EdgeAgentSDK`.
- Package name changed from `io.iohk.atala.prism.walletsdk` to `org.hyperledger.identus.walletsdk`.
- `publishedMavenId` changed from `io.iohk.atala.prism.walletsdk` to `org.hyperledger.identus`.
- Namespace changed from `org.hyperledger.identus.walletsdk` to `org.hyperledger.identus`.

Signed-off-by: Cristian G <cristian.castro@iohk.io>
Signed-off-by: Allain Magyar <allain.magyar@iohk.io>
github-actions bot pushed a commit that referenced this pull request Sep 13, 2024
# [4.0.0](v3.0.1...v4.0.0) (2024-09-13)

### Bug Fixes

* anoncred verification and breaking changes missing ([#196](#196)) ([6b0fb55](6b0fb55))
* backup recovery was linking incorrectly dids with private keys ([#178](#178)) ([06e9a8f](06e9a8f))
* bitstring for revocation registry ([#188](#188)) ([22a2da9](22a2da9))
* DbConnection cannot be extended ([#169](#169)) ([82b03cc](82b03cc))
* e2e test broken after pull credential changed based on validUntil ([#158](#158)) ([f21df25](f21df25))
* JWT proof ([#163](#163)) ([4e52aed](4e52aed))
* missed renaming ([c71741f](c71741f))
* renaming ([9585d1a](9585d1a))
* renaming reference issues ([3adb41f](3adb41f))
* restore process duplicates did peers ([#173](#173)) ([da747c5](da747c5))
* restore process from swift/ts jwe ([#175](#175)) ([b9571b2](b9571b2))
* Upgrade gradle ([#140](#140)) ([1e11da4](1e11da4))
* wrong casting KeyPair instead of PublicKey ([#139](#139)) ([7d0a5c9](7d0a5c9))
* zkp presentation could not be verified on the agent ([#157](#157)) ([3319dc4](3319dc4))

### Features

* Anoncreds verification ([#186](#186)) ([52c3895](52c3895))
* back up and restore ([#159](#159)) ([dcb10fd](dcb10fd))
* contactless presentation request ([#192](#192)) ([e03ebbc](e03ebbc))
* experimental opt-in for mediator live mode ([#150](#150)) ([0e30346](0e30346))
* **pollux:** add sdjwt capability ([#174](#174)) ([cd3baf8](cd3baf8))
* revocation notification event ([#148](#148)) ([e1753ec](e1753ec))
* support for mediator live mode (websocket) ([#147](#147)) ([823b8b3](823b8b3))
* verification from SDK ([#155](#155)) ([61720b8](61720b8))
* Verification JWT Revocation registry check ([#165](#165)) ([755a7ef](755a7ef))

### BREAKING CHANGES

* Pollux Module
- `restoreCredential` now requires a third parameter `revoked`.
- Removed: `createVerifiablePresentationJWT`, `createVerifiablePresentationAnoncred`, `getCredentialDefinition`, and `getSchema`.
- Added new method: `processCredentialRequestSDJWT`.
- `PolluxImpl` now implements `processCredentialRequestSDJWT`.
- Pollux methods `parseCredential` and `processCredentialRequestAnoncreds` now accept `linkSecret: String` instead of `linkSecret: LinkSecret`.

ConnectionManager
- `ConnectionManager` is now an interface, and `ConnectionManagerImpl` is the new implementation.
- `ConnectionManager` construct now requires a Pollux instance.

Edge Agent (formerly PrismAgent)
- The constructor now requires a new parameter: `AgentOptions`.
- `PrismAgent` renamed to `EdgeAgent`.
- `preparePresentationForRequestProof` now expects a `Credential` of type T, where T can be `Credential` or `ProvableCredential`.

JWT Verifiable Credential
- The `JWTVerifiableCredential` constructor replaces the parameter `credentialStatus: VerifiableCredentialTypeContainer` with `credentialStatus: CredentialStatus`.

Pluto Module
- `getDIDPrivateKeysByDID` and `getDIDPrivateKeyByID` now return `Flow<List<StorablePrivateKey?>>`.
- New method added: `getAllPrivateKeys`.
- `PlutoImpl` deprecated `storeCredentialMetadata(name: String, metadata: CredentialRequestMeta)` and replaced it with `storeCredentialMetadata(name: String, linkSecretName: String, json: String)`.

Apollo Module
- `restorePrivateKey(storablePrivateKey: StorablePrivateKey): PrivateKey` changed to `restorePrivateKey(restorationIdentifier: String, privateKeyData: String): PrivateKey`.

DbConnection
- `DbConnection` is now an interface.
- `DbConnectionImpl` is the new instance used for DB connections.

Presentation Submissions
- `createPresentationSubmission` parameter `presentationDefinitionRequest: PresentationDefinitionRequest` changed to `presentationDefinitionRequestString: String`, and the return type changed to `String`.
- New methods added: `createJWTPresentationSubmission`, `createAnoncredsPresentationSubmission`, and `getSchema`.
- `createPresentationDefinitionRequest` now returns a `String`.

OutOfBandInvitation
- New constructor parameters: `attachments`, `createdTime`, and `expiresTime`.

Module Renaming
- `AtalaPrismSDK` renamed to `EdgeAgentSDK`.
- Package name changed from `io.iohk.atala.prism.walletsdk` to `org.hyperledger.identus.walletsdk`.
- `publishedMavenId` changed from `io.iohk.atala.prism.walletsdk` to `org.hyperledger.identus`.
- Namespace changed from `org.hyperledger.identus.walletsdk` to `org.hyperledger.identus`.

Signed-off-by: Cristian G <cristian.castro@iohk.io>
Signed-off-by: Allain Magyar <allain.magyar@iohk.io>
hyperledger-bot added a commit that referenced this pull request Sep 13, 2024
# [4.0.0](v3.0.1...v4.0.0) (2024-09-13)

### Bug Fixes

* anoncred verification and breaking changes missing ([#196](#196)) ([6b0fb55](6b0fb55))
* backup recovery was linking incorrectly dids with private keys ([#178](#178)) ([06e9a8f](06e9a8f))
* bitstring for revocation registry ([#188](#188)) ([22a2da9](22a2da9))
* DbConnection cannot be extended ([#169](#169)) ([82b03cc](82b03cc))
* e2e test broken after pull credential changed based on validUntil ([#158](#158)) ([f21df25](f21df25))
* gradle artifact signing ([#203](#203)) ([c5903ff](c5903ff))
* JWT proof ([#163](#163)) ([4e52aed](4e52aed))
* missed renaming ([c71741f](c71741f))
* renaming ([9585d1a](9585d1a))
* renaming reference issues ([3adb41f](3adb41f))
* restore process duplicates did peers ([#173](#173)) ([da747c5](da747c5))
* restore process from swift/ts jwe ([#175](#175)) ([b9571b2](b9571b2))
* Upgrade gradle ([#140](#140)) ([1e11da4](1e11da4))
* wrong casting KeyPair instead of PublicKey ([#139](#139)) ([7d0a5c9](7d0a5c9))
* zkp presentation could not be verified on the agent ([#157](#157)) ([3319dc4](3319dc4))

### Features

* Anoncreds verification ([#186](#186)) ([52c3895](52c3895))
* back up and restore ([#159](#159)) ([dcb10fd](dcb10fd))
* contactless presentation request ([#192](#192)) ([e03ebbc](e03ebbc))
* experimental opt-in for mediator live mode ([#150](#150)) ([0e30346](0e30346))
* **pollux:** add sdjwt capability ([#174](#174)) ([cd3baf8](cd3baf8))
* revocation notification event ([#148](#148)) ([e1753ec](e1753ec))
* support for mediator live mode (websocket) ([#147](#147)) ([823b8b3](823b8b3))
* verification from SDK ([#155](#155)) ([61720b8](61720b8))
* Verification JWT Revocation registry check ([#165](#165)) ([755a7ef](755a7ef))

### BREAKING CHANGES

* Pollux Module
- `restoreCredential` now requires a third parameter `revoked`.
- Removed: `createVerifiablePresentationJWT`, `createVerifiablePresentationAnoncred`, `getCredentialDefinition`, and `getSchema`.
- Added new method: `processCredentialRequestSDJWT`.
- `PolluxImpl` now implements `processCredentialRequestSDJWT`.
- Pollux methods `parseCredential` and `processCredentialRequestAnoncreds` now accept `linkSecret: String` instead of `linkSecret: LinkSecret`.

ConnectionManager
- `ConnectionManager` is now an interface, and `ConnectionManagerImpl` is the new implementation.
- `ConnectionManager` construct now requires a Pollux instance.

Edge Agent (formerly PrismAgent)
- The constructor now requires a new parameter: `AgentOptions`.
- `PrismAgent` renamed to `EdgeAgent`.
- `preparePresentationForRequestProof` now expects a `Credential` of type T, where T can be `Credential` or `ProvableCredential`.

JWT Verifiable Credential
- The `JWTVerifiableCredential` constructor replaces the parameter `credentialStatus: VerifiableCredentialTypeContainer` with `credentialStatus: CredentialStatus`.

Pluto Module
- `getDIDPrivateKeysByDID` and `getDIDPrivateKeyByID` now return `Flow<List<StorablePrivateKey?>>`.
- New method added: `getAllPrivateKeys`.
- `PlutoImpl` deprecated `storeCredentialMetadata(name: String, metadata: CredentialRequestMeta)` and replaced it with `storeCredentialMetadata(name: String, linkSecretName: String, json: String)`.

Apollo Module
- `restorePrivateKey(storablePrivateKey: StorablePrivateKey): PrivateKey` changed to `restorePrivateKey(restorationIdentifier: String, privateKeyData: String): PrivateKey`.

DbConnection
- `DbConnection` is now an interface.
- `DbConnectionImpl` is the new instance used for DB connections.

Presentation Submissions
- `createPresentationSubmission` parameter `presentationDefinitionRequest: PresentationDefinitionRequest` changed to `presentationDefinitionRequestString: String`, and the return type changed to `String`.
- New methods added: `createJWTPresentationSubmission`, `createAnoncredsPresentationSubmission`, and `getSchema`.
- `createPresentationDefinitionRequest` now returns a `String`.

OutOfBandInvitation
- New constructor parameters: `attachments`, `createdTime`, and `expiresTime`.

Module Renaming
- `AtalaPrismSDK` renamed to `EdgeAgentSDK`.
- Package name changed from `io.iohk.atala.prism.walletsdk` to `org.hyperledger.identus.walletsdk`.
- `publishedMavenId` changed from `io.iohk.atala.prism.walletsdk` to `org.hyperledger.identus`.
- Namespace changed from `org.hyperledger.identus.walletsdk` to `org.hyperledger.identus`.

Signed-off-by: Cristian G <cristian.castro@iohk.io>
Signed-off-by: Allain Magyar <allain.magyar@iohk.io>
github-actions bot pushed a commit that referenced this pull request Sep 13, 2024
# [4.0.0](v3.0.1...v4.0.0) (2024-09-13)

### Bug Fixes

* anoncred verification and breaking changes missing ([#196](#196)) ([6b0fb55](6b0fb55))
* backup recovery was linking incorrectly dids with private keys ([#178](#178)) ([06e9a8f](06e9a8f))
* bitstring for revocation registry ([#188](#188)) ([22a2da9](22a2da9))
* DbConnection cannot be extended ([#169](#169)) ([82b03cc](82b03cc))
* e2e test broken after pull credential changed based on validUntil ([#158](#158)) ([f21df25](f21df25))
* gradle artifact signing ([#203](#203)) ([c5903ff](c5903ff))
* JWT proof ([#163](#163)) ([4e52aed](4e52aed))
* missed renaming ([c71741f](c71741f))
* renaming ([9585d1a](9585d1a))
* renaming reference issues ([3adb41f](3adb41f))
* restore process duplicates did peers ([#173](#173)) ([da747c5](da747c5))
* restore process from swift/ts jwe ([#175](#175)) ([b9571b2](b9571b2))
* Upgrade gradle ([#140](#140)) ([1e11da4](1e11da4))
* wrong casting KeyPair instead of PublicKey ([#139](#139)) ([7d0a5c9](7d0a5c9))
* zkp presentation could not be verified on the agent ([#157](#157)) ([3319dc4](3319dc4))

### Features

* Anoncreds verification ([#186](#186)) ([52c3895](52c3895))
* back up and restore ([#159](#159)) ([dcb10fd](dcb10fd))
* contactless presentation request ([#192](#192)) ([e03ebbc](e03ebbc))
* experimental opt-in for mediator live mode ([#150](#150)) ([0e30346](0e30346))
* **pollux:** add sdjwt capability ([#174](#174)) ([cd3baf8](cd3baf8))
* revocation notification event ([#148](#148)) ([e1753ec](e1753ec))
* support for mediator live mode (websocket) ([#147](#147)) ([823b8b3](823b8b3))
* verification from SDK ([#155](#155)) ([61720b8](61720b8))
* Verification JWT Revocation registry check ([#165](#165)) ([755a7ef](755a7ef))

### BREAKING CHANGES

* Pollux Module
- `restoreCredential` now requires a third parameter `revoked`.
- Removed: `createVerifiablePresentationJWT`, `createVerifiablePresentationAnoncred`, `getCredentialDefinition`, and `getSchema`.
- Added new method: `processCredentialRequestSDJWT`.
- `PolluxImpl` now implements `processCredentialRequestSDJWT`.
- Pollux methods `parseCredential` and `processCredentialRequestAnoncreds` now accept `linkSecret: String` instead of `linkSecret: LinkSecret`.

ConnectionManager
- `ConnectionManager` is now an interface, and `ConnectionManagerImpl` is the new implementation.
- `ConnectionManager` construct now requires a Pollux instance.

Edge Agent (formerly PrismAgent)
- The constructor now requires a new parameter: `AgentOptions`.
- `PrismAgent` renamed to `EdgeAgent`.
- `preparePresentationForRequestProof` now expects a `Credential` of type T, where T can be `Credential` or `ProvableCredential`.

JWT Verifiable Credential
- The `JWTVerifiableCredential` constructor replaces the parameter `credentialStatus: VerifiableCredentialTypeContainer` with `credentialStatus: CredentialStatus`.

Pluto Module
- `getDIDPrivateKeysByDID` and `getDIDPrivateKeyByID` now return `Flow<List<StorablePrivateKey?>>`.
- New method added: `getAllPrivateKeys`.
- `PlutoImpl` deprecated `storeCredentialMetadata(name: String, metadata: CredentialRequestMeta)` and replaced it with `storeCredentialMetadata(name: String, linkSecretName: String, json: String)`.

Apollo Module
- `restorePrivateKey(storablePrivateKey: StorablePrivateKey): PrivateKey` changed to `restorePrivateKey(restorationIdentifier: String, privateKeyData: String): PrivateKey`.

DbConnection
- `DbConnection` is now an interface.
- `DbConnectionImpl` is the new instance used for DB connections.

Presentation Submissions
- `createPresentationSubmission` parameter `presentationDefinitionRequest: PresentationDefinitionRequest` changed to `presentationDefinitionRequestString: String`, and the return type changed to `String`.
- New methods added: `createJWTPresentationSubmission`, `createAnoncredsPresentationSubmission`, and `getSchema`.
- `createPresentationDefinitionRequest` now returns a `String`.

OutOfBandInvitation
- New constructor parameters: `attachments`, `createdTime`, and `expiresTime`.

Module Renaming
- `AtalaPrismSDK` renamed to `EdgeAgentSDK`.
- Package name changed from `io.iohk.atala.prism.walletsdk` to `org.hyperledger.identus.walletsdk`.
- `publishedMavenId` changed from `io.iohk.atala.prism.walletsdk` to `org.hyperledger.identus`.
- Namespace changed from `org.hyperledger.identus.walletsdk` to `org.hyperledger.identus`.

Signed-off-by: Cristian G <cristian.castro@iohk.io>
Signed-off-by: Allain Magyar <allain.magyar@iohk.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants