Skip to main content

Issuer Concepts & Architecture

This document provides a conceptual introduction to the SIROS ID Issuer, explaining key concepts, components, and deployment models. For hands-on configuration, see Issuing Credentials.

Wallet Interoperability

The SIROS ID Issuer is designed to work with any standards-compliant digital wallet—not just the SIROS ID Credential Manager. Any wallet implementing the OID4VCI specification with supported credential formats can receive credentials from a SIROS ID Issuer.

Compatible wallets include:

  • SIROS ID Credential Manager (based on wwWallet) – used in examples throughout this documentation
  • EUDI Reference Wallet – the EU Digital Identity reference implementation
  • Native mobile wallets – iOS and Android applications with OID4VCI support
  • Third-party wallets – any wallet implementing OID4VCI and supported formats (SD-JWT VC, mDL, JWT VC)
Multi-Wallet Support

A single issuer deployment can issue credentials to multiple different wallet implementations. The OID4VCI protocol ensures consistent behavior across all compliant wallets.

What is a Credential Issuer?

A credential issuer is a service that creates digitally signed credentials and delivers them to user wallets. The issuer acts as a bridge between your existing identity infrastructure and the emerging world of verifiable credentials.

The issuer:

  • Authenticates users via existing identity providers (SAML, OIDC) or API-based flows
  • Collects claims from your authoritative sources (via IdP or direct API integration)
  • Constructs credentials following standardized schemas
  • Signs credentials using cryptographic keys
  • Delivers credentials to user wallets via OID4VCI protocol

Integration Patterns

The SIROS ID Issuer supports two main integration patterns:

PatternBest ForDocumentation
IAM-CentricExisting IdPs, SSO, federationSAML IdP, OIDC Provider
API-CentricBackend systems, batch issuance, pre-authorized flowsAPI Integration

IAM-Centric Integration

Users authenticate via your identity provider (SAML or OIDC), and the issuer constructs credentials from the identity claims. This is the traditional model for organizations with established IdP infrastructure.

API-Centric Integration

Authentic sources (HR systems, registries, databases) push document data via REST/gRPC APIs. Users collect credentials using pre-authorized codes without additional authentication. This is ideal for:

  • Batch issuance: Provisioning credentials for many users at once
  • Non-IAM workflows: Where identity is established outside the IdP
  • Authentic source systems: Direct integration with authoritative data

Core Concepts

Verifiable Credentials

A verifiable credential is a tamper-evident digital document that makes claims about a subject (typically a person). Like a physical credential (passport, ID card, diploma), it contains:

ComponentDescriptionExample
IssuerWho issued the credentialhttps://issuer.example.org
SubjectWho the credential is aboutThe holder's identifier
ClaimsStatements about the subjectName, birth date, etc.
ProofCryptographic signatureDigital signature + public key
ValidityWhen the credential is validIssue date, expiration

Credential Formats

The SIROS ID Issuer supports multiple credential formats to meet different use cases:

FormatStandardBest ForSelective Disclosure
SD-JWT VCIETF SD-JWT VCEU Digital Identity, general use✅ Yes
mDL/mDocISO 18013-5Mobile driving licenses✅ Yes
JWT VCW3C VC Data ModelLegacy systems❌ No
Recommended Format

SD-JWT VC is the recommended format for new deployments. It provides selective disclosure (users can share only necessary claims) and is the format specified by the EU Digital Identity Wallet Architecture Reference Framework (ARF).

Credential Types

A credential type defines the schema and semantics of a credential. Each type specifies:

  • VCT (Verifiable Credential Type): A unique identifier (URN or URL)
  • Claims: What information the credential contains
  • Display: How to present the credential in wallets
  • Trust framework: Which authorities can issue it

VCTM (Verifiable Credential Type Metadata)

Each credential type is defined by a VCTM file that specifies:

{
"vct": "urn:eudi:pid:arf-1.8:1",
"name": "Person Identification Data",
"description": "EU Person Identification Data credential (ARF 1.8)",
"display": [
{
"lang": "en-US",
"name": "PID",
"rendering": {
"svg_templates": [...]
}
}
],
"claims": [
{
"path": ["given_name"],
"mandatory": true,
"sd": "always",
"display": [{"lang": "en-US", "label": "First name"}]
}
]
}

Built-in Credential Types

SIROS ID includes pre-configured types based on EU standards:

TypeVCTDescription
PID (ARF 1.5)urn:eudi:pid:arf-1.5:1Person Identification Data (ARF 1.5)
PID (ARF 1.8)urn:eudi:pid:arf-1.8:1Person Identification Data (ARF 1.8+)
EHICurn:eudi:ehic:1European Health Insurance Card
PDA1urn:eudi:pda1:1Portable Document A1
Diplomaurn:eudi:diploma:1Educational credentials
ELMurn:eudi:elm:1European Learning Model
Microcredentialurn:eudi:micro_credential:1Short learning achievements
OpenBadgeurn:eudi:openbadge_complete:1Open Badges 3.0
ARF Version Selection

