Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
ZkFold.Symbolic.Algorithms.RSA
Documentation
sign :: forall keyLen msgLen ctx. RSA keyLen msgLen ctx => ByteString msgLen ctx -> PrivateKey keyLen ctx -> Signature keyLen ctx Source #
verify :: forall keyLen msgLen ctx. RSA keyLen msgLen ctx => ByteString msgLen ctx -> Signature keyLen ctx -> PublicKey keyLen ctx -> Bool ctx Source #
signVar :: forall keyLen msgLen ctx. RSA keyLen msgLen ctx => VarByteString msgLen ctx -> PrivateKey keyLen ctx -> Signature keyLen ctx Source #
verifyVar :: forall keyLen msgLen ctx. RSA keyLen msgLen ctx => VarByteString msgLen ctx -> Signature keyLen ctx -> PublicKey keyLen ctx -> (Bool ctx, ByteString 256 ctx) Source #
type RSA keyLen msgLen ctx = (SHA2 "SHA256" ctx msgLen, KnownNat keyLen, KnownNat (2 * keyLen), KnownRegisters ctx keyLen 'Auto, KnownRegisters ctx (2 * keyLen) 'Auto, KnownNat (Ceil (GetRegisterSize (BaseField ctx) (2 * keyLen) 'Auto) OrdWord), NFData (ctx (Vector keyLen)), NFData (ctx (Vector (NumberOfRegisters (BaseField ctx) keyLen 'Auto))), NFData (ctx (Vector (NumberOfRegisters (BaseField ctx) (2 * keyLen) 'Auto)))) Source #
data PublicKey keyLen ctx Source #
Instances
data PrivateKey keyLen ctx Source #
Instances
type Signature keyLen ctx = ByteString keyLen ctx Source #