DefaultCryptoService

actual class DefaultCryptoService : CryptoService

Default implementation of a crypto service for iOS.

The primary goal is to provide a minimal implementation so that unit tests in the commonTest module run successfully.

Beware: It does not implement encryption, decryption, key agreement and message digest correctly.

actual open class DefaultCryptoService : CryptoService

Constructors

Link copied to clipboard
Link copied to clipboard

Functions

decrypt
Link copied to clipboard
abstract suspend fun decrypt(key: ByteArray, iv: ByteArray, aad: ByteArray, input: ByteArray, authTag: ByteArray, algorithm: JweEncryption): KmmResult<ByteArray>
open suspend override fun decrypt(key: ByteArray, iv: ByteArray, aad: ByteArray, input: ByteArray, authTag: ByteArray, algorithm: JweEncryption): KmmResult<ByteArray>
open suspend override fun decrypt(key: ByteArray, iv: ByteArray, aad: ByteArray, input: ByteArray, authTag: ByteArray, algorithm: JweEncryption): KmmResult<ByteArray>
encrypt
Link copied to clipboard
abstract fun encrypt(key: ByteArray, iv: ByteArray, aad: ByteArray, input: ByteArray, algorithm: JweEncryption): KmmResult<AuthenticatedCiphertext>
open override fun encrypt(key: ByteArray, iv: ByteArray, aad: ByteArray, input: ByteArray, algorithm: JweEncryption): KmmResult<AuthenticatedCiphertext>
open override fun encrypt(key: ByteArray, iv: ByteArray, aad: ByteArray, input: ByteArray, algorithm: JweEncryption): KmmResult<AuthenticatedCiphertext>
generateEphemeralKeyPair
Link copied to clipboard
abstract fun generateEphemeralKeyPair(ecCurve: EcCurve): KmmResult<EphemeralKeyHolder>
open override fun generateEphemeralKeyPair(ecCurve: EcCurve): KmmResult<EphemeralKeyHolder>
open override fun generateEphemeralKeyPair(ecCurve: EcCurve): KmmResult<EphemeralKeyHolder>
messageDigest
Link copied to clipboard
abstract fun messageDigest(input: ByteArray, digest: Digest): KmmResult<ByteArray>
open override fun messageDigest(input: ByteArray, digest: Digest): KmmResult<ByteArray>
open override fun messageDigest(input: ByteArray, digest: Digest): KmmResult<ByteArray>
performKeyAgreement
Link copied to clipboard
abstract fun performKeyAgreement(ephemeralKey: JsonWebKey, algorithm: JweAlgorithm): KmmResult<ByteArray>
abstract fun performKeyAgreement(ephemeralKey: EphemeralKeyHolder, recipientKey: JsonWebKey, algorithm: JweAlgorithm): KmmResult<ByteArray>
open override fun performKeyAgreement(ephemeralKey: JsonWebKey, algorithm: JweAlgorithm): KmmResult<ByteArray>
open override fun performKeyAgreement(ephemeralKey: EphemeralKeyHolder, recipientKey: JsonWebKey, algorithm: JweAlgorithm): KmmResult<ByteArray>
open override fun performKeyAgreement(ephemeralKey: JsonWebKey, algorithm: JweAlgorithm): KmmResult<ByteArray>
open override fun performKeyAgreement(ephemeralKey: EphemeralKeyHolder, recipientKey: JsonWebKey, algorithm: JweAlgorithm): KmmResult<ByteArray>
sign
Link copied to clipboard
abstract suspend fun sign(input: ByteArray): KmmResult<ByteArray>
open suspend override fun sign(input: ByteArray): KmmResult<ByteArray>
open suspend override fun sign(input: ByteArray): KmmResult<ByteArray>
toJsonWebKey
Link copied to clipboard
abstract fun toJsonWebKey(): JsonWebKey
open override fun toJsonWebKey(): JsonWebKey
open override fun toJsonWebKey(): JsonWebKey

Properties

jwsAlgorithm
Link copied to clipboard
open override val jwsAlgorithm: JwsAlgorithm
open override val jwsAlgorithm: JwsAlgorithm
keyId
Link copied to clipboard
abstract val keyId: String
open override val keyId: String
open override val keyId: String