External signing services on Android

Nutrient supports external signature providers, such as hardware security modules (HSMs) and other signing entities. CustomSigning from SigningManager.signDocument provides a byte array to be signed by any external signing service.

The simplest way to sign a document is to provide KeyStore.PrivateKeyEntry(opens in a new tab) in SigningOptions, and SigningManager will sign it. However, if a user needs to sign with an external service, then instead of a private key entry, the user can provide a list of X509Certificates and then sign the document using the CustomSigning suspended function.

For an interactive example of external signing services on Android, check out ManualSigningExample(opens in a new tab) in the Catalog app.