List of all items
Structs
Enums
Traits
Functions
- test_util::bytes_to_hex
- test_util::hex_to_bytes
- test_util::hex_to_bytes_option
- test_util::vec_to_option_slice
diff --git a/hpke_rs/all.html b/hpke_rs/all.html index 1f3f319..1b23b0a 100644 --- a/hpke_rs/all.html +++ b/hpke_rs/all.html @@ -1 +1 @@ -
pub enum HpkeError {
+HpkeError in hpke_rs - Rust pub enum HpkeError {
OpenError,
InvalidConfig,
InvalidInput,
@@ -22,7 +22,7 @@
§CryptoError(String)
An error in the crypto library occurred.
§MessageLimitReached
The message limit for this AEAD, key, and nonce.
§InsufficientRandomness
Unable to collect enough randomness.
-
#[repr(u8)]pub enum Mode {
+Mode in hpke_rs - Rust §Psk = 1
HPKE with PSK.
§Auth = 2
Authenticated HPKE.
§AuthPsk = 3
Authenticated HPKE with PSK.
-
diff --git a/hpke_rs/prelude/index.html b/hpke_rs/prelude/index.html index ec05e5b..f193b11 100644 --- a/hpke_rs/prelude/index.html +++ b/hpke_rs/prelude/index.html @@ -1,4 +1,4 @@ -
Prelude for HPKE. +
pub trait TryFrom<T>: Sized {
+TryFrom in hpke_rs::prelude - Rust pub trait TryFrom<T>: Sized {
type Error;
// Required method
diff --git a/hpke_rs/struct.Context.html b/hpke_rs/struct.Context.html
index 22757b2..f030c8a 100644
--- a/hpke_rs/struct.Context.html
+++ b/hpke_rs/struct.Context.html
@@ -1,4 +1,4 @@
-Context in hpke_rs - Rust pub struct Context<Crypto: 'static + HpkeCrypto> { /* private fields */ }
Expand description
The HPKE context.
+
Context in hpke_rs - Rust pub struct Context<Crypto: 'static + HpkeCrypto> { /* private fields */ }
Expand description
The HPKE context.
Note that the RFC currently doesn’t define this.
Also see https://github.com/cfrg/draft-irtf-cfrg-hpke/issues/161.
Implementations§
source§impl<Crypto: HpkeCrypto> Context<Crypto>
sourcepub fn seal(
diff --git a/hpke_rs/struct.Hpke.html b/hpke_rs/struct.Hpke.html
index fa8ab9f..230c72b 100644
--- a/hpke_rs/struct.Hpke.html
+++ b/hpke_rs/struct.Hpke.html
@@ -1,4 +1,4 @@
-Hpke in hpke_rs - Rust pub struct Hpke<Crypto: 'static + HpkeCrypto> { /* private fields */ }
Expand description
The HPKE configuration struct.
+
Hpke in hpke_rs - Rust pub struct Hpke<Crypto: 'static + HpkeCrypto> { /* private fields */ }
Expand description
The HPKE configuration struct.
This holds the configuration for HPKE but no state.
To use HPKE first instantiate the configuration with
let hpke = Hpke::new(mode, kem_mode, kdf_mode, aead_mode)
.
diff --git a/hpke_rs/struct.HpkeKeyPair.html b/hpke_rs/struct.HpkeKeyPair.html
index 7fbdcee..b66fdcf 100644
--- a/hpke_rs/struct.HpkeKeyPair.html
+++ b/hpke_rs/struct.HpkeKeyPair.html
@@ -1,4 +1,4 @@
-
HpkeKeyPair in hpke_rs - Rust Struct hpke_rs::HpkeKeyPair
source · pub struct HpkeKeyPair { /* private fields */ }
Expand description
An HPKE key pair has an HPKE private and public key.
+HpkeKeyPair in hpke_rs - Rust Struct hpke_rs::HpkeKeyPair
source · pub struct HpkeKeyPair { /* private fields */ }
Expand description
An HPKE key pair has an HPKE private and public key.
Implementations§
source§impl HpkeKeyPair
sourcepub fn new(sk: Vec<u8>, pk: Vec<u8>) -> Self
Create a new HPKE key pair.
Consumes the private and public key bytes.
sourcepub fn private_key(&self) -> &HpkePrivateKey
Get a reference to the HPKE private key of this key pair.
diff --git a/hpke_rs/struct.HpkePrivateKey.html b/hpke_rs/struct.HpkePrivateKey.html
index e2b516c..1bd05ef 100644
--- a/hpke_rs/struct.HpkePrivateKey.html
+++ b/hpke_rs/struct.HpkePrivateKey.html
@@ -1,4 +1,4 @@
-HpkePrivateKey in hpke_rs - Rust Struct hpke_rs::HpkePrivateKey
source · pub struct HpkePrivateKey { /* private fields */ }
Expand description
An HPKE private key is a byte vector.
+HpkePrivateKey in hpke_rs - Rust Struct hpke_rs::HpkePrivateKey
source · pub struct HpkePrivateKey { /* private fields */ }
Expand description
An HPKE private key is a byte vector.
Implementations§
source§impl HpkePrivateKey
sourcepub fn as_slice(&self) -> &[u8] ⓘ
Get the raw key as byte slice.
diff --git a/hpke_rs/struct.HpkePublicKey.html b/hpke_rs/struct.HpkePublicKey.html
index 79b64dd..e5a5c9c 100644
--- a/hpke_rs/struct.HpkePublicKey.html
+++ b/hpke_rs/struct.HpkePublicKey.html
@@ -1,4 +1,4 @@
-HpkePublicKey in hpke_rs - Rust Struct hpke_rs::HpkePublicKey
source · pub struct HpkePublicKey { /* private fields */ }
Expand description
An HPKE public key is a byte vector.
+HpkePublicKey in hpke_rs - Rust Struct hpke_rs::HpkePublicKey
source · pub struct HpkePublicKey { /* private fields */ }
Expand description
An HPKE public key is a byte vector.
Implementations§
source§impl HpkePublicKey
source§impl Deserialize for HpkePublicKey
source§fn tls_deserialize<R: Read>(bytes: &mut R) -> Result<Self, Error>
This function deserializes the bytes
from the provided a std::io::Read
and returns the populated struct. Read moresource§impl From<&[u8]> for HpkePublicKey
source§impl PartialEq for HpkePublicKey
source§impl From<&[u8]> for HpkePublicKey
source§impl PartialEq for HpkePublicKey
source§fn eq(&self, other: &HpkePublicKey) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.source§impl Serialize for &HpkePublicKey
source§impl Serialize for HpkePublicKey
source§fn tls_serialize<W: Write>(&self, writer: &mut W) -> Result<usize, Error>
Serialize self
and write it to the writer
.
diff --git a/hpke_rs/test_util/fn.bytes_to_hex.html b/hpke_rs/test_util/fn.bytes_to_hex.html
index 4e661b4..e1050b1 100644
--- a/hpke_rs/test_util/fn.bytes_to_hex.html
+++ b/hpke_rs/test_util/fn.bytes_to_hex.html
@@ -1,2 +1,2 @@
-bytes_to_hex in hpke_rs::test_util - Rust Function hpke_rs::test_util::bytes_to_hex
source · pub fn bytes_to_hex(bytes: &[u8]) -> String
Expand description
Convert bytes
to a hex string.
+bytes_to_hex in hpke_rs::test_util - Rust
\ No newline at end of file
diff --git a/hpke_rs/test_util/fn.hex_to_bytes.html b/hpke_rs/test_util/fn.hex_to_bytes.html
index 8605d5e..0a588ce 100644
--- a/hpke_rs/test_util/fn.hex_to_bytes.html
+++ b/hpke_rs/test_util/fn.hex_to_bytes.html
@@ -1,2 +1,2 @@
-hex_to_bytes in hpke_rs::test_util - Rust Function hpke_rs::test_util::hex_to_bytes
source · pub fn hex_to_bytes(hex: &str) -> Vec<u8> ⓘ
Expand description
Convert a hex string to a byte vector.
+hex_to_bytes in hpke_rs::test_util - Rust
\ No newline at end of file
diff --git a/hpke_rs/test_util/fn.hex_to_bytes_option.html b/hpke_rs/test_util/fn.hex_to_bytes_option.html
index f5d831d..702653a 100644
--- a/hpke_rs/test_util/fn.hex_to_bytes_option.html
+++ b/hpke_rs/test_util/fn.hex_to_bytes_option.html
@@ -1,3 +1,3 @@
-hex_to_bytes_option in hpke_rs::test_util - Rust Function hpke_rs::test_util::hex_to_bytes_option
source · pub fn hex_to_bytes_option(hex: Option<String>) -> Vec<u8> ⓘ
Expand description
Convert a hex string to a byte vector.
+
hex_to_bytes_option in hpke_rs::test_util - Rust
\ No newline at end of file
diff --git a/hpke_rs/test_util/fn.vec_to_option_slice.html b/hpke_rs/test_util/fn.vec_to_option_slice.html
index 0521ea1..6ba227c 100644
--- a/hpke_rs/test_util/fn.vec_to_option_slice.html
+++ b/hpke_rs/test_util/fn.vec_to_option_slice.html
@@ -1,3 +1,3 @@
-vec_to_option_slice in hpke_rs::test_util - Rust Function hpke_rs::test_util::vec_to_option_slice
source · pub fn vec_to_option_slice(v: &[u8]) -> Option<&[u8]>
Expand description
Convert a byte slice into byte slice option.
+
vec_to_option_slice in hpke_rs::test_util - Rust
\ No newline at end of file
diff --git a/hpke_rs/test_util/index.html b/hpke_rs/test_util/index.html
index 5e002a1..c3c0e92 100644
--- a/hpke_rs/test_util/index.html
+++ b/hpke_rs/test_util/index.html
@@ -1,4 +1,4 @@
-hpke_rs::test_util - Rust Expand description
Test util module. Should be moved really.
+hpke_rs::test_util - Rust Expand description
Test util module. Should be moved really.
Functions§
- Convert
bytes
to a hex string. - Convert a hex string to a byte vector.
- Convert a hex string to a byte vector.
If the input is
None
, this returns an empty vector. - Convert a byte slice into byte slice option.
Returns
Nonce
if the byte slice is empty and Some(v)
otherwise.
\ No newline at end of file
diff --git a/hpke_rs/type.HPKEKeyPair.html b/hpke_rs/type.HPKEKeyPair.html
index 5464d58..90f7df9 100644
--- a/hpke_rs/type.HPKEKeyPair.html
+++ b/hpke_rs/type.HPKEKeyPair.html
@@ -1 +1 @@
-HPKEKeyPair in hpke_rs - Rust Type Alias hpke_rs::HPKEKeyPair
source · pub type HPKEKeyPair = HpkeKeyPair;
👎Deprecated since 0.0.7: Please use HpkeKeyPair instead. This alias will be removed with the first stable 0.1 release.Aliased Type§
struct HPKEKeyPair { /* private fields */ }
\ No newline at end of file
+HPKEKeyPair in hpke_rs - Rust Type Alias hpke_rs::HPKEKeyPair
source · pub type HPKEKeyPair = HpkeKeyPair;
👎Deprecated since 0.0.7: Please use HpkeKeyPair instead. This alias will be removed with the first stable 0.1 release.Aliased Type§
struct HPKEKeyPair { /* private fields */ }
\ No newline at end of file
diff --git a/hpke_rs/type.HPKEPrivateKey.html b/hpke_rs/type.HPKEPrivateKey.html
index 1e118b8..4694366 100644
--- a/hpke_rs/type.HPKEPrivateKey.html
+++ b/hpke_rs/type.HPKEPrivateKey.html
@@ -1 +1 @@
-HPKEPrivateKey in hpke_rs - Rust Type Alias hpke_rs::HPKEPrivateKey
source · pub type HPKEPrivateKey = HpkePrivateKey;
👎Deprecated since 0.0.7: Please use HpkePrivateKey instead. This alias will be removed with the first stable 0.1 release.Aliased Type§
struct HPKEPrivateKey { /* private fields */ }
\ No newline at end of file
+HPKEPrivateKey in hpke_rs - Rust Type Alias hpke_rs::HPKEPrivateKey
source · pub type HPKEPrivateKey = HpkePrivateKey;
👎Deprecated since 0.0.7: Please use HpkePrivateKey instead. This alias will be removed with the first stable 0.1 release.Aliased Type§
struct HPKEPrivateKey { /* private fields */ }
\ No newline at end of file
diff --git a/hpke_rs/type.HPKEPublicKey.html b/hpke_rs/type.HPKEPublicKey.html
index 8fc9305..7d0f197 100644
--- a/hpke_rs/type.HPKEPublicKey.html
+++ b/hpke_rs/type.HPKEPublicKey.html
@@ -1 +1 @@
-HPKEPublicKey in hpke_rs - Rust Type Alias hpke_rs::HPKEPublicKey
source · pub type HPKEPublicKey = HpkePublicKey;
👎Deprecated since 0.0.7: Please use HpkePublicKey instead. This alias will be removed with the first stable 0.1 release.Aliased Type§
struct HPKEPublicKey { /* private fields */ }
\ No newline at end of file
+HPKEPublicKey in hpke_rs - Rust Type Alias hpke_rs::HPKEPublicKey
source · pub type HPKEPublicKey = HpkePublicKey;
👎Deprecated since 0.0.7: Please use HpkePublicKey instead. This alias will be removed with the first stable 0.1 release.Aliased Type§
struct HPKEPublicKey { /* private fields */ }
\ No newline at end of file
diff --git a/search-index.js b/search-index.js
index 1c5e646..d1235b7 100644
--- a/search-index.js
+++ b/search-index.js
@@ -1,5 +1,5 @@
var searchIndex = new Map(JSON.parse('[\
-["hpke_rs",{"t":"PPPFPIIIFGFFFPPPPPPPGPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNCNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNREKMHHHH","n":["Auth","AuthPsk","Base","Context","CryptoError","HPKEKeyPair","HPKEPrivateKey","HPKEPublicKey","Hpke","HpkeError","HpkeKeyPair","HpkePrivateKey","HpkePublicKey","InconsistentPsk","InsecurePsk","InsufficientRandomness","InvalidConfig","InvalidInput","MessageLimitReached","MissingPsk","Mode","OpenError","Psk","UnknownMode","UnnecessaryPsk","as_slice","as_slice","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","default","default","default","derive_key_pair","deserialize","deserialize","deserialize","deserialize","eq","eq","eq","eq","export","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_keys","generate_key_pair","into","into","into","into","into","into","into","into_keys","key_schedule","new","new","new","new","open","open","prelude","private_key","public_key","receiver_export","seal","seal","seed","send_export","serialize","serialize","serialize","serialize","setup_receiver","setup_sender","test_util","tls_deserialize","tls_deserialize","tls_serialize","tls_serialize","tls_serialized_len","tls_serialized_len","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","zeroize","Error","HpkeMode","TryFrom","try_from","bytes_to_hex","hex_to_bytes","hex_to_bytes_option","vec_to_option_slice"],"q":[[0,"hpke_rs"],[160,"hpke_rs::prelude"],[164,"hpke_rs::test_util"],[168,"hpke_rs_crypto"],[169,"core::result"],[170,"serde::de"],[171,"alloc::vec"],[172,"core::fmt"],[173,"hpke_rs_crypto::error"],[174,"hpke_rs_crypto::types"],[175,"core::option"],[176,"serde::ser"],[177,"tls_codec"],[178,"std::io"],[179,"alloc::string"],[180,"core::any"],[181,"core::convert"]],"i":[9,9,9,0,7,0,0,0,0,0,0,0,0,7,7,7,7,7,7,7,0,7,9,7,7,1,5,16,7,1,5,8,9,10,16,7,1,5,8,9,10,7,1,5,8,9,10,7,1,5,8,9,10,1,5,8,10,1,5,8,9,7,1,5,9,16,16,7,7,1,5,8,9,9,10,10,16,7,7,1,1,1,5,5,5,8,8,8,9,10,8,10,16,7,1,5,8,9,10,8,10,1,5,8,10,16,10,0,8,8,10,16,10,10,10,1,5,8,9,10,10,0,1,1,1,1,1,1,7,1,5,8,9,10,7,9,10,16,7,1,5,8,9,9,10,16,7,1,5,8,9,10,16,7,1,5,8,9,10,5,36,0,0,36,0,0,0,0],"f":"`````````````````````````{{{d{b}}}{{d{{h{f}}}}}}{{{d{j}}}{{d{{h{f}}}}}}{{{d{c}}}{{d{e}}}{}{}}000000{{{d{lc}}}{{d{le}}}{}{}}000000{{{d{n}}}n}{{{d{b}}}b}{{{d{j}}}j}{{{d{A`}}}A`}{{{d{Ab}}}Ab}{{{d{{Ad{c}}}}}{{Ad{c}}}Af}{{{d{c}}{d{le}}}Ah{}{}}00000{{}b}{{}j}{{}A`}{{{d{{Ad{c}}}}{d{{h{f}}}}}{{Aj{A`n}}}Af}{c{{Aj{b}}}Al}{c{{Aj{j}}}Al}{c{{Aj{A`}}}Al}{c{{Aj{Ab}}}Al}{{{d{n}}{d{n}}}An}{{{d{b}}{d{b}}}An}{{{d{j}}{d{j}}}An}{{{d{Ab}}{d{Ab}}}An}{{{d{{B`{c}}}}{d{{h{f}}}}Bb}{{Aj{{Bd{f}}n}}}Af}{{{d{{B`{c}}}}{d{lBf}}}BhAf}{{{d{n}}{d{lBf}}}Bh}0{{{d{b}}{d{lBf}}}Bh}{{{d{j}}{d{lBf}}}{{Aj{AhBj}}}}{{{d{A`}}{d{lBf}}}Bh}{{{d{Ab}}{d{lBf}}}Bh}0{{{d{{Ad{c}}}}{d{lBf}}}BhAf}{{{d{{Ad{c}}}}{d{lBf}}}Bh{BlAf}}{cc{}}{Bnn}11{{{Bd{f}}}b}{{{d{{h{f}}}}}b}{{{Bd{f}}}j}4{{{d{{h{f}}}}}j}{{{C`{{d{{h{f}}}}{d{{h{f}}}}}}}A`}6{{{C`{{Bd{f}}{Bd{f}}}}}A`}77{{jb}A`}{{{d{l{Ad{c}}}}}{{Aj{A`n}}}Af}{ce{}{}}000000{A`{{C`{jb}}}}{{{d{{Ad{c}}}}{d{{h{f}}}}{d{{h{f}}}}{d{{h{f}}}}{d{{h{f}}}}}{{Aj{{B`{c}}n}}}Af}:8{{{Bd{f}}{Bd{f}}}A`}{{AbCbCdCf}{{Ad{c}}}Af}{{{d{l{B`{c}}}}{d{{h{f}}}}{d{{h{f}}}}}{{Aj{{Bd{f}}n}}}Af}{{{d{{Ad{c}}}}{d{{h{f}}}}{d{j}}{d{{h{f}}}}{d{{h{f}}}}{d{{h{f}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{b}}}}}{{Aj{{Bd{f}}n}}}Af}`{{{d{A`}}}{{d{j}}}}{{{d{A`}}}{{d{b}}}}{{{d{{Ad{c}}}}{d{{h{f}}}}{d{j}}{d{{h{f}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{b}}}}{d{{h{f}}}}Bb}{{Aj{{Bd{f}}n}}}Af}4{{{d{l{Ad{c}}}}{d{b}}{d{{h{f}}}}{d{{h{f}}}}{d{{h{f}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{j}}}}}{{Aj{{C`{{Bd{f}}{Bd{f}}}}n}}}Af}{{{d{l{Ad{c}}}}{d{{h{f}}}}}{{Aj{Ahn}}}Af}{{{d{l{Ad{c}}}}{d{b}}{d{{h{f}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{j}}}}{d{{h{f}}}}Bb}{{Aj{{C`{{Bd{f}}{Bd{f}}}}n}}}Af}{{{d{b}}c}AjCj}{{{d{j}}c}AjCj}{{{d{A`}}c}AjCj}{{{d{Ab}}c}AjCj}{{{d{{Ad{c}}}}{d{{h{f}}}}{d{j}}{d{{h{f}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{b}}}}}{{Aj{{B`{c}}n}}}Af}{{{d{l{Ad{c}}}}{d{b}}{d{{h{f}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{j}}}}}{{Aj{{C`{{Bd{f}}{B`{c}}}}n}}}Af}`{{{d{lc}}}{{Aj{{d{b}}Cl}}}Cn}{{{d{lc}}}{{Aj{bCl}}}Cn}{{{d{b}}{d{lc}}}{{Aj{BbCl}}}D`}{{{d{{d{b}}}}{d{lc}}}{{Aj{BbCl}}}D`}{{{d{b}}}Bb}{{{d{{d{b}}}}}Bb}{{{d{c}}}e{}{}}00000{{{d{c}}}Db{}}00{c{{Aj{e}}}{}{}}0000{f{{Aj{Abn}}}}111111111{{{d{c}}}Dd{}}000000{{{d{lj}}}Ah}```{c{{Aj{{Dh{}{{Df{e}}}}e}}}{}{}}{{{d{{h{f}}}}}Db}{{{d{Dj}}}{{Bd{f}}}}{{{Ch{Db}}}{{Bd{f}}}}{{{d{{h{f}}}}}{{Ch{{d{{h{f}}}}}}}}","D":"Hj","p":[[5,"HpkePublicKey",0],[1,"reference"],[1,"u8"],[1,"slice"],[5,"HpkePrivateKey",0],[0,"mut"],[6,"HpkeError",0],[5,"HpkeKeyPair",0],[6,"Mode",0],[5,"Hpke",0],[10,"HpkeCrypto",168],[1,"unit"],[6,"Result",169],[10,"Deserializer",170],[1,"bool"],[5,"Context",0],[1,"usize"],[5,"Vec",171],[5,"Formatter",172],[8,"Result",172],[5,"Error",172],[10,"Debug",172],[6,"Error",173],[1,"tuple"],[6,"KemAlgorithm",174],[6,"KdfAlgorithm",174],[6,"AeadAlgorithm",174],[6,"Option",175],[10,"Serializer",176],[6,"Error",177],[10,"Read",178],[10,"Write",178],[5,"String",179],[5,"TypeId",180],[17,"Error"],[10,"TryFrom",160,181],[1,"str"]],"r":[[162,181]],"b":[[67,"impl-Debug-for-HpkeError"],[68,"impl-Display-for-HpkeError"],[72,"impl-Display-for-Mode"],[73,"impl-Debug-for-Mode"],[74,"impl-Display-for-Hpke%3CCrypto%3E"],[75,"impl-Debug-for-Hpke%3CCrypto%3E"],[80,"impl-From%3CVec%3Cu8%3E%3E-for-HpkePublicKey"],[81,"impl-From%3C%26%5Bu8%5D%3E-for-HpkePublicKey"],[82,"impl-From%3CVec%3Cu8%3E%3E-for-HpkePrivateKey"],[84,"impl-From%3C%26%5Bu8%5D%3E-for-HpkePrivateKey"],[85,"impl-From%3C(%26%5Bu8%5D,+%26%5Bu8%5D)%3E-for-HpkeKeyPair"],[87,"impl-From%3C(Vec%3Cu8%3E,+Vec%3Cu8%3E)%3E-for-HpkeKeyPair"],[122,"impl-Deserialize-for-%26HpkePublicKey"],[123,"impl-Deserialize-for-HpkePublicKey"],[124,"impl-Serialize-for-HpkePublicKey"],[125,"impl-Serialize-for-%26HpkePublicKey"],[126,"impl-Size-for-HpkePublicKey"],[127,"impl-Size-for-%26HpkePublicKey"]],"c":"OjAAAAEAAAAAAAIAEAAAAAYABwAIAA==","e":"OzAAAAEAAGMACwAGAAIAHAAcADoABwBDAAkATgAAAFEAAgBVAAEAWAAAAHQAAwB7ACUAogAAAA=="}]\
+["hpke_rs",{"t":"PPPFPIIIFGFFFPPPPPPPGPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNCNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNREKMHHHH","n":["Auth","AuthPsk","Base","Context","CryptoError","HPKEKeyPair","HPKEPrivateKey","HPKEPublicKey","Hpke","HpkeError","HpkeKeyPair","HpkePrivateKey","HpkePublicKey","InconsistentPsk","InsecurePsk","InsufficientRandomness","InvalidConfig","InvalidInput","MessageLimitReached","MissingPsk","Mode","OpenError","Psk","UnknownMode","UnnecessaryPsk","as_slice","as_slice","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","default","default","default","derive_key_pair","deserialize","deserialize","deserialize","deserialize","eq","eq","eq","eq","export","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_keys","generate_key_pair","into","into","into","into","into","into","into","into_keys","key_schedule","new","new","new","new","open","open","prelude","private_key","public_key","receiver_export","seal","seal","seed","send_export","serialize","serialize","serialize","serialize","setup_receiver","setup_sender","test_util","tls_deserialize","tls_deserialize","tls_serialize","tls_serialize","tls_serialized_len","tls_serialized_len","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","zeroize","Error","HpkeMode","TryFrom","try_from","bytes_to_hex","hex_to_bytes","hex_to_bytes_option","vec_to_option_slice"],"q":[[0,"hpke_rs"],[160,"hpke_rs::prelude"],[164,"hpke_rs::test_util"],[168,"hpke_rs_crypto"],[169,"core::result"],[170,"serde::de"],[171,"alloc::vec"],[172,"core::fmt"],[173,"hpke_rs_crypto::error"],[174,"hpke_rs_crypto::types"],[175,"core::option"],[176,"serde::ser"],[177,"tls_codec"],[178,"std::io"],[179,"alloc::string"],[180,"core::any"],[181,"core::convert"]],"i":[9,9,9,0,7,0,0,0,0,0,0,0,0,7,7,7,7,7,7,7,0,7,9,7,7,1,5,16,7,1,5,8,9,10,16,7,1,5,8,9,10,7,1,5,8,9,10,7,1,5,8,9,10,1,5,8,10,1,5,8,9,7,1,5,9,16,16,7,7,1,5,8,9,9,10,10,16,7,7,1,1,1,5,5,5,8,8,8,9,10,8,10,16,7,1,5,8,9,10,8,10,1,5,8,10,16,10,0,8,8,10,16,10,10,10,1,5,8,9,10,10,0,1,1,1,1,1,1,7,1,5,8,9,10,7,9,10,16,7,1,5,8,9,9,10,16,7,1,5,8,9,10,16,7,1,5,8,9,10,5,36,0,0,36,0,0,0,0],"f":"`````````````````````````{{{d{b}}}{{d{{h{f}}}}}}{{{d{j}}}{{d{{h{f}}}}}}{{{d{c}}}{{d{e}}}{}{}}000000{{{d{lc}}}{{d{le}}}{}{}}000000{{{d{n}}}n}{{{d{b}}}b}{{{d{j}}}j}{{{d{A`}}}A`}{{{d{Ab}}}Ab}{{{d{{Ad{c}}}}}{{Ad{c}}}Af}{{{d{c}}{d{le}}}Ah{}{}}00000{{}b}{{}j}{{}A`}{{{d{{Ad{c}}}}{d{{h{f}}}}}{{Aj{A`n}}}Af}{c{{Aj{b}}}Al}{c{{Aj{j}}}Al}{c{{Aj{A`}}}Al}{c{{Aj{Ab}}}Al}{{{d{n}}{d{n}}}An}{{{d{b}}{d{b}}}An}{{{d{j}}{d{j}}}An}{{{d{Ab}}{d{Ab}}}An}{{{d{{B`{c}}}}{d{{h{f}}}}Bb}{{Aj{{Bd{f}}n}}}Af}{{{d{{B`{c}}}}{d{lBf}}}BhAf}{{{d{n}}{d{lBf}}}Bh}0{{{d{b}}{d{lBf}}}Bh}{{{d{j}}{d{lBf}}}{{Aj{AhBj}}}}{{{d{A`}}{d{lBf}}}Bh}{{{d{Ab}}{d{lBf}}}Bh}0{{{d{{Ad{c}}}}{d{lBf}}}BhAf}{{{d{{Ad{c}}}}{d{lBf}}}Bh{BlAf}}{cc{}}{Bnn}1{{{Bd{f}}}b}2{{{d{{h{f}}}}}b}{{{Bd{f}}}j}{{{d{{h{f}}}}}j}5{{{C`{{d{{h{f}}}}{d{{h{f}}}}}}}A`}6{{{C`{{Bd{f}}{Bd{f}}}}}A`}77{{jb}A`}{{{d{l{Ad{c}}}}}{{Aj{A`n}}}Af}{ce{}{}}000000{A`{{C`{jb}}}}{{{d{{Ad{c}}}}{d{{h{f}}}}{d{{h{f}}}}{d{{h{f}}}}{d{{h{f}}}}}{{Aj{{B`{c}}n}}}Af}:8{{{Bd{f}}{Bd{f}}}A`}{{AbCbCdCf}{{Ad{c}}}Af}{{{d{l{B`{c}}}}{d{{h{f}}}}{d{{h{f}}}}}{{Aj{{Bd{f}}n}}}Af}{{{d{{Ad{c}}}}{d{{h{f}}}}{d{j}}{d{{h{f}}}}{d{{h{f}}}}{d{{h{f}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{b}}}}}{{Aj{{Bd{f}}n}}}Af}`{{{d{A`}}}{{d{j}}}}{{{d{A`}}}{{d{b}}}}{{{d{{Ad{c}}}}{d{{h{f}}}}{d{j}}{d{{h{f}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{b}}}}{d{{h{f}}}}Bb}{{Aj{{Bd{f}}n}}}Af}4{{{d{l{Ad{c}}}}{d{b}}{d{{h{f}}}}{d{{h{f}}}}{d{{h{f}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{j}}}}}{{Aj{{C`{{Bd{f}}{Bd{f}}}}n}}}Af}{{{d{l{Ad{c}}}}{d{{h{f}}}}}{{Aj{Ahn}}}Af}{{{d{l{Ad{c}}}}{d{b}}{d{{h{f}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{j}}}}{d{{h{f}}}}Bb}{{Aj{{C`{{Bd{f}}{Bd{f}}}}n}}}Af}{{{d{b}}c}AjCj}{{{d{j}}c}AjCj}{{{d{A`}}c}AjCj}{{{d{Ab}}c}AjCj}{{{d{{Ad{c}}}}{d{{h{f}}}}{d{j}}{d{{h{f}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{b}}}}}{{Aj{{B`{c}}n}}}Af}{{{d{l{Ad{c}}}}{d{b}}{d{{h{f}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{{h{f}}}}}}{Ch{{d{j}}}}}{{Aj{{C`{{Bd{f}}{B`{c}}}}n}}}Af}`{{{d{lc}}}{{Aj{{d{b}}Cl}}}Cn}{{{d{lc}}}{{Aj{bCl}}}Cn}{{{d{{d{b}}}}{d{lc}}}{{Aj{BbCl}}}D`}{{{d{b}}{d{lc}}}{{Aj{BbCl}}}D`}{{{d{{d{b}}}}}Bb}{{{d{b}}}Bb}{{{d{c}}}e{}{}}00000{{{d{c}}}Db{}}00{c{{Aj{e}}}{}{}}00000{f{{Aj{Abn}}}}11111111{{{d{c}}}Dd{}}000000{{{d{lj}}}Ah}```{c{{Aj{{Dh{}{{Df{e}}}}e}}}{}{}}{{{d{{h{f}}}}}Db}{{{d{Dj}}}{{Bd{f}}}}{{{Ch{Db}}}{{Bd{f}}}}{{{d{{h{f}}}}}{{Ch{{d{{h{f}}}}}}}}","D":"Hj","p":[[5,"HpkePublicKey",0],[1,"reference"],[1,"u8"],[1,"slice"],[5,"HpkePrivateKey",0],[0,"mut"],[6,"HpkeError",0],[5,"HpkeKeyPair",0],[6,"Mode",0],[5,"Hpke",0],[10,"HpkeCrypto",168],[1,"unit"],[6,"Result",169],[10,"Deserializer",170],[1,"bool"],[5,"Context",0],[1,"usize"],[5,"Vec",171],[5,"Formatter",172],[8,"Result",172],[5,"Error",172],[10,"Debug",172],[6,"Error",173],[1,"tuple"],[6,"KemAlgorithm",174],[6,"KdfAlgorithm",174],[6,"AeadAlgorithm",174],[6,"Option",175],[10,"Serializer",176],[6,"Error",177],[10,"Read",178],[10,"Write",178],[5,"String",179],[5,"TypeId",180],[17,"Error"],[10,"TryFrom",160,181],[1,"str"]],"r":[[162,181]],"b":[[67,"impl-Display-for-HpkeError"],[68,"impl-Debug-for-HpkeError"],[72,"impl-Debug-for-Mode"],[73,"impl-Display-for-Mode"],[74,"impl-Display-for-Hpke%3CCrypto%3E"],[75,"impl-Debug-for-Hpke%3CCrypto%3E"],[79,"impl-From%3CVec%3Cu8%3E%3E-for-HpkePublicKey"],[81,"impl-From%3C%26%5Bu8%5D%3E-for-HpkePublicKey"],[82,"impl-From%3CVec%3Cu8%3E%3E-for-HpkePrivateKey"],[83,"impl-From%3C%26%5Bu8%5D%3E-for-HpkePrivateKey"],[85,"impl-From%3C(%26%5Bu8%5D,+%26%5Bu8%5D)%3E-for-HpkeKeyPair"],[87,"impl-From%3C(Vec%3Cu8%3E,+Vec%3Cu8%3E)%3E-for-HpkeKeyPair"],[122,"impl-Deserialize-for-%26HpkePublicKey"],[123,"impl-Deserialize-for-HpkePublicKey"],[124,"impl-Serialize-for-%26HpkePublicKey"],[125,"impl-Serialize-for-HpkePublicKey"],[126,"impl-Size-for-%26HpkePublicKey"],[127,"impl-Size-for-HpkePublicKey"]],"c":"OjAAAAEAAAAAAAIAEAAAAAYABwAIAA==","e":"OzAAAAEAAGMADAAGAAIAHAAcADoABwBDAAkATgAAAFAAAABSAAIAVgAAAFgAAAB0AAMAewAlAKIAAAA="}]\
]'));
if (typeof exports !== 'undefined') exports.searchIndex = searchIndex;
else if (window.initSearch) window.initSearch(searchIndex);