Swift Crypto Versions Save

Open-source implementation of a substantial portion of the API of Apple CryptoKit suitable for use on Linux platforms.

3.4.0

1 week ago

SemVer Minor

  • Update lower bound for RSA key sizes (#218, patch credit to @ptoffy)

SemVer Patch

  • Add empty privacy manifest files (#226)
  • Use BoringSSL implementation for _CryptoExtras.AES._CTR (#229)

3.3.0

2 months ago

SemVer Minor

  • Add support for AES CTR mode in _CryptoExtras (#220)
  • Raise minimum Swift version to 5.7 (#221)

SemVer Patch

  • Remove dtls1.h as part of removing libssl (#217, patch credit to @davidben)
  • Update BoringSSL to dbad745811195c00b729efd0ee0a09b7d9fce1d2 (#222)

Other Changes

  • Documentation: Update macOS development instructions (#216, patch credit to @coldjugular)

3.2.0

4 months ago

SemVer Minor

  • Add pkcs8PEMRepresenation for RSA private keys (#203, patch credit to @bjhomer)
  • Add support for CBC without padding (#210, patch credit to @lovetodream)
  • Add support for RSA OAEP with SHA256 (#206)
  • Add Sendable annotations to Crypto Extras (#211, #214)

SemVer Patch

  • Add extern C markers (#204, patch credit to @brianmichel)
  • Update BoringSSLRSAPublicKey to use EVP_PKEY API (#205)
  • Update BoringSSL to 7a813621dac6878ab53b6ed7392939a8982226e8 (#207, #215)

Other Changes

  • Add cxx interop build pipeline (#212)
  • Update availability annotations in tests (#213)

3.1.0

7 months ago

SemVer Minor

  • Add support for AES-CBC in _CryptoExtras (#200)
  • Bump minimum Swift version to 5.7 (#201)

3.0.0

7 months ago

The only meaningful breaking change in this release is the addition of new cases in the CryptoKitError enum. The overwhelming majority of users can and should express a wider version range than usual: "1.0.0" ..< "4.0.0" is the recommended version range.

SemVer Major

  • Update to CryptoKit 2023 final API (#199)

SemVer Patch

  • Set missing Windows defines (#197) (patch credit to @compnerd)
  • Use SecKeyGetBlockSize instead of kSecAttrKeySizeInBits (#198)

2.6.0

9 months ago

Semver Minor

  • Add API providing basic RSA pubkey encrypt and privkey decrypt (#125, #191, patch credit to @gwynne)

Semver Patch

  • Switch to canImport instead of os conditions (#184, #192)
  • Update BoringSSL to 7ae2b910c13017b63f1a8bd6c8decfce692869b0 (#190, #193)

Other changes

  • Typo fixes (#179, patch credit to @joey-gm)
  • Update code of conduct (#182)

3.0.0-beta.1

11 months ago

While this adds a Semver Major, the only breaking changes are in error enumerations. Users are encouraged to support 3.x alongside 2.x and 1.x.

Semver Major

  • Update to the 2023 CryptoKit API (#181)

Other changes

  • Update code of conduct (#182)
  • Clean up documentation typos (#179) (patch credit to @joey-gm)

2.5.0

1 year ago

SemVer Minor

  • ChaCha20 CTR Encryption (#169, patch credit to @btoms20)

SemVer Patch

  • Drop support for Swift 5.5 (#172)

Other Changes

  • Set CRYPTO_IN_SWIFTPM (#177, patch credit to @etcwilde)

2.4.1

1 year ago

SemVer Patch

  • Update BoringSSL to abfd5ebc87ddca0fab9fca067c9d7edbc355eae8 (#171)

Other Changes

  • Fix broken link (#153, patch credit to @Sajjon)
  • Update Wycheproof 'x25519_test.json' to v1 (#155, patch credit to @Sajjon)
  • Update Wycheproof aes_gcm.json to v1 (#156, patch credit to @Sajjon)
  • Update Wycheproof chacha20_poly1305 to v1 (#157, patch credit to @Sajjon)
  • Update Wycheproof ecdh_secp256r1_ecpoint_test.json to v1 (#158, patch credit to @Sajjon)
  • Update Wycheproof eddsa_test to v1 (renamed to ed25519_test) (#159, patch credit to @Sajjon)
  • Update Wycheproof ecdh_secp256r1_test.json to v1 (#160, patch credit to @Sajjon)
  • Update Wycheproof ecdh_secp384r1_ecpoint_test.json to v1 (#161, patch credit to @Sajjon)
  • Update Wycheproof ecdh_secp384r1_test.json to v1 (#162, patch credit to @Sajjon)
  • Update Wycheproof ecdh_secp521r1_test.json to v1 (#163, patch credit to @Sajjon)
  • Update Wycheproof ecdh_secp521r1_ecpoint_test.json to v1 (#164, patch credit to @Sajjon)
  • Update Wycheproof multiple ECDSA test vectors to v1 (#166, patch credit to @Sajjon)
  • Add five new Wycheproof ECDSA test vectors using IEEE P1363 format (#167, patch credit to @Sajjon)
  • Exclude AES from CMake (#152)
  • Add docker-compose file for Swift 5.8 and 5.9 (#170)

2.4.0

1 year ago

SemVer Minor

  • Make RSA public key formats consistent on all platforms (#151)