com.digitalasset.canton.crypto.signer
SyncCryptoSignerWithSessionKeys
Companion object SyncCryptoSignerWithSessionKeys
class SyncCryptoSignerWithSessionKeys extends SyncCryptoSigner
Defines the methods for protocol message signing using a session signing key. This requires signatures to include information about which session key is being used, as well as an authorization by a long-term key through an additional signature. This extra signature covers the session key, its validity period, and the synchronizer for which it is valid. This allows us to use the session key, within a specific time frame and synchronizer, to sign protocol messages instead of using the long-term key. Session keys are intended to be used with a KMS/HSM-based provider to reduce the number of signing calls and, consequently, lower the latency costs associated with such external key management services.
- Alphabetic
- By Inheritance
- SyncCryptoSignerWithSessionKeys
- SyncCryptoSigner
- NamedLogging
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new SyncCryptoSignerWithSessionKeys(synchronizerId: SynchronizerId, staticSynchronizerParameters: StaticSynchronizerParameters, member: Member, signPrivateApiWithLongTermKeys: SigningPrivateOps, sessionSigningKeysConfig: SessionSigningKeysConfig, loggerFactory: NamedLoggerFactory)(implicit executionContext: ExecutionContext)
- signPrivateApiWithLongTermKeys
The crypto private API used to sign session signing keys, creating a signature delegation with a long-term key.
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- implicit def errorLoggingContext(implicit traceContext: TraceContext): ErrorLoggingContext
- Attributes
- protected
- Definition Classes
- NamedLogging
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def logger: TracedLogger
- Attributes
- protected
- Definition Classes
- NamedLogging
- val loggerFactory: NamedLoggerFactory
- Definition Classes
- SyncCryptoSignerWithSessionKeys → NamedLogging
- implicit def namedLoggingContext(implicit traceContext: TraceContext): NamedLoggingContext
- Attributes
- protected
- Definition Classes
- NamedLogging
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def noTracingLogger: Logger
- Attributes
- protected
- Definition Classes
- NamedLogging
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- def sign(topologySnapshot: TopologySnapshot, hash: Hash, usage: NonEmpty[Set[SigningKeyUsage]])(implicit traceContext: TraceContext): EitherT[FutureUnlessShutdown, SyncCryptoError, Signature]
Signs a given hash using the currently active signing keys in the current topology state.
Signs a given hash using the currently active signing keys in the current topology state.
- Definition Classes
- SyncCryptoSignerWithSessionKeys → SyncCryptoSigner
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])