SIROS ID supports both ARF 1.5 and ARF 1.8 PID schemas. The configuration credential_constructor key determines which schema is used. The generic VCT urn:eudi:pid:1 is accepted for compatibility but maps to a configured ARF version.

Credential Constructor

The credential constructor is the component that transforms user identity data into credential claims. It:

  1. Receives authenticated user attributes (from SAML/OIDC)
  2. Maps external attributes to credential claims
  3. Applies transformations and defaults
  4. Validates against the VCTM schema
  5. Produces the claim set for signing
# Example: Map SAML attributes to PID claims
credential_constructor:
pid_1_8:
vct: "urn:eudi:pid:arf-1.8:1"
vctm_file_path: "/metadata/vctm_pid_arf_1_8.json"
attributes:
given_name:
source: ["$.claims.given_name", "$.saml.urn:oid:2.5.4.42"]
family_name:
source: ["$.claims.family_name", "$.saml.urn:oid:2.5.4.4"]
birthdate:
source: ["$.claims.birthdate"]
transform: "date_iso8601"

Issuer Components

The SIROS ID Issuer is built as a modular system with distinct components:

Component Descriptions

ComponentPurposeProtocol/Standard
HTTP ServerExposes OID4VCI endpointsOpenID4VCI
SAML SPService Provider for SAML federationsSAML 2.0
OIDC RPRelying Party for OIDC providersOpenID Connect
Session ManagerOAuth2 session and state managementOAuth 2.0
Issuer APICore credential operationsgRPC + REST
Credential ConstructorBuilds credentials from claimsInternal
Signing ServiceCryptographic signing (SW or HSM)JWS, COSE
Status ListsRevocation status trackingToken Status List
Audit LogCompliance and monitoringInternal

Service Architecture

The issuer can run as a single process or as separate microservices:

Single Process Mode

All components in one binary—simplest deployment for development and small-scale production.

Microservices Mode

Separate services for independent scaling and high availability.

Deployment Models

Choose a deployment model based on your requirements:

Model 1: SIROS ID Hosted (SaaS)

Use the SIROS ID cloud platform with minimal configuration.

AspectDetails
SetupMinutes – configure via SIROS ID portal
MaintenanceFully managed by SIROS
Data locationSIROS ID cloud infrastructure
CustomizationCredential types, branding
Best forQuick deployment, SaaS model

Model 2: Self-Hosted (On-Premise)

Deploy the full issuer stack in your own infrastructure.

AspectDetails
SetupHours to days – deploy containers/VMs
MaintenanceYour operations team
Data locationYour infrastructure
CustomizationFull control over all components
Best forData sovereignty, compliance, custom integrations

Model 3: Hybrid

Combine hosted and self-hosted components.

AspectDetails
SetupVariable
MaintenanceShared responsibility
Data locationCredentials on-premise, trust in cloud
CustomizationSelective control
Best forRegulated environments with external trust requirements

Model 4: Standalone Issuer

Minimal deployment for testing or air-gapped environments.

AspectDetails
SetupMinutes – single Docker container
MaintenanceMinimal
Data locationLocal
CustomizationDevelopment/testing
Best forDevelopment, demos, isolated testing

Deployment Decision Matrix

RequirementHostedSelf-HostedHybridStandalone
Quick setup⚠️
Data sovereignty
HSM key storage
Custom trust
High availability⚠️⚠️
Zero maintenance⚠️
GDPR compliance
EU/EES Hosting

All SIROS ID hosted services are operated from EU/EES infrastructure, ensuring data sovereignty and GDPR compliance for European customers.

Legend: ✅ Excellent | ⚠️ Possible with effort | ❌ Not recommended

Security Considerations

Key Management

The issuer's signing keys are the most critical security asset. Choose the appropriate key storage based on your security requirements:

Key StorageInterfaceSecurity LevelUse Case
Software KeysEncrypted fileDevelopmentLocal testing, demos
HSMPKCS#11ProductionStandard production deployments
Certified HSMPKCS#11 (QSCD)High AssuranceeIDAS qualified signatures, government issuers

Trust Chain

Credentials are only valuable if verifiers can trust them:

See Trust Services for configuring trust frameworks.

Next Steps

Now that you understand the concepts:

  1. Issuing Credentials – Configure and deploy your issuer
  2. SAML IdP Integration – Connect SAML federations
  3. OIDC Provider Integration – Connect OIDC providers
  4. Trust Services – Configure trust frameworks