Consider removing BouncyCastle in latest versions of .net and use .net native libraries for crypto
nlionis-eg opened this issue · 3 comments
nlionis-eg commented
There is always a problem with different libraries using different versions of BouncyCastle that ends in versions mismatches.
Consider removing BouncyCastle in latest versions of .net (.net6 .net8 etc) and use .net native libraries for crypto
jstedfast commented
Even the latest versions of dotnet don't have all of the crypto needed.
jstedfast commented
Just transferred this from MailKit to MimeKit because MailKit itself barely depends at all on BouncyCastle.
MimeKit depends on BouncyCastle for:
- Some S/MIME functionality (.net6/7/8 are not fully cross-platform for their X.509 implementation)
- All PGP functionality (.net6/7/8 do not have ANY of the needed support for this)
- Some DKIM functionality (namely the Ed25519 digital signature algorithm)
MailKit depends on BouncyCastle for:
- IMAP COMPRESS support - while technically, .net6/7/8 contain a ZlibStream, it's not really usable because I need it to reset state after each command sent/received, so I had to write my own stream based on the Zlib API in BouncyCastle.