Data Signing Service
IDataSigningService
in assembly SanteDB.Core.Api version 3.0.1980.0
Summary
Contract for services which can sign data using configured digital signature algorithms
Description
Implementers of this service contract are responsible for computing and validating digital signatures against arbitrary data streams. Implementers of this service are responsible for maintaining (or acquiring) a master list of keys which can be used for data signing, and validating digital signatures.
Implementers should also use the IDataSigningCertificateManagerService to support key identifiers which are indicated as a secure application/device identifier
Operations
Operation | Response/Return | Input/Parameter | Description |
---|---|---|---|
GetNamedSignatureSettings | SignatureSettings | String systemKeyId | Get the siganture algorithm for the system configured key |
GetSignatureSettings | SignatureSettings | Byte[] certificateThumbprint SignatureAlgorithm signatureAlgorithm | Get the signature algorithm for the configured thumbprint |
SignData | Byte[] | Byte[] data String systemKeyId | Sign with the configured system key |
SignData | Byte[] | Byte[] data SignatureSettings settings | Sign with the configured system key |
Verify | Boolean | Byte[] data Byte[] signature String systemKeyId | Verifies the digital signature of the data |
Verify | Boolean | Byte[] data Byte[] signature SignatureSettings settings | Verifies the digital signature of the data |
Implementations
DefaultDataSigningService - (SanteDB.Core.Api)
Default data signing service
Description
This digital signature service uses the keys configured in the SecurityConfigurationSection to sign data based on the type of signature algorithm in the SecurityConfigurationSection. Supported signature algorithms are:
HMAC256 (HMAC + SHA256) using shared secrets
RS256 (RSA+SHA256) using X.509 certificates (generation of a signature requires private key)
RS512 (RSA+SHA512)
Service Registration
Example Implementation
References
Last updated