Package-level declarations

Types

Link copied to clipboard
interface Enrollment

Server-to-server RPC interface exposed by Multipaz servers that accept remote "enrollment" from another server.

Link copied to clipboard
Link copied to clipboard

Enum that describes types of server-side identity (i.e. a combination of a private key and a certificate chain) used in Multipaz.

Functions

Link copied to clipboard
suspend fun checkServerTrust(url: String, settingName: String)

Checks if the given url can be trusted according to a given server setting name.

Link copied to clipboard
suspend fun enrollServer(url: String, serverIdentity: ServerIdentity, requestId: String? = null)

"Enrolls" a server by creating a certificate of the requested type for its private key using Enrollment interface.

Link copied to clipboard
suspend fun generateServerIdentityLeafCertificate(serverIdentity: ServerIdentity, enrollmentRequest: Enrollment.EnrollmentRequest, now: Instant = Clock.System.now().truncateToWholeSeconds(), expiration: Instant = now + CERTIFICATE_DURATION): X509CertChain
Link copied to clipboard
suspend fun getCrl(serverIdentity: ServerIdentity, createOnRequest: Boolean): X509Crl

Reads CA certificate revocation list for the given server identity type issued locally on this server.

Link copied to clipboard
suspend fun getLocalRootCertificate(serverIdentity: ServerIdentity, createOnRequest: Boolean): X509Cert

Reads CA/root certificate for the given server identity type issued locally on this server.

Link copied to clipboard

Obtain a server identity (private key + certificate chain) of a particular type.

Link copied to clipboard
suspend fun validateServerIdentityCertificateChain(serverIdentity: ServerIdentity, certChain: X509CertChain, instant: Instant): Boolean

Validates certificate chain created using an identity returned by getServerIdentity including, if possible, root certificate.