Merge pull request #7695 from corda/shams-eddsa-service-keys

ENT-11662: Use EdDSA when generating notary service identities
This commit is contained in:
Adel El-Beik 2024-03-20 12:10:10 +00:00 committed by GitHub
commit 0849f91d45
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -121,8 +121,11 @@ open class NetworkRegistrationHelper(
requestIdStore.deleteIfExists()
}
private fun generateKeyPairAndCertificate(keyAlias: String, legalName: CordaX500Name, certificateRole: CertRole, certStore: CertificateStore): Pair<PublicKey, List<X509Certificate>> {
val entityPublicKey = loadOrGenerateKeyPair(keyAlias)
private fun generateKeyPairAndCertificate(keyAlias: String,
legalName: CordaX500Name,
certificateRole: CertRole,
certStore: CertificateStore): Pair<PublicKey, List<X509Certificate>> {
val entityPublicKey = loadOrGenerateKeyPair(keyAlias, certificateRole)
val requestId = submitOrResumeCertificateSigningRequest(entityPublicKey, legalName, certificateRole, cryptoService.getSigner(keyAlias))
@ -209,11 +212,16 @@ open class NetworkRegistrationHelper(
logProgress("Node identity private key and certificate chain stored in $nodeIdentityAlias.")
}
private fun loadOrGenerateKeyPair(keyAlias: String): PublicKey {
private fun loadOrGenerateKeyPair(keyAlias: String, certificateRole: CertRole): PublicKey {
return if (cryptoService.containsKey(keyAlias)) {
cryptoService.getPublicKey(keyAlias)!!
} else {
cryptoService.generateKeyPair(keyAlias, cryptoService.defaultTLSSignatureScheme())
val signatureScheme = if (certificateRole == CertRole.SERVICE_IDENTITY) {
cryptoService.defaultIdentitySignatureScheme()
} else {
cryptoService.defaultTLSSignatureScheme()
}
cryptoService.generateKeyPair(keyAlias, signatureScheme)
}
}