Copyright | (c) 2013-2021 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay <brendan.g.hay@gmail.com> |
Stability | provisional |
Portability | non-portable (GHC extensions) |
Safe Haskell | None |
Documentation
data V1Envelope Source #
V1Envelope | |
|
newV1 :: MonadIO m => (ByteString -> IO ByteString) -> Description -> m Envelope Source #
decodeV1 :: MonadResource m => (ByteString -> IO ByteString) -> [(CI Text, Text)] -> m Envelope Source #
data V2Envelope Source #
V2Envelope | |
|
newV2 :: MonadResource m => Text -> Env -> Description -> m Envelope Source #
decodeV2 :: MonadResource m => Env -> [(CI Text, Text)] -> Description -> m Envelope Source #
Instances
ToJSON Envelope Source # | |
Defined in Amazonka.S3.Encryption.Envelope | |
ToBody Envelope Source # | |
Defined in Amazonka.S3.Encryption.Envelope toBody :: Envelope -> RequestBody # | |
ToHeaders Envelope Source # | |
Defined in Amazonka.S3.Encryption.Envelope |
toMetadata :: Envelope -> [(CI ByteString, ByteString)] Source #
newEnvelope :: MonadResource m => Key -> Env -> m Envelope Source #
decodeEnvelope :: MonadResource m => Key -> Env -> [(CI Text, Text)] -> m Envelope Source #
fromMetadata :: MonadResource m => Key -> Env -> HashMap Text Text -> m Envelope Source #
aesKeySize :: Int Source #
aesBlockSize :: Int Source #
bodyEncrypt :: Envelope -> RequestBody -> RequestBody Source #
bodyDecrypt :: Envelope -> ResponseBody -> ResponseBody Source #
aesCbc :: Monad m => IV AES256 -> (IV AES256 -> ByteString -> (IV AES256, ByteString)) -> (IV AES256 -> ByteString -> ByteString) -> ConduitT ByteString ByteString m () Source #
rsaEncrypt :: KeyPair -> ByteString -> IO ByteString Source #
rsaDecrypt :: KeyPair -> ByteString -> IO ByteString Source #
createIV :: (MonadIO m, BlockCipher a) => ByteString -> m (IV a) Source #
plaintext :: MonadIO m => DecryptResponse -> m ByteString Source #
hoistEither :: MonadIO m => Either EncryptionError a -> m a Source #
throwIO :: MonadIO m => EncryptionError -> m a Source #