|
| 1 | +<!-- |
| 2 | +####################################################################### |
| 3 | +
|
| 4 | +Tractus-X - Special Interest Group (SIG) Architecture |
| 5 | +
|
| 6 | +Copyright (c) 2025 Contributors to the Eclipse Foundation |
| 7 | +
|
| 8 | +See the NOTICE file(s) distributed with this work for additional |
| 9 | +information regarding copyright ownership. |
| 10 | +
|
| 11 | +This work is made available under the terms of the |
| 12 | +Creative Commons Attribution 4.0 International (CC-BY-4.0) license, |
| 13 | +which is available at |
| 14 | +https://creativecommons.org/licenses/by/4.0/legalcode. |
| 15 | +
|
| 16 | +SPDX-License-Identifier: CC-BY-4.0 |
| 17 | +
|
| 18 | +####################################################################### |
| 19 | +--> |
| 20 | + |
| 21 | +# Decision Record: Issuer Capabilities in Identity Hub |
| 22 | + |
| 23 | +## Problem statement |
| 24 | + |
| 25 | +In the current Tractus-X architecture, the wallet ([tractusx-identityhub](https://github.com/eclipse-tractusx/tractusx-identityhub)) covers holder and verifier capabilities, but issuer capabilities are covered by a separate service ([tractusx-issuerservice](https://github.com/eclipse-tractusx/tractusx-issuerservice)). |
| 26 | +This separation works well at the present time, where only the Core Service Provider (CSP) is an issuer of verifiable credentials (VCs). |
| 27 | + |
| 28 | +However, in the mid- to long-term future, an increasing number of use cases will require regular member companies to also become issuers. |
| 29 | +The current separation of wallet vs issuer service would require all such member companies to run two separate services. |
| 30 | + |
| 31 | +At the same time, when running many wallet instances, the additional resources required by combining wallet and issuer service will add up and negatively impact scalability. |
| 32 | +This scalability, however, is important for [solution 1 - operator offers wallet as a service](https://github.com/catenax-eV/cx-ex-ssi/blob/main/docs/Issuance/issuance.md#solution-1-operator-offers-wallets-as-a-service), see also roadmap and sig-release items X, Y, and Z. |
| 33 | + |
| 34 | +## Evaluation criteria |
| 35 | + |
| 36 | +- regular member companies must be able to become issuers without an excessive increase in resource demands |
| 37 | +- the tractusx-identityhub must remain scalable and not become unnecessarily resource-intensive |
| 38 | + |
| 39 | +## Possible solutions |
| 40 | + |
| 41 | +### Solution 1: Integrate issuer capabilities into the tractusx-identityhub. |
| 42 | + |
| 43 | +Issuer capabilities will be added to the tractusx-identityhub, such that it covers features for issuers, holders, and verifiers in a single service. |
| 44 | +The distribution will be modularised in such a way that the issuer capabilities can be included if need be and excluded otherwise. |
| 45 | + |
| 46 | +### Solution 2: Keep wallet and issuer separate |
| 47 | + |
| 48 | +Issuer capabilities could be kept separated, but it would increase the complexity for maintaining and doing releases of the different components. |
| 49 | + |
| 50 | +## Decision: Solution 1 |
| 51 | + |
| 52 | +Issuer Service will be merged with the Identity Hub repository. |
| 53 | +The [tractusx-issuerservice repo](https://github.com/eclipse-tractusx/tractusx-issuerservice) (based on the upstream framework) will be deprecated. |
| 54 | +### Rationale |
| 55 | + |
| 56 | +- having one repository makes both deployment and maintenance easier |
| 57 | +- this solution is consistent with the upstream [EDC Identity Hub](https://github.com/eclipse-edc/IdentityHub), which also does not separate issuer capabilities into its own service. |
| 58 | +- an increasing number of use cases (e.g. DPP, PCF, CCM) will require regular participants to have issuer capabilities |
| 59 | +- the images can be published separately still and enabled and disabled in the helm charts |
| 60 | + - https://github.com/eclipse-tractusx/digital-product-pass/tree/main/dpp-verification |
| 61 | +- It can be still split in the future again if needed |
| 62 | +- The images can be published separately still and enabled and disabled in the helm charts. |
| 63 | + |
| 64 | +### Actions |
| 65 | + |
| 66 | +- deprecate the [tractusx-issuerservice](https://github.com/eclipse-tractusx/tractusx-issuerservice) |
| 67 | +- integrate issuer capabilities into the [tractusx-identityhub](https://github.com/eclipse-tractusx/tractusx-identityhub) |
| 68 | +- publish two images: one including and one excluding issuer capabilities |
| 69 | + |
| 70 | + |
| 71 | +### Consequences |
| 72 | + |
| 73 | +- The issuer service repo will be deprecated |
| 74 | +- Identity Hub users will need to enable and disable the runtimes from the identity hub issuer capabilties. |
| 75 | + |
| 76 | +## NOTICE |
| 77 | + |
| 78 | +- SPDX-FileCopyrightText: 2025 Contributors to the Eclipse Foundation |
| 79 | +- Source URL: https://github.com/eclipse-tractusx/sig-architecture |
| 80 | + |
0 commit comments