Versions in this module Expand all Collapse all v1 v1.0.0 Dec 18, 2020 Changes in this version + const ActionDisclosing + const ActionIssuing + const ActionRedirect + const ActionRevoking + const ActionSigning + const ActionUnknown + const AttributeProofStatusExtra + const AttributeProofStatusNull + const AttributeProofStatusPresent + const DisclosureHttpsNewSession + const DisclosureHttpsRespondPermission + const DisclosureNewSession + const DisclosureRespondPermission + const ErrorApi + const ErrorConfigurationDownload + const ErrorCrypto + const ErrorHTTPS + const ErrorInvalidJWT + const ErrorInvalidRequest + const ErrorInvalidSchemeManager + const ErrorKeyshare + const ErrorKeyshareUnenrolled + const ErrorPanic + const ErrorProtocolVersionNotSupported + const ErrorRejected + const ErrorRequiredAttributeMissing + const ErrorRevocation + const ErrorSerialization + const ErrorServerResponse + const ErrorTransport + const ErrorUnknownAction + const ErrorUnknownIdentifier + const ErrorUnknownSchemeManager + const ExpiryFactor + const IssuanceHttpsNewSession + const IssuanceHttpsRespondPermission + const IssuanceNewSession + const IssuanceRespondPermission + const KssGetCommitments + const KssGetProofPs + const KssHttpsGetCommitments + const KssHttpsGetProofPs + const LDContextDisclosureRequest + const LDContextIssuanceRequest + const LDContextRevocationRequest + const LDContextSignatureRequest + const LDContextSignedMessage + const MaxVersionHeader + const MinVersionHeader + const ProofStatusExpired + const ProofStatusInvalid + const ProofStatusInvalidTimestamp + const ProofStatusMissingAttributes + const ProofStatusUnmatchedRequest + const ProofStatusValid + const SchemeManagerStatusContentParsingError + const SchemeManagerStatusInvalidIndex + const SchemeManagerStatusInvalidSignature + const SchemeManagerStatusParsingError + const SchemeManagerStatusUnprocessed + const SchemeManagerStatusValid + const StatusCommunicating + const StatusConnected + const StatusManualStarted + const TorDisclosureHttpsNewSession + const TorDisclosureHttpsRespondPermission + const TorDisclosureNewSession + const TorDisclosureRespondPermission + const TorIssuanceHttpsNewSession + const TorIssuanceHttpsRespondPermission + const TorIssuanceNewSession + const TorIssuanceRespondPermission + const TorKssGetCommitments + const TorKssGetProofPs + const TorKssHttpsGetCommitments + const TorKssHttpsGetProofPs + const Version + var DefaultSchemeManagers = [2]SchemeManagerPointer + var ErrMissingPublicKey = errors.New("Missing public key") + var ErrRevocationStateNotFound = errors.New("revocation state not found") + var ErrUnknownRevocationKey = errors.New("unknown revocationKey") + var ErrorUnknownCredentialType = errors.New("unknown credential type") + var HTTPHeaders = map[string]http.Header + var Logger *logrus.Logger + var RevocationParameters = struct{ ... } + func ASN1ConvertSignatureNonce(message string, nonce *big.Int, timestamp *atum.Timestamp) *big.Int + func AddMeasurementResult(measurementType int, result int64) + func ClearFlutterMeasurements() + func DefaultDataPath() string + func DefaultSchemesPath() string + func FloorToEpochBoundary(t time.Time) time.Time + func GetMetadataVersion(v *ProtocolVersion) byte + func GetTimestamp(message string, sigs []*big.Int, disclosed [][]*big.Int, conf *Configuration) (*atum.Timestamp, error) + func IncrementMeasurementAndDetermineAgain() bool + func IsClientConnectedToTor(httpClient *http.Client) bool + func MakeTorHttpClient(dataDir string) (*tor.Tor, func(), *http.Client) + func MarshalBinary(message interface{}) ([]byte, error) + func ParseApiServerJwt(inputJwt string, signingKey *rsa.PublicKey) (map[AttributeTypeIdentifier]*DisclosedAttribute, error) + func PrintExternalIpClient(httpClient *http.Client) + func RenewTorCircuit(tor *tor.Tor, cancel func()) (func(), *http.Client) + func SendResultsAndResetMeasurements() + func SetLogger(logger *logrus.Logger) + func SignRequestorRequest(request RequestorRequest, alg jwt.SigningMethod, key interface{}, name string) (string, error) + func SignSessionRequest(request SessionRequest, alg jwt.SigningMethod, key interface{}, name string) (string, error) + func StopProgramWhenNeeded(useTor bool, httpClient *http.Client) + func TimestampRequest(message string, sigs []*big.Int, disclosed [][]*big.Int, new bool, ...) ([]byte, string, error) + func UnmarshalBinary(data []byte, dst interface{}) error + func UnmarshalValidate(data []byte, dest interface{}) error + func UnmarshalValidateBinary(data []byte, dest interface{}) error + type AccumulatorRecord struct + CredType CredentialTypeIdentifier + Data signedMessage + PKCounter *uint + func (a *AccumulatorRecord) Convert(id CredentialTypeIdentifier, sacc *revocation.SignedAccumulator) *AccumulatorRecord + func (a *AccumulatorRecord) SignedAccumulator() *revocation.SignedAccumulator + type Action string + type AttributeCon []AttributeRequest + func (c AttributeCon) CredentialTypes() []CredentialTypeIdentifier + func (c AttributeCon) Satisfy(proofs gabi.ProofList, indices []*DisclosedAttributeIndex, ...) (bool, []*DisclosedAttribute, error) + func (c AttributeCon) Validate() error + type AttributeConDisCon []AttributeDisCon + func (cdc AttributeConDisCon) Iterate(f func(attr *AttributeRequest) error) error + func (cdc AttributeConDisCon) Satisfy(disclosure *Disclosure, revocation map[int]*time.Time, conf *Configuration) (bool, [][]*DisclosedAttribute, error) + func (cdc AttributeConDisCon) Validate(conf *Configuration) error + type AttributeDisCon []AttributeCon + func (dc AttributeDisCon) Satisfy(proofs gabi.ProofList, indices []*DisclosedAttributeIndex, ...) (bool, []*DisclosedAttribute, error) + func (dc AttributeDisCon) Validate() error + type AttributeIdentifier struct + CredentialHash string + Type AttributeTypeIdentifier + func (ai *AttributeIdentifier) CredentialIdentifier() CredentialIdentifier + type AttributeList struct + Ints []*big.Int + RevocationSupported bool + Revoked bool + func NewAttributeListFromInts(ints []*big.Int, conf *Configuration) *AttributeList + func (al *AttributeList) Attribute(identifier AttributeTypeIdentifier) TranslatedString + func (al *AttributeList) EqualsExceptMetadata(ol *AttributeList) bool + func (al *AttributeList) Hash() string + func (al *AttributeList) Info() *CredentialInfo + func (al *AttributeList) Map() map[AttributeTypeIdentifier]TranslatedString + func (al *AttributeList) Strings() []TranslatedString + func (al *AttributeList) UntranslatedAttribute(identifier AttributeTypeIdentifier) *string + func (attrs *AttributeList) CredentialInfo() *CredentialInfo + type AttributeProofStatus string + type AttributeRequest struct + NotNull bool + Type AttributeTypeIdentifier + Value *string + func NewAttributeRequest(attr string) AttributeRequest + func (ar *AttributeRequest) MarshalJSON() ([]byte, error) + func (ar *AttributeRequest) Satisfy(attr AttributeTypeIdentifier, val *string) bool + func (ar *AttributeRequest) UnmarshalJSON(bts []byte) error + type AttributeType struct + CredentialTypeID string + Description TranslatedString + DisplayHint string + DisplayIndex *int + ID string + Index int + IssuerID string + Name TranslatedString + Optional string + RevocationAttribute bool + SchemeManagerID string + func (ad AttributeType) GetAttributeTypeIdentifier() AttributeTypeIdentifier + func (ad AttributeType) IsOptional() bool + type AttributeTypeIdentifier struct + func NewAttributeTypeIdentifier(id string) AttributeTypeIdentifier + func (AttributeTypeIdentifier) GormDataType(dialect gorm.Dialect) string + func (id *AttributeTypeIdentifier) UnmarshalText(text []byte) error + func (id AttributeTypeIdentifier) CredentialTypeIdentifier() CredentialTypeIdentifier + func (id AttributeTypeIdentifier) IsCredential() bool + func (id AttributeTypeIdentifier) MarshalText() ([]byte, error) + func (oi *AttributeTypeIdentifier) Scan(src interface{}) error + func (oi *AttributeTypeIdentifier) UnmarshalCBOR(data []byte) error + func (oi AttributeTypeIdentifier) Empty() bool + func (oi AttributeTypeIdentifier) MarshalCBOR() (data []byte, err error) + func (oi AttributeTypeIdentifier) Name() string + func (oi AttributeTypeIdentifier) Parent() string + func (oi AttributeTypeIdentifier) Root() string + func (oi AttributeTypeIdentifier) String() string + func (oi AttributeTypeIdentifier) Value() (driver.Value, error) + type BaseRequest struct + ClientReturnURL string + Context *big.Int + DevelopmentMode bool + LDContext string + Nonce *big.Int + ProtocolVersion *ProtocolVersion + Revocation NonRevocationParameters + Type Action + func (b *BaseRequest) GetContext() *big.Int + func (b *BaseRequest) GetNonce(*atum.Timestamp) *big.Int + func (b *BaseRequest) Legacy() bool + func (b *BaseRequest) RequestsRevocation(id CredentialTypeIdentifier) bool + func (b *BaseRequest) RevocationSupported() bool + func (b *BaseRequest) Validate(conf *Configuration) error + type Configuration struct + AttributeTypes map[AttributeTypeIdentifier]*AttributeType + CredentialTypes map[CredentialTypeIdentifier]*CredentialType + DisabledSchemeManagers map[SchemeManagerIdentifier]*SchemeManagerError + Issuers map[IssuerIdentifier]*Issuer + Path string + PrivateKeys map[IssuerIdentifier]map[uint]*gabi.PrivateKey + Revocation *RevocationStorage + Scheduler *gocron.Scheduler + SchemeManagers map[SchemeManagerIdentifier]*SchemeManager + Warnings []string + func NewConfiguration(path string, opts ConfigurationOptions) (conf *Configuration, err error) + func (conf *Configuration) AutoUpdateSchemes(interval uint) + func (conf *Configuration) ContainsAttributeType(attr AttributeTypeIdentifier) bool + func (conf *Configuration) ContainsCredentialType(cred CredentialTypeIdentifier) bool + func (conf *Configuration) CopyManagerFromAssets(scheme SchemeManagerIdentifier) (bool, error) + func (conf *Configuration) DangerousTOFUInstallSchemeManager(manager *SchemeManager) error + func (conf *Configuration) DeleteSchemeManager(id SchemeManagerIdentifier) error + func (conf *Configuration) Download(session SessionRequest) (downloaded *IrmaIdentifierSet, err error) + func (conf *Configuration) DownloadDefaultSchemes() error + func (conf *Configuration) DownloadSchemeManagerSignature(manager *SchemeManager) (err error) + func (conf *Configuration) InstallSchemeManager(manager *SchemeManager, publickey []byte) error + func (conf *Configuration) IsInitialized() bool + func (conf *Configuration) KeyshareServerKeyFunc(scheme SchemeManagerIdentifier) func(t *jwt.Token) (interface{}, error) + func (conf *Configuration) KeyshareServerPublicKey(scheme SchemeManagerIdentifier, i int) (*rsa.PublicKey, error) + func (conf *Configuration) ParseFolder() (err error) + func (conf *Configuration) ParseOrRestoreFolder() error + func (conf *Configuration) ParseSchemeManagerFolder(dir string, manager *SchemeManager) (err error) + func (conf *Configuration) PrivateKey(id IssuerIdentifier, counter uint) (*gabi.PrivateKey, error) + func (conf *Configuration) PrivateKeyIndices(issuerid IssuerIdentifier) (i []uint, err error) + func (conf *Configuration) PrivateKeyLatest(id IssuerIdentifier) (*gabi.PrivateKey, error) + func (conf *Configuration) PublicKey(id IssuerIdentifier, counter uint) (*gabi.PublicKey, error) + func (conf *Configuration) PublicKeyIndices(issuerid IssuerIdentifier) (i []uint, err error) + func (conf *Configuration) PublicKeyLatest(id IssuerIdentifier) (*gabi.PublicKey, error) + func (conf *Configuration) ReadAuthenticatedFile(manager *SchemeManager, path string) ([]byte, bool, error) + func (conf *Configuration) ReinstallSchemeManager(manager *SchemeManager) (err error) + func (conf *Configuration) UpdateSchemeManager(id SchemeManagerIdentifier, downloaded *IrmaIdentifierSet) (err error) + func (conf *Configuration) UpdateSchemes() error + func (conf *Configuration) ValidateKeys() error + func (conf *Configuration) VerifySchemeManager(manager *SchemeManager) error + func (conf *Configuration) VerifySignature(id SchemeManagerIdentifier) (err error) + type ConfigurationFileHash []byte + func (hash ConfigurationFileHash) Equal(other ConfigurationFileHash) bool + func (hash ConfigurationFileHash) String() string + type ConfigurationOptions struct + Assets string + ReadOnly bool + RevocationDBConnStr string + RevocationDBType string + RevocationSettings RevocationSettings + type CredentialIdentifier struct + Hash string + Type CredentialTypeIdentifier + type CredentialInfo struct + Attributes map[AttributeTypeIdentifier]TranslatedString + Expires Timestamp + Hash string + ID string + IssuerID string + RevocationSupported bool + Revoked bool + SchemeManagerID string + SignedOn Timestamp + func (ci CredentialInfo) GetCredentialType(conf *Configuration) *CredentialType + func (ci CredentialInfo) IsExpired() bool + type CredentialInfoList []*CredentialInfo + func (cl CredentialInfoList) Len() int + func (cl CredentialInfoList) Less(i, j int) bool + func (cl CredentialInfoList) Swap(i, j int) + type CredentialRequest struct + Attributes map[string]string + CredentialTypeID CredentialTypeIdentifier + KeyCounter uint + RevocationKey string + Validity *Timestamp + func (cr *CredentialRequest) AttributeList(conf *Configuration, metadataVersion byte, revocationAttr *big.Int, ...) (*AttributeList, error) + func (cr *CredentialRequest) Info(conf *Configuration, metadataVersion byte, issuedAt time.Time) (*CredentialInfo, error) + func (cr *CredentialRequest) Validate(conf *Configuration) error + type CredentialType struct + AttributeTypes []*AttributeType + BackgroundGradientEnd string + BackgroundGradientStart string + Category TranslatedString + DeprecatedSince Timestamp + Description TranslatedString + DisallowDelete bool + FAQContent TranslatedString + FAQHowto TranslatedString + FAQIntro TranslatedString + FAQPurpose TranslatedString + ForegroundColor string + ID string + IsInCredentialStore bool + IsSingleton bool + IsULIssueURL bool + IssueURL TranslatedString + IssuerID string + Name TranslatedString + RevocationIndex int + RevocationServers []string + RevocationUpdateCount uint64 + RevocationUpdateSpeed uint64 + SchemeManagerID string + ShortName TranslatedString + Valid bool + XMLName xml.Name + XMLVersion int + func (ct *CredentialType) ContainsAttribute(ai AttributeTypeIdentifier) bool + func (ct *CredentialType) Identifier() CredentialTypeIdentifier + func (ct *CredentialType) IssuerIdentifier() IssuerIdentifier + func (ct *CredentialType) Logo(conf *Configuration) string + func (ct *CredentialType) RevocationSupported() bool + func (ct *CredentialType) SchemeManagerIdentifier() SchemeManagerIdentifier + func (ct CredentialType) AttributeType(ai AttributeTypeIdentifier) *AttributeType + func (ct CredentialType) IndexOf(ai AttributeTypeIdentifier) (int, error) + type CredentialTypeIdentifier struct + func NewCredentialTypeIdentifier(id string) CredentialTypeIdentifier + func (CredentialTypeIdentifier) GormDataType(dialect gorm.Dialect) string + func (id *CredentialTypeIdentifier) UnmarshalText(text []byte) error + func (id CredentialTypeIdentifier) IssuerIdentifier() IssuerIdentifier + func (id CredentialTypeIdentifier) MarshalText() ([]byte, error) + func (oi *CredentialTypeIdentifier) Scan(src interface{}) error + func (oi *CredentialTypeIdentifier) UnmarshalCBOR(data []byte) error + func (oi CredentialTypeIdentifier) Empty() bool + func (oi CredentialTypeIdentifier) MarshalCBOR() (data []byte, err error) + func (oi CredentialTypeIdentifier) Name() string + func (oi CredentialTypeIdentifier) Parent() string + func (oi CredentialTypeIdentifier) Root() string + func (oi CredentialTypeIdentifier) String() string + func (oi CredentialTypeIdentifier) Value() (driver.Value, error) + type DisclosedAttribute struct + Identifier AttributeTypeIdentifier + IssuanceTime Timestamp + NotRevoked bool + NotRevokedBefore *Timestamp + RawValue *string + Status AttributeProofStatus + Value TranslatedString + type DisclosedAttributeIndex struct + AttributeIndex int + CredentialIndex int + Identifier CredentialIdentifier + type DisclosedAttributeIndices [][]*DisclosedAttributeIndex + type Disclosure struct + Indices DisclosedAttributeIndices + Proofs gabi.ProofList + func (d *Disclosure) DisclosedAttributes(configuration *Configuration, condiscon AttributeConDisCon, ...) (bool, [][]*DisclosedAttribute, error) + func (d *Disclosure) Verify(configuration *Configuration, request *DisclosureRequest) ([][]*DisclosedAttribute, ProofStatus, error) + func (d *Disclosure) VerifyAgainstRequest(configuration *Configuration, request SessionRequest, context, nonce *big.Int, ...) ([][]*DisclosedAttribute, ProofStatus, error) + type DisclosureChoice struct + Attributes [][]*AttributeIdentifier + func (choice *DisclosureChoice) Validate() error + type DisclosureRequest struct + Disclose AttributeConDisCon + Labels map[int]TranslatedString + func NewDisclosureRequest(attrs ...AttributeTypeIdentifier) *DisclosureRequest + func (dr *DisclosureRequest) Action() Action + func (dr *DisclosureRequest) AddSingle(attr AttributeTypeIdentifier, value *string, label TranslatedString) + func (dr *DisclosureRequest) Base() *BaseRequest + func (dr *DisclosureRequest) Disclosure() *DisclosureRequest + func (dr *DisclosureRequest) Identifiers() *IrmaIdentifierSet + func (dr *DisclosureRequest) IsDisclosureRequest() bool + func (dr *DisclosureRequest) Legacy() (SessionRequest, error) + func (dr *DisclosureRequest) UnmarshalJSON(bts []byte) (err error) + func (dr *DisclosureRequest) Validate() error + type ErrorType string + func (err ErrorType) Error() string + type EventRecord struct + CredType CredentialTypeIdentifier + E *RevocationAttribute + Index *uint64 + PKCounter *uint + ParentHash eventHash + func (e *EventRecord) Convert(id CredentialTypeIdentifier, pkcounter uint, event *revocation.Event) *EventRecord + func (e *EventRecord) Event() *revocation.Event + type ExpiredError struct + Err error + func (e ExpiredError) Error() string + type HTTPTransport struct + Binary bool + ForceHTTPS bool + Server string + func NewHTTPTransport(serverURL string, forceHTTPS bool, httpClients ...*http.Client) *HTTPTransport + func (transport *HTTPTransport) Delete() + func (transport *HTTPTransport) Get(url string, result interface{}) error + func (transport *HTTPTransport) GetBytes(url string) ([]byte, error) + func (transport *HTTPTransport) Post(url string, result interface{}, object interface{}) error + func (transport *HTTPTransport) SetHeader(name, val string) + type IdentityProviderJwt struct + Request *IdentityProviderRequest + func NewIdentityProviderJwt(servername string, ir *IssuanceRequest) *IdentityProviderJwt + func (claims *IdentityProviderJwt) Action() Action + func (claims *IdentityProviderJwt) RequestorRequest() RequestorRequest + func (claims *IdentityProviderJwt) SessionRequest() SessionRequest + func (claims *IdentityProviderJwt) Sign(method jwt.SigningMethod, key interface{}) (string, error) + func (claims *IdentityProviderJwt) Valid() error + type IdentityProviderRequest struct + Request *IssuanceRequest + func (r *IdentityProviderRequest) Base() RequestorBaseRequest + func (r *IdentityProviderRequest) SessionRequest() SessionRequest + func (r *IdentityProviderRequest) Validate() error + type IrmaIdentifierSet struct + AttributeTypes map[AttributeTypeIdentifier]struct{} + CredentialTypes map[CredentialTypeIdentifier]struct{} + Issuers map[IssuerIdentifier]struct{} + PublicKeys map[IssuerIdentifier][]uint + SchemeManagers map[SchemeManagerIdentifier]struct{} + func (set *IrmaIdentifierSet) Distributed(conf *Configuration) bool + func (set *IrmaIdentifierSet) Empty() bool + func (set *IrmaIdentifierSet) String() string + type IssuanceRecord struct + Attr *RevocationAttribute + CredType CredentialTypeIdentifier + Issued int64 + Key string + PKCounter *uint + RevokedAt int64 + ValidUntil int64 + type IssuanceRequest struct + CredentialInfoList CredentialInfoList + Credentials []*CredentialRequest + RemovalCredentialInfoList CredentialInfoList + func NewIssuanceRequest(creds []*CredentialRequest, attrs ...AttributeTypeIdentifier) *IssuanceRequest + func (ir *IssuanceRequest) Action() Action + func (ir *IssuanceRequest) GetCredentialInfoList(conf *Configuration, version *ProtocolVersion, issuedAt time.Time) (CredentialInfoList, error) + func (ir *IssuanceRequest) Identifiers() *IrmaIdentifierSet + func (ir *IssuanceRequest) Legacy() (SessionRequest, error) + func (ir *IssuanceRequest) UnmarshalJSON(bts []byte) (err error) + func (ir *IssuanceRequest) Validate() error + type IssueCommitmentMessage struct + Indices DisclosedAttributeIndices + func (i *IssueCommitmentMessage) Disclosure() *Disclosure + type Issuer struct + ContactAddress string + ContactEMail string + DeprecatedSince Timestamp + ID string + Name TranslatedString + SchemeManagerID string + ShortName TranslatedString + Valid bool + XMLVersion int + func (id *Issuer) Identifier() IssuerIdentifier + func (id *Issuer) SchemeManagerIdentifier() SchemeManagerIdentifier + type IssuerIdentifier struct + func NewIssuerIdentifier(id string) IssuerIdentifier + func (IssuerIdentifier) GormDataType(dialect gorm.Dialect) string + func (id *IssuerIdentifier) UnmarshalText(text []byte) error + func (id IssuerIdentifier) MarshalText() ([]byte, error) + func (id IssuerIdentifier) SchemeManagerIdentifier() SchemeManagerIdentifier + func (oi *IssuerIdentifier) Scan(src interface{}) error + func (oi *IssuerIdentifier) UnmarshalCBOR(data []byte) error + func (oi IssuerIdentifier) Empty() bool + func (oi IssuerIdentifier) MarshalCBOR() (data []byte, err error) + func (oi IssuerIdentifier) Name() string + func (oi IssuerIdentifier) Parent() string + func (oi IssuerIdentifier) Root() string + func (oi IssuerIdentifier) String() string + func (oi IssuerIdentifier) Value() (driver.Value, error) + type LegacyDisclosureRequest struct + Content []LegacyLabeledDisjunction + func (dr *LegacyDisclosureRequest) Action() Action + func (dr *LegacyDisclosureRequest) Base() *BaseRequest + func (dr *LegacyDisclosureRequest) Disclosure() *DisclosureRequest + func (dr *LegacyDisclosureRequest) Identifiers() *IrmaIdentifierSet + func (dr *LegacyDisclosureRequest) Legacy() (SessionRequest, error) + func (dr *LegacyDisclosureRequest) Validate() error + type LegacyDisjunction []AttributeRequest + func (l *LegacyDisjunction) MarshalJSON() ([]byte, error) + func (l *LegacyDisjunction) UnmarshalJSON(bts []byte) error + type LegacyIssuanceRequest struct + Credentials []*CredentialRequest + Disclose []LegacyLabeledDisjunction + func (ir *LegacyIssuanceRequest) Action() Action + func (ir *LegacyIssuanceRequest) Base() *BaseRequest + func (ir *LegacyIssuanceRequest) Disclosure() *DisclosureRequest + func (ir *LegacyIssuanceRequest) Identifiers() *IrmaIdentifierSet + func (ir *LegacyIssuanceRequest) Legacy() (SessionRequest, error) + func (ir *LegacyIssuanceRequest) Validate() error + type LegacyLabeledDisjunction struct + Attributes LegacyDisjunction + Label string + type LegacySignatureRequest struct + Message string + func (ir *LegacySignatureRequest) Action() Action + type MetadataAttribute struct + Conf *Configuration + Int *big.Int + func MetadataFromInt(i *big.Int, conf *Configuration) *MetadataAttribute + func NewMetadataAttribute(version byte) *MetadataAttribute + func (attr *MetadataAttribute) Bytes() []byte + func (attr *MetadataAttribute) CredentialType() *CredentialType + func (attr *MetadataAttribute) CredentialTypeHash() []byte + func (attr *MetadataAttribute) Expiry() time.Time + func (attr *MetadataAttribute) IsValid() bool + func (attr *MetadataAttribute) IsValidOn(t time.Time) bool + func (attr *MetadataAttribute) KeyCounter() uint + func (attr *MetadataAttribute) PublicKey() (*gabi.PublicKey, error) + func (attr *MetadataAttribute) SigningDate() time.Time + func (attr *MetadataAttribute) ValidityDuration() int + func (attr *MetadataAttribute) Version() byte + type NonRevocationParameters map[CredentialTypeIdentifier]*NonRevocationRequest + func (n *NonRevocationParameters) MarshalJSON() ([]byte, error) + func (n *NonRevocationParameters) UnmarshalJSON(bts []byte) error + type NonRevocationRequest struct + Tolerance uint64 + Updates map[uint]*revocation.Update + type ProofList gabi.ProofList + func (pl ProofList) Expired(configuration *Configuration, t *time.Time) bool + func (pl ProofList) ExtractPublicKeys(configuration *Configuration) ([]*gabi.PublicKey, error) + func (pl ProofList) VerifyProofs(configuration *Configuration, request SessionRequest, context *big.Int, ...) (bool, map[int]*time.Time, error) + type ProofStatus string + type ProtocolVersion struct + Major int + Minor int + func NewVersion(major, minor int) *ProtocolVersion + func (v *ProtocolVersion) Above(major, minor int) bool + func (v *ProtocolVersion) AboveVersion(other *ProtocolVersion) bool + func (v *ProtocolVersion) Below(major, minor int) bool + func (v *ProtocolVersion) BelowVersion(other *ProtocolVersion) bool + func (v *ProtocolVersion) MarshalJSON() ([]byte, error) + func (v *ProtocolVersion) String() string + func (v *ProtocolVersion) UnmarshalJSON(b []byte) (err error) + type Qr struct + Type Action + URL string + func (qr *Qr) IsQr() bool + func (qr *Qr) Validate() (err error) + type RemoteError struct + Description string + ErrorName string + Message string + Stacktrace string + Status int + func (err *RemoteError) Error() string + type RequestorBaseRequest struct + CallbackURL string + ClientTimeout int + ResultJwtValidity int + type RequestorJwt interface + Action func() Action + Requestor func() string + RequestorRequest func() RequestorRequest + SessionRequest func() SessionRequest + Sign func(jwt.SigningMethod, interface{}) (string, error) + Valid func() error + func ParseRequestorJwt(action string, requestorJwt string) (RequestorJwt, error) + type RequestorRequest interface + Base func() RequestorBaseRequest + SessionRequest func() SessionRequest + type RequiredAttributeMissingError struct + Missing *IrmaIdentifierSet + func (e *RequiredAttributeMissingError) Error() string + type RevocationAttribute big.Int + func (RevocationAttribute) GormDataType(dialect gorm.Dialect) string + func (i *RevocationAttribute) MarshalCBOR() ([]byte, error) + func (i *RevocationAttribute) Scan(src interface{}) error + func (i *RevocationAttribute) UnmarshalCBOR(data []byte) error + func (i *RevocationAttribute) Value() (driver.Value, error) + type RevocationClient struct + Conf *Configuration + Settings RevocationSettings + func (client RevocationClient) FetchUpdateFrom(id CredentialTypeIdentifier, pkcounter uint, from uint64) (*revocation.Update, error) + func (client RevocationClient) FetchUpdateLatest(id CredentialTypeIdentifier, pkcounter uint, count uint64) (*revocation.Update, error) + func (client RevocationClient) FetchUpdatesLatest(id CredentialTypeIdentifier, count uint64) (map[uint]*revocation.Update, error) + func (client RevocationClient) PostIssuanceRecord(id CredentialTypeIdentifier, sk *revocation.PrivateKey, rec *IssuanceRecord, ...) error + type RevocationJwt struct + Request *RevocationRequest + func (claims *RevocationJwt) Sign(method jwt.SigningMethod, key interface{}) (string, error) + func (claims *RevocationJwt) Valid() error + type RevocationKeys struct + Conf *Configuration + func (rs RevocationKeys) PrivateKey(issid IssuerIdentifier, counter uint) (*revocation.PrivateKey, error) + func (rs RevocationKeys) PrivateKeyLatest(issid IssuerIdentifier) (*revocation.PrivateKey, error) + func (rs RevocationKeys) PublicKey(issid IssuerIdentifier, counter uint) (*revocation.PublicKey, error) + type RevocationRequest struct + CredentialType CredentialTypeIdentifier + Issued int64 + Key string + LDContext string + func (r *RevocationRequest) Validate() error + type RevocationSetting struct + Authority bool + RevocationServerURL string + SSE bool + Server bool + Tolerance uint64 + type RevocationSettings map[CredentialTypeIdentifier]*RevocationSetting + func (rs RevocationSettings) Get(id CredentialTypeIdentifier) *RevocationSetting + type RevocationStorage struct + Keys RevocationKeys + ServerSentEvents *sse.Server + func (rs *RevocationStorage) Accumulator(id CredentialTypeIdentifier, pkcounter uint) (*revocation.SignedAccumulator, error) + func (rs *RevocationStorage) AddIssuanceRecord(r *IssuanceRecord) error + func (rs *RevocationStorage) AddUpdate(id CredentialTypeIdentifier, record *revocation.Update) error + func (rs *RevocationStorage) Close() error + func (rs *RevocationStorage) EnableRevocation(id CredentialTypeIdentifier, sk *revocation.PrivateKey) error + func (rs *RevocationStorage) Events(id CredentialTypeIdentifier, pkcounter uint, from, to uint64) (*revocation.EventList, error) + func (rs *RevocationStorage) Exists(id CredentialTypeIdentifier, counter uint) (bool, error) + func (rs *RevocationStorage) IssuanceRecords(id CredentialTypeIdentifier, key string, issued time.Time) ([]*IssuanceRecord, error) + func (rs *RevocationStorage) Load(debug bool, dbtype, connstr string, settings RevocationSettings) error + func (rs *RevocationStorage) PostUpdate(id CredentialTypeIdentifier, update *revocation.Update) + func (rs *RevocationStorage) Revoke(id CredentialTypeIdentifier, key string, issued time.Time) error + func (rs *RevocationStorage) SaveIssuanceRecord(id CredentialTypeIdentifier, rec *IssuanceRecord, sk *gabi.PrivateKey) error + func (rs *RevocationStorage) SetRevocationUpdates(b *BaseRequest) error + func (rs *RevocationStorage) SyncDB(id CredentialTypeIdentifier) error + func (rs *RevocationStorage) SyncIfOld(id CredentialTypeIdentifier, maxage uint64) error + func (rs *RevocationStorage) UpdateLatest(id CredentialTypeIdentifier, count uint64, counter *uint) (map[uint]*revocation.Update, error) + type SchemeAppVersion struct + Android int + IOS int + type SchemeManager struct + Contact string + Demo bool + Description TranslatedString + ID string + KeyshareAttribute string + KeyshareServer string + KeyshareWebsite string + MinimumAppVersion SchemeAppVersion + Name TranslatedString + Status SchemeManagerStatus + Timestamp Timestamp + TimestampServer string + URL string + Valid bool + XMLName xml.Name + XMLVersion int + func DownloadSchemeManager(url string) (*SchemeManager, error) + func NewSchemeManager(name string) *SchemeManager + func (sm *SchemeManager) Distributed() bool + func (sm *SchemeManager) Identifier() SchemeManagerIdentifier + type SchemeManagerError struct + Err error + Manager SchemeManagerIdentifier + Status SchemeManagerStatus + func (sme SchemeManagerError) Error() string + type SchemeManagerIdentifier struct + func NewSchemeManagerIdentifier(id string) SchemeManagerIdentifier + func (SchemeManagerIdentifier) GormDataType(dialect gorm.Dialect) string + func (id *SchemeManagerIdentifier) UnmarshalText(text []byte) error + func (id SchemeManagerIdentifier) MarshalText() ([]byte, error) + func (oi *SchemeManagerIdentifier) Scan(src interface{}) error + func (oi *SchemeManagerIdentifier) UnmarshalCBOR(data []byte) error + func (oi SchemeManagerIdentifier) Empty() bool + func (oi SchemeManagerIdentifier) MarshalCBOR() (data []byte, err error) + func (oi SchemeManagerIdentifier) Name() string + func (oi SchemeManagerIdentifier) Parent() string + func (oi SchemeManagerIdentifier) Root() string + func (oi SchemeManagerIdentifier) String() string + func (oi SchemeManagerIdentifier) Value() (driver.Value, error) + type SchemeManagerIndex map[string]ConfigurationFileHash + func (i SchemeManagerIndex) FromString(s string) error + func (i SchemeManagerIndex) Scheme() SchemeManagerIdentifier + func (i SchemeManagerIndex) String() string + type SchemeManagerPointer struct + Publickey []byte + Url string + type SchemeManagerStatus string + type ServerJwt struct + IssuedAt Timestamp + ServerName string + Type string + func (jwt *ServerJwt) Requestor() string + type ServiceProviderJwt struct + Request *ServiceProviderRequest + func NewServiceProviderJwt(servername string, dr *DisclosureRequest) *ServiceProviderJwt + func (claims *ServiceProviderJwt) Action() Action + func (claims *ServiceProviderJwt) RequestorRequest() RequestorRequest + func (claims *ServiceProviderJwt) SessionRequest() SessionRequest + func (claims *ServiceProviderJwt) Sign(method jwt.SigningMethod, key interface{}) (string, error) + func (claims *ServiceProviderJwt) Valid() error + type ServiceProviderRequest struct + Request *DisclosureRequest + func (r *ServiceProviderRequest) Base() RequestorBaseRequest + func (r *ServiceProviderRequest) SessionRequest() SessionRequest + func (r *ServiceProviderRequest) Validate() error + type SessionError struct + Err error + Info string + RemoteError *RemoteError + RemoteStatus int + func (e *SessionError) Error() string + func (e *SessionError) Stack() string + func (e *SessionError) WrappedError() string + type SessionRequest interface + Action func() Action + Base func() *BaseRequest + Disclosure func() *DisclosureRequest + GetNonce func(timestamp *atum.Timestamp) *big.Int + Identifiers func() *IrmaIdentifierSet + Legacy func() (SessionRequest, error) + type SignatureRequest struct + Message string + func NewSignatureRequest(message string, attrs ...AttributeTypeIdentifier) *SignatureRequest + func (sr *SignatureRequest) Action() Action + func (sr *SignatureRequest) GetNonce(timestamp *atum.Timestamp) *big.Int + func (sr *SignatureRequest) IsSignatureRequest() bool + func (sr *SignatureRequest) Legacy() (SessionRequest, error) + func (sr *SignatureRequest) SignatureFromMessage(message interface{}, timestamp *atum.Timestamp) (*SignedMessage, error) + func (sr *SignatureRequest) UnmarshalJSON(bts []byte) (err error) + func (sr *SignatureRequest) Validate() error + type SignatureRequestorJwt struct + Request *SignatureRequestorRequest + func NewSignatureRequestorJwt(servername string, sr *SignatureRequest) *SignatureRequestorJwt + func (claims *SignatureRequestorJwt) Action() Action + func (claims *SignatureRequestorJwt) RequestorRequest() RequestorRequest + func (claims *SignatureRequestorJwt) SessionRequest() SessionRequest + func (claims *SignatureRequestorJwt) Sign(method jwt.SigningMethod, key interface{}) (string, error) + func (claims *SignatureRequestorJwt) Valid() error + type SignatureRequestorRequest struct + Request *SignatureRequest + func (r *SignatureRequestorRequest) Base() RequestorBaseRequest + func (r *SignatureRequestorRequest) SessionRequest() SessionRequest + func (r *SignatureRequestorRequest) Validate() error + type SignedMessage struct + Context *big.Int + Indices DisclosedAttributeIndices + LDContext string + Message string + Nonce *big.Int + Signature gabi.ProofList + Timestamp *atum.Timestamp + func (sm *SignedMessage) Disclosure() *Disclosure + func (sm *SignedMessage) GetNonce() *big.Int + func (sm *SignedMessage) MatchesNonceAndContext(request *SignatureRequest) bool + func (sm *SignedMessage) Verify(configuration *Configuration, request *SignatureRequest) ([][]*DisclosedAttribute, ProofStatus, error) + func (sm *SignedMessage) VerifyTimestamp(message string, conf *Configuration) error + func (sm *SignedMessage) Version() int + type Status string + type Timestamp time.Time + func (t *Timestamp) Floor() Timestamp + func (t *Timestamp) MarshalJSON() ([]byte, error) + func (t *Timestamp) MarshalXML(e *xml.Encoder, start xml.StartElement) error + func (t *Timestamp) String() string + func (t *Timestamp) UnmarshalJSON(b []byte) error + func (t *Timestamp) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error + func (t Timestamp) After(u Timestamp) bool + func (t Timestamp) Before(u Timestamp) bool + func (t Timestamp) IsZero() bool + type TranslatedString map[string]string + func NewTranslatedString(attr *string) TranslatedString + func (ts *TranslatedString) MarshalXML(e *xml.Encoder, start xml.StartElement) error + func (ts *TranslatedString) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error + type UnknownIdentifierError struct + Missing *IrmaIdentifierSet + func (e *UnknownIdentifierError) Error() string + type Validator interface + Validate func() error