Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consider removing BouncyCastle in latest versions of .net and use .net native libraries for crypto #986

Closed
nlionis-eg opened this issue Jan 2, 2024 · 3 comments

Comments

@nlionis-eg
Copy link

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
Copy link
Owner

Even the latest versions of dotnet don't have all of the crypto needed.

@jstedfast jstedfast closed this as not planned Won't fix, can't repro, duplicate, stale Jan 2, 2024
@jstedfast jstedfast transferred this issue from jstedfast/MailKit Jan 2, 2024
@jstedfast
Copy link
Owner

Similar to issue #820

@jstedfast
Copy link
Owner

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants