cryptonite-0.27: Cryptography Primitives sink
License BSD-style
Maintainer Vincent Hanquez <vincent@snarc.org>
Stability experimental
Portability Good
Safe Haskell None
Language Haskell2010

Crypto.PubKey.RSA.PSS

Description

Synopsis

Documentation

data PSSParams hash seed output Source #

Parameters for PSS signature/verification.

Constructors

PSSParams

Fields

defaultPSSParams :: ( ByteArrayAccess seed, ByteArray output, HashAlgorithm hash) => hash -> PSSParams hash seed output Source #

Default Params with a specified hash function

Sign and verify functions

signWithSalt Source #

Arguments

:: HashAlgorithm hash
=> ByteString

Salt to use

-> Maybe Blinder

optional blinder to use

-> PSSParams hash ByteString ByteString

PSS Parameters to use

-> PrivateKey

RSA Private Key

-> ByteString

Message to sign

-> Either Error ByteString

Sign using the PSS parameters and the salt explicitely passed as parameters.

the function ignore SaltLength from the PSS Parameters

signDigestWithSalt Source #

Arguments

:: HashAlgorithm hash
=> ByteString

Salt to use

-> Maybe Blinder

optional blinder to use

-> PSSParams hash ByteString ByteString

PSS Parameters to use

-> PrivateKey

RSA Private Key

-> Digest hash

Message digest

-> Either Error ByteString

Sign using the PSS parameters and the salt explicitely passed as parameters.

the function ignore SaltLength from the PSS Parameters

sign Source #

Arguments

:: ( HashAlgorithm hash, MonadRandom m)
=> Maybe Blinder

optional blinder to use

-> PSSParams hash ByteString ByteString

PSS Parameters to use

-> PrivateKey

RSA Private Key

-> ByteString

Message to sign

-> m ( Either Error ByteString )

Sign using the PSS Parameters

signDigest Source #

Arguments

:: ( HashAlgorithm hash, MonadRandom m)
=> Maybe Blinder

optional blinder to use

-> PSSParams hash ByteString ByteString

PSS Parameters to use

-> PrivateKey

RSA Private Key

-> Digest hash

Message digest

-> m ( Either Error ByteString )

Sign using the PSS Parameters

signSafer Source #

Arguments

:: ( HashAlgorithm hash, MonadRandom m)
=> PSSParams hash ByteString ByteString

PSS Parameters to use

-> PrivateKey

private key

-> ByteString

message to sign

-> m ( Either Error ByteString )

Sign using the PSS Parameters and an automatically generated blinder.

signDigestSafer Source #

Arguments

:: ( HashAlgorithm hash, MonadRandom m)
=> PSSParams hash ByteString ByteString

PSS Parameters to use

-> PrivateKey

private key

-> Digest hash

message digst

-> m ( Either Error ByteString )

Sign using the PSS Parameters and an automatically generated blinder.

verify Source #

Arguments

:: HashAlgorithm hash
=> PSSParams hash ByteString ByteString

PSS Parameters to use to verify, this need to be identical to the parameters when signing

-> PublicKey

RSA Public Key

-> ByteString

Message to verify

-> ByteString

Signature

-> Bool

Verify a signature using the PSS Parameters

verifyDigest Source #

Arguments

:: HashAlgorithm hash
=> PSSParams hash ByteString ByteString

PSS Parameters to use to verify, this need to be identical to the parameters when signing

-> PublicKey

RSA Public Key

-> Digest hash

Digest to verify

-> ByteString

Signature

-> Bool

Verify a signature using the PSS Parameters