be.fgov.ehealth.etee.crypto.decrypt
Class DataUnsealerBuilder

java.lang.Object
  extended by be.fgov.ehealth.etee.crypto.decrypt.DataUnsealerBuilder

public final class DataUnsealerBuilder
extends java.lang.Object

This builder will create and configure an instance of DataUnsealer. When building DataUnsealer you will be guided in small and easy steps:

1. First step: Choose an OCSP-policy. This policy determines if it's required to do an OCSP-check on the certificate when sealing a message. During this step you can also configure how the OCSP-check will be done by providing a map with OCSPOptions.

These options will default to the following options:

See OCSPOption for more details on the options.

More information on the OCSPOptions can be found on the documentation of OCSPOption.

2. Second step: Choose the signing policies that you want to accept. You will also need to provide a KeyStore with certificate that you trust. You can pass some SigningOption as well. Acceptable policies are:

These options will default to the following options:

See SigningOption for more details on the options.

3. Third step: Choose a public key EncryptionPolicy. You will have to provide a list of encryption credentials to be able to decrypt messages.

To find the correct key to decrypt, the DataUnsealer will extract the 'RecipientIdentifier' from the KeyTransRecipientInfo block of the sealed data and try to match it with the identifier of the given encryption credential(s). If a match is found, the private key of that given encryption credential will be used to decrypt the message.

There are 2 options for a match:

To support multiple active keys or key roll-over for a receiver of messages, multiple EncryptionCredentials can be passed to this builder. If all keys are managed in one keystore, you can use KeyManager to extract all credentials from the keystore (the alias should be the keyId) and pass them to this builder using EncryptionCredentials.

4. Fourth step: Choose a secret key EncryptionPolicy.

5. The build step: The final step, this step will create and configure your DataUnsealer

Notes: This builder will make sure that your security configuration is set up properly, view SecurityConfiguration for more information.


Nested Class Summary
static interface DataUnsealerBuilder.BuildStep
          Build the DataUnsealer
static interface DataUnsealerBuilder.OCSPPolicyStep
          First step: Choose an OCSP-policy.
static interface DataUnsealerBuilder.PublicKeyPolicyStep
          Third step: Choose a public key EncryptionPolicy.
static interface DataUnsealerBuilder.SecretKeyPolicyStep
          Fourth step: Choose a secret key EncryptionPolicy.
static interface DataUnsealerBuilder.SigningPolicyStep
          Second step: Choose the signing policies that you want to accept.
 
Method Summary
static DataUnsealerBuilder.OCSPPolicyStep newBuilder()
          You will be guided in the steps to create a DataUnsealer.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

newBuilder

public static DataUnsealerBuilder.OCSPPolicyStep newBuilder()
You will be guided in the steps to create a DataUnsealer.

Returns:
the next step.


Copyright © 2019 eHealth. All Rights Reserved.