-
Notifications
You must be signed in to change notification settings - Fork 5
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(castor): Add peerDID Create method + tests. #15
Conversation
🦙 MegaLinter status: ✅ SUCCESS
See detailed report in MegaLinter reports |
@@ -26,14 +37,50 @@ open class CastorImpl : Castor { | |||
authenticationKeyPair: KeyPair, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't know if you want to change this as an easy improvement, I did this shit to fast to think.
But you can actually pass just a Array<KeyPair>
and then replace all those if's by something like:
var encryptionKeys: List<VerificationMaterial> = emptyList()
var signingKeys: List<VerificationMaterial> = emptyList()
keyPairs.forEach {
when (it.curve) {
KeyCurve.ED25519 -> {
encryptionKeys.add(VerificationMaterialAgreement(
format = VerificationMaterialFormatPeerDID.MULTIBASE,
value = keyAgreementKeyPair.publicKey.value,
type = VerificationMethodTypeAgreement.X25519_KEY_AGREEMENT_KEY_2020
))
}
KeyCurve.X25519 -> {
signingKeys.add(VerificationMaterialAuthentication(
format = VerificationMaterialFormatPeerDID.MULTIBASE,
value = authenticationKeyPair.publicKey.value,
type = VerificationMethodTypeAuthentication.ED25519_VERIFICATION_KEY_2020
))
}
else -> { throw CastorError.InvalidKeyError() }
}
}
val peerDID = createPeerDIDNumalgo2(
encryptionKeys = encryptionKeys,
signingKeys = signingKeys,
service = service.map {
Json.encodeToString(
DIDCommServicePeerDID(
id = it.id,
type = it.type[0],
serviceEndpoint = it.serviceEndpoint.uri,
routingKeys = listOf(),
accept = it.serviceEndpoint.accept?.asList() ?: listOf()
).toDict().toJsonElement()
)
}.first())
PS: Wrote this on the comment so not sure if it compiles.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
done, u can resolve. Thanks buddy!
service = if (services.isNotEmpty()) { | ||
Json.encodeToString( | ||
DIDCommServicePeerDID( | ||
id = services[0].id, | ||
type = services[0].type[0], | ||
serviceEndpoint = services[0].serviceEndpoint.uri, | ||
routingKeys = listOf(), | ||
accept = services[0].serviceEndpoint.accept?.asList() ?: listOf() | ||
).toDict().toJsonElement() | ||
) | ||
} else null |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This if
is really hidden logic and not so readable :D you can use higher collection functions like map
and first
for it to be more visible.
service = service.map {
Json.encodeToString(
DIDCommServicePeerDID(
id = it.id,
type = it.type[0],
serviceEndpoint = it.serviceEndpoint.uri,
routingKeys = listOf(),
accept = it.serviceEndpoint.accept?.asList() ?: listOf()
).toDict().toJsonElement()
)
}.first()
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
done, u can resolve. Thanks buddy!
…rism-wallet-sdk-kmm into feature/ATL-3322 * 'feature/ATL-3322' of github.com:input-output-hk/atala-prism-wallet-sdk-kmm: ci: remove gitleaks linting
…already in didpeer package and not required here.
# 1.0.0 (2023-02-23) ### Bug Fixes * Fix dependencies to fully integrate with latest version of packages in prism-protos + protosLib. ([1ed30cf](1ed30cf)) ### Features * [ATL-2994] [Wallet SDK] Define domain interfaces and models ([#3](#3)) ([1e4faf8](1e4faf8)) * add protobuf-gradle-plugin ([8eaf852](8eaf852)) * **agent:** add mediation and ability to send messages ([f7b5d7f](f7b5d7f)) * **agent:** add mediation grant message ([d53119c](d53119c)) * **agent:** add mediator request message ([617640c](617640c)) * **agent:** add mediator request message ([#5](#5)) ([60cfd13](60cfd13)) * **agent:** add prism agent and create did functionalities ([431201b](431201b)) * **Agent:** Implement Credential Issue Protocol in PrismAgent ([#27](#27)) ([0f635f3](0f635f3)) * **agent:** Implementation Onboarding invitation on Agent ([#18](#18)) ([c6188ec](c6188ec)) * **Agent:** Logic to parse out of band invitations ([#25](#25)) ([85535c5](85535c5)) * **Agent:** Persist key pairs into local storage ([#22](#22)) ([7cc738f](7cc738f)) * **build:** remove grpc dependencies and simplify protobufs ([7e700e1](7e700e1)) * **castor:** Add peerDID Create method + tests. ([#15](#15)) ([3b9b495](3b9b495)) * **castor:** Add peerDID resolver + tests. ([#14](#14)) ([462764a](462764a)) * **castor:** Resolve LongFormatPrismDIDs in Castor ([#23](#23)) ([1331923](1331923)) * **didparser:** Adding amtlr4 grammar did parser with specification and tests ([#10](#10)) ([0d7dac1](0d7dac1)) * **didUrlParser:** add did url parser and g4 grammar ([#12](#12)) ([2ee6ad9](2ee6ad9)) * integrate authenticate-sdk, buildSrc (Deps + Version globals), Protos and basic dependencies from old SDK ([1b0e6b5](1b0e6b5)) * **pluto db:** Implement db ([#13](#13)) ([9a82003](9a82003)) * **pluto:** Implementation of pluto ([#17](#17)) ([e6c2ed1](e6c2ed1)) * **PrismAgent:** Implement message signature ([#21](#21)) ([fec99aa](fec99aa)) * project init ([29f62bb](29f62bb)) * Wallet SDK init ([4eeea4c](4eeea4c)) * wallet-core module init ([1f03a35](1f03a35))
# 1.0.0 (2023-02-23) ### Bug Fixes * Fix dependencies to fully integrate with latest version of packages in prism-protos + protosLib. ([1ed30cf](1ed30cf)) ### Features * [ATL-2994] [Wallet SDK] Define domain interfaces and models ([#3](#3)) ([1e4faf8](1e4faf8)) * add protobuf-gradle-plugin ([8eaf852](8eaf852)) * **agent:** add mediation and ability to send messages ([f7b5d7f](f7b5d7f)) * **agent:** add mediation grant message ([d53119c](d53119c)) * **agent:** add mediator request message ([617640c](617640c)) * **agent:** add mediator request message ([#5](#5)) ([60cfd13](60cfd13)) * **agent:** add prism agent and create did functionalities ([431201b](431201b)) * **Agent:** Implement Credential Issue Protocol in PrismAgent ([#27](#27)) ([0f635f3](0f635f3)) * **agent:** Implementation Onboarding invitation on Agent ([#18](#18)) ([c6188ec](c6188ec)) * **Agent:** Logic to parse out of band invitations ([#25](#25)) ([85535c5](85535c5)) * **Agent:** Persist key pairs into local storage ([#22](#22)) ([7cc738f](7cc738f)) * **build:** remove grpc dependencies and simplify protobufs ([7e700e1](7e700e1)) * **castor:** Add peerDID Create method + tests. ([#15](#15)) ([3b9b495](3b9b495)) * **castor:** Add peerDID resolver + tests. ([#14](#14)) ([462764a](462764a)) * **castor:** Resolve LongFormatPrismDIDs in Castor ([#23](#23)) ([1331923](1331923)) * **didparser:** Adding amtlr4 grammar did parser with specification and tests ([#10](#10)) ([0d7dac1](0d7dac1)) * **didUrlParser:** add did url parser and g4 grammar ([#12](#12)) ([2ee6ad9](2ee6ad9)) * integrate authenticate-sdk, buildSrc (Deps + Version globals), Protos and basic dependencies from old SDK ([1b0e6b5](1b0e6b5)) * **pluto db:** Implement db ([#13](#13)) ([9a82003](9a82003)) * **pluto:** Implementation of pluto ([#17](#17)) ([e6c2ed1](e6c2ed1)) * **PrismAgent:** Implement message signature ([#21](#21)) ([fec99aa](fec99aa)) * project init ([29f62bb](29f62bb)) * Wallet SDK init ([4eeea4c](4eeea4c)) * wallet-core module init ([1f03a35](1f03a35))
# 1.0.0 (2023-02-23) ### Bug Fixes * Fix dependencies to fully integrate with latest version of packages in prism-protos + protosLib. ([1ed30cf](1ed30cf)) ### Features * [ATL-2994] [Wallet SDK] Define domain interfaces and models ([#3](#3)) ([1e4faf8](1e4faf8)) * add protobuf-gradle-plugin ([8eaf852](8eaf852)) * **agent:** add mediation and ability to send messages ([f7b5d7f](f7b5d7f)) * **agent:** add mediation grant message ([d53119c](d53119c)) * **agent:** add mediator request message ([617640c](617640c)) * **agent:** add mediator request message ([#5](#5)) ([60cfd13](60cfd13)) * **agent:** add prism agent and create did functionalities ([431201b](431201b)) * **Agent:** Implement Credential Issue Protocol in PrismAgent ([#27](#27)) ([0f635f3](0f635f3)) * **agent:** Implementation Onboarding invitation on Agent ([#18](#18)) ([c6188ec](c6188ec)) * **Agent:** Logic to parse out of band invitations ([#25](#25)) ([85535c5](85535c5)) * **Agent:** Persist key pairs into local storage ([#22](#22)) ([7cc738f](7cc738f)) * **build:** remove grpc dependencies and simplify protobufs ([7e700e1](7e700e1)) * **castor:** Add peerDID Create method + tests. ([#15](#15)) ([3b9b495](3b9b495)) * **castor:** Add peerDID resolver + tests. ([#14](#14)) ([462764a](462764a)) * **castor:** Resolve LongFormatPrismDIDs in Castor ([#23](#23)) ([1331923](1331923)) * **didparser:** Adding amtlr4 grammar did parser with specification and tests ([#10](#10)) ([0d7dac1](0d7dac1)) * **didUrlParser:** add did url parser and g4 grammar ([#12](#12)) ([2ee6ad9](2ee6ad9)) * integrate authenticate-sdk, buildSrc (Deps + Version globals), Protos and basic dependencies from old SDK ([1b0e6b5](1b0e6b5)) * **pluto db:** Implement db ([#13](#13)) ([9a82003](9a82003)) * **pluto:** Implementation of pluto ([#17](#17)) ([e6c2ed1](e6c2ed1)) * **PrismAgent:** Implement message signature ([#21](#21)) ([fec99aa](fec99aa)) * project init ([29f62bb](29f62bb)) * Wallet SDK init ([4eeea4c](4eeea4c)) * wallet-core module init ([1f03a35](1f03a35))
# 1.0.0 (2023-02-23) ### Bug Fixes * Fix dependencies to fully integrate with latest version of packages in prism-protos + protosLib. ([1ed30cf](1ed30cf)) ### Features * [ATL-2994] [Wallet SDK] Define domain interfaces and models ([#3](#3)) ([1e4faf8](1e4faf8)) * add protobuf-gradle-plugin ([8eaf852](8eaf852)) * **agent:** add mediation and ability to send messages ([f7b5d7f](f7b5d7f)) * **agent:** add mediation grant message ([d53119c](d53119c)) * **agent:** add mediator request message ([617640c](617640c)) * **agent:** add mediator request message ([#5](#5)) ([60cfd13](60cfd13)) * **agent:** add prism agent and create did functionalities ([431201b](431201b)) * **Agent:** Implement Credential Issue Protocol in PrismAgent ([#27](#27)) ([0f635f3](0f635f3)) * **agent:** Implementation Onboarding invitation on Agent ([#18](#18)) ([c6188ec](c6188ec)) * **Agent:** Logic to parse out of band invitations ([#25](#25)) ([85535c5](85535c5)) * **Agent:** Persist key pairs into local storage ([#22](#22)) ([7cc738f](7cc738f)) * **build:** remove grpc dependencies and simplify protobufs ([7e700e1](7e700e1)) * **castor:** Add peerDID Create method + tests. ([#15](#15)) ([3b9b495](3b9b495)) * **castor:** Add peerDID resolver + tests. ([#14](#14)) ([462764a](462764a)) * **castor:** Resolve LongFormatPrismDIDs in Castor ([#23](#23)) ([1331923](1331923)) * **didparser:** Adding amtlr4 grammar did parser with specification and tests ([#10](#10)) ([0d7dac1](0d7dac1)) * **didUrlParser:** add did url parser and g4 grammar ([#12](#12)) ([2ee6ad9](2ee6ad9)) * integrate authenticate-sdk, buildSrc (Deps + Version globals), Protos and basic dependencies from old SDK ([1b0e6b5](1b0e6b5)) * **pluto db:** Implement db ([#13](#13)) ([9a82003](9a82003)) * **pluto:** Implementation of pluto ([#17](#17)) ([e6c2ed1](e6c2ed1)) * **PrismAgent:** Implement message signature ([#21](#21)) ([fec99aa](fec99aa)) * project init ([29f62bb](29f62bb)) * Wallet SDK init ([4eeea4c](4eeea4c)) * wallet-core module init ([1f03a35](1f03a35))
# 1.0.0 (2023-02-23) ### Bug Fixes * Fix dependencies to fully integrate with latest version of packages in prism-protos + protosLib. ([1ed30cf](1ed30cf)) ### Features * [ATL-2994] [Wallet SDK] Define domain interfaces and models ([#3](#3)) ([1e4faf8](1e4faf8)) * add protobuf-gradle-plugin ([8eaf852](8eaf852)) * **agent:** add mediation and ability to send messages ([f7b5d7f](f7b5d7f)) * **agent:** add mediation grant message ([d53119c](d53119c)) * **agent:** add mediator request message ([617640c](617640c)) * **agent:** add mediator request message ([#5](#5)) ([60cfd13](60cfd13)) * **agent:** add prism agent and create did functionalities ([431201b](431201b)) * **Agent:** Implement Credential Issue Protocol in PrismAgent ([#27](#27)) ([0f635f3](0f635f3)) * **agent:** Implementation Onboarding invitation on Agent ([#18](#18)) ([c6188ec](c6188ec)) * **Agent:** Logic to parse out of band invitations ([#25](#25)) ([85535c5](85535c5)) * **Agent:** Persist key pairs into local storage ([#22](#22)) ([7cc738f](7cc738f)) * **build:** remove grpc dependencies and simplify protobufs ([7e700e1](7e700e1)) * **castor:** Add peerDID Create method + tests. ([#15](#15)) ([3b9b495](3b9b495)) * **castor:** Add peerDID resolver + tests. ([#14](#14)) ([462764a](462764a)) * **castor:** Resolve LongFormatPrismDIDs in Castor ([#23](#23)) ([1331923](1331923)) * **didparser:** Adding amtlr4 grammar did parser with specification and tests ([#10](#10)) ([0d7dac1](0d7dac1)) * **didUrlParser:** add did url parser and g4 grammar ([#12](#12)) ([2ee6ad9](2ee6ad9)) * integrate authenticate-sdk, buildSrc (Deps + Version globals), Protos and basic dependencies from old SDK ([1b0e6b5](1b0e6b5)) * **pluto db:** Implement db ([#13](#13)) ([9a82003](9a82003)) * **pluto:** Implementation of pluto ([#17](#17)) ([e6c2ed1](e6c2ed1)) * **PrismAgent:** Implement message signature ([#21](#21)) ([fec99aa](fec99aa)) * project init ([29f62bb](29f62bb)) * Wallet SDK init ([4eeea4c](4eeea4c)) * wallet-core module init ([1f03a35](1f03a35))
# 1.0.0 (2023-02-23) ### Bug Fixes * Fix dependencies to fully integrate with latest version of packages in prism-protos + protosLib. ([1ed30cf](1ed30cf)) ### Features * [ATL-2994] [Wallet SDK] Define domain interfaces and models ([#3](#3)) ([1e4faf8](1e4faf8)) * add protobuf-gradle-plugin ([8eaf852](8eaf852)) * **agent:** add mediation and ability to send messages ([f7b5d7f](f7b5d7f)) * **agent:** add mediation grant message ([d53119c](d53119c)) * **agent:** add mediator request message ([617640c](617640c)) * **agent:** add mediator request message ([#5](#5)) ([60cfd13](60cfd13)) * **agent:** add prism agent and create did functionalities ([431201b](431201b)) * **Agent:** Implement Credential Issue Protocol in PrismAgent ([#27](#27)) ([0f635f3](0f635f3)) * **agent:** Implementation Onboarding invitation on Agent ([#18](#18)) ([c6188ec](c6188ec)) * **Agent:** Logic to parse out of band invitations ([#25](#25)) ([85535c5](85535c5)) * **Agent:** Persist key pairs into local storage ([#22](#22)) ([7cc738f](7cc738f)) * **build:** remove grpc dependencies and simplify protobufs ([7e700e1](7e700e1)) * **castor:** Add peerDID Create method + tests. ([#15](#15)) ([3b9b495](3b9b495)) * **castor:** Add peerDID resolver + tests. ([#14](#14)) ([462764a](462764a)) * **castor:** Resolve LongFormatPrismDIDs in Castor ([#23](#23)) ([1331923](1331923)) * **didparser:** Adding amtlr4 grammar did parser with specification and tests ([#10](#10)) ([0d7dac1](0d7dac1)) * **didUrlParser:** add did url parser and g4 grammar ([#12](#12)) ([2ee6ad9](2ee6ad9)) * integrate authenticate-sdk, buildSrc (Deps + Version globals), Protos and basic dependencies from old SDK ([1b0e6b5](1b0e6b5)) * **pluto db:** Implement db ([#13](#13)) ([9a82003](9a82003)) * **pluto:** Implementation of pluto ([#17](#17)) ([e6c2ed1](e6c2ed1)) * **PrismAgent:** Implement message signature ([#21](#21)) ([fec99aa](fec99aa)) * project init ([29f62bb](29f62bb)) * Wallet SDK init ([4eeea4c](4eeea4c)) * wallet-core module init ([1f03a35](1f03a35))
# [0.1.0](v0.0.1...v0.1.0) (2023-05-31) ### Bug Fixes * agent start and mediation achieved ([#60](#60)) ([e24f67a](e24f67a)) * credentials duplicated when stored localy ([#69](#69)) ([f1b6518](f1b6518)) * **docs:** Add general docs & code docs & CI ([a339641](a339641)) * Fix dependencies to fully integrate with latest version of packages in prism-protos + protosLib. ([1ed30cf](1ed30cf)) * Fix key pair creation from private key for ED25519 ([#56](#56)) ([a8af225](a8af225)) * Fix key pair creation from private key for X25519 ([#57](#57)) ([1cfc294](1cfc294)) * Fix key pair creation from private key using SECP256K1 ([#55](#55)) ([8b48aa1](8b48aa1)) * Implement test for key pair creation using mnemonics and seed for curve SECP256K1 ([#54](#54)) ([026dc0d](026dc0d)) * kmm agent up to date with swift public apis ([#67](#67)) ([7a65b3a](7a65b3a)) * move hardcoded values into constants ([#72](#72)) ([4577ecf](4577ecf)) * pick up messages and mark as read ([#63](#63)) ([087bb88](087bb88)) * request and achieve mediation ([#62](#62)) ([73f98c5](73f98c5)) * **sdk:** replace GlobalScope with correct coroutine scope ([e44ac86](e44ac86)) ### Features * [ATL-2994] [Wallet SDK] Define domain interfaces and models ([#3](#3)) ([1e4faf8](1e4faf8)) * add protobuf-gradle-plugin ([8eaf852](8eaf852)) * **agent:** add mediation and ability to send messages ([f7b5d7f](f7b5d7f)) * **agent:** add mediation grant message ([d53119c](d53119c)) * **agent:** add mediator request message ([617640c](617640c)) * **agent:** add mediator request message ([#5](#5)) ([60cfd13](60cfd13)) * **agent:** add prism agent and create did functionalities ([431201b](431201b)) * **Agent:** Implement Credential Issue Protocol in PrismAgent ([#27](#27)) ([0f635f3](0f635f3)) * **agent:** Implementation Onboarding invitation on Agent ([#18](#18)) ([c6188ec](c6188ec)) * **Agent:** Logic to parse out of band invitations ([#25](#25)) ([85535c5](85535c5)) * **Agent:** Persist key pairs into local storage ([#22](#22)) ([7cc738f](7cc738f)) * **Apollo:** Ed25519 key pair generation ([d11a7a1](d11a7a1)) * **build:** remove grpc dependencies and simplify protobufs ([7e700e1](7e700e1)) * **castor:** Add peerDID Create method + tests. ([#15](#15)) ([3b9b495](3b9b495)) * **castor:** Add peerDID resolver + tests. ([#14](#14)) ([462764a](462764a)) * **castor:** Resolve LongFormatPrismDIDs in Castor ([#23](#23)) ([1331923](1331923)) * **didparser:** Adding amtlr4 grammar did parser with specification and tests ([#10](#10)) ([0d7dac1](0d7dac1)) * **didUrlParser:** add did url parser and g4 grammar ([#12](#12)) ([2ee6ad9](2ee6ad9)) * Implement ED25519 - Keypair generation ([#52](#52)) ([6c4eab1](6c4eab1)) * Implement sign and verify for Ed25519 ([#59](#59)) ([b0086a1](b0086a1)) * Implement X25519 - Keypair generation ([bbc2394](bbc2394)) * Implement X25519 - Keypair generation ([#53](#53)) ([be0aa7e](be0aa7e)) * integrate authenticate-sdk, buildSrc (Deps + Version globals), Protos and basic dependencies from old SDK ([1b0e6b5](1b0e6b5)) * **mercury:** add default secrets resolver ([#34](#34)) ([21449a1](21449a1)) * **Mercury:** Orchestration and tests ([#49](#49)) ([cc1313c](cc1313c)) * **pluto db:** Implement db ([#13](#13)) ([9a82003](9a82003)) * **Pluto:** Add back flows to add reactiveness to the DB ([#38](#38)) ([17dde4d](17dde4d)) * **pluto:** Implementation of pluto ([#17](#17)) ([e6c2ed1](e6c2ed1)) * **pollux:** add create credential request and presentation jwt string and prism agent higher functionality ([9a38c18](9a38c18)) * **pollux:** add create credential request and presentation jwt string and prism agent higher functionality ([231387d](231387d)) * **Prism Agent:** Add connection data persistency ([#37](#37)) ([ad5132b](ad5132b)) * **PrismAgent:** Implement message signature ([#21](#21)) ([fec99aa](fec99aa)) * project init ([29f62bb](29f62bb)) * Sample app with full flow ([#66](#66)) ([77ab0e4](77ab0e4)) * Wallet SDK init ([4eeea4c](4eeea4c)) * wallet-core module init ([1f03a35](1f03a35)) * X25519 ([#48](#48)) ([5ac155b](5ac155b))
# [2.0.0](v1.0.0...v2.0.0) (2023-06-21) ### Bug Fixes * agent start and mediation achieved ([#60](#60)) ([e24f67a](e24f67a)) * create peer DID with updateMediator false does not ignore provided services ([#73](#73)) ([662c845](662c845)) * credentials duplicated when stored localy ([#69](#69)) ([f1b6518](f1b6518)) * **docs:** Add general docs & code docs & CI ([a339641](a339641)) * Fix dependencies to fully integrate with latest version of packages in prism-protos + protosLib. ([1ed30cf](1ed30cf)) * Fix key pair creation from private key for ED25519 ([#56](#56)) ([a8af225](a8af225)) * Fix key pair creation from private key for X25519 ([#57](#57)) ([1cfc294](1cfc294)) * Fix key pair creation from private key using SECP256K1 ([#55](#55)) ([8b48aa1](8b48aa1)) * Implement test for key pair creation using mnemonics and seed for curve SECP256K1 ([#54](#54)) ([026dc0d](026dc0d)) * kmm agent up to date with swift public apis ([#67](#67)) ([7a65b3a](7a65b3a)) * move hardcoded values into constants ([#72](#72)) ([4577ecf](4577ecf)) * pick up messages and mark as read ([#63](#63)) ([087bb88](087bb88)) * remove private key storage duplicity ([#75](#75)) ([549bbeb](549bbeb)) * request and achieve mediation ([#62](#62)) ([73f98c5](73f98c5)) * **sdk:** replace GlobalScope with correct coroutine scope ([e44ac86](e44ac86)) ### Features * [ATL-2994] [Wallet SDK] Define domain interfaces and models ([#3](#3)) ([1e4faf8](1e4faf8)) * add logging component to the sdk ([#77](#77)) ([57ca4f0](57ca4f0)) * add protobuf-gradle-plugin ([8eaf852](8eaf852)) * **agent:** add mediation and ability to send messages ([f7b5d7f](f7b5d7f)) * **agent:** add mediation grant message ([d53119c](d53119c)) * **agent:** add mediator request message ([617640c](617640c)) * **agent:** add mediator request message ([#5](#5)) ([60cfd13](60cfd13)) * **agent:** add prism agent and create did functionalities ([431201b](431201b)) * **Agent:** Implement Credential Issue Protocol in PrismAgent ([#27](#27)) ([0f635f3](0f635f3)) * **agent:** Implementation Onboarding invitation on Agent ([#18](#18)) ([c6188ec](c6188ec)) * **Agent:** Logic to parse out of band invitations ([#25](#25)) ([85535c5](85535c5)) * **Agent:** Persist key pairs into local storage ([#22](#22)) ([7cc738f](7cc738f)) * **Apollo:** Ed25519 key pair generation ([d11a7a1](d11a7a1)) * **build:** remove grpc dependencies and simplify protobufs ([7e700e1](7e700e1)) * **castor:** Add peerDID Create method + tests. ([#15](#15)) ([3b9b495](3b9b495)) * **castor:** Add peerDID resolver + tests. ([#14](#14)) ([462764a](462764a)) * **castor:** Resolve LongFormatPrismDIDs in Castor ([#23](#23)) ([1331923](1331923)) * **didparser:** Adding amtlr4 grammar did parser with specification and tests ([#10](#10)) ([0d7dac1](0d7dac1)) * **didUrlParser:** add did url parser and g4 grammar ([#12](#12)) ([2ee6ad9](2ee6ad9)) * document models and make some classes internal ([#78](#78)) ([e6b9c0b](e6b9c0b)) * Implement ED25519 - Keypair generation ([#52](#52)) ([6c4eab1](6c4eab1)) * Implement sign and verify for Ed25519 ([#59](#59)) ([b0086a1](b0086a1)) * Implement X25519 - Keypair generation ([bbc2394](bbc2394)) * Implement X25519 - Keypair generation ([#53](#53)) ([be0aa7e](be0aa7e)) * improve error handling ([#74](#74)) ([c14f157](c14f157)) * integrate authenticate-sdk, buildSrc (Deps + Version globals), Protos and basic dependencies from old SDK ([1b0e6b5](1b0e6b5)) * **mercury:** add default secrets resolver ([#34](#34)) ([21449a1](21449a1)) * **Mercury:** Orchestration and tests ([#49](#49)) ([cc1313c](cc1313c)) * **pluto db:** Implement db ([#13](#13)) ([9a82003](9a82003)) * **Pluto:** Add back flows to add reactiveness to the DB ([#38](#38)) ([17dde4d](17dde4d)) * **pluto:** Implementation of pluto ([#17](#17)) ([e6c2ed1](e6c2ed1)) * **pollux:** add create credential request and presentation jwt string and prism agent higher functionality ([9a38c18](9a38c18)) * **pollux:** add create credential request and presentation jwt string and prism agent higher functionality ([231387d](231387d)) * **Prism Agent:** Add connection data persistency ([#37](#37)) ([ad5132b](ad5132b)) * **PrismAgent:** Implement message signature ([#21](#21)) ([fec99aa](fec99aa)) * project init ([29f62bb](29f62bb)) * release first production version ([99ce9e0](99ce9e0)) * Sample app with full flow ([#66](#66)) ([77ab0e4](77ab0e4)) * Wallet SDK init ([4eeea4c](4eeea4c)) * wallet-core module init ([1f03a35](1f03a35)) * X25519 ([#48](#48)) ([5ac155b](5ac155b)) ### BREAKING CHANGES * first release version
# [2.0.0](v1.0.0...v2.0.0) (2023-06-21) ### Bug Fixes * agent start and mediation achieved ([#60](#60)) ([e24f67a](e24f67a)) * create peer DID with updateMediator false does not ignore provided services ([#73](#73)) ([662c845](662c845)) * credentials duplicated when stored localy ([#69](#69)) ([f1b6518](f1b6518)) * **docs:** Add general docs & code docs & CI ([a339641](a339641)) * Fix dependencies to fully integrate with latest version of packages in prism-protos + protosLib. ([1ed30cf](1ed30cf)) * Fix key pair creation from private key for ED25519 ([#56](#56)) ([a8af225](a8af225)) * Fix key pair creation from private key for X25519 ([#57](#57)) ([1cfc294](1cfc294)) * Fix key pair creation from private key using SECP256K1 ([#55](#55)) ([8b48aa1](8b48aa1)) * Implement test for key pair creation using mnemonics and seed for curve SECP256K1 ([#54](#54)) ([026dc0d](026dc0d)) * kmm agent up to date with swift public apis ([#67](#67)) ([7a65b3a](7a65b3a)) * move hardcoded values into constants ([#72](#72)) ([4577ecf](4577ecf)) * pick up messages and mark as read ([#63](#63)) ([087bb88](087bb88)) * remove private key storage duplicity ([#75](#75)) ([549bbeb](549bbeb)) * request and achieve mediation ([#62](#62)) ([73f98c5](73f98c5)) * **sdk:** replace GlobalScope with correct coroutine scope ([e44ac86](e44ac86)) ### Features * [ATL-2994] [Wallet SDK] Define domain interfaces and models ([#3](#3)) ([1e4faf8](1e4faf8)) * add logging component to the sdk ([#77](#77)) ([57ca4f0](57ca4f0)) * add protobuf-gradle-plugin ([8eaf852](8eaf852)) * **agent:** add mediation and ability to send messages ([f7b5d7f](f7b5d7f)) * **agent:** add mediation grant message ([d53119c](d53119c)) * **agent:** add mediator request message ([617640c](617640c)) * **agent:** add mediator request message ([#5](#5)) ([60cfd13](60cfd13)) * **agent:** add prism agent and create did functionalities ([431201b](431201b)) * **Agent:** Implement Credential Issue Protocol in PrismAgent ([#27](#27)) ([0f635f3](0f635f3)) * **agent:** Implementation Onboarding invitation on Agent ([#18](#18)) ([c6188ec](c6188ec)) * **Agent:** Logic to parse out of band invitations ([#25](#25)) ([85535c5](85535c5)) * **Agent:** Persist key pairs into local storage ([#22](#22)) ([7cc738f](7cc738f)) * **Apollo:** Ed25519 key pair generation ([d11a7a1](d11a7a1)) * **build:** remove grpc dependencies and simplify protobufs ([7e700e1](7e700e1)) * **castor:** Add peerDID Create method + tests. ([#15](#15)) ([3b9b495](3b9b495)) * **castor:** Add peerDID resolver + tests. ([#14](#14)) ([462764a](462764a)) * **castor:** Resolve LongFormatPrismDIDs in Castor ([#23](#23)) ([1331923](1331923)) * **didparser:** Adding amtlr4 grammar did parser with specification and tests ([#10](#10)) ([0d7dac1](0d7dac1)) * **didUrlParser:** add did url parser and g4 grammar ([#12](#12)) ([2ee6ad9](2ee6ad9)) * document models and make some classes internal ([#78](#78)) ([e6b9c0b](e6b9c0b)) * Implement ED25519 - Keypair generation ([#52](#52)) ([6c4eab1](6c4eab1)) * Implement sign and verify for Ed25519 ([#59](#59)) ([b0086a1](b0086a1)) * Implement X25519 - Keypair generation ([bbc2394](bbc2394)) * Implement X25519 - Keypair generation ([#53](#53)) ([be0aa7e](be0aa7e)) * improve error handling ([#74](#74)) ([c14f157](c14f157)) * integrate authenticate-sdk, buildSrc (Deps + Version globals), Protos and basic dependencies from old SDK ([1b0e6b5](1b0e6b5)) * **mercury:** add default secrets resolver ([#34](#34)) ([21449a1](21449a1)) * **Mercury:** Orchestration and tests ([#49](#49)) ([cc1313c](cc1313c)) * **pluto db:** Implement db ([#13](#13)) ([9a82003](9a82003)) * **Pluto:** Add back flows to add reactiveness to the DB ([#38](#38)) ([17dde4d](17dde4d)) * **pluto:** Implementation of pluto ([#17](#17)) ([e6c2ed1](e6c2ed1)) * **pollux:** add create credential request and presentation jwt string and prism agent higher functionality ([9a38c18](9a38c18)) * **pollux:** add create credential request and presentation jwt string and prism agent higher functionality ([231387d](231387d)) * **Prism Agent:** Add connection data persistency ([#37](#37)) ([ad5132b](ad5132b)) * **PrismAgent:** Implement message signature ([#21](#21)) ([fec99aa](fec99aa)) * project init ([29f62bb](29f62bb)) * release first production version ([99ce9e0](99ce9e0)) * Sample app with full flow ([#66](#66)) ([77ab0e4](77ab0e4)) * Wallet SDK init ([4eeea4c](4eeea4c)) * wallet-core module init ([1f03a35](1f03a35)) * X25519 ([#48](#48)) ([5ac155b](5ac155b)) ### BREAKING CHANGES * first release version
* Change publicKey and make curve KeyCurve for standarisation and sync with PrivateKey * Adding DIDPeer creation in Castor with couple tests. * Remove getEcnumbasis method from Castor interface, this is available already in didpeer package and not required here. * Add throw annotation to createPeerDID Co-authored-by: Goncalo-FradeIOHK <[email protected]>, Ahmed Moussa <[email protected]> Signed-off-by: Javi <[email protected]>
# [0.1.0](v0.0.1...v0.1.0) (2023-05-31) ### Bug Fixes * agent start and mediation achieved ([#60](#60)) ([e24f67a](e24f67a)) * credentials duplicated when stored localy ([#69](#69)) ([f1b6518](f1b6518)) * **docs:** Add general docs & code docs & CI ([a339641](a339641)) * Fix dependencies to fully integrate with latest version of packages in prism-protos + protosLib. ([1ed30cf](1ed30cf)) * Fix key pair creation from private key for ED25519 ([#56](#56)) ([a8af225](a8af225)) * Fix key pair creation from private key for X25519 ([#57](#57)) ([1cfc294](1cfc294)) * Fix key pair creation from private key using SECP256K1 ([#55](#55)) ([8b48aa1](8b48aa1)) * Implement test for key pair creation using mnemonics and seed for curve SECP256K1 ([#54](#54)) ([026dc0d](026dc0d)) * kmm agent up to date with swift public apis ([#67](#67)) ([7a65b3a](7a65b3a)) * move hardcoded values into constants ([#72](#72)) ([4577ecf](4577ecf)) * pick up messages and mark as read ([#63](#63)) ([087bb88](087bb88)) * request and achieve mediation ([#62](#62)) ([73f98c5](73f98c5)) * **sdk:** replace GlobalScope with correct coroutine scope ([e44ac86](e44ac86)) ### Features * [ATL-2994] [Wallet SDK] Define domain interfaces and models ([#3](#3)) ([1e4faf8](1e4faf8)) * add protobuf-gradle-plugin ([8eaf852](8eaf852)) * **agent:** add mediation and ability to send messages ([f7b5d7f](f7b5d7f)) * **agent:** add mediation grant message ([d53119c](d53119c)) * **agent:** add mediator request message ([617640c](617640c)) * **agent:** add mediator request message ([#5](#5)) ([60cfd13](60cfd13)) * **agent:** add prism agent and create did functionalities ([431201b](431201b)) * **Agent:** Implement Credential Issue Protocol in PrismAgent ([#27](#27)) ([0f635f3](0f635f3)) * **agent:** Implementation Onboarding invitation on Agent ([#18](#18)) ([c6188ec](c6188ec)) * **Agent:** Logic to parse out of band invitations ([#25](#25)) ([85535c5](85535c5)) * **Agent:** Persist key pairs into local storage ([#22](#22)) ([7cc738f](7cc738f)) * **Apollo:** Ed25519 key pair generation ([d11a7a1](d11a7a1)) * **build:** remove grpc dependencies and simplify protobufs ([7e700e1](7e700e1)) * **castor:** Add peerDID Create method + tests. ([#15](#15)) ([3b9b495](3b9b495)) * **castor:** Add peerDID resolver + tests. ([#14](#14)) ([462764a](462764a)) * **castor:** Resolve LongFormatPrismDIDs in Castor ([#23](#23)) ([1331923](1331923)) * **didparser:** Adding amtlr4 grammar did parser with specification and tests ([#10](#10)) ([0d7dac1](0d7dac1)) * **didUrlParser:** add did url parser and g4 grammar ([#12](#12)) ([2ee6ad9](2ee6ad9)) * Implement ED25519 - Keypair generation ([#52](#52)) ([6c4eab1](6c4eab1)) * Implement sign and verify for Ed25519 ([#59](#59)) ([b0086a1](b0086a1)) * Implement X25519 - Keypair generation ([bbc2394](bbc2394)) * Implement X25519 - Keypair generation ([#53](#53)) ([be0aa7e](be0aa7e)) * integrate authenticate-sdk, buildSrc (Deps + Version globals), Protos and basic dependencies from old SDK ([1b0e6b5](1b0e6b5)) * **mercury:** add default secrets resolver ([#34](#34)) ([21449a1](21449a1)) * **Mercury:** Orchestration and tests ([#49](#49)) ([cc1313c](cc1313c)) * **pluto db:** Implement db ([#13](#13)) ([9a82003](9a82003)) * **Pluto:** Add back flows to add reactiveness to the DB ([#38](#38)) ([17dde4d](17dde4d)) * **pluto:** Implementation of pluto ([#17](#17)) ([e6c2ed1](e6c2ed1)) * **pollux:** add create credential request and presentation jwt string and prism agent higher functionality ([9a38c18](9a38c18)) * **pollux:** add create credential request and presentation jwt string and prism agent higher functionality ([231387d](231387d)) * **Prism Agent:** Add connection data persistency ([#37](#37)) ([ad5132b](ad5132b)) * **PrismAgent:** Implement message signature ([#21](#21)) ([fec99aa](fec99aa)) * project init ([29f62bb](29f62bb)) * Sample app with full flow ([#66](#66)) ([77ab0e4](77ab0e4)) * Wallet SDK init ([4eeea4c](4eeea4c)) * wallet-core module init ([1f03a35](1f03a35)) * X25519 ([#48](#48)) ([5ac155b](5ac155b))
# [2.0.0](v1.0.0...v2.0.0) (2023-06-21) ### Bug Fixes * agent start and mediation achieved ([#60](#60)) ([e24f67a](e24f67a)) * create peer DID with updateMediator false does not ignore provided services ([#73](#73)) ([662c845](662c845)) * credentials duplicated when stored localy ([#69](#69)) ([f1b6518](f1b6518)) * **docs:** Add general docs & code docs & CI ([a339641](a339641)) * Fix dependencies to fully integrate with latest version of packages in prism-protos + protosLib. ([1ed30cf](1ed30cf)) * Fix key pair creation from private key for ED25519 ([#56](#56)) ([a8af225](a8af225)) * Fix key pair creation from private key for X25519 ([#57](#57)) ([1cfc294](1cfc294)) * Fix key pair creation from private key using SECP256K1 ([#55](#55)) ([8b48aa1](8b48aa1)) * Implement test for key pair creation using mnemonics and seed for curve SECP256K1 ([#54](#54)) ([026dc0d](026dc0d)) * kmm agent up to date with swift public apis ([#67](#67)) ([7a65b3a](7a65b3a)) * move hardcoded values into constants ([#72](#72)) ([4577ecf](4577ecf)) * pick up messages and mark as read ([#63](#63)) ([087bb88](087bb88)) * remove private key storage duplicity ([#75](#75)) ([549bbeb](549bbeb)) * request and achieve mediation ([#62](#62)) ([73f98c5](73f98c5)) * **sdk:** replace GlobalScope with correct coroutine scope ([e44ac86](e44ac86)) ### Features * [ATL-2994] [Wallet SDK] Define domain interfaces and models ([#3](#3)) ([1e4faf8](1e4faf8)) * add logging component to the sdk ([#77](#77)) ([57ca4f0](57ca4f0)) * add protobuf-gradle-plugin ([8eaf852](8eaf852)) * **agent:** add mediation and ability to send messages ([f7b5d7f](f7b5d7f)) * **agent:** add mediation grant message ([d53119c](d53119c)) * **agent:** add mediator request message ([617640c](617640c)) * **agent:** add mediator request message ([#5](#5)) ([60cfd13](60cfd13)) * **agent:** add prism agent and create did functionalities ([431201b](431201b)) * **Agent:** Implement Credential Issue Protocol in PrismAgent ([#27](#27)) ([0f635f3](0f635f3)) * **agent:** Implementation Onboarding invitation on Agent ([#18](#18)) ([c6188ec](c6188ec)) * **Agent:** Logic to parse out of band invitations ([#25](#25)) ([85535c5](85535c5)) * **Agent:** Persist key pairs into local storage ([#22](#22)) ([7cc738f](7cc738f)) * **Apollo:** Ed25519 key pair generation ([d11a7a1](d11a7a1)) * **build:** remove grpc dependencies and simplify protobufs ([7e700e1](7e700e1)) * **castor:** Add peerDID Create method + tests. ([#15](#15)) ([3b9b495](3b9b495)) * **castor:** Add peerDID resolver + tests. ([#14](#14)) ([462764a](462764a)) * **castor:** Resolve LongFormatPrismDIDs in Castor ([#23](#23)) ([1331923](1331923)) * **didparser:** Adding amtlr4 grammar did parser with specification and tests ([#10](#10)) ([0d7dac1](0d7dac1)) * **didUrlParser:** add did url parser and g4 grammar ([#12](#12)) ([2ee6ad9](2ee6ad9)) * document models and make some classes internal ([#78](#78)) ([e6b9c0b](e6b9c0b)) * Implement ED25519 - Keypair generation ([#52](#52)) ([6c4eab1](6c4eab1)) * Implement sign and verify for Ed25519 ([#59](#59)) ([b0086a1](b0086a1)) * Implement X25519 - Keypair generation ([bbc2394](bbc2394)) * Implement X25519 - Keypair generation ([#53](#53)) ([be0aa7e](be0aa7e)) * improve error handling ([#74](#74)) ([c14f157](c14f157)) * integrate authenticate-sdk, buildSrc (Deps + Version globals), Protos and basic dependencies from old SDK ([1b0e6b5](1b0e6b5)) * **mercury:** add default secrets resolver ([#34](#34)) ([21449a1](21449a1)) * **Mercury:** Orchestration and tests ([#49](#49)) ([cc1313c](cc1313c)) * **pluto db:** Implement db ([#13](#13)) ([9a82003](9a82003)) * **Pluto:** Add back flows to add reactiveness to the DB ([#38](#38)) ([17dde4d](17dde4d)) * **pluto:** Implementation of pluto ([#17](#17)) ([e6c2ed1](e6c2ed1)) * **pollux:** add create credential request and presentation jwt string and prism agent higher functionality ([9a38c18](9a38c18)) * **pollux:** add create credential request and presentation jwt string and prism agent higher functionality ([231387d](231387d)) * **Prism Agent:** Add connection data persistency ([#37](#37)) ([ad5132b](ad5132b)) * **PrismAgent:** Implement message signature ([#21](#21)) ([fec99aa](fec99aa)) * project init ([29f62bb](29f62bb)) * release first production version ([99ce9e0](99ce9e0)) * Sample app with full flow ([#66](#66)) ([77ab0e4](77ab0e4)) * Wallet SDK init ([4eeea4c](4eeea4c)) * wallet-core module init ([1f03a35](1f03a35)) * X25519 ([#48](#48)) ([5ac155b](5ac155b)) ### BREAKING CHANGES * first release version
# [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 <[email protected]> Signed-off-by: Cristian G <[email protected]> * first release version Co-authored-by: Ahmed Moussa <[email protected]> Signed-off-by: Anton Baliasnikov <[email protected]>
# [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 <[email protected]> Signed-off-by: Allain Magyar <[email protected]> * Support OEA 1.26+ due to updates on the PeerDID Specs changes. Co-authored-by: Ahmed Moussa <[email protected]> Signed-off-by: Cristian G <[email protected]> * first release version Co-authored-by: Ahmed Moussa <[email protected]> Signed-off-by: Anton Baliasnikov <[email protected]>
# [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 <[email protected]> Signed-off-by: Allain Magyar <[email protected]> * Support OEA 1.26+ due to updates on the PeerDID Specs changes. Co-authored-by: Ahmed Moussa <[email protected]> Signed-off-by: Cristian G <[email protected]> * first release version Co-authored-by: Ahmed Moussa <[email protected]> Signed-off-by: Anton Baliasnikov <[email protected]>
Overview
Integrates the PeerDID creation method in Castor + integrates basic unit testing.
Checklist
My PR contains...