From c19ee12124e242818bf512002a6020056813af21 Mon Sep 17 00:00:00 2001 From: mikeplotean <101570226+mikeplotean@users.noreply.github.com> Date: Mon, 23 Oct 2023 13:34:27 +0300 Subject: [PATCH] chore: pass the private key to local registrars (#9) --- .../kotlin/id/walt/did/dids/registrar/LocalRegistrar.kt | 2 +- .../id/walt/did/dids/registrar/local/jwk/DidJwkRegistrar.kt | 2 +- .../id/walt/did/dids/registrar/local/key/DidKeyRegistrar.kt | 5 +++-- .../id/walt/did/dids/registrar/local/web/DidWebRegistrar.kt | 4 +++- 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/waltid-did/src/commonMain/kotlin/id/walt/did/dids/registrar/LocalRegistrar.kt b/waltid-did/src/commonMain/kotlin/id/walt/did/dids/registrar/LocalRegistrar.kt index 17e97bc74..9ad80c8f2 100644 --- a/waltid-did/src/commonMain/kotlin/id/walt/did/dids/registrar/LocalRegistrar.kt +++ b/waltid-did/src/commonMain/kotlin/id/walt/did/dids/registrar/LocalRegistrar.kt @@ -26,7 +26,7 @@ class LocalRegistrar : DidRegistrar { override suspend fun create(options: DidCreateOptions): DidResult = getRegistrarForMethod(options.method).register(options) override suspend fun createByKey(key: Key, options: DidCreateOptions): DidResult = - getRegistrarForMethod(options.method).registerByKey(key.getPublicKey(), options) + getRegistrarForMethod(options.method).registerByKey(key, options) override suspend fun update() { diff --git a/waltid-did/src/commonMain/kotlin/id/walt/did/dids/registrar/local/jwk/DidJwkRegistrar.kt b/waltid-did/src/commonMain/kotlin/id/walt/did/dids/registrar/local/jwk/DidJwkRegistrar.kt index 536b9ce5b..946947e8c 100644 --- a/waltid-did/src/commonMain/kotlin/id/walt/did/dids/registrar/local/jwk/DidJwkRegistrar.kt +++ b/waltid-did/src/commonMain/kotlin/id/walt/did/dids/registrar/local/jwk/DidJwkRegistrar.kt @@ -20,7 +20,7 @@ class DidJwkRegistrar : LocalRegistrarMethod("jwk") { val did = "did:jwk:${key.exportJWK().toByteArray().encodeToBase64Url()}" val didDocument = DidDocument( - DidJwkDocument(did, key.exportJWKObject()) + DidJwkDocument(did, key.getPublicKey().exportJWKObject()) .toMap() ) diff --git a/waltid-did/src/commonMain/kotlin/id/walt/did/dids/registrar/local/key/DidKeyRegistrar.kt b/waltid-did/src/commonMain/kotlin/id/walt/did/dids/registrar/local/key/DidKeyRegistrar.kt index 59e8a01ce..135e362ae 100644 --- a/waltid-did/src/commonMain/kotlin/id/walt/did/dids/registrar/local/key/DidKeyRegistrar.kt +++ b/waltid-did/src/commonMain/kotlin/id/walt/did/dids/registrar/local/key/DidKeyRegistrar.kt @@ -29,9 +29,10 @@ class DidKeyRegistrar : LocalRegistrarMethod("key") { KeyType.secp256r1 ) ) throw IllegalArgumentException("did:key can not be created with a ${key.keyType} key.") - val identifierComponents = getIdentifierComponents(key, it) + val pubKey = key.getPublicKey() + val identifierComponents = getIdentifierComponents(pubKey, it) val identifier = convertRawKeyToMultiBase58Btc(identifierComponents.pubKeyBytes, identifierComponents.multiCodecKeyCode) - createDid(identifier, key.exportJWKObject()) + createDid(identifier, pubKey.exportJWKObject()) } private suspend fun getIdentifierComponents(key: Key, options: DidCreateOptions): IdentifierComponents = diff --git a/waltid-did/src/commonMain/kotlin/id/walt/did/dids/registrar/local/web/DidWebRegistrar.kt b/waltid-did/src/commonMain/kotlin/id/walt/did/dids/registrar/local/web/DidWebRegistrar.kt index 2f6ef9d37..9c9046ab9 100644 --- a/waltid-did/src/commonMain/kotlin/id/walt/did/dids/registrar/local/web/DidWebRegistrar.kt +++ b/waltid-did/src/commonMain/kotlin/id/walt/did/dids/registrar/local/web/DidWebRegistrar.kt @@ -26,7 +26,9 @@ class DidWebRegistrar : LocalRegistrarMethod("web") { DidResult( "did:web:$domain$path", DidDocument( DidWebDocument( - did = "did:web:$domain$path", keyId = key.getKeyId(), didKey = key.exportJWKObject() + did = "did:web:$domain$path", + keyId = key.getKeyId(), + didKey = key.getPublicKey().exportJWKObject() ).toMap() ) )