Skip to content

Commit 14577a1

Browse files
committed
Merge branch 'RM-4763_READMEs_update' into 'SID'
RM-4763: Update cdoc2-lib/README.md See merge request cdoc2/cdoc2-java-ref-impl!107
2 parents e9c4ce1 + 4b887bc commit 14577a1

35 files changed

+558
-373
lines changed

README.md

Lines changed: 35 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ Similar to Symmetric Key scenario, but symmetric key is derived from password an
139139
cdoc2-java-ref-impl does not provide solution for securely storing the password, but most password managers
140140
can do that.
141141

142-
### CDOC2 with symmetric key from/to N-of-N shares
142+
### CDOC2 with symmetric key from/to N-of-N shares (Smart-ID/Mobile-ID)
143143

144144
1. Sender knows recipient id-code and assumes that recipient might have Smart-ID or Mobile-ID account.
145145
_Note:_ No way to check if recipient has existing Smart-ID or Mobile-ID account.
@@ -164,38 +164,51 @@ can do that.
164164
return shares;
165165
}
166166
```
167-
5. Sender uploads each `share` and recipient `etsi_identifier` to each CDOC2 server
167+
5. Sender uploads each `share` and recipient `etsi_identifier` to each CDOC2 shares server
168168
(each CDOC2 server will receive a different share). CDOC2 servers are configured in client configuration.
169169
Sender gets `shareID` for each share. [^1] FBS and OAS
170-
6. Sender [derives content encryption key](https://github.com/open-eid/cdoc2-java-ref-impl/blob/4fa3028298e7f1ea5414e3215dbfd8b0e9b49409/cdoc20-lib/src/main/java/ee/cyber/cdoc20/crypto/Crypto.java#L100) (CEK) `HKDF_Expand(FMK,"CDOC20cek")`and hmac key (HHK) `HKDF_Expand(FMK,"CDOC20hmac")` from FMK using HKDF expand algorithm.
171-
7. Sender encrypts FMK with KEK (xor) and gets encrypted_FMK
172-
8. Sender adds `encrypted FMK`, `key_label` and `server:shareId` pairs into CDOC2 header. [FBS]
173-
(https://gitlab.ext.cyber.ee/cdoc2/cdoc20_java/-/blob/RM-55885/cdoc2-schema/src/main/fbs/recipients.fbs#L70)
174-
9. Sender calculates header hmac using hmac key (HHK) and adds calculated hmac to CDoc
170+
6. Sender [derives content encryption key](https://github.com/open-eid/cdoc2-java-ref-impl/blob/4fa3028298e7f1ea5414e3215dbfd8b0e9b49409/cdoc20-lib/src/main/java/ee/cyber/cdoc20/crypto/Crypto.java#L100) (CEK) `HKDF_Expand(FMK,"CDOC20cek")`and hmac key
171+
(HHK) `HKDF_Expand(FMK,"CDOC20hmac")` from FMK using HKDF expand algorithm.
172+
7. Sender encrypts FMK with KEK (xor) and gets `encrypted_FMK`
173+
8. Sender adds `encrypted FMK` and [KeySharesCapsule](https://github.com/open-eid/cdoc2-java-ref-impl/blob/a2dbe6711d88d2442e23d4ca80494f285f4d00cd/cdoc2-schema/src/main/fbs/recipients.fbs#L92)
174+
containing recipient_id `etsi_identifier` with list of `server:shareId` into CDOC2 header.
175+
9. Sender calculates header hmac using hmac key (HHK) and adds calculated hmac to CDOC2
175176
10. Sender encrypts content with CEK (ChaCha20-Poly1305 with AAD)
176177
11. Sender sends CDOC2 document to Recipient
177-
12. Recipient will choose Smart-ID decryption method (if he/she has Smart-ID account) and
178-
enter/choose his/her id-code. (TODO: for mobile-id, user needs to enter mobile phone connected to his id-code)
179-
13. Recipient searches CDOC header for Smart-ID record with entered id-code.
180-
14. Recipient loops over secret shares and for each `server:shareId` asks `nonce` from server.
181-
Uses '/key-shares/{shareId}/nonce' endpoint in each server.
178+
12. Recipient will choose Smart-ID or Mobile-ID decryption method (depending on what auth means he owns) and
179+
enters/chooses his/her identity code.
180+
For Mobile-ID, user needs to enter mobile phone number additionally to identity code.
181+
13. Recipient finds `KeySharesCapsule` record from CDOC2 header where `recipient_id` matches
182+
recipients entered identity code.
183+
14. Recipient [prepares](https://open-eid.github.io/CDOC2/2.0-Draft/03_system_architecture/ch05_ID_authentication_protocol/#overview-of-the-generic-authentication-protocol)
184+
auth token by creating `nonce` for each share in [shares](https://github.com/open-eid/cdoc2-java-ref-impl/blob/a2dbe6711d88d2442e23d4ca80494f285f4d00cd/cdoc2-schema/src/main/fbs/recipients.fbs#L93).
185+
`nonce` is created by using [`/key-shares/{shareId}/nonce`](https://github.com/open-eid/cdoc2-openapi/blob/55a0b02adae0d8c61f2589a47555a93e4cf31971/cdoc2-key-shares-openapi.yaml#L105)
186+
endpoint in each `cdoc2-shares-server`.
187+
15. Recipient finishes creation of auth token by signing it with supported auth means (currently Smart-ID/Mobile-ID authentication certificate).
188+
16. Recipient downloads all `share` objects by presenting [auth token](https://github.com/open-eid/cdoc2-auth?tab=readme-ov-file#cdoc2auth-tokenv1-examples)
189+
and certificate using '/key-shares/{shareId}' [endpoint](https://github.com/open-eid/cdoc2-openapi/blob/55a0b02adae0d8c61f2589a47555a93e4cf31971/cdoc2-key-shares-openapi.yaml#L32).
190+
17. Recipient [combines](https://github.com/open-eid/cdoc2-java-ref-impl/blob/a2dbe6711d88d2442e23d4ca80494f285f4d00cd/cdoc2-lib/src/main/java/ee/cyber/cdoc2/crypto/Crypto.java#L376)
191+
downloaded `share` [objects](https://github.com/open-eid/cdoc2-openapi/blob/55a0b02adae0d8c61f2589a47555a93e4cf31971/cdoc2-key-shares-openapi.yaml#L144) into `KEK`
192+
18. *Follow steps from ECDH scenario 13-15*
182193

183194

184195
## Structure
185-
[![CDOC2 Dependencies](./cdoc2-docs/arch/images/cdoc2-deps.png)](https://viewer.diagrams.net/?tags=%7B%7D&highlight=0000ff&edit=_blank&layers=1&nav=1&title=CDOC2%20deps#R3VjbcpswEP0aPybDpWDnMb4knY7bycQzbZ03BTagVCAiCxvn6yuZxYjBdpOpEzx%2Bsvbs6sI5q11wzx0lxa0gWfydh8B6jhUWPXfccxzb8x31o5F1iQz8fglEgoYYVAMz%2BgoIWojmNIRFI1ByziTNmmDA0xQC2cCIEHzVDHvirLlrRiLc0aqBWUAYtMJ%2B0VDGiNqWEf4VaBTj1gMPHQmpghFYxCTkKwNyJz13JDiX5SgpRsA0eRUv5bybPd7twQSk8i0TnucvM7h6%2BnMzvh4%2B59l1dHPPLmwfDyfX1RNDqAhAkwsZ84inhE1qdCh4noagl7WUVcdMOc8UaCvwGaRco5okl1xBsUwYeqGg8rcxnuulLj20xgWuvDHWaKTcOMJmZnlyfdy9jCC04LkIMOoh96h1%2B230egdT9%2BVe%2Fnj8mV9gkkoiIpAH4rytbirhgScgxVrNE8CIpMvmOQhmXrSNq8VRA9TnPVoNutTKuvSvDLnsg2IpAcS6nNX3KntuOut5G2u%2FynrdOxBUcQgCoz5W%2BZ3k%2B5%2Bk%2FKFDLgnLcSdGH1vJoApMpocJD%2FON9oTRKFUAgyf1aMNFRgKaRtONNXYsIyJQvGl2h0sQkqrqd40OqbNkuIqphJmarpdfqULfTJG97OvVoDCgNoGVt4%2FPiG3CxaK5MmpuVXJjo9xW1fbolLstynuOzzSNIV2qYaSHPIOUZLTyqI0M51nrsyW%2BM4G8lkCLIIaEnBXtbofXYncP%2BtJFDzpW79%2F5SO4be7%2FTZe9vl6OA0VNL9VZe7xBkf6pb%2F8r0q09N9P5pJLrxJuW8603qiDfEe%2BMNcbu8ITv6AQiVkWd1SZzmJbH9rvuBv6su6Yc5K9b7p0a77XZRnYxa5P%2FvV532H%2Bez7lBennbJsr2OVWyIaL9bxA5azAe9hCmz%2FiNu4zP%2BznQnfwE%3D)
196+
[![CDOC2 Dependencies](./cdoc2-docs/img/deps.drawio.png)](https://viewer.diagrams.net/?tags=%7B%7D&lightbox=1&highlight=0000ff&edit=_blank&layers=1&nav=1#R%3Cmxfile%3E%3Cdiagram%20id%3D%22cR2MIER7KRh0lRtEKnlR%22%20name%3D%22Page-1%22%3E3VjbcpswEP0aP9rDJRD86EucTifteOKZtOmbAjIoEYgIYZt8fSUjgriY0DQNHT9ZOtpdSWcvWjMyF%2BHhmoI4%2BEY8iEeG5h1G5nJkGLplG%2FxHIFmOOLaTAz5FnhQqgQ16gRLUJJoiDyYVQUYIZiiugi6JIuiyCgYoJfuq2Jbg6q4x8OWOWglsXIBhQ%2BwH8lggUV1TxL9A5Adya8eSCyEohCWQBMAjewUyr0bmghLC8lF4WEAsyCt4yfVWJ1ZfD0ZhxPooPN4%2Fb%2BB0%2B7RazuaPaTzzV7d4rNvycCwrbgw9ToCcEsoC4pMI4KsSnVOSRh4UZjU%2BK2VuCIk5qHPwETKWSW%2BClBEOBSzEchUeEPupjO%2BFqYklZ8uDtHycZHISEeUIR80mAZKThKTUlbf5lVpIu%2F66eFnDG%2FP5ln1%2FuEvHMiYZoD5kHXJWLicYUTaQ9F5DEkJGMy5AIQYM7aohA2Tk%2Ba9ypXP4QPrnT3zlDOkrbWJPFXfpnc7iHqGZqiXmQm2sTTSnAErd4%2By0p4XtNaSI8wipqlMHPzQkWp1gDxUSXafeAZzKnTB6aEQJrzyxGIbES49BATDyIw5guOV3nScxcFHk3xxnS0NTJFxOpGB3voOUIV4WZ3KBifCZ7wPE4IarC%2FN7%2FgJUY%2BekO4Q1eOgksFi9lHeU74cpq%2BleKcZFLQ6UOlyU4Q%2Bn3GxQPjJsLGj00I4PfTEkMYxAjIoVvpGyeNb%2BMbShHWQ1HJS4AQzBWdFuXmiDpUX743QxxOP0zqag9QZmz6bA%2BK%2BagmY5cjE6r1B%2FM9Knnxnodhvh4nbnxHm9quvG4PXFHKK%2BqH2spfaxZdfau4dt61eV5vpSba4n2kV3f93SEL%2B%2F8tk9K5%2F50ZVPqq4JEvlTBF894%2FVpLajyC0mtWly9HqNXqG3Q3Rbs3ZWz1FY0A8H64ellXGRLmeE8MIKzyu96%2B6Drn5jfraS3tdX1fI%2B8mfiiIwjEIEmQW%2BWlmu1t3xj6%2Fmk9nel6M9X%2F%2FR%2FRrih9MxkVj1odDv3bnDVqr7TTL2ebhi5rhsyaoZyYdyQ%2Fn5Yf23Lx8pOlefUb%3C%2Fdiagram%3E%3C%2Fmxfile%3E)
186197

187198
- cdoc2-schema - flatbuffers schemas and code generation
188199
- cdoc2-lib - CDOC2 creation and processing library
189-
- cdoc2-client - client for communicating with [cdoc2-capsule-server](https://github.com/open-eid/cdoc2-capsule-server)
200+
- cdoc2-client - Code generation for `cdoc2-capsule-server` and `cdoc2-shares-server` clients
190201
- cdoc2-cli - Command line utility to create/process CDOC2 files
191202
- test - Sample CDOC2 containers (with script to create and decrypt them)
192-
and automated tests for CLI
193-
- cdoc2-example-app - Example, how to use cdoc2-java-ref-impl and cdoc4j together
203+
and automated end-to-end (bats) tests for CLI
204+
- cdoc2-example-app - Example, how to use `cdoc2-java-ref-impl` and `cdoc4j` together
194205

195206
Other CDOC2 repositories:
196207
- https://github.com/open-eid/cdoc2-openapi CDOC2 OpenAPI specifications
197-
- https://github.com/open-eid/cdoc2-capsule-server CDOC2 Capsule Server
198-
- https://github.com/open-eid/cdoc2-gatling-tests Gatling tests for CDOC2 Capsule Server
208+
- https://github.com/open-eid/cdoc2-capsule-server CDOC2 Capsule Server (server scenarios with id-card)
209+
- https://github.com/open-eid/cdoc2-shares-server CDOC2 Shares Server (encryption/decryption Smart-ID/Mobile-ID scenarios)
210+
- https://github.com/open-eid/cdoc2-auth CDOC2 auth token implementation (used for Smart-ID/Mobile-ID scenarios)
211+
- https://github.com/open-eid/cdoc2-gatling-tests Gatling tests for CDOC2 Capsule Server and CDOC2 Shares Server
199212

200213
## Using
201214

@@ -208,12 +221,13 @@ Refer [cdoc2-lib/README.md](cdoc2-lib/README.md) and see [cdoc2-example-app](cdo
208221
## Maven dependencies
209222

210223
Depends on:
211-
https://github.com/open-eid/cdoc2-openapi OpenAPI specifications for client stub generation
224+
- https://github.com/open-eid/cdoc2-openapi OpenAPI specifications for client stub generation
225+
- https://github.com/open-eid/cdoc2-auth CDOC2 auth token used by Smart-ID/Mobile-ID scenario
212226

213227
Configure github package repo access
214228
https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-apache-maven-registry#authenticating-with-a-personal-access-token
215229

216-
Add repository url to `<profile>` section of your PC local file `.m2/settings.xml` for using cdoc2
230+
Add repository url to `<profile>` section of your PC local file `~/.m2/settings.xml` for using cdoc2
217231
dependencies:
218232
```xml
219233
<profile>
@@ -297,7 +311,7 @@ mvn test -Dtests=pkcs11 -Dcdoc2.pkcs11.conf-file=src/test/resources/pkcs11-test-
297311

