identity

package
v0.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 17, 2025 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// IssuerRole is the role of an issuer
	IssuerRole = driver.IssuerRole
	// AuditorRole is the role of an auditor
	AuditorRole = driver.AuditorRole
	// OwnerRole is the role of an owner
	OwnerRole = driver.OwnerRole
	// CertifierRole is the role of a certifier
	CertifierRole = driver.CertifierRole
)

Variables

View Source
var (
	RoleTypeStrings = driver.IdentityRoleStrings
)

Functions

func RoleToString added in v0.5.0

func RoleToString(r RoleType) string

func WrapWithType

func WrapWithType(idType Type, id driver.Identity) (driver.Identity, error)

Types

type Identity

type Identity = driver.Identity

type Info added in v0.5.0

type Info = driver.IdentityInfo

Info models a long-term identity inside the Identity Provider. An identity has an identifier (ID) and an Enrollment ID, unique identifier. An identity can be remote, meaning that the corresponding secret key is remotely available.

type Provider

type Provider struct {
	Logger     logging.Logger
	SigService sigService
	Binder     idriver.NetworkBinderService
	Storage    storage
	// contains filtered or unexported fields
}

Provider implements the driver.IdentityProvider interface. Provider handles the long-term identities on top of which wallets are defined.

func NewProvider

func NewProvider(
	logger logging.Logger,
	storage storage,
	sigService sigService,
	binder idriver.NetworkBinderService,
	enrollmentIDUnmarshaler enrollmentIDUnmarshaler,
) *Provider

NewProvider creates a new identity provider implementing the driver.IdentityProvider interface. The Provider handles the long-term identities on top of which wallets are defined.

func (*Provider) AreMe added in v0.5.0

func (p *Provider) AreMe(ctx context.Context, identities ...driver.Identity) []string

func (*Provider) Bind

func (p *Provider) Bind(ctx context.Context, longTerm driver.Identity, ephemeral driver.Identity, copyAll bool) error

func (*Provider) GetAuditInfo

func (p *Provider) GetAuditInfo(ctx context.Context, identity driver.Identity) ([]byte, error)

func (*Provider) GetEIDAndRH

func (p *Provider) GetEIDAndRH(identity driver.Identity, auditInfo []byte) (string, string, error)

func (*Provider) GetEnrollmentID

func (p *Provider) GetEnrollmentID(identity driver.Identity, auditInfo []byte) (string, error)

func (*Provider) GetRevocationHandler

func (p *Provider) GetRevocationHandler(identity driver.Identity, auditInfo []byte) (string, error)

func (*Provider) GetSigner

func (p *Provider) GetSigner(ctx context.Context, identity driver.Identity) (driver.Signer, error)

func (*Provider) IsMe

func (p *Provider) IsMe(ctx context.Context, identity driver.Identity) bool

func (*Provider) RegisterAuditInfo

func (p *Provider) RegisterAuditInfo(ctx context.Context, identity driver.Identity, info []byte) error

func (*Provider) RegisterRecipientData

func (p *Provider) RegisterRecipientData(ctx context.Context, data *driver.RecipientData) error

func (*Provider) RegisterRecipientIdentity

func (p *Provider) RegisterRecipientIdentity(id driver.Identity) error

func (*Provider) RegisterSigner

func (p *Provider) RegisterSigner(ctx context.Context, identity driver.Identity, signer driver.Signer, verifier driver.Verifier, signerInfo []byte) error

func (*Provider) RegisterVerifier

func (p *Provider) RegisterVerifier(ctx context.Context, identity driver.Identity, v driver.Verifier) error

type Role

type Role = driver.Role

Role is a container of long-term identities. A long-term identity is then used to construct a wallet.

type RoleType added in v0.5.0

type RoleType = driver.IdentityRoleType

RoleType is the role of an identity

type StorageProvider

type StorageProvider = idriver.StorageProvider

type Type

type Type = string

type TypedIdentity

type TypedIdentity struct {
	// Type encodes the type of the identity
	Type Type `protobuf:"bytes,1,opt,name=type,json=type,proto3" json:"type,omitempty"`
	// Identity encodes the identity itself
	Identity Identity `protobuf:"bytes,2,opt,name=identity,proto3" json:"identity,omitempty"`
}

TypedIdentity encodes an identity with a type.

func UnmarshalTypedIdentity

func UnmarshalTypedIdentity(id driver.Identity) (*TypedIdentity, error)

func (TypedIdentity) Bytes

func (i TypedIdentity) Bytes() ([]byte, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL