The KeyManager (for iOS and Android) component let's you create, delete, get and save key material. It also allows you to generate signatures.
// Instantiate the KeyManager
let keyManager = KeyManager()
// Generate a key
_ = keyManager.generateSigningKey(id: "keyID")
// Get the JWK by its ID
let jwk = keyManager.getJwk(id: "keyID")
// Sign over a payload using the key's ID.
let signature = KeyManager.signPayload(id: "keyID",
payload: [UInt8](signingInput)
)
// Instantiate the KeyManager
val keyManager = KeyManager()
// Generate a key
keyManager.generateSigningKey(id: "keyID")
// Get the JWK by it's ID
val jwk = keyManager.getJwk(id: "keyID")
// Sign over a payload using the key's ID.
val signature = keyManager.signPayload(id: "keyID",
payload: [UInt8](signingInput)
)