Skip to content

Use this page to understand the Notary configuration fields for Ripple Custody. The examples show possible configuration shapes; your KMS platform, credentials, certificates, resource values, and rollout process depend on your deployment.

This page applies to on-premise deployments only. For current defaults and the full supported schema, use the configuration packaged with your release.

What this config controls

The Notary handles approval signing through a KMS or HSM backend. The Vault uses the Notary public key to verify Notary signatures.

Protocol fields

Location: harmonize.notary

ParameterTypeDefaultDescription
protocolstringgrpcCommunication protocol between Notary Bridge and Notary. Possible values: grpc, http.

Protocol notes:

ProtocolNotes
grpcSupports gRPC communication between Notary Bridge and Notary.
httpSupports HTTP communication between Notary Bridge and Notary.

Component fields

Location: components.notary

FieldDescription
platformSelects the KMS/HSM backend used by the Notary.
resourcesCPU and memory requests and limits for the Notary component.
persistencePersistent state configuration, where exposed by your release.
envEnvironment-variable overrides exposed by your release.
<platform configuration>Platform-specific configuration block, such as kms_luna or kms_ibm.

Image references, internal ports, and inter-service wiring are managed by the release package unless explicitly exposed.

Platform values

Platform valueTypeDescription
luna, kms_luna, kms-lunaHardware HSMThales Luna HSM through KMS Connect.
kms_blocksafe, kms-blocksafeHardware HSMBlockSafe HSM through KMS Connect.
kms_ibmHardware HSMIBM LinuxONE or IBM Hyper Protect Crypto Services integration.
kms_securosys, kms-securosysHardware HSMSecurosys Primus HSM through KMS Connect.

Platform-specific fields

FieldDescription
kms_luna.hostLuna HSM hostname or IP address.
kms_luna.portLuna HSM port. Common value: 1792.
kms_luna.slotHSM partition slot number.
kms_luna.pinHSM partition password.
kms_luna.client.certificateClient certificate for mutual TLS.
kms_luna.client.keyClient private key for mutual TLS.
kms_luna.server.certificateLuna HSM server certificate.
kms_luna.existingSecretExisting secret containing Luna credentials and certificates.

When existingSecret is set for Luna HSM, the secret must contain these keys:

Secret keyDescription
pinHSM partition password.
client-certClient certificate.
client-keyClient private key.
server-certServer certificate.

Inline pin, client.certificate, client.key, and server.certificate values are ignored when existingSecret is set.

Constraints and relationships

  • The Notary should use a platform value supported by the KMS/HSM integration you deploy.
  • The Vault needs the Notary public key in harmonize.vaults.<vault-id>.notary_public_key.
  • The Notary public key is returned during Genesis. See Installation and initialization.
  • The Notary and Vault KMS choices should be planned together. See Key management planning.

Example

This example shows a Notary configured with Luna HSM and an existing secret:

harmonize:
  notary:
    protocol: grpc
  vaults:
    "00000000-0000-0000-0000-000000000000":
      notary_public_key: "ed25519:<notary-public-key>"

components:
  notary:
    platform: kms_luna
    kms_luna:
      host: "luna-hsm.example.com"
      port: "1792"
      slot: "0"
      existingSecret: "notary-luna-credentials"