298312
By default, the pkcs11 configuration is read from the file `pkcs11-test-idcard.properties`.
299313

300-
### Bats tests
314+
### Bats tests (end to end)
301315

302316
Additional tests using [Bats](https://github.com/bats-core/bats-core) and `cdoc2-cli`.
303317
Refer [test/README.md](test/README.md)

cdoc2-cli/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -261,8 +261,8 @@ java -jar target/cdoc2-cli-*.jar info -f /tmp/id.cdoc
261261

262262
### Encrypting for ID-card owner
263263

264-
cdoc2-cli can download authentication certificate (Isikutuvastus PIN1) from SK LDAP directory
265-
https://www.skidsolutions.eu/repositoorium/ldap/esteid-ldap-kataloogi-kasutamine/
264+
cdoc2-cli can download authentication certificate (Isikutuvastus PIN1) from SK LDAP directory
265+
https://github.com/SK-EID/LDAP/wiki/Knowledge-Base
266266

267267
To create cdoc for recipient with id code 37101010021 use:
268268
```

cdoc2-cli/src/main/java/ee/cyber/cdoc2/cli/commands/CDocCreateCmd.java

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,14 @@
33
import ee.cyber.cdoc2.cli.util.InteractiveCommunicationUtil;
44
import ee.cyber.cdoc2.cli.util.LabeledPasswordParamConverter;
55
import ee.cyber.cdoc2.cli.util.LabeledPasswordParam;
6-
import ee.cyber.cdoc2.client.KeyShareClientFactory;
6+
import ee.cyber.cdoc2.client.KeySharesClientFactory;
77
import ee.cyber.cdoc2.crypto.keymaterial.LabeledPassword;
88
import ee.cyber.cdoc2.crypto.keymaterial.LabeledSecret;
99
import ee.cyber.cdoc2.cli.util.LabeledSecretConverter;
1010
import ee.cyber.cdoc2.cli.util.CliConstants;
1111
import ee.cyber.cdoc2.CDocBuilder;
1212
import ee.cyber.cdoc2.crypto.keymaterial.EncryptionKeyMaterial;
13+
import ee.cyber.cdoc2.crypto.keymaterial.encrypt.EstEncKeyMaterialBuilder;
1314
import ee.cyber.cdoc2.services.Cdoc2Services;
1415
import org.slf4j.Logger;
1516
import org.slf4j.LoggerFactory;
@@ -31,6 +32,7 @@
3132
import javax.naming.NamingException;
3233

3334
import static ee.cyber.cdoc2.cli.util.CDocCommonHelper.getServerProperties;
35+
import static ee.cyber.cdoc2.config.Cdoc2ConfigurationProperties.KEY_CAPSULE_POST_PROPERTIES;
3436

3537
//S106 - Standard outputs should not be used directly to log anything
3638
//CLI needs to interact with standard outputs
@@ -90,14 +92,19 @@ private void setProperty(Map<String, String> props) {
9092
props.forEach(System::setProperty);
9193
}
9294

95+
private String keyServerPropertiesFile;
9396
@Option(names = {"-S", "--server"},
9497
paramLabel = "FILE.properties",
9598
description = "key server connection properties file"
9699
// default server configuration disabled, until public key server is up and running
97100
//, arity = "0..1"
98101
//, fallbackValue = DEFAULT_SERVER_PROPERTIES
99102
)
100-
private String keyServerPropertiesFile;
103+
private void setKeyServerPropertiesFile(String server) {
104+
keyServerPropertiesFile = server;
105+
System.setProperty(KEY_CAPSULE_POST_PROPERTIES, keyServerPropertiesFile);
106+
}
107+
101108

102109
@Parameters(paramLabel = "FILE", description = "one or more files to encrypt", arity = "1..*")
103110
private File[] inputFiles;
@@ -150,7 +157,7 @@ public Void call() throws Exception {
150157
.fromX509Certificate(this.recipient.certs)
151158
.build();
152159

153-
addEtsiRecipientsIfAny(recipients, cDocBuilder);
160+
addAuthRecipientsIfAny(recipients, cDocBuilder);
154161

155162
cDocBuilder.withRecipients(recipients);
156163

@@ -188,25 +195,21 @@ public Duration convert(String arg) {
188195
}
189196
}
190197

191-
private void addEtsiRecipientsIfAny(
198+
private void addAuthRecipientsIfAny(
192199
List<EncryptionKeyMaterial> recipients,
193200
CDocBuilder cDocBuilder
194201
) throws GeneralSecurityException, NamingException {
195202

196203
if (isWithSid() || isWithMid()) {
197-
KeyShareClientFactory keyShareClientFactory =
198-
Cdoc2Services.initFromSystemProperties().get(KeyShareClientFactory.class);
199-
cDocBuilder.withKeyShares(keyShareClientFactory);
204+
KeySharesClientFactory keySharesClientFactory =
205+
Cdoc2Services.initFromSystemProperties().get(KeySharesClientFactory.class);
206+
cDocBuilder.withKeyShares(keySharesClientFactory);
200207
}
201208

202-
List<EncryptionKeyMaterial> etsiRecipients = EncryptionKeyMaterial.etsiBuilder()
203-
.fromEtsiIdentifier(this.recipient.identificationCodes)
209+
List<EncryptionKeyMaterial> etsiRecipients = new EstEncKeyMaterialBuilder()
204210
// for eId fetch authentication certificates' public keys for natural person identity codes
205-
.forEId(
206-
null != this.recipient.identificationCodes
207-
&& !isWithSid()
208-
&& !isWithMid()
209-
)
211+
.fromCertDirectory(this.recipient.identificationCodes)
212+
// for auth based split key shares
210213
.forSid(this.recipient.sidCodes)
211214
.forMid(this.recipient.midCodes)
212215
.build();

cdoc2-cli/src/main/java/ee/cyber/cdoc2/cli/commands/CDocDecryptCmd.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
import static ee.cyber.cdoc2.cli.util.CDocDecryptionHelper.getDecrypterWithFilesExtraction;
2020
import static ee.cyber.cdoc2.cli.util.CDocDecryptionHelper.getDecryptionKeyMaterial;
2121
import static ee.cyber.cdoc2.cli.util.CDocDecryptionHelper.getSmartCardDecryptionKeyMaterial;
22-
import static ee.cyber.cdoc2.config.Cdoc2ConfigurationProperties.KEY_CAPSULES_PROPERTIES;
22+
import static ee.cyber.cdoc2.config.Cdoc2ConfigurationProperties.KEY_CAPSULE_PROPERTIES;
2323

2424

2525
//S106 Standard outputs should not be used directly to log anything
@@ -53,7 +53,7 @@ public class CDocDecryptCmd implements Callable<Void> {
5353
@Option(names = {"--server"}, paramLabel = "FILE.properties")
5454
private void setKeyServerPropertiesFile(String server) {
5555
keyServerPropertiesFile = server;
56-
System.setProperty(KEY_CAPSULES_PROPERTIES, keyServerPropertiesFile);
56+
System.setProperty(KEY_CAPSULE_PROPERTIES, keyServerPropertiesFile);
5757
}
5858

5959
@CommandLine.Parameters(description = "one or more files to decrypt", paramLabel = "fileToExtract")

cdoc2-cli/src/main/java/ee/cyber/cdoc2/cli/commands/CDocListCmd.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121

2222
import static ee.cyber.cdoc2.cli.util.CDocDecryptionHelper.getDecryptionKeyMaterial;
2323
import static ee.cyber.cdoc2.cli.util.CDocDecryptionHelper.getSmartCardDecryptionKeyMaterial;
24-
import static ee.cyber.cdoc2.config.Cdoc2ConfigurationProperties.KEY_CAPSULES_PROPERTIES;
24+
import static ee.cyber.cdoc2.config.Cdoc2ConfigurationProperties.KEY_CAPSULE_PROPERTIES;
2525

2626

2727
//S106 Standard outputs should not be used directly to log anything
@@ -48,7 +48,7 @@ public class CDocListCmd implements Callable<Void> {
4848
@Option(names = {"--server"}, paramLabel = "FILE.properties")
4949
private void setKeyServerPropertiesFile(String server) {
5050
keyServerPropertiesFile = server;
51-
System.setProperty(KEY_CAPSULES_PROPERTIES, keyServerPropertiesFile);
51+
System.setProperty(KEY_CAPSULE_PROPERTIES, keyServerPropertiesFile);
5252
}
5353

5454
// allow -Dkey for setting System properties

cdoc2-cli/src/main/java/ee/cyber/cdoc2/cli/commands/CDocReEncryptCmd.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727

2828
import static ee.cyber.cdoc2.cli.util.CDocDecryptionHelper.getDecryptionKeyMaterial;
2929
import static ee.cyber.cdoc2.cli.util.CDocDecryptionHelper.getSmartCardDecryptionKeyMaterial;
30-
import static ee.cyber.cdoc2.config.Cdoc2ConfigurationProperties.KEY_CAPSULES_PROPERTIES;
30+
import static ee.cyber.cdoc2.config.Cdoc2ConfigurationProperties.KEY_CAPSULE_PROPERTIES;
3131

3232
//S106 Standard outputs should not be used directly to log anything
3333
//CLI needs to interact with standard outputs
@@ -72,7 +72,7 @@ public class CDocReEncryptCmd implements Callable<Void> {
7272
@CommandLine.Option(names = {"--server"}, paramLabel = "FILE.properties")
7373
private void setKeyServerPropertiesFile(String server) {
7474
keyServerPropertiesFile = server;
75-
System.setProperty(KEY_CAPSULES_PROPERTIES, keyServerPropertiesFile);
75+
System.setProperty(KEY_CAPSULE_PROPERTIES, keyServerPropertiesFile);
7676
}
7777

7878
@CommandLine.Option(names = { "-h", "--help" }, usageHelp = true, description = "display a help message")

cdoc2-docs/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
This directory contains orphan documents. Will be moved to CDOC2 docs repository or removed.
1+
Documentation moved to https://open-eid.github.io/CDOC2

cdoc2-docs/arch/arch.md

Lines changed: 0 additions & 22 deletions
This file was deleted.

cdoc2-docs/arch/components.puml

Lines changed: 0 additions & 23 deletions
This file was deleted.
-19.4 KB
Binary file not shown.

0 commit comments

Comments
 (0)