Package-level declarations

Types

Link copied to clipboard
Link copied to clipboard
@Serializable
@SerialName(value = "AtomicAttribute2023")
data class AtomicAttribute2023(val id: String, val name: String, val value: String, val mimeType: String) : CredentialSubject

VC spec leaves the representation of a single credential open to implementations. We decided to make a "generic" one, i.e. with custom name, value and mimeType.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
@Serializable
data class CredentialStatus(val id: String, val type: String, val index: Long, val statusListUrl: String)

Implementation of W3C RevocationList2020 for use in a VerifiableCredential.

Link copied to clipboard
@Serializable
abstract class CredentialSubject

Base class for the subject of a VerifiableCredential, see subclasses of this class, e.g. AtomicAttribute2023.

Link copied to clipboard
Link copied to clipboard
object DurationSecondsIntSerializer : KSerializer<Duration>
Link copied to clipboard
class InstantLongSerializer : KSerializer<Instant>
Link copied to clipboard
class InstantStringSerializer : KSerializer<Instant>
Link copied to clipboard
data class IsoDocumentParsed(val validItems: List<IssuerSignedItem> = listOf(), val invalidItems: List<IssuerSignedItem> = listOf())
Link copied to clipboard
@Serializable
data class KeyBindingJws(val issuedAt: Instant? = null, val audience: String, val challenge: String)

Key Binding JWT for SD-JWT

Link copied to clipboard
class NullableInstantLongSerializer : KSerializer<Instant?>
Link copied to clipboard
class NullableInstantStringSerializer : KSerializer<Instant?>
Link copied to clipboard
@Serializable
@SerialName(value = "RevocationList2020")
data class RevocationListSubject(val id: String, val encodedList: String) : CredentialSubject

Credential representing a W3C RevocationList 2020 credential, i.e. the encodedList contains a compressed bitset representing revoked credentials.

Link copied to clipboard
Link copied to clipboard
data class SelectiveDisclosureItem(val salt: ByteArray, val claimName: String, val claimValue: Any)

Selective Disclosure item in SD-JWT format

Link copied to clipboard
Link copied to clipboard
@Serializable
data class VerifiableCredential(val id: String, val type: Collection<String>, val issuer: String, val issuanceDate: Instant, val expirationDate: Instant?, val credentialStatus: CredentialStatus? = null, val credentialSubject: CredentialSubject)

The core of the W3C VC Data Model: a credential.

Link copied to clipboard
@Serializable
data class VerifiableCredentialJws(val vc: VerifiableCredential, val subject: String, val notBefore: Instant, val issuer: String, val expiration: Instant?, val jwtId: String)

JWS representation of a VerifiableCredential.

Link copied to clipboard
@Serializable
data class VerifiableCredentialSdJwt(val subject: String, val notBefore: Instant, val issuer: String, val expiration: Instant?, val jwtId: String, val disclosureDigests: List<String>, val type: Collection<String>, val credentialStatus: CredentialStatus? = null, val selectiveDisclosureAlgorithm: String, val confirmationKey: JsonWebKey? = null)

SD-JWT representation of a VerifiableCredential.

Link copied to clipboard
@Serializable
data class VerifiablePresentation(val id: String, val type: String, val verifiableCredential: Collection<String>)

A Verifiable Presentation (see W3C VC Data Model), containing one or more VerifiableCredentials.

Link copied to clipboard
@Serializable
data class VerifiablePresentationJws(val vp: VerifiablePresentation, val challenge: String, val issuer: String, val audience: String, val jwtId: String)

JWS representation of a VerifiablePresentation.

Link copied to clipboard
data class VerifiablePresentationParsed(val id: String, val type: String, val verifiableCredentials: Collection<VerifiableCredentialJws> = listOf(), val revokedVerifiableCredentials: Collection<VerifiableCredentialJws> = listOf(), val invalidVerifiableCredentials: Collection<String> = listOf())

Intermediate class used by at.asitplus.wallet.lib.agent.Validator.verifyVpJws when parsing a verifiable presentation, and also by at.asitplus.wallet.lib.agent.VerifierAgent.verifyPresentation.

Link copied to clipboard
data class VerifiablePresentationSdJwtParsed(val id: String, val type: String, val verifiableCredentials: Collection<VerifiableCredentialJws> = listOf(), val revokedVerifiableCredentials: Collection<VerifiableCredentialJws> = listOf(), val invalidVerifiableCredentials: Collection<String> = listOf())

Intermediate class used by at.asitplus.wallet.lib.agent.Validator.verifyVpSdJwt when parsing a verifiable presentation, and also by at.asitplus.wallet.lib.agent.VerifierAgent.verifyPresentation.

Properties

Link copied to clipboard
val jsonSerializer: Json