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

Update cryptoKmp to v0.4.0 #109

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

Update cryptoKmp to v0.4.0 #109

wants to merge 1 commit into from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Oct 12, 2024

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
dev.whyoleg.cryptography:cryptography-provider-webcrypto 0.3.1 -> 0.4.0 age adoption passing confidence
dev.whyoleg.cryptography:cryptography-provider-openssl3-prebuilt 0.3.1 -> 0.4.0 age adoption passing confidence
dev.whyoleg.cryptography:cryptography-provider-jdk 0.3.1 -> 0.4.0 age adoption passing confidence
dev.whyoleg.cryptography:cryptography-core 0.3.1 -> 0.4.0 age adoption passing confidence

Release Notes

whyoleg/cryptography-kotlin (dev.whyoleg.cryptography:cryptography-provider-webcrypto)

v0.4.0

Compare Source

Published 12 Oct 2024

Features
  • Ecliptic curves improvements:
    • Implement ECDH via a new shared secret derivation API
    • Support ECDSA in Apple provider
    • Support both ECDSA signature formats for all providers
    • Added RAW private key encoding (encoding secret value)
    • Added SEC1/RFC5915 private key encoding
  • New algorithms:
    • Support for PBKDF2 and HKDF via a new secret derivation API
    • Legacy algorithms supported. Make sure you really need them before use:
      • AES-ECB – JDK name AES/ECB/PKCS1Padding or AES/ECB/NoPadding
      • RSA-PKCS1 (encryption) – JDK name RSA/ECB/PKCS1Padding
      • RSA (encryption) – JDK name RSA/ECB/NoPadding
  • IO improvements and kotlinx-io integration:
    • Support ByteString in places where ByteArray is used
    • Incremental hashing and signature generation/verification via HashFunction, SignFunction and VerifyFunction
    • Support hash/sign/verify over kotlinx-io Sink and Source
    • Support for streaming encryption/decryption over kotlinx-io Sink and Source
  • Add the ability to use custom IV in AES-GCM (#​38)
  • Allow arbitrary key sizes in HMAC
Breaking changes
  • Drop default signature format parameter for ECDSA
  • Rename some parameters in algorithms/operations to have better clarity and less noise
  • Rename PEM and DER to Pem and Der respectively
  • Move operations from subpackages to operations package
    • dev.whyoleg.cryptography.operations.hash.Hasher was moved to dev.whyoleg.cryptography.operations.Hasher
    • dev.whyoleg.cryptography.operations.cipher.* was moved to dev.whyoleg.cryptography.operations.*
    • dev.whyoleg.cryptography.operations.signature.* was moved to dev.whyoleg.cryptography.operations.*
    • Old declarations are deprecated for removal with ReplaceWith
  • Move algorithms from subpackages to algorithms package
    • dev.whyoleg.cryptography.algorithms.digest.* was moved to dev.whyoleg.cryptography.algorithms.*
    • dev.whyoleg.cryptography.algorithms.symmetric.* was moved to dev.whyoleg.cryptography.algorithms.*
    • dev.whyoleg.cryptography.algorithms.asymmetric.* was moved to dev.whyoleg.cryptography.algorithms.*
    • Old declarations are deprecated for removal with ReplaceWith
  • SymmetricKeySize was deprecated in favor of AES.Key.Size properties
  • SignatureVerifier.verifySignature now throws on invalid signature instead of returning Boolean
    • SignatureVerifier.tryVerifySignature is introduced for rare cases when graceful handling is needed
  • Renamed AES methods with explicitly provided IV from encrypt(iv)/decrypt(iv) to encryptWithIv(iv)/decryptWithIv(iv) to be more
    explicit and better distinguish implcit and explict cases
  • CryptographyException is no longer used: IllegalStateException is thrown instead
Other improvements
  • Kotlin 2.0.20
  • Update the prebuilt OpenSSL version to 3.3.2
  • Improve ASN.1/DER encoding feature coverage:
    • support Context specific tags, both implicit and explicit
    • fully support optional and default properties
    • support Kotlin inline classes
    • add more ASN.1 modules for RSA and EC
  • Make ServiceLoader usage to be optimized by Android R8

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/cryptokmp branch 5 times, most recently from 577f444 to 417af46 Compare October 16, 2024 21:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants