| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Network.TLS.ECH.Config
Description
Types for Configuration of Encrypted Client Hello.
Synopsis
- type ECHConfigList = [ECHConfig]
- data ECHConfig = ECHConfig {}
- data ECHConfigContents = ECHConfigContents {
- key_config :: HpkeKeyConfig
- maximum_name_length :: Word8
- public_name :: String
- extensions :: [ECHConfigExtension]
- data HpkeKeyConfig = HpkeKeyConfig {
- config_id :: ConfigId
- kem_id :: Word16
- public_key :: EncodedServerPublicKey
- cipher_suites :: [HpkeSymmetricCipherSuite]
- type ConfigId = Word8
- newtype EncodedServerPublicKey = EncodedServerPublicKey ByteString
- data HpkeSymmetricCipherSuite = HpkeSymmetricCipherSuite {}
- type ECHConfigExtensionType = Word16
- data ECHConfigExtension = ECHConfigExtension {
- ece_type :: ECHConfigExtensionType
- ece_data :: ByteString
- decodeECHConfigList :: ByteString -> Maybe [ECHConfig]
- encodeECHConfigList :: [ECHConfig] -> ByteString
- loadECHConfigList :: FilePath -> IO [ECHConfig]
- loadECHSecretKeys :: [FilePath] -> IO [(ConfigId, ByteString)]
- decodeECHConfig :: ByteString -> Maybe ECHConfig
- encodeECHConfig :: ECHConfig -> ByteString
- getECHConfigList :: ReadBuffer -> IO [ECHConfig]
- putECHConfigList :: WriteBuffer -> [ECHConfig] -> IO ()
- sizeOfECHConfigList :: [ECHConfig] -> Int
- getECHConfig :: ReadBuffer -> IO ECHConfig
- putECHConfig :: WriteBuffer -> ECHConfig -> IO ()
- sizeOfECHConfig :: ECHConfig -> Int
Types
type ECHConfigList = [ECHConfig] Source #
A list of ECHConfig.
Type for configuration of encrypted client hello.
Constructors
| ECHConfig | |
Fields | |
data ECHConfigContents Source #
Constructors
| ECHConfigContents | |
Fields
| |
Instances
| Show ECHConfigContents Source # | |
Defined in Network.TLS.ECH.Config Methods showsPrec :: Int -> ECHConfigContents -> ShowS show :: ECHConfigContents -> String showList :: [ECHConfigContents] -> ShowS | |
| Eq ECHConfigContents Source # | |
Defined in Network.TLS.ECH.Config Methods (==) :: ECHConfigContents -> ECHConfigContents -> Bool (/=) :: ECHConfigContents -> ECHConfigContents -> Bool | |
| Ord ECHConfigContents Source # | |
Defined in Network.TLS.ECH.Config Methods compare :: ECHConfigContents -> ECHConfigContents -> Ordering (<) :: ECHConfigContents -> ECHConfigContents -> Bool (<=) :: ECHConfigContents -> ECHConfigContents -> Bool (>) :: ECHConfigContents -> ECHConfigContents -> Bool (>=) :: ECHConfigContents -> ECHConfigContents -> Bool max :: ECHConfigContents -> ECHConfigContents -> ECHConfigContents min :: ECHConfigContents -> ECHConfigContents -> ECHConfigContents | |
data HpkeKeyConfig Source #
Key configuration.
Constructors
| HpkeKeyConfig | |
Fields
| |
Instances
| Show HpkeKeyConfig Source # | |
Defined in Network.TLS.ECH.Config Methods showsPrec :: Int -> HpkeKeyConfig -> ShowS show :: HpkeKeyConfig -> String showList :: [HpkeKeyConfig] -> ShowS | |
| Eq HpkeKeyConfig Source # | |
Defined in Network.TLS.ECH.Config | |
| Ord HpkeKeyConfig Source # | |
Defined in Network.TLS.ECH.Config Methods compare :: HpkeKeyConfig -> HpkeKeyConfig -> Ordering (<) :: HpkeKeyConfig -> HpkeKeyConfig -> Bool (<=) :: HpkeKeyConfig -> HpkeKeyConfig -> Bool (>) :: HpkeKeyConfig -> HpkeKeyConfig -> Bool (>=) :: HpkeKeyConfig -> HpkeKeyConfig -> Bool max :: HpkeKeyConfig -> HpkeKeyConfig -> HpkeKeyConfig min :: HpkeKeyConfig -> HpkeKeyConfig -> HpkeKeyConfig | |
newtype EncodedServerPublicKey Source #
Encoded public key.
Constructors
| EncodedServerPublicKey ByteString |
Instances
| Show EncodedServerPublicKey Source # | |
Defined in Network.TLS.ECH.Config Methods showsPrec :: Int -> EncodedServerPublicKey -> ShowS show :: EncodedServerPublicKey -> String showList :: [EncodedServerPublicKey] -> ShowS | |
| Eq EncodedServerPublicKey Source # | |
Defined in Network.TLS.ECH.Config Methods (==) :: EncodedServerPublicKey -> EncodedServerPublicKey -> Bool (/=) :: EncodedServerPublicKey -> EncodedServerPublicKey -> Bool | |
| Ord EncodedServerPublicKey Source # | |
Defined in Network.TLS.ECH.Config Methods compare :: EncodedServerPublicKey -> EncodedServerPublicKey -> Ordering (<) :: EncodedServerPublicKey -> EncodedServerPublicKey -> Bool (<=) :: EncodedServerPublicKey -> EncodedServerPublicKey -> Bool (>) :: EncodedServerPublicKey -> EncodedServerPublicKey -> Bool (>=) :: EncodedServerPublicKey -> EncodedServerPublicKey -> Bool max :: EncodedServerPublicKey -> EncodedServerPublicKey -> EncodedServerPublicKey min :: EncodedServerPublicKey -> EncodedServerPublicKey -> EncodedServerPublicKey | |
data HpkeSymmetricCipherSuite Source #
Type for cipher suite.
Constructors
| HpkeSymmetricCipherSuite | |
Instances
type ECHConfigExtensionType = Word16 Source #
Extension type.
data ECHConfigExtension Source #
Raw extension.
Constructors
| ECHConfigExtension | |
Fields
| |
Instances
| Show ECHConfigExtension Source # | |
Defined in Network.TLS.ECH.Config Methods showsPrec :: Int -> ECHConfigExtension -> ShowS show :: ECHConfigExtension -> String showList :: [ECHConfigExtension] -> ShowS | |
| Eq ECHConfigExtension Source # | |
Defined in Network.TLS.ECH.Config Methods (==) :: ECHConfigExtension -> ECHConfigExtension -> Bool (/=) :: ECHConfigExtension -> ECHConfigExtension -> Bool | |
| Ord ECHConfigExtension Source # | |
Defined in Network.TLS.ECH.Config Methods compare :: ECHConfigExtension -> ECHConfigExtension -> Ordering (<) :: ECHConfigExtension -> ECHConfigExtension -> Bool (<=) :: ECHConfigExtension -> ECHConfigExtension -> Bool (>) :: ECHConfigExtension -> ECHConfigExtension -> Bool (>=) :: ECHConfigExtension -> ECHConfigExtension -> Bool max :: ECHConfigExtension -> ECHConfigExtension -> ECHConfigExtension min :: ECHConfigExtension -> ECHConfigExtension -> ECHConfigExtension | |
ECH configuration list
decodeECHConfigList :: ByteString -> Maybe [ECHConfig] Source #
Decoder for ECHConfigList.
encodeECHConfigList :: [ECHConfig] -> ByteString Source #
Encoder for ECHConfigList.
loadECHConfigList :: FilePath -> IO [ECHConfig] Source #
Loading the wire format of ECHConfigList and
decode it into ECHConfigList.
loadECHSecretKeys :: [FilePath] -> IO [(ConfigId, ByteString)] Source #
Loading secret keys stored in files whose names are "<num>.key".
loadECHSecretKeys ["0.key", "1.key"]
ECH configuration
decodeECHConfig :: ByteString -> Maybe ECHConfig Source #
Decoder for ECHConfig.
encodeECHConfig :: ECHConfig -> ByteString Source #
Encoder for ECHConfig.
Low level
getECHConfigList :: ReadBuffer -> IO [ECHConfig] Source #
putECHConfigList :: WriteBuffer -> [ECHConfig] -> IO () Source #
sizeOfECHConfigList :: [ECHConfig] -> Int Source #
getECHConfig :: ReadBuffer -> IO ECHConfig Source #
putECHConfig :: WriteBuffer -> ECHConfig -> IO () Source #
sizeOfECHConfig :: ECHConfig -> Int Source #