| Safe Haskell | None | 
|---|---|
| Language | Haskell2010 | 
OpenSSL.X509
Description
An interface to X.509 certificate.
Synopsis
- data X509
- newX509 :: IO X509
- writeDerX509 :: X509 -> IO ByteString
- readDerX509 :: ByteString -> IO X509
- compareX509 :: X509 -> X509 -> IO Ordering
- signX509 :: KeyPair key => X509 -> key -> Maybe Digest -> IO ()
- verifyX509 :: PublicKey key => X509 -> key -> IO VerifyStatus
- printX509 :: X509 -> IO String
- getVersion :: X509 -> IO Int
- setVersion :: X509 -> Int -> IO ()
- getSerialNumber :: X509 -> IO Integer
- setSerialNumber :: X509 -> Integer -> IO ()
- getIssuerName :: X509 -> Bool -> IO [(String, String)]
- setIssuerName :: X509 -> [(String, String)] -> IO ()
- getSubjectName :: X509 -> Bool -> IO [(String, String)]
- setSubjectName :: X509 -> [(String, String)] -> IO ()
- getNotBefore :: X509 -> IO UTCTime
- setNotBefore :: X509 -> UTCTime -> IO ()
- getNotAfter :: X509 -> IO UTCTime
- setNotAfter :: X509 -> UTCTime -> IO ()
- getPublicKey :: X509 -> IO SomePublicKey
- setPublicKey :: PublicKey key => X509 -> key -> IO ()
- getSubjectEmail :: X509 -> IO [String]
Type
Functions to manipulate certificate
newX509signX509) to actually
 use the certificate.
- Version
- See setVersion.
- Serial number
- See setSerialNumber.
- Issuer name
- See setIssuerName.
- Subject name
- See setSubjectName.
- Validity
- See setNotBeforeandsetNotAfter.
- Public Key
- See setPublicKey.
writeDerX509 :: X509 -> IO ByteString Source #
writeDerX509 cert
readDerX509 :: ByteString -> IO X509 Source #
readDerX509 der
compareX509 :: X509 -> X509 -> IO Ordering Source #
compareX509 cert1 cert2
Arguments
| :: KeyPair key | |
| => X509 | The certificate to be signed. | 
| -> key | The private key to sign with. | 
| -> Maybe Digest | A hashing algorithm to use. If  | 
| -> IO () | 
signX509
Arguments
| :: PublicKey key | |
| => X509 | The certificate to be verified. | 
| -> key | The public key to verify with. | 
| -> IO VerifyStatus | 
verifyX509
printX509 :: X509 -> IO String Source #
printX509 cert
Accessors
getVersion :: X509 -> IO Int Source #
getVersion cert
setVersion :: X509 -> Int -> IO () Source #
setVersion cert ver
getSerialNumber :: X509 -> IO Integer Source #
getSerialNumber cert
setSerialNumber :: X509 -> Integer -> IO () Source #
setSerialNumber cert num
Arguments
| :: X509 | The certificate to examine. | 
| -> Bool | 
 | 
| -> IO [(String, String)] | Pairs of key and value, for example \[(\"C\", \"JP\"), (\"ST\", \"Some-State\"), ...\]. | 
getIssuerName
setIssuerName :: X509 -> [(String, String)] -> IO () Source #
setIssuerName cert namegetIssuerName.
getSubjectName :: X509 -> Bool -> IO [(String, String)] Source #
getSubjectName cert wantLongNamegetIssuerName.
setSubjectName :: X509 -> [(String, String)] -> IO () Source #
setSubjectName cert namesetIssuerName.
getNotBefore :: X509 -> IO UTCTime Source #
getNotBefore cert
setNotBefore :: X509 -> UTCTime -> IO () Source #
setNotBefore cert utc
getNotAfter :: X509 -> IO UTCTime Source #
getNotAfter cert
setNotAfter :: X509 -> UTCTime -> IO () Source #
setNotAfter cert utc
getPublicKey :: X509 -> IO SomePublicKey Source #
getPublicKey cert
setPublicKey :: PublicKey key => X509 -> key -> IO () Source #
setPublicKey cert pubkey
getSubjectEmail :: X509 -> IO [String] Source #
getSubjectEmail cert