diff --git a/pgpainless-core/src/main/kotlin/org/pgpainless/key/modification/secretkeyring/SecretKeyRingEditor.kt b/pgpainless-core/src/main/kotlin/org/pgpainless/key/modification/secretkeyring/SecretKeyRingEditor.kt index a5513cb3..710b7d32 100644 --- a/pgpainless-core/src/main/kotlin/org/pgpainless/key/modification/secretkeyring/SecretKeyRingEditor.kt +++ b/pgpainless-core/src/main/kotlin/org/pgpainless/key/modification/secretkeyring/SecretKeyRingEditor.kt @@ -90,9 +90,9 @@ class SecretKeyRingEditor(var key: OpenPGPKey, override val referenceTime: Date } builder.hashedSubpackets.apply { setKeyFlags(info.getKeyFlagsOf(primaryKey.keyID)) - setPreferredHashAlgorithms(hashAlgorithmPreferences) - setPreferredSymmetricKeyAlgorithms(symmetricKeyAlgorithmPreferences) - setPreferredCompressionAlgorithms(compressionAlgorithmPreferences) + hashAlgorithmPreferences?.let { setPreferredHashAlgorithms(it) } + symmetricKeyAlgorithmPreferences?.let { setPreferredSymmetricKeyAlgorithms(it) } + compressionAlgorithmPreferences?.let { setPreferredCompressionAlgorithms(it) } setFeatures(Feature.MODIFICATION_DETECTION) } builder.applyCallback(callback) diff --git a/pgpainless-core/src/main/kotlin/org/pgpainless/signature/subpackets/SelfSignatureSubpackets.kt b/pgpainless-core/src/main/kotlin/org/pgpainless/signature/subpackets/SelfSignatureSubpackets.kt index 7e7c8236..7d160c5c 100644 --- a/pgpainless-core/src/main/kotlin/org/pgpainless/signature/subpackets/SelfSignatureSubpackets.kt +++ b/pgpainless-core/src/main/kotlin/org/pgpainless/signature/subpackets/SelfSignatureSubpackets.kt @@ -112,7 +112,7 @@ interface SelfSignatureSubpackets : BaseSignatureSubpackets { fun setPreferredHashAlgorithms(algorithms: PreferredAlgorithms?): SelfSignatureSubpackets - fun setPreferredAEADCiphersuites(aeadAlgorithms: Set) + fun setPreferredAEADCiphersuites(aeadAlgorithms: Set): SelfSignatureSubpackets fun addRevocationKey(revocationKey: PGPPublicKey): SelfSignatureSubpackets diff --git a/pgpainless-core/src/main/kotlin/org/pgpainless/signature/subpackets/SignatureSubpackets.kt b/pgpainless-core/src/main/kotlin/org/pgpainless/signature/subpackets/SignatureSubpackets.kt index 93796ca8..192412c9 100644 --- a/pgpainless-core/src/main/kotlin/org/pgpainless/signature/subpackets/SignatureSubpackets.kt +++ b/pgpainless-core/src/main/kotlin/org/pgpainless/signature/subpackets/SignatureSubpackets.kt @@ -42,6 +42,7 @@ class SignatureSubpackets : var preferredCompressionAlgorithmsSubpacket: PreferredAlgorithms? = null var preferredSymmetricKeyAlgorithmsSubpacket: PreferredAlgorithms? = null var preferredHashAlgorithmsSubpacket: PreferredAlgorithms? = null + var preferredAEADCiphersuites: List? = null val embeddedSignatureSubpackets: List = mutableListOf() var signerUserIdSubpacket: SignerUserID? = null var keyExpirationTimeSubpacket: KeyExpirationTime? = null @@ -312,6 +313,10 @@ class SignatureSubpackets : this.preferredHashAlgorithmsSubpacket = algorithms } + override fun setPreferredAEADCiphersuites( + aeadAlgorithms: Set + ): SignatureSubpackets = apply { this.preferredAEADCiphersuites = aeadAlgorithms.toList() } + override fun addRevocationKey(revocationKey: PGPPublicKey): SignatureSubpackets = apply { addRevocationKey(true, revocationKey) }