[prev in list] [next in list] [prev in thread] [next in thread] 

List:       bouncycastle-crypto-dev
Subject:    [dev-crypto] AEAD cipher in OpenPGP
From:       Atanas Walks <akrachev () gmail ! com>
Date:       2022-05-12 17:27:46
Message-ID: CAJy+ey-nUQqk-XeCo7NTV6CqNUw+n9=5XT-xnBG30ZZNvNNZwQ () mail ! gmail ! com
[Download RAW message or body]

--------------------------------------------------------------
       From: Atanas Krachev <a <peter@netwin.co.nz>krachev@gmail.com>
         To: dev-crypto@bouncycastle.org
    Subject: AEAD cipher in OpenPGP

    Hello,

I've added support for AEAD packet decryption available here:
https://github.com/didisoft/bc-java/tree/AEAD_DECRYPTION

In brief, the new additions are:

0. added PacketTags.AEAD_ENC = 20
1. org.bouncycastle.bcpg.AeadEncryptedPacket
2. BCPGInputStream.nextPacket() - recognizes PacketTags.AEAD_ENC
3. An internal class AeadCipherStream inside PGPPublicKeyEncryptedData
that acts in similar fashion as
org.bouncycastle.crypto.io.CipherInputStream with AEAD but with the
specifics of
https://datatracker.ietf.org/doc/html/draft-ietf-openpgp-rfc4880bis-04#section-5.16
4. PGPPublicKeyEncryptedData.getDataStream checks for AeadCipherStream  at
the beginning and tries to decrypt it.

PS. AeadCipherStream should be capable also of encrypting with AEAD, but I
haven't tested it yet!

Best Regards,
Atanas Krachev
 --------------------------------------------------------------

[Attachment #3 (text/html)]

<div dir="ltr">--------------------------------------------------------------<br>     \
From: Atanas Krachev &lt;<a href="mailto:peter@netwin.co.nz" target="_blank">a</a><a \
href="mailto:krachev@gmail.com">krachev@gmail.com</a>&gt;<br>              To:  <a \
href="mailto:dev-crypto@bouncycastle.org" \
target="_blank">dev-crypto@bouncycastle.org</a><br>      Subject: AEAD cipher in \
OpenPGP<br><br>      Hello,<div><br></div><div>I&#39;ve added support for AEAD packet \
decryption available here:<br><a \
href="https://github.com/didisoft/bc-java/tree/AEAD_DECRYPTION">https://github.com/didisoft/bc-java/tree/AEAD_DECRYPTION</a><br><br>In \
brief, the new additions are:<br><br>0. added PacketTags.AEAD_ENC = 20<br>1. \
org.bouncycastle.bcpg.AeadEncryptedPacket<br>2. BCPGInputStream.nextPacket() - \
recognizes PacketTags.AEAD_ENC <br>3. An internal class AeadCipherStream inside \
PGPPublicKeyEncryptedData<br>that acts in similar fashion as \
org.bouncycastle.crypto.io.CipherInputStream with AEAD but with the specifics of <a \
href="https://datatracker.ietf.org/doc/html/draft-ietf-openpgp-rfc4880bis-04#section-5 \
.16">https://datatracker.ietf.org/doc/html/draft-ietf-openpgp-rfc4880bis-04#section-5.16</a><br>4. \
PGPPublicKeyEncryptedData.getDataStream checks for AeadCipherStream   at the \
beginning and tries to decrypt it.<br><br>PS. AeadCipherStream should be capable also \
of encrypting with AEAD, but I haven&#39;t tested it yet!<br><br>Best \
Regards,<br>Atanas Krachev<br>  \
--------------------------------------------------------------<br></div></div>



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic