1
0
Fork 0
mirror of https://github.com/pgpainless/pgpainless.git synced 2025-09-10 02:39:39 +02:00

Fix IndexOutOfBounds, but keep decryption with only SK working

This commit is contained in:
Paul Schaub 2025-07-14 21:33:51 +02:00
parent de3afbfc1d
commit 446526c7ec
Signed by: vanitasvitae
GPG key ID: 62BEE9264BF17311
2 changed files with 5 additions and 6 deletions

View file

@ -347,11 +347,10 @@ class OpenPgpMessageInputStream(
syntaxVerifier.next(InputSymbol.ENCRYPTED_DATA)
val encDataList = packetInputStream!!.readEncryptedDataList()
if (encDataList.isEmpty) {
LOGGER.debug("Missing encrypted session key packet.")
return false
}
if (!encDataList.isIntegrityProtected && !encDataList.get(0).isAEAD) {
if (!encDataList.isIntegrityProtected &&
!encDataList.isEmpty &&
!encDataList.get(0).isAEAD) {
LOGGER.warn("Symmetrically Encrypted Data Packet is not integrity-protected.")
if (!options.isIgnoreMDCErrors()) {
throw MessageNotIntegrityProtectedException()

View file

@ -152,7 +152,7 @@ class EncryptImpl(private val api: PGPainless) : Encrypt {
}
override fun withPassword(password: String): Encrypt = apply {
encryptionOptions.addMessagePassphrase(Passphrase.fromPassword(password))
encryptionOptions.addMessagePassphrase(Passphrase.fromPassword(password).withTrimmedWhitespace())
}
private fun modeToStreamEncoding(mode: EncryptAs): StreamEncoding {