Skip to content

3.11.0 (Supreme 0.6.0)

Compare
Choose a tag to compare
@JesusMcCloud JesusMcCloud released this 09 Dec 14:01
· 10 commits to main since this release
1f2acdc
  • Kotlin 2.1.0
  • Bouncy Castle 1.79!! for JVM targets
  • Implement members in JsonWebToken and ConfirmationClaim for OpenID4VC High Assurance Interoperability Profile with SD-JWT VC
  • Add utility methods to Asn1Integer
    • Additional constructor methods: fromByteArray, fromUnsignedByteArray
    • Additional instance methods: isZero, magnitude, bitLength
    • Additional conversion methods for Java BigInteger and iospin BigInteger
  • Refactor CryptoPublicKey.Rsa to use Asn1Integer
    • Fixes JWS/COSE encoding for non-standard exponents (with MSBit 1)
  • Add type parameter to CoseSigned for its payload (tagging with tag 24 when necessary)
    • Changes primary constructor visibility to internal to check for ByteStringWrapper as payload type, which shall be rejected
    • Fix serialization with Json
  • Do not use DID key identifiers as keyId for CoseKey
  • Fix BitSet iterator
  • Add cose header typ
  • Allow assertTag override also for Asn1Integer (was missing before)
  • Sanitized Asn1OctetString inheritors' equality behavior
    • Two Asn1OctetStrings are always equal if their contents are equal
  • Make Asn1Integer an Asn1Encodable<String>
  • PEM Encoding
    • Introduce PemEncodable interface, derived from Asn1Encodable
    • Introduce PemDecodable interface, derived from Asn1Decodable
  • Add Private Key
    • Add Private Key Representation to indispensable
    • Parsing of PEM and DER-encoded private keys in indispensable
    • Introduce SignatureAlgorithm.signerFor(privateKey) in supreme to create signers backed by (previously parsed, or manually constructed) private keys
    • Export of private keys from ephemeral signers (and only ephemeral signers) in combination with a new @SecretExposure annotation in supreme
  • Add helpers for smoother iOS interop:
    • ECCurve.iosEncodedPublicKeyLength
    • ECCurve.iosEncodedPrivateKeyLength
    • ECCurve.Companion.fromIosEncodedPublicKeyLength
    • ECCurve.Companion.fromIosEncodedPrivateKeyLength
  • Renames (old names are kept with a deprecation warning):
    • getJcaPublicKey() -> toJcaPublicKey()
  • Support RSA8192