From 94d9c563a45f64094e862803673a4668a953dbc1 Mon Sep 17 00:00:00 2001 From: Cynthia Date: Tue, 24 Sep 2024 06:28:40 +0200 Subject: [PATCH] chore!: align to draft 16, update dependencies (#365) * chore!: align to draft 16, update dependencies * chore: fix toml formatting --- .github/workflows/main.yml | 4 +- CHANGELOG.md | 7 + Cargo.toml | 7 +- README.md | 4 +- deny.toml | 41 +- src/key_exchange/tripledh.rs | 6 +- src/lib.rs | 2 +- src/tests/full_test_vectors.rs | 1080 +++++++++++++++--------------- src/tests/opaque_vectors.rs | 198 +++--- src/tests/test_opaque_vectors.rs | 19 +- 10 files changed, 675 insertions(+), 693 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 4d0eb49c..92e25bd0 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -236,7 +236,7 @@ jobs: - name: Install Taplo # Adding the --locked flag because of # https://github.com/tamasfe/taplo/issues/242 - run: cargo install taplo-cli --locked + run: cargo install taplo-cli --locked - name: Checkout sources uses: actions/checkout@main @@ -249,4 +249,4 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@main - - uses: EmbarkStudios/cargo-deny-action@v1 + - uses: EmbarkStudios/cargo-deny-action@v2 diff --git a/CHANGELOG.md b/CHANGELOG.md index 3c956d41..23239ec9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## 3.0.0-pre.6 (TBD) +* Synced implementation with draft-irtf-cfrg-opaque-16 + * **Breaking: protocol context string changed from `RFCXXXX` to `OPAQUEv1-`** +* Dropped unmaintained json crate in favor of serde_json +* Updated dependencies + ## 3.0.0-pre.5 (September 18, 2024) * Increased MSRV to 1.74 * Updated voprf dependency @@ -15,6 +21,7 @@ ## 3.0.0-pre.2 (March 14, 2023) * Updated VOPRF to draft 19 + * **Breaking: backwards-incompatible changes introduced in OPRF protocol** * Added P384 testing support * Increased MSRV to 1.65 * Updating dependencies diff --git a/Cargo.toml b/Cargo.toml index b520fd8e..652e11b7 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -9,7 +9,7 @@ name = "opaque-ke" readme = "README.md" repository = "https://github.com/facebook/opaque-ke" rust-version = "1.74" -version = "3.0.0-pre.5" +version = "3.0.0-pre.6" [features] argon2 = ["dep:argon2"] @@ -38,9 +38,9 @@ rand = { version = "0.8", default-features = false } serde = { version = "1", default-features = false, features = [ "derive", ], optional = true } -subtle = { version = "2.3", default-features = false } +subtle = { version = "2.6", default-features = false } voprf = { version = "0.5", default-features = false, features = ["danger"] } -zeroize = { version = "1.5", features = ["zeroize_derive"] } +zeroize = { version = "1.8", features = ["zeroize_derive"] } [target.'cfg(target_arch = "wasm32")'.dependencies] getrandom = { version = "0.2", features = ["js"], optional = true } @@ -50,7 +50,6 @@ bincode = "1" chacha20poly1305 = "0.10" criterion = "0.5" hex = "0.4" -json = "0.12" p256 = { version = "0.13", default-features = false, features = [ "hash2curve", "voprf", diff --git a/README.md b/README.md index a9c82ee7..592e5aa0 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,13 @@ ## The OPAQUE key exchange protocol ![Build Status](https://github.com/facebook/opaque-ke/workflows/Rust%20CI/badge.svg) -[OPAQUE](https://eprint.iacr.org/2018/163.pdf) is an asymmetric password-authenticated key exchange protocol. It allows a client to authenticate to a server using a password, without ever having to expose the plaintext password to the server. +[OPAQUE](https://eprint.iacr.org/2018/163.pdf) is an augmented password-authenticated key exchange protocol. It allows a client to authenticate to a server using a password, without ever having to expose the plaintext password to the server. This implementation is based on the [Internet Draft for OPAQUE](https://github.com/cfrg/draft-irtf-cfrg-opaque). Background ---------- -Asymmetric Password Authenticated Key Exchange (aPAKE) protocols are designed to provide password authentication and mutually authenticated key exchange without relying on PKI (except during user/password registration) and without disclosing passwords to servers or other entities other than the client machine. +Augmented Password Authenticated Key Exchange (aPAKE) protocols are designed to provide password authentication and mutually authenticated key exchange without relying on PKI (except during user/password registration) and without disclosing passwords to servers or other entities other than the client machine. OPAQUE is a PKI-free aPAKE that is secure against pre-computation attacks and capable of using a secret salt. diff --git a/deny.toml b/deny.toml index 74127744..8609892f 100644 --- a/deny.toml +++ b/deny.toml @@ -9,6 +9,7 @@ # The values provided in this template are the default values that will be used # when any section or field is not specified in your own configuration +[graph] # If 1 or more target triples (and optionally, target_features) are specified, # only the specified targets will be checked when running `cargo deny check`. # This means, if a particular package is only ever used as a target specific @@ -17,6 +18,7 @@ # this list would mean the nix crate, as well as any of its exclusive # dependencies not shared by any other crates, would be ignored, as the target # list here is effectively saying which targets you are building for. +all-features = true targets = [ # The triple can be any string, but only the target triples built in to # rustc (as of 1.40) can be checked against actual config expressions @@ -35,16 +37,8 @@ targets = [ db-path = "~/.cargo/advisory-db" # The url of the advisory database to use db-urls = ["https://github.com/rustsec/advisory-db"] -# The lint level for security vulnerabilities -vulnerability = "deny" -# The lint level for unmaintained crates -unmaintained = "warn" # The lint level for crates that have been yanked from their source registry yanked = "warn" -# The lint level for crates with security notices. Note that as of -# 2019-12-17 there are no security notice advisories in -# https://github.com/rustsec/advisory-db -notice = "deny" # A list of advisory IDs to ignore. Note that ignored advisories will still # output a note when they are encountered. ignore = [ @@ -64,47 +58,26 @@ ignore = [ # More documentation for the licenses section can be found here: # https://embarkstudios.github.io/cargo-deny/checks/licenses/cfg.html [licenses] -# The lint level for crates which do not have a detectable license -unlicensed = "deny" # List of explictly allowed licenses # See https://spdx.org/licenses/ for list of possible licenses # [possible values: any SPDX 3.7 short identifier (+ optional exception)]. allow = [ - #"MIT", - #"Apache-2.0", + "MIT", + "BSD-3-Clause", + "Apache-2.0", #"Apache-2.0 WITH LLVM-exception", ] -# List of explictly disallowed licenses -# See https://spdx.org/licenses/ for list of possible licenses -# [possible values: any SPDX 3.7 short identifier (+ optional exception)]. -deny = [ - #"Nokia", -] -# Lint level for licenses considered copyleft -copyleft = "warn" -# Blanket approval or denial for OSI-approved or FSF Free/Libre licenses -# * both - The license will be approved if it is both OSI-approved *AND* FSF -# * either - The license will be approved if it is either OSI-approved *OR* FSF -# * osi-only - The license will be approved if is OSI-approved *AND NOT* FSF -# * fsf-only - The license will be approved if is FSF *AND NOT* OSI-approved -# * neither - This predicate is ignored and the default lint level is used -allow-osi-fsf-free = "neither" -# Lint level used when no other predicates are matched -# 1. License isn't in the allow or deny lists -# 2. License isn't copyleft -# 3. License isn't OSI/FSF, or allow-osi-fsf-free = "neither" -default = "allow" # The confidence threshold for detecting a license from license text. # The higher the value, the more closely the license text must be to the # canonical license text of a valid SPDX license file. # [possible values: any between 0.0 and 1.0]. -confidence-threshold = 0.8 +confidence-threshold = 0.95 # Allow 1 or more licenses on a per-crate basis, so that particular licenses # aren't accepted for every possible crate as with the normal allow list exceptions = [ # Each entry is the crate and version constraint, and its specific allow # list - #{ allow = ["Zlib"], name = "adler32", version = "*" }, + { allow = ["Unicode-DFS-2016"], name = "unicode-ident", version = "*" }, ] # Some crates don't have (easily) machine readable licensing information, diff --git a/src/key_exchange/tripledh.rs b/src/key_exchange/tripledh.rs index 9316084a..e9a3c009 100644 --- a/src/key_exchange/tripledh.rs +++ b/src/key_exchange/tripledh.rs @@ -38,7 +38,7 @@ use crate::serialization::{Input, UpdateExt}; /////////////// pub(crate) type NonceLen = U32; -static STR_RFC: &[u8] = b"RFCXXXX"; +static STR_CONTEXT: &[u8] = b"OPAQUEv1-"; static STR_CLIENT_MAC: &[u8] = b"ClientMAC"; static STR_HANDSHAKE_SECRET: &[u8] = b"HandshakeSecret"; static STR_SERVER_MAC: &[u8] = b"ServerMAC"; @@ -215,7 +215,7 @@ where let server_nonce = generate_nonce::(rng); let mut transcript_hasher = D::new() - .chain(STR_RFC) + .chain(STR_CONTEXT) .chain_iter( Input::::from(context) .map_err(ProtocolError::into_custom)? @@ -278,7 +278,7 @@ where context: &[u8], ) -> Result, ProtocolError> { let mut transcript_hasher = D::new() - .chain(STR_RFC) + .chain(STR_CONTEXT) .chain_iter(Input::::from(context)?.iter()) .chain_iter(id_u) .chain_iter(serialized_credential_request) diff --git a/src/lib.rs b/src/lib.rs index 890a20e9..30991355 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -6,7 +6,7 @@ // of this source tree. You may select, at your option, one of the above-listed // licenses. -//! An implementation of the OPAQUE asymmetric password authentication key +//! An implementation of the OPAQUE augmented password authentication key //! exchange protocol //! //! Note: This implementation is in sync with [draft-irtf-cfrg-opaque-16](https://datatracker.ietf.org/doc/draft-irtf-cfrg-opaque/16/), diff --git a/src/tests/full_test_vectors.rs b/src/tests/full_test_vectors.rs index e576936f..cab0b134 100644 --- a/src/tests/full_test_vectors.rs +++ b/src/tests/full_test_vectors.rs @@ -12,731 +12,731 @@ #[cfg(feature = "ristretto255")] pub static TEST_VECTOR_RISTRETTO255: &str = r#" { - "client_s_pk": "a620d65702df40e354acb6ad81c4fada7474925dcfb074c4730e4605e547ec63", - "client_s_sk": "59eeeca55a98beaf8a20bbbcf32c342b66159168aead7afd976d1705b0608109", - "client_e_pk": "2cbc18161ce1295ad3395aa5f8de5771efab1bf1481f707df141c644bafbdc03", - "client_e_sk": "98e2d6b8bee2b02f228c625d22db01c2834dcf72993ff04ea166db64e8885f04", - "server_s_pk": "b88d1a8d48580e66c70ccb28fcca0b531647e53dc0f363a3cfbfb2bca0d6da3d", - "server_s_sk": "df3376f1654724967de4ed830d2e84df92d14d96fbe28e25c79657ec3d89ff0d", - "server_e_pk": "c8b10a069c7e440cf96afbf1e259bd5577806d8fb26e2dd7b2916d902cfeb472", - "server_e_sk": "100aa4dafb480e8c6fd9fd7fdb56372891b360273ecc114a52396a91b9d4790c", - "fake_sk": "d1bb507a8b89aafbd1120d70e8a07cc3456e1f9286edbf89282ec04b305d900a", + "client_s_pk": "fc77b9bc2f11a6cb5f5fcc62c751aafc6773850cd0f67f68e218a38a829bab3f", + "client_s_sk": "684a291d7e6fc292e9833d6db5c63d72c6e480544c33e316b6b5d7bfe497860f", + "client_e_pk": "70ffb8b02bd859f9d4303ecdcf867908160079803e4404cb185884088c26de73", + "client_e_sk": "d5698612260e011536f03a3973ff18157ac5f23f8ea50148385b81e00c44fc00", + "server_s_pk": "6842045212586211c1b4b5904a38f3be1f8196987e15b5061b6876fef148c06f", + "server_s_sk": "f742a225dbed48fbd8f897e50b6c0f2f0bb6f898d1274a7e618bc07d16006303", + "server_e_pk": "189f5f5cca06db81213f006fbcac2fd6ec745d43e3864fa3a63eb98224ee873e", + "server_e_sk": "d79c582620bd293aa24312dd62e5252813cf55b25594423ae531462cf275190b", + "fake_sk": "3bacb246dfdf85f6c7e1be3bf10fd3d9078e846a8a0c7a033073dae7ab4e8b0f", "credential_identifier": "637265644964656e746966696572", "id_u": "696455", "id_s": "696453", "password": "70617373776f7264", - "blinding_factor": "fec9b267bdc3978d9ee7c9e4a92d1ef5116b106385913c4fe8f75c27112f6c0d", - "oprf_seed": "71bd7b5a640289371bb87d27655d3a8a35da6ac6055edaf069ed26ecc947842bf99adaa61ef46ff7cf3e423b7af1a705cb254f2e1fe048d1266e137e8c350391", - "masking_nonce": "d8ab3033302df240345af9c0753df03114bf2ed742fdf2a2d89600bffd8638dbea78aeb5a71d6129b560c8308c4a18dc05b3a9b228a8de31d139ac3d86e8f9bb", - "envelope_nonce": "d62e6d5574c8c647470733d4e53094e8475ad6b4954b5a20c475b0bbb33013fc", - "client_nonce": "78ad0a1bc925acae5d28ad271f240761f194d3deaa8b9aeb75223efb91b04d5a", - "server_nonce": "ad6f1ffcc7b61d1f4633e3cb8b774493d4cd6dea664063672c97a1aa43bdb475", + "blinding_factor": "4e9933f88fbe664c233210cb54bc147813aadd67bb55c58c967ad2f4b794cb08", + "oprf_seed": "32806870972f3e73ade70256407c39ffa20bfe92f1ed3347e956c502c26d507ce522276a3674bc686db0882b51769f36c5ff6c2a7e028da73f728ccceac6ab11", + "masking_nonce": "cf807c73984cfbc61450c6d6d8d7cb3957da19fd0cb3294d753c9d806d7626ca8f9d5cc32c79170e937019a8d737754c5d643fb9cbc8dc3535b4adbb60a4ec3a", + "envelope_nonce": "094e46cd00f01d8303e9a0cfe00c9b75bbee47de2c6b7d74b915326d3605e4ae", + "client_nonce": "5c943be25f1c973ea62d5f4ff8b1fbcec2c416f2320ad0d58ba2fd0aae0eb8af", + "server_nonce": "2cb0b4e550b8db6c1488d25786ef1a28d9eb6cae150abb6a2e69b9c4ef12009a", "context": "636f6e74657874", - "registration_request": "06b58b47baefacb7bdd30b41922f569bc3fe1b3dfbf03aad0b71a5accd7d791e", - "registration_response": "2c4e0dffac466525e3cdc58be647053e2447019ec374609f290ee1c9f2aa294ab88d1a8d48580e66c70ccb28fcca0b531647e53dc0f363a3cfbfb2bca0d6da3d", - "registration_upload": "9ab9a041b38a44b59dd992ae553bb0bcddecc23685b7339d46260aacbb6f862571f75f437f4d28022298d467f5b19f7a2fd417f27710b8e0f136c94a4b06173764492bdcfd42957a1842da57e1de46e9aab09e2b4481c9e51555bcd2ba7b659d59eeeca55a98beaf8a20bbbcf32c342b66159168aead7afd976d1705b06081098e41574ff6315f8b799bdd178c5fb2544b7d2429065fdd4906f596048fdc91a72c49902ce0eabf2524c423a084847d62a9d795eb6410611babd167a9c34241fd", - "credential_request": "06b58b47baefacb7bdd30b41922f569bc3fe1b3dfbf03aad0b71a5accd7d791e78ad0a1bc925acae5d28ad271f240761f194d3deaa8b9aeb75223efb91b04d5afc2038b7bd7f19aaf27a81e6393414df49d27e4afa1a3a990476bf201aa21f42", - "credential_response": "2c4e0dffac466525e3cdc58be647053e2447019ec374609f290ee1c9f2aa294ad8ab3033302df240345af9c0753df03114bf2ed742fdf2a2d89600bffd8638dbea34b31bfd780365edb40b8fc30a0885648e777c55eba23e94172b03862b626cf86153494d9a352018c168dc529428226691dd3d3e703db2d7384c94ac83cc15ad15e0765dc6e6a72a715f6587abcf2f64fbe9b2a94e96304507ec23d9853b722c0fb43f0c87e467b8689e0c3c9d5a82b485998adb099b1eb051c8af37467c99100aa4dafb480e8c6fd9fd7fdb56372891b360273ecc114a52396a91b9d4790ca0b3cd246332623f2fbd86b2213a88959f1242ad68183c977dc937425a2bea127edd5d3323d7135f5fab5f4b1d191a5dd94c4e760fc930af867e2c74f796d075b4aab76cee1bdb8460649f30b464b52871ed552aa85846cf43f9ecb804971c85", - "credential_finalization": "eab00a0d24f05c0bdab1c026411a72c6bf6a778e69abf9d0c4b32d92447e316d42694a46fb8f2fdc7f28f06a3c67feb1dc0812cb3dce467dc5f63a61267c565a", - "client_registration_state": "fec9b267bdc3978d9ee7c9e4a92d1ef5116b106385913c4fe8f75c27112f6c0d06b58b47baefacb7bdd30b41922f569bc3fe1b3dfbf03aad0b71a5accd7d791e", - "client_login_state": "fec9b267bdc3978d9ee7c9e4a92d1ef5116b106385913c4fe8f75c27112f6c0d06b58b47baefacb7bdd30b41922f569bc3fe1b3dfbf03aad0b71a5accd7d791e78ad0a1bc925acae5d28ad271f240761f194d3deaa8b9aeb75223efb91b04d5afc2038b7bd7f19aaf27a81e6393414df49d27e4afa1a3a990476bf201aa21f42730e2239b2ecad7639f03b3a6a82126096a197d481a8fc2bb6106754294e0d0578ad0a1bc925acae5d28ad271f240761f194d3deaa8b9aeb75223efb91b04d5a", - "server_login_state": "589e137bd0be129798d0a1caf09f768d44877a63a0d7fbe9943c6403e9458c75d0e211d4b65847e44fb61e108b1d24261876891e6eb7ec1b53727be721f7b398f5d5b8c0fdeda829a545ce50509dbc1d08d85cdc3d02c72a24c2cdab0a68084ba6cc9784abaa87a46125321c1320b2465658daf0759948c14e4fa019fb4d2859b195a99f00c34f4723db8a2238966e205513bb961629feb7c5bfdbd49ac0234fd0c0307b7b06aee055b95534ff4267d3bde43b65c025d73da564b51702fcf395", - "password_file": "9ab9a041b38a44b59dd992ae553bb0bcddecc23685b7339d46260aacbb6f862571f75f437f4d28022298d467f5b19f7a2fd417f27710b8e0f136c94a4b06173764492bdcfd42957a1842da57e1de46e9aab09e2b4481c9e51555bcd2ba7b659d59eeeca55a98beaf8a20bbbcf32c342b66159168aead7afd976d1705b06081098e41574ff6315f8b799bdd178c5fb2544b7d2429065fdd4906f596048fdc91a72c49902ce0eabf2524c423a084847d62a9d795eb6410611babd167a9c34241fd", - "export_key": "1142ad5ec15e2b3e22345c5f076e147abe77f387a8f414b14b2efd4b471bd7dddecbcfc88688b935cde04c3a19fed3b5adfdcf61b8f40a6d478db75539dcaaa7", - "session_key": "b195a99f00c34f4723db8a2238966e205513bb961629feb7c5bfdbd49ac0234fd0c0307b7b06aee055b95534ff4267d3bde43b65c025d73da564b51702fcf395" + "registration_request": "7ced598f535a8be2e535b5d3889a00d45be95fd0e4be9dfe8d364a0160e40c68", + "registration_response": "3ca1306c9f463ff631a545f054f87b811dbdfca38bbd2eec068c49525b56631f6842045212586211c1b4b5904a38f3be1f8196987e15b5061b6876fef148c06f", + "registration_upload": "96b55d62b6de92fb98a63044def74fc5c3726d7950cd4fae3f8eb52a712f766530affe6bff9fd787e90e3b909c91dfed98a6e26eacbebb3bcb17647d302f2e22efe4c7fb6c0dd8cd3a88a8a7b1064d13671a11ff90410a18b4d1b5f489538449684a291d7e6fc292e9833d6db5c63d72c6e480544c33e316b6b5d7bfe497860f47c0aa092cbcaa30bb9fa38746197f1b439ae93e59840a8b39cc68eda95ba5440080e18c695dfeaad9824f0e7d2d333857c8c209940ffbf75232c2d13073d49c", + "credential_request": "7ced598f535a8be2e535b5d3889a00d45be95fd0e4be9dfe8d364a0160e40c685c943be25f1c973ea62d5f4ff8b1fbcec2c416f2320ad0d58ba2fd0aae0eb8afde7f8860475fcbd9ead0e79bf8602e1afca571e8dea7c7fcc4230dd2cc049526", + "credential_response": "3ca1306c9f463ff631a545f054f87b811dbdfca38bbd2eec068c49525b56631fcf807c73984cfbc61450c6d6d8d7cb3957da19fd0cb3294d753c9d806d7626ca06cf55c45d6f2e40696c70658b4ad76a7d2882022914e2c439ad59ad3dceac8fe050832d60f5349c3d6e577ff3ea0135fbfcdf01011ed295584551a15502f12f83adb5fd6155247bf5d215ca9aedfa568829980c2807989ddab090aed145acc1a5ca2c2af251e9602f269513cee154ecca4541789fc484025fb624723a20c37bd79c582620bd293aa24312dd62e5252813cf55b25594423ae531462cf275190bd609666ec21b2fe1424f72f68674f96057e86b7a55c13a34e045e8cd7873b52155789161401b07af89de60db416ceb9e596f7c1d1c0e9a7fc7aaff1a3464a9263c379d74ce7a46131d5b8590a47d73fa5133dcf4da015a0d8cd6a10021826184", + "credential_finalization": "72d3592ec1a218f5e64bd8f6143f7c174ee8edfa0df3f81d1171f7795d192c6a0ca7c965880a5c37c0a0deb167f71216bfe60f82a737d6ab675dfc9b9f9e849c", + "client_registration_state": "4e9933f88fbe664c233210cb54bc147813aadd67bb55c58c967ad2f4b794cb087ced598f535a8be2e535b5d3889a00d45be95fd0e4be9dfe8d364a0160e40c68", + "client_login_state": "4e9933f88fbe664c233210cb54bc147813aadd67bb55c58c967ad2f4b794cb087ced598f535a8be2e535b5d3889a00d45be95fd0e4be9dfe8d364a0160e40c685c943be25f1c973ea62d5f4ff8b1fbcec2c416f2320ad0d58ba2fd0aae0eb8afde7f8860475fcbd9ead0e79bf8602e1afca571e8dea7c7fcc4230dd2cc04952645218d0d46bf5a32a94a17801caa20487c581f7f4498782dce94f6ad7b1079045c943be25f1c973ea62d5f4ff8b1fbcec2c416f2320ad0d58ba2fd0aae0eb8af", + "server_login_state": "0e34eb701774ad3400db7bd36c7ac00106cdde39a7660734099fcc68ebf2855c086dafe242a166afdc8f577b4c632b89477312435c978e5dbb089d3eb40b832edb3a1f3d2b71c97cd4de71a25ba5cb6a395d2fcc2c0232bb13efdb138dcc88d00bfce6478ea8f5b50350aa90fec89a668d9c20316ad4fc9741df51cf5b5fddc630dc4ef6e7e0cd482b173a1aca405d57807b658fd3f8652a77eb07815ed252338d5577ac562349c383e01776531643e5680dc8d3fad52a1e1025cad72a00096e", + "password_file": "96b55d62b6de92fb98a63044def74fc5c3726d7950cd4fae3f8eb52a712f766530affe6bff9fd787e90e3b909c91dfed98a6e26eacbebb3bcb17647d302f2e22efe4c7fb6c0dd8cd3a88a8a7b1064d13671a11ff90410a18b4d1b5f489538449684a291d7e6fc292e9833d6db5c63d72c6e480544c33e316b6b5d7bfe497860f47c0aa092cbcaa30bb9fa38746197f1b439ae93e59840a8b39cc68eda95ba5440080e18c695dfeaad9824f0e7d2d333857c8c209940ffbf75232c2d13073d49c", + "export_key": "d3dbaf17efe61cd509198aa308bc527a6e1a6d0da3062024af7e7c456a19c19c816d81714dfcba8329ee470d5ca5c3837b8f35e2fefb9b195423a045fbc066b8", + "session_key": "30dc4ef6e7e0cd482b173a1aca405d57807b658fd3f8652a77eb07815ed252338d5577ac562349c383e01776531643e5680dc8d3fad52a1e1025cad72a00096e" } "#; #[cfg(feature = "ristretto255")] pub static TEST_VECTOR_RISTRETTO255_P256: &str = r#" { - "client_s_pk": "9847dfe839a541e14a25fa1ec51d7270c4e1d89165dee7ac84bf140baac80c0e", - "client_s_sk": "ff3f3c9a3038cbe239dbabb1826da03defbb9b301c81c7ad1bce3f40f1510401", - "client_e_pk": "7aec87c1531f02e545f30279f32212a0fc5689777b30d53e0b65259540120934", - "client_e_sk": "8d9e81dac5ec614a57677a3d6bb7a80130c4fadb03544d33351ec89f81b8e00e", - "server_s_pk": "ce59428b7ab9bfacc86691e92060e896396c42f436399f1e0629812fc465aa58", - "server_s_sk": "3938c661c536121cde0bcae75b668451dc0414851e1c8940eb199147cc3c8806", - "server_e_pk": "5acea7360cd0abbdf2373293d96e4f02b2e9f19cf6c466cb78de9a2ecaf9854e", - "server_e_sk": "d9733f6008f0b6bffb94788e5f70f62f611b40cc9e89dd887c0ecd2455895802", - "fake_sk": "9444f1926f6e8c804693497d5e1484840e83f057f36d27974d3c167312b77d0b", + "client_s_pk": "c861d8d4c51306268a9d22c34e1bb130a6bb2163d6419c60ecabbe45bb55dc1f", + "client_s_sk": "42f86ed763d77c7865b62c555fa02ae19d36c352c985cfb0d86d691a66b30608", + "client_e_pk": "b8b7c5ed34974e7058fd48eaaecbe2f851e420b8932d25ce056b5d2d81ddc54d", + "client_e_sk": "88f05d9c2f7209fc1fd10812662ce09f9388cc3a60aae200b3c2aadfcba3d20c", + "server_s_pk": "b2cd20226244f144020e7d8e44e61d9bd452220992e99303e960d9738c3d8560", + "server_s_sk": "8fd913281919aa2a0d8689c24426eb44dae1c317a0d8f779dc1dfb987d99fc02", + "server_e_pk": "726ac0140ed8b9b8ffbaedd02f1e8aed1d1df120ed6b5cd9f2ab9e702be6ba0e", + "server_e_sk": "cc6d6d643303a113e3067188186f170b5f4aa050562ff0e2e68e8bc69b07e107", + "fake_sk": "8101b7e9010335f036f0a0f02d29fe1d2034d3508ef296dd115eda3acc80e20e", "credential_identifier": "637265644964656e746966696572", "id_u": "696455", "id_s": "696453", "password": "70617373776f7264", - "blinding_factor": "b30684b4107d4569c6c807ffc4f1bc5f938279c0805e379b21384900fc3aadf9", - "oprf_seed": "0f34cba75ce41fc665b769694ccf4ade566899b36afe31cd1eb9cabb0ec41097", - "masking_nonce": "1a46dea2ee42224fd1bfe230c7f9e406b5b1f9bc2a64176b9532951ee83903c92cc103e94a0f2e27d78cad28785f1efa5fe6dded1f0ee3ba4d4c138f82a5e96f", - "envelope_nonce": "6b0ef9fe36c4aa1f84b1e67e8aee9a13b1ff6206023eb309694b2d9f6f8afd8b", - "client_nonce": "b7d4f2cc1ea339a41064a8bcfe5c37442b28adc362fcfa4d312456a1d22c4e35", - "server_nonce": "e3d27468701780f4d4fd7fd633a9c071a99114c9ab279824a33986cd1fc05118", + "blinding_factor": "0353158271880fb21a95fa5dd4b85372fd12f5f8bad57eb7270200bc86175c80", + "oprf_seed": "4d89dffb81f2c432ad7ebd56d63b0ba08a319f6a178e2d8142ed0fc1de81cf62", + "masking_nonce": "cf474ff841b5d4630e10e589ba63ec4bd2678aebf8e93176017b58eaef13fb3013707665c1fbb18a3289ca95a0336a6432119e6e6c1add52841ec277aadab499", + "envelope_nonce": "c19aa2a13664bf86570cdbfdaf732657baaf43107bd85c927039c57524cc6046", + "client_nonce": "fa80d7c14fc99c939bb9662a46fd5802bbc1eae0f036118857973a26a9fb6aad", + "server_nonce": "f2838976aefff3acf66e5b0209a757280165181bf73a05ac1bc6fee13cea76cd", "context": "636f6e74657874", - "registration_request": "03d19a2fe940efb6ead9a934b8bd70b5975f7cf6abf6c2d04ea62d4b3119755749", - "registration_response": "02054d0800d054787bd74c8c1282b05ad9cc029516e86f48b06f2d4530d940459bce59428b7ab9bfacc86691e92060e896396c42f436399f1e0629812fc465aa58", - "registration_upload": "84191d318db400be4247a1d2a8d5561cc858ad1ec1a445fd7f0b01498b52112cb3254a4d18e9bd9c093ad574e90ffdb674d7e29cb05cda39b4932195823ebafeff3f3c9a3038cbe239dbabb1826da03defbb9b301c81c7ad1bce3f40f151040141b6c365a26dee6daebff3e1d8ce63f1347843a1bc97a884a8aa96a815aa219e", - "credential_request": "03d19a2fe940efb6ead9a934b8bd70b5975f7cf6abf6c2d04ea62d4b3119755749b7d4f2cc1ea339a41064a8bcfe5c37442b28adc362fcfa4d312456a1d22c4e35e4e7f2de4c2b83b1b2362fc43d0582c5dd8d7368da1c9944d4a999a3dbe87d19", - "credential_response": "02054d0800d054787bd74c8c1282b05ad9cc029516e86f48b06f2d4530d940459b1a46dea2ee42224fd1bfe230c7f9e406b5b1f9bc2a64176b9532951ee83903c9a7f1c0c3e5a32d38f9df22bdb1264d1202a84e88eacfcb81ae0a9374fdd999ab14748ffe61d5705f54e8de25c42a335767ab423db011500b878a231b0046d2ea12e31d1a25c819cde1d534a91a61119b64b4f5cda165e6b51cd4169c7d4b79efd9733f6008f0b6bffb94788e5f70f62f611b40cc9e89dd887c0ecd2455895802f0cbeb7ea1fce5905956d98f86d33397f674e79c10431cfd4e249838cdea0f4b7bcfcd5210ab8ed0561df6132d70c6c1dc1c331181b62040241ed2d94541060b", - "credential_finalization": "1d56e939a755545cdbc2ccc96b1158d748088f929363ba9a24f2d42239fcb2dc", - "client_registration_state": "b30684b4107d4569c6c807ffc4f1bc5f938279c0805e379b21384900fc3aadf903d19a2fe940efb6ead9a934b8bd70b5975f7cf6abf6c2d04ea62d4b3119755749", - "client_login_state": "b30684b4107d4569c6c807ffc4f1bc5f938279c0805e379b21384900fc3aadf903d19a2fe940efb6ead9a934b8bd70b5975f7cf6abf6c2d04ea62d4b3119755749b7d4f2cc1ea339a41064a8bcfe5c37442b28adc362fcfa4d312456a1d22c4e35e4e7f2de4c2b83b1b2362fc43d0582c5dd8d7368da1c9944d4a999a3dbe87d191d6071b2740380791c98dae3c49c8e441b72bb1cf328a0bd16c8a7222bef1d04b7d4f2cc1ea339a41064a8bcfe5c37442b28adc362fcfa4d312456a1d22c4e35", - "server_login_state": "cb7bf243b2854fd4760f0a0141801eea0efa824611e4c44395cbc8006ff763af9fd56d36d849f3ff72dd841027c5d7f145a5fc4061b9c0ad92a0c8394ea5dbaaf8ef744dfeecf39f8a244075e9d71f6ac9dafb5f656ee4d67ff7fb64696b0c39", - "password_file": "84191d318db400be4247a1d2a8d5561cc858ad1ec1a445fd7f0b01498b52112cb3254a4d18e9bd9c093ad574e90ffdb674d7e29cb05cda39b4932195823ebafeff3f3c9a3038cbe239dbabb1826da03defbb9b301c81c7ad1bce3f40f151040141b6c365a26dee6daebff3e1d8ce63f1347843a1bc97a884a8aa96a815aa219e", - "export_key": "01e5f9608070591c9bb42cd4643e995997ac0ee6499c13aaae3e78c1cf5c841a", - "session_key": "f8ef744dfeecf39f8a244075e9d71f6ac9dafb5f656ee4d67ff7fb64696b0c39" + "registration_request": "027a588638e17f9639b757257dda8ecb6ebf527f768b20c0683c749ce9c41fbdf3", + "registration_response": "03894ecff8dfaffccc87e8b4ba5afca6b4f5014e703945ef9f7b3f5c0393173ec0b2cd20226244f144020e7d8e44e61d9bd452220992e99303e960d9738c3d8560", + "registration_upload": "ca0c6cdfd9e03ae2e3e1fa5157324bc1beb580d4072847130c75ab9a92c4a964eada41e7ee446213a8f9588c88bbe15cf43533a155889327601335d7979e0f4642f86ed763d77c7865b62c555fa02ae19d36c352c985cfb0d86d691a66b30608f0ecb15a293084ab6770bef32ef0a94253a46889d493ff01b27048023237d15a", + "credential_request": "027a588638e17f9639b757257dda8ecb6ebf527f768b20c0683c749ce9c41fbdf3fa80d7c14fc99c939bb9662a46fd5802bbc1eae0f036118857973a26a9fb6aad1a0a70b0764660c5628fe7846fd3a4ae0a8246f44edd2336d04a640d0862d87c", + "credential_response": "03894ecff8dfaffccc87e8b4ba5afca6b4f5014e703945ef9f7b3f5c0393173ec0cf474ff841b5d4630e10e589ba63ec4bd2678aebf8e93176017b58eaef13fb3001c4ce5c333fa80ee885444499ff702760ea247abbac755c3d12e6f467c1f3caf24c66b2b1b183946e17749523f74912bd1f5a86ff22fe4ec40dd61e1567c7611de8dced6460183f342f07de1ee9d816b67cddf717c59e01c67eee66641a1788cc6d6d643303a113e3067188186f170b5f4aa050562ff0e2e68e8bc69b07e107beb79f777ba2743354511a0ce80e2353ea2619913d4d022ff52747fba139db0ec33d76eba50ecc3f7d7b6ba626e33376d33ed5973bfd3f2a2a4ed8e1208c3668", + "credential_finalization": "31a848fa5d60caacc9654c078b3946468b86e09f16b0b375c731c08845fb5501", + "client_registration_state": "0353158271880fb21a95fa5dd4b85372fd12f5f8bad57eb7270200bc86175c80027a588638e17f9639b757257dda8ecb6ebf527f768b20c0683c749ce9c41fbdf3", + "client_login_state": "0353158271880fb21a95fa5dd4b85372fd12f5f8bad57eb7270200bc86175c80027a588638e17f9639b757257dda8ecb6ebf527f768b20c0683c749ce9c41fbdf3fa80d7c14fc99c939bb9662a46fd5802bbc1eae0f036118857973a26a9fb6aad1a0a70b0764660c5628fe7846fd3a4ae0a8246f44edd2336d04a640d0862d87c1c0abc9bde0449cb98b747eff1c709699b4226ace16230ff42b5bef23594d70cfa80d7c14fc99c939bb9662a46fd5802bbc1eae0f036118857973a26a9fb6aad", + "server_login_state": "6d18b7f414123a657b1e8b4930a5c240227dbfaa0f5c33d4efb640c9701f9282e90432472871fcd612560baf9848485c74f926b65664176abb4864b3469b6b3f68a1e1a18f5ed38266fe350b43316acdb53afcc306e8ed2ccf09e0fc569ac9e6", + "password_file": "ca0c6cdfd9e03ae2e3e1fa5157324bc1beb580d4072847130c75ab9a92c4a964eada41e7ee446213a8f9588c88bbe15cf43533a155889327601335d7979e0f4642f86ed763d77c7865b62c555fa02ae19d36c352c985cfb0d86d691a66b30608f0ecb15a293084ab6770bef32ef0a94253a46889d493ff01b27048023237d15a", + "export_key": "c3f519339b3fab99059030c93a1f0828c2d8bb5f2610ab624f36f05a7f3a65d7", + "session_key": "68a1e1a18f5ed38266fe350b43316acdb53afcc306e8ed2ccf09e0fc569ac9e6" } "#; #[cfg(feature = "ristretto255")] pub static TEST_VECTOR_RISTRETTO255_P384: &str = r#" { - "client_s_pk": "5e16cc6baeac7cbf7e274f36f59d672f56d2aac59353efc8bf09cad84608ee54", - "client_s_sk": "19a17366501cc0bcb8e3dba2881376e55aadc77e930af57735d767a2097ce303", - "client_e_pk": "f0617c9c1af6da65aabf6d4e45e1d5db5593a4d7b03d2950fba03c08a490223f", - "client_e_sk": "3508832b6fcc7dace3b73260a89949d75b9afbcfea7bc9c3bb051d64ba886406", - "server_s_pk": "c47b497fa24f85b1665fd8440cbe2929ac74afaf2205b2fce8fe533dbf3e5402", - "server_s_sk": "f12afc7f502e0509a65104c042fab396c85d19cf55e323652dac28056d56f403", - "server_e_pk": "a69158842311635714aeaa78e94e7fe3de8074f585fcd7499131530169f72329", - "server_e_sk": "0bb1944980956fdadf3c3e63b533d810260fcee09231252941fbb91c321fbd04", - "fake_sk": "1614194a7f6c6d2e84f7483cfe67ff17823379fcf3401f864a2a9ea99a0e3d05", + "client_s_pk": "4e14130d98a76742bb6092d127e602bb615991c537f39e6da86852e49fb91d36", + "client_s_sk": "0ad71442cc0b18cf21b7a5a6f5621d635fa2aea2bfe6e929d400d7b599e8d502", + "client_e_pk": "94508937d980626c38f11240dbbb3e744b845025dd7742d183abe9de1805b974", + "client_e_sk": "09e074478fed5bb25980ffe20da29b9fc62c063e813624be6d46d42a8dc2030b", + "server_s_pk": "8e301bbc25b1cdf4aee139a9384c49f18fada7a0e1d752c6e343496c5eb07f15", + "server_s_sk": "1c4f1a4dfb7fd6c8162c7564cc2cba54bcda8529e7da6b40f7895cf0b762ac0a", + "server_e_pk": "08dc3a7fb1e6d7c50ce224dcdddac17950f778767a6a662f36b0cd27165b817d", + "server_e_sk": "a4ef8b3d15b16fd4704f3eb85c864d0ab41494370388aff8ca21726b2a173e0f", + "fake_sk": "e31aeec41ecd2c2f681047f4bbe1eff9ea3f464e8a2727d02c29b7247df9290f", "credential_identifier": "637265644964656e746966696572", "id_u": "696455", "id_s": "696453", "password": "70617373776f7264", - "blinding_factor": "0e8d4db10256fa6d5124e8b8b61473d986dd15dfe474cb3e907435770216b1c772018259c3811dab9814b7ad8cbc6407", - "oprf_seed": "ea9b14cb17b331a2c91a146f5623e881043d73cd38b3ccf68eb11e9d3864e67874b39f700da6be9aa7d046bafe3df845", - "masking_nonce": "ed79a88e39f0f88e1198ac24a84d5d20dd7d337ca9ef2709b25a8d902b479a1ac88a89ddf22481312213c5bf6a1cbbedbef22f5156765eedfc828690537355bb", - "envelope_nonce": "3b1e16fd64b05f7cacbd6aff086326dc6fd276873b8424c8aea826a7b95400b2", - "client_nonce": "4af04cff80bb07e8b860f84776f375617fd2e6fdf2674d2d57d72c40db6ab28a", - "server_nonce": "00d454460f3efcc77ccfece1e11f69886412dacfaeb49b5ea05985496dad65cc", + "blinding_factor": "dc954cb36ffe7bc13ea5129f4dc817e6a5c19fdd488b2dd02a4260cef28474fa0a4a99834b4ae540f5259b195bc7333b", + "oprf_seed": "787fb32092c3493c38cdf850b2163e25feea0ec220104b14e396e4ac8c325e7d03c11d6ab3f7203c8bdc081cbff90c6b", + "masking_nonce": "d1b0228aae266245c788f0d17445cff59b4040107bbbee0fa2b1490c19fc768135ef0254ba79871cb4e8f3918b3284071004fca7c5a5f785e5563c4a23a6b28d", + "envelope_nonce": "e24c27ce46a8db1863d751f9e3e274e239a58c471bc6736523dbcc1cd3d2432f", + "client_nonce": "49d74406da4bfed475c18dd79ea56624ed83665b75cc04f0e27a8f0b7452a8db", + "server_nonce": "c254b0a17d425c5f5b132b7e00d26cf8067efd7cfa4233c7928a2a2f9bfc5418", "context": "636f6e74657874", - "registration_request": "02008b74d36dbcf42ae30b2b81cbf3270fdf3466035d372768063b483919624fcf0575b11e10a09c1258ee1f6699b8e248", - "registration_response": "02f92aad460634d1325696e0141e8dfe35adfadb1e5f1dfb6813e3230f4109eef4e49a1c92bc1fb42fa7c310bb8e280a92c47b497fa24f85b1665fd8440cbe2929ac74afaf2205b2fce8fe533dbf3e5402", - "registration_upload": "4e327a4644ec8e788a79a356ac2b2ac33ed0b58381e8f8ecdad6525a3fa3217e74ab5243e4fa108d9cee8d36585277ac1afdb2b3dc94a9709e7f04a503edb0cd22b0554e2a23a5d0459896126b6547b319a17366501cc0bcb8e3dba2881376e55aadc77e930af57735d767a2097ce3035f8d44f9b75e8d8d796dab779d70f94ee9878e124df2e5519f4c53c885dc8210bf5e243bce7728f8fd866885f033af5c", - "credential_request": "02008b74d36dbcf42ae30b2b81cbf3270fdf3466035d372768063b483919624fcf0575b11e10a09c1258ee1f6699b8e2484af04cff80bb07e8b860f84776f375617fd2e6fdf2674d2d57d72c40db6ab28a88249adde60c64609198939aec00a04db1c4c763ba3b6aac685299a62856d01f", - "credential_response": "02f92aad460634d1325696e0141e8dfe35adfadb1e5f1dfb6813e3230f4109eef4e49a1c92bc1fb42fa7c310bb8e280a92ed79a88e39f0f88e1198ac24a84d5d20dd7d337ca9ef2709b25a8d902b479a1a9fc66de695157980d161185fddf97a2aea3ac0edb75e774837e80ef190e537ab5bab1fc4ef047a3dd0f16a77fe1d90ec96d2321256a5f3f70697b7640d9815c48321d27d1530b33db5c88c6f6c7946e90eaaa85021d91d10d066ea5514b9418a0164c0bd8669b33a206d2ec9e7beef810bb1944980956fdadf3c3e63b533d810260fcee09231252941fbb91c321fbd049070566733b012d41f9361fb193f717d5e63d7f06f65694db41d667c6a60196acc0f1e9cddb26149878bb08ae7c7ca753487dded52d714a82398394b186f6f189871ce04d61fcae327a9d0c8f0c867aa", - "credential_finalization": "8ff72d0422c66561c41dd1db84572e4ff3717a2a8320f9429d47c749a68d8c004d98ccc7f08f189229daf6be560bcdb0", - "client_registration_state": "0e8d4db10256fa6d5124e8b8b61473d986dd15dfe474cb3e907435770216b1c772018259c3811dab9814b7ad8cbc640702008b74d36dbcf42ae30b2b81cbf3270fdf3466035d372768063b483919624fcf0575b11e10a09c1258ee1f6699b8e248", - "client_login_state": "0e8d4db10256fa6d5124e8b8b61473d986dd15dfe474cb3e907435770216b1c772018259c3811dab9814b7ad8cbc640702008b74d36dbcf42ae30b2b81cbf3270fdf3466035d372768063b483919624fcf0575b11e10a09c1258ee1f6699b8e2484af04cff80bb07e8b860f84776f375617fd2e6fdf2674d2d57d72c40db6ab28a88249adde60c64609198939aec00a04db1c4c763ba3b6aac685299a62856d01fdba6162c67a28ecf5729cb7b409a13ea6c6f55529c7959f63df4b9a82af9b6084af04cff80bb07e8b860f84776f375617fd2e6fdf2674d2d57d72c40db6ab28a", - "server_login_state": "e6ede2b0985648321469cea821b37b772f710764980dec580cca6c95be2554fc050489570af42a09ea267364908f667b495cc6e4cdba5ab80f836d41a5e95493b0683fac921a9e51c5f147c24a84ac68f69ac7f82de8737038a5de953180a44f0e988d7ac920e06b5a5fb50eb771e00d86f2baf971f12479725ba6178a592e64192f87fc461bea24d1252d7312d95156", - "password_file": "4e327a4644ec8e788a79a356ac2b2ac33ed0b58381e8f8ecdad6525a3fa3217e74ab5243e4fa108d9cee8d36585277ac1afdb2b3dc94a9709e7f04a503edb0cd22b0554e2a23a5d0459896126b6547b319a17366501cc0bcb8e3dba2881376e55aadc77e930af57735d767a2097ce3035f8d44f9b75e8d8d796dab779d70f94ee9878e124df2e5519f4c53c885dc8210bf5e243bce7728f8fd866885f033af5c", - "export_key": "e2e9e6487c30be6a174f08eb98892c744ac9fadba6f6c06b9a20ac786dc9d3cda147d983bd899368e4ee8dab58dd9224", - "session_key": "0e988d7ac920e06b5a5fb50eb771e00d86f2baf971f12479725ba6178a592e64192f87fc461bea24d1252d7312d95156" + "registration_request": "0322d51b24bf64a1b863739d58827af1d16044ae12b4fcc4ea4dd55b990e5a3a60ae48e67f644fdaf958a9281991499192", + "registration_response": "0264f42c00f552098b32c6d7db5cda475e0afaf05198b82298b95258a79b71d217a6bff482cae43aedc096e9bafd4b32da8e301bbc25b1cdf4aee139a9384c49f18fada7a0e1d752c6e343496c5eb07f15", + "registration_upload": "8a2f198c4825e4627afce915cec8f24d852e317d9cfed11652739e8f30ee9020e0f5935bf3dc41d09744b0974b3c55ffe076d6a5ff5907b6fc802f1d3ee1af6291c4ccb583056e758fdf41361a2cd65d0ad71442cc0b18cf21b7a5a6f5621d635fa2aea2bfe6e929d400d7b599e8d502ec0bca0b2c13a13dc250005e9711c5d5c1e7a041ec544a37534db1b7666fc67d3b4c66f9fa0eb192c98864b8fe5a9b06", + "credential_request": "0322d51b24bf64a1b863739d58827af1d16044ae12b4fcc4ea4dd55b990e5a3a60ae48e67f644fdaf958a928199149919249d74406da4bfed475c18dd79ea56624ed83665b75cc04f0e27a8f0b7452a8db4670f28c546cc8000ab7622aca98bf4aa438ba99f5aac9a6ad6b1101c62fdc16", + "credential_response": "0264f42c00f552098b32c6d7db5cda475e0afaf05198b82298b95258a79b71d217a6bff482cae43aedc096e9bafd4b32dad1b0228aae266245c788f0d17445cff59b4040107bbbee0fa2b1490c19fc76810881b1a947cc68984b17bdcb6eb53ae6435983d1e048616545ba1ccc77a768b33e9f2e3f87c8f203e2b5f98837cd4163d437d6e017ae4123eccf9ed4a9045acccd7b3d2e50a1fcf9101d2321637131427453f56b224dd2d0dc99b9023a5d0c631da24554237865eb3fdfaf5d8c4b9134a4ef8b3d15b16fd4704f3eb85c864d0ab41494370388aff8ca21726b2a173e0fe0faa68754006976acd36f0bebe5a83e5a5002591d92c1960a89a03eeb084f292617adc22b187e2bc5e5b843e77c0d76cfae523d0aeebc1ea187aa2e39810ebc885bf1322fa59cf8061380b1c795ab33", + "credential_finalization": "ad883773e6fc3fcfb11f1135bcaf2dadf1a197ee2dc4dba8df25ec5c22aca9c09694f3186bd4130a04ad719bae785d22", + "client_registration_state": "dc954cb36ffe7bc13ea5129f4dc817e6a5c19fdd488b2dd02a4260cef28474fa0a4a99834b4ae540f5259b195bc7333b0322d51b24bf64a1b863739d58827af1d16044ae12b4fcc4ea4dd55b990e5a3a60ae48e67f644fdaf958a9281991499192", + "client_login_state": "dc954cb36ffe7bc13ea5129f4dc817e6a5c19fdd488b2dd02a4260cef28474fa0a4a99834b4ae540f5259b195bc7333b0322d51b24bf64a1b863739d58827af1d16044ae12b4fcc4ea4dd55b990e5a3a60ae48e67f644fdaf958a928199149919249d74406da4bfed475c18dd79ea56624ed83665b75cc04f0e27a8f0b7452a8db4670f28c546cc8000ab7622aca98bf4aa438ba99f5aac9a6ad6b1101c62fdc167633a76ac3a8b1d862f86fbba9765a0932d3fbeb42b7d8c93e1ebb300aa4a60449d74406da4bfed475c18dd79ea56624ed83665b75cc04f0e27a8f0b7452a8db", + "server_login_state": "a5e916399570572527ee946c428cf4fbb717e33cc054946e0f8ad83f3afdc3ff38b823be20f17ecedca49abc89d99e0e3bc938ac78c80f047037ff553e1de9837c392f89c9ab550a1fce1ba4dcd8a210e75b594d324d34f88bc9d2eed70f231c72c02afc65ddc30c3d34a94803184b1d2dac2f6c0e6f9e41eb6d856c441bab604edabd656c2a58427c8d5abccc5176aa", + "password_file": "8a2f198c4825e4627afce915cec8f24d852e317d9cfed11652739e8f30ee9020e0f5935bf3dc41d09744b0974b3c55ffe076d6a5ff5907b6fc802f1d3ee1af6291c4ccb583056e758fdf41361a2cd65d0ad71442cc0b18cf21b7a5a6f5621d635fa2aea2bfe6e929d400d7b599e8d502ec0bca0b2c13a13dc250005e9711c5d5c1e7a041ec544a37534db1b7666fc67d3b4c66f9fa0eb192c98864b8fe5a9b06", + "export_key": "9d66f932384e950237e521b87fe44574ea6346577286d85f76081139dffc338d37554f1871c380a8ba4b02614f92021e", + "session_key": "72c02afc65ddc30c3d34a94803184b1d2dac2f6c0e6f9e41eb6d856c441bab604edabd656c2a58427c8d5abccc5176aa" } "#; #[cfg(feature = "ristretto255")] pub static TEST_VECTOR_RISTRETTO255_P521: &str = r#" { - "client_s_pk": "12ad788122fe7d7e34f182a0980c65abbf8b0a4eed15543f6dfc5c5abc985c48", - "client_s_sk": "d2d649c25452e3c7e01938bffda81f72d3bbc9dc7dd17f90bc339cdbef27320c", - "client_e_pk": "82c2f76774b8a99da436a7b7dca0b57fe8831a8e65fae288014bcc2be77a7f25", - "client_e_sk": "150895a073db3b4a231df8f55f113d345a1be4a44b34871057cde0cb67075b0d", - "server_s_pk": "b82f5e3e41c20acf05bac0d7ead1c4d6b6e625f15a417f79aa7fd46825890d38", - "server_s_sk": "76e0af918296256f37b4b084867fea5f00ea68c2daa2b27e8a0dcc7c9184a90f", - "server_e_pk": "bec8cdeafc53ab40570304c538a6db67e245a286ae7b66adef42b5c8d59c8862", - "server_e_sk": "a3564fe28cc959193c51d903d2b7c12a7a3a2b299b24255a9978c28fa8b7e40f", - "fake_sk": "aeaca70121214eb5c162d9e71b623db55830026b0313a79dcc32b371199a1f08", + "client_s_pk": "c2290b1872cb29156d8f8b8daaecf82fd0df3a2637826b701a207d2ed5b0fa50", + "client_s_sk": "b57818cb8bf1967cc86aac84c18f1b62ceb5543d2b4cc7f48829b31ce748910c", + "client_e_pk": "ceff50116e7b9868469483a35b34ad3bd4f810feac337b76aa05ac2f9d439923", + "client_e_sk": "eb59741a04a332a84f3c534bbaaf589d3e575b514ddfda49f7f9b0cdd800ee0a", + "server_s_pk": "1206526665f4dfa94eb202c33b3ffb85dd8813c6c84fb69ab3055e054b9d0455", + "server_s_sk": "bb302f72d4a24ffd5a2f0a253ef9e0467dda555b5ca3d1b8564110b14082f70a", + "server_e_pk": "401c364a75014a7eb606ed3d4a96ee982f765a2102322cee2370af69bcb7b47f", + "server_e_sk": "a7079c6e69cb7905b5995f5854f481518131c0d4b1893faa6985385b8fbd8c0a", + "fake_sk": "1e52c53eeff31ba3c1164156582c4d12daa9015a84a40b531e8223d623b85502", "credential_identifier": "637265644964656e746966696572", "id_u": "696455", "id_s": "696453", "password": "70617373776f7264", - "blinding_factor": "0024ff84c5cddd63a9f0150c96ee0efc82a6c4a73595abbc13dc8c5a6ab903bcf42511bfc36c9d769d8e930ef06e417611c562671c3d3fec69882106ec6af3960479", - "oprf_seed": "9b763101efd7b5c97ef4872dde2a08d32254ea11b1e1a775f04b86aeb0a923db22e1ed21fc8fa11829837d53cd9ef49bd3567f8d0fc69f8ba98847af210b8464", - "masking_nonce": "3630cca21aca20ec6aff1ed232db2adb60837e3bbda7db78365ab36d6b7906446fe73d68f2b542f813fc046756ce51587a8b05bbdd64b9fbc1166b8367a12064", - "envelope_nonce": "72de29934ede9da1ffb7c9b8bb520b64562c3b5c989acdfe5e22095c2002d55b", - "client_nonce": "15ac5399d93cb6303d7056d9337362ff827b340520e26a2a52bfe389b33d8d48", - "server_nonce": "563d5c7dc1fb8743a43bfca777e6496b06508c9cc045a5e333ac712e92c8b695", + "blinding_factor": "006ace224319a87ecc0798b5d86e85960bcfcf04fa6f62cb76ac984787359f562ef4cd53d7948d1e934ed0151f9d67bfbca45b416dc1c0758b63711e0ab1d507538d", + "oprf_seed": "d5034f5d30b6d9eebd7000c37c1efe5b3f320b636ce093606d8d4f6ec04e5dc0deb740a5a16c7a9fd635fdbffed3cddcd8d29fd15f0ffb57907cffad134823f0", + "masking_nonce": "bb7d8dcbeaaa2bca6acd5b95f9c81a061702b4a630ca1d62361bc13047a4d8fabd42e9248cad8df15ec40053d81a1a10af701fc2b0d712d0afc1f8b178362c64", + "envelope_nonce": "242a768cebfc9baf7166c4114459dfd143d686160caf69d2691fd8268db77460", + "client_nonce": "e563b72e30be1b5bc029103674b33318f4a2eb348b8793838d765f6f9f4a2071", + "server_nonce": "20ccfe9d157464e870b24023ec05257dbf52e6e75cb1638917eb10f17b25fdb6", "context": "636f6e74657874", - "registration_request": "0201ac0524b745f9fa6fbe64378d50a5a018b770bf0c1e36ecfc986e4626ea0cae567ebc2bf4617fc35b2ecdd090c2c5f82cc090b37d7954ae68b2a64ba22f2f70ea74", - "registration_response": "02001dc5a75b71b0514d2b6e40bd8b91a3973f3a9eea4fd70bbfb6e5b2e725e9c57bf3e9b75f7bd60404ed14015fbbbad6d91d305280bd68748197415a1ec3c49839feb82f5e3e41c20acf05bac0d7ead1c4d6b6e625f15a417f79aa7fd46825890d38", - "registration_upload": "c62dcfb02541bb505684ff2e61aacd89d4c42cd2e4d9ad4efebb490558458c19f352d32d1734d5c38d1195eada99ebe0953f7f917d6db06707c97bc838e801beef14f27aa9cdf68b12026d4b4bac5af375bc65f87145d0c60219b0aa378bf1a2d2d649c25452e3c7e01938bffda81f72d3bbc9dc7dd17f90bc339cdbef27320c2a3c1005353f18687f4eabaedc723caa826e57587d2a65d8f0eabce9b4aa70a2740c24963efe7d8317cb2db4b2d2a8911fe374018bd6ece1681aab7e696a4042", - "credential_request": "0201ac0524b745f9fa6fbe64378d50a5a018b770bf0c1e36ecfc986e4626ea0cae567ebc2bf4617fc35b2ecdd090c2c5f82cc090b37d7954ae68b2a64ba22f2f70ea7415ac5399d93cb6303d7056d9337362ff827b340520e26a2a52bfe389b33d8d480e3ccee2d2f1e8f1f9259bfc7ccc852f7b2616a7aa1fffb21bf3f9d2f6ba224c", - "credential_response": "02001dc5a75b71b0514d2b6e40bd8b91a3973f3a9eea4fd70bbfb6e5b2e725e9c57bf3e9b75f7bd60404ed14015fbbbad6d91d305280bd68748197415a1ec3c49839fe3630cca21aca20ec6aff1ed232db2adb60837e3bbda7db78365ab36d6b790644709e69bacbe46cf348e7f2d065024c29e814c27ece75cf2260590754589a2855bc5a90b6c9ed9873e21b8bf2cd403c64519b847ddac2e5989fe2bbccd916acfa3f7ec7c7f84f40cf89467b2a671e1c22ab7264ea3a471f8608b670a14aee0d47af1a814b072c54aa492f85030ece52cdb0b5ea67b6da20a63adf85ca07dfd5a1a3564fe28cc959193c51d903d2b7c12a7a3a2b299b24255a9978c28fa8b7e40f489de9178b9b7de17ce7cb77cbc75c1f9857a2b311a67aa54839b9a6b84a26281ece605c14ea9dda510410c4ba5b01ac94cd5d14e1ccc1cd71caf06e16ce682f299b6a9e2b117b4b034735e1f6697321e2555f0a3123ee80a28de0ecbbb63a70", - "credential_finalization": "c7eb54ddad68262df5e7f818420242e288c07b122fed4087fd8d7f8b322b84d23055b1076abcc04bfa8a1c05925658a3734da293a040aacb40d4f216dbad7314", - "client_registration_state": "0024ff84c5cddd63a9f0150c96ee0efc82a6c4a73595abbc13dc8c5a6ab903bcf42511bfc36c9d769d8e930ef06e417611c562671c3d3fec69882106ec6af39604790201ac0524b745f9fa6fbe64378d50a5a018b770bf0c1e36ecfc986e4626ea0cae567ebc2bf4617fc35b2ecdd090c2c5f82cc090b37d7954ae68b2a64ba22f2f70ea74", - "client_login_state": "0024ff84c5cddd63a9f0150c96ee0efc82a6c4a73595abbc13dc8c5a6ab903bcf42511bfc36c9d769d8e930ef06e417611c562671c3d3fec69882106ec6af39604790201ac0524b745f9fa6fbe64378d50a5a018b770bf0c1e36ecfc986e4626ea0cae567ebc2bf4617fc35b2ecdd090c2c5f82cc090b37d7954ae68b2a64ba22f2f70ea7415ac5399d93cb6303d7056d9337362ff827b340520e26a2a52bfe389b33d8d480e3ccee2d2f1e8f1f9259bfc7ccc852f7b2616a7aa1fffb21bf3f9d2f6ba224cc7be2071b9453853b75b32e304299d67a70b129708f11b669fdd9fba7d8a0f0515ac5399d93cb6303d7056d9337362ff827b340520e26a2a52bfe389b33d8d48", - "server_login_state": "3caf57acb5a211f501373bb98be0505fc32a4d9bfe8ad267fd48c901e4fc2f3720f828b4ae6e37dcdfbb6dedd05589a0891b19c0bd79de388f628cd22c7bc43e0af400cb43bb7050a0426e81089e1f737600634abd12ddce87e03dadbe0345cf34263dee165ecacd3f8c029afbf8f6a141768625aabeb8a908f0f978504c2b462c6dc38db363e4e4db41d7b508bc99e65baf5f3386d71ce861ba74d7225a11cce072b50e7ec34f0dcf54ae2dd66204a10759b6e9208bfb66142f915a07ce0b60", - "password_file": "c62dcfb02541bb505684ff2e61aacd89d4c42cd2e4d9ad4efebb490558458c19f352d32d1734d5c38d1195eada99ebe0953f7f917d6db06707c97bc838e801beef14f27aa9cdf68b12026d4b4bac5af375bc65f87145d0c60219b0aa378bf1a2d2d649c25452e3c7e01938bffda81f72d3bbc9dc7dd17f90bc339cdbef27320c2a3c1005353f18687f4eabaedc723caa826e57587d2a65d8f0eabce9b4aa70a2740c24963efe7d8317cb2db4b2d2a8911fe374018bd6ece1681aab7e696a4042", - "export_key": "538bef8ee8da2ad63a7fa73e3c53dd42d002271a33ec19de5481c60bcfa68d41bcb709ab42b4ab68fd1eb75f762805db973453d7657b672ae2b2956def43c1bc", - "session_key": "2c6dc38db363e4e4db41d7b508bc99e65baf5f3386d71ce861ba74d7225a11cce072b50e7ec34f0dcf54ae2dd66204a10759b6e9208bfb66142f915a07ce0b60" + "registration_request": "02008cad2544d63a0011da699c69e4e221a58c11d57830c68482984d9a465df54c51f89ab514ffdf4ef5123a06a3f4e877ef164d8877c956eb9299195eeebc312472aa", + "registration_response": "02009b5cce520f4a98e4a0c20f4fba8a8ffbd3b1252db6c8685bac34fe99f21c12d775b5ae02ba8a9c6cc18633b242b8244e2772b97aceb3518473a96bb98971bc01c61206526665f4dfa94eb202c33b3ffb85dd8813c6c84fb69ab3055e054b9d0455", + "registration_upload": "a86a3f332104cc99b97d152d51789c5033dc02e6bd243bc6f58f148f946fd04aeff61169561f7298437d93e096e9c89b909998075dc8d4fb19dd74bf581f57556402ec84d41d4c0ccd1a482769d44ee6cbde4ca482a62ba952decb8134323999b57818cb8bf1967cc86aac84c18f1b62ceb5543d2b4cc7f48829b31ce748910c0e728cac091ddf889955fc16cc50829ec341f38d336056ff7760e57e9f58607178196ebff164fff89157237d74d18cdaf09922b305691ba564a1af465c37c2ad", + "credential_request": "02008cad2544d63a0011da699c69e4e221a58c11d57830c68482984d9a465df54c51f89ab514ffdf4ef5123a06a3f4e877ef164d8877c956eb9299195eeebc312472aae563b72e30be1b5bc029103674b33318f4a2eb348b8793838d765f6f9f4a20717aa2d437771287b16aee2db76c723ec0ac68ca4296cb4491fec0a66de9a7eb05", + "credential_response": "02009b5cce520f4a98e4a0c20f4fba8a8ffbd3b1252db6c8685bac34fe99f21c12d775b5ae02ba8a9c6cc18633b242b8244e2772b97aceb3518473a96bb98971bc01c6bb7d8dcbeaaa2bca6acd5b95f9c81a061702b4a630ca1d62361bc13047a4d8fa76c64f465f7ab687fa07b8d9990be1ec28c9d4efdaed57af7c7b564bb253c907102604b44724e53627ca5e4dc012f6f5da219064e037655695f9898bd2d46dc19353339e0985839f477c901c9a956d29c7618550bcd57ba45bca9e4f2b89aa8770253e6b5beba6072e1d119d12c23464dbbff466bb3ebf93aa474676ce3d145ba7079c6e69cb7905b5995f5854f481518131c0d4b1893faa6985385b8fbd8c0adc5a172b8df59d15483ce85ae6f09f5354d1ed22b0a6d01368e570a04b351a54b0f740705fa795b60449491ec3929a2d5dd24928f89e5d63439ea5e25cd2cc6add125ce2e43ecceb4f6800bd2ef75e9141fca799562206d6e41ef6530bf7c051", + "credential_finalization": "3ee7f73b48b3194184854643ca073cab838e537d1bde12a10855013155ee2012262c0c7285af91e3bfa38f0759761a0fadd1a85237bceb2593f5fda0489a3744", + "client_registration_state": "006ace224319a87ecc0798b5d86e85960bcfcf04fa6f62cb76ac984787359f562ef4cd53d7948d1e934ed0151f9d67bfbca45b416dc1c0758b63711e0ab1d507538d02008cad2544d63a0011da699c69e4e221a58c11d57830c68482984d9a465df54c51f89ab514ffdf4ef5123a06a3f4e877ef164d8877c956eb9299195eeebc312472aa", + "client_login_state": "006ace224319a87ecc0798b5d86e85960bcfcf04fa6f62cb76ac984787359f562ef4cd53d7948d1e934ed0151f9d67bfbca45b416dc1c0758b63711e0ab1d507538d02008cad2544d63a0011da699c69e4e221a58c11d57830c68482984d9a465df54c51f89ab514ffdf4ef5123a06a3f4e877ef164d8877c956eb9299195eeebc312472aae563b72e30be1b5bc029103674b33318f4a2eb348b8793838d765f6f9f4a20717aa2d437771287b16aee2db76c723ec0ac68ca4296cb4491fec0a66de9a7eb0567d0bba0b192db685dff83ba226b4cdd3a902dd1420f8c346ae6c05ba37ae401e563b72e30be1b5bc029103674b33318f4a2eb348b8793838d765f6f9f4a2071", + "server_login_state": "625dfcd14c4a56ee33e3ba031ce425cf1ac5494cff4a96565ec8155afc6bbe0e1be0b1f8e4cd881566f3401b890ffc6bdc752a7c22507191135eb2042e4f804edf223f22888308c54135f0017da13b4ae6716168b42b97c8a2a353394db8b9c9fba0f5eca2981ed18b8e8a3b06a953e19287f86d212d1d1b435a942730cab7ba8f43531f705c658db37be2cd019628ece0aedc7ff6a6d828675e2122354de00ecb85dafa6257a7a053f62277ef5d4d106eeb5afb8b5549904d7453c4c2c30caf", + "password_file": "a86a3f332104cc99b97d152d51789c5033dc02e6bd243bc6f58f148f946fd04aeff61169561f7298437d93e096e9c89b909998075dc8d4fb19dd74bf581f57556402ec84d41d4c0ccd1a482769d44ee6cbde4ca482a62ba952decb8134323999b57818cb8bf1967cc86aac84c18f1b62ceb5543d2b4cc7f48829b31ce748910c0e728cac091ddf889955fc16cc50829ec341f38d336056ff7760e57e9f58607178196ebff164fff89157237d74d18cdaf09922b305691ba564a1af465c37c2ad", + "export_key": "f8bc7769e5ff19756a6205f9b178c4bce33afee4954cc95b0cc30a79dcd8bca4d41f77df66e25d9f8754dd81cbc3b6ca62b0b40de2ac5e1aec8c2340f54becd4", + "session_key": "8f43531f705c658db37be2cd019628ece0aedc7ff6a6d828675e2122354de00ecb85dafa6257a7a053f62277ef5d4d106eeb5afb8b5549904d7453c4c2c30caf" } "#; pub static TEST_VECTOR_P256: &str = r#" { - "client_s_pk": "02b7b817177ae2c509f0526ad461f9acfcf5b8256b67db26d7e661e7ea1d1d6cb0", - "client_s_sk": "2b1cea37dcce617193b1e481512613d0ae657d9f1dd0bbabf3bca43dd3b2b9b5", - "client_e_pk": "02e3fd219e4ab640b2fff1aded4f14b8f205efda3ff59d473e453bc85f6618bd04", - "client_e_sk": "b720274ba6a8c9a03020709dd28dfb8229331f8e7c6881212c84f9757208b6e2", - "server_s_pk": "022c658f4cfec21d2317baef4bed0ea6fa359c3e6f4609ab77daf4d28f1db9db98", - "server_s_sk": "ca9bd057b68ecd19d2b0c1dc16e191b6763402648640ccbfb38a4135ba379be9", - "server_e_pk": "023bd90266aad189d3e516e4a798322e4ff63a309627da302d96fb5b728ce881cd", - "server_e_sk": "e058bc7bb61379e6bf7d83240d8d4744a8e4e1a7fd43f9eaab4cad824928ebf7", - "fake_sk": "ab15becd8c2d15b8a732532e7552a64bdbeab8b7c3a059d9200e8aefa79ced79", + "client_s_pk": "021a006011fef91d3c4c254a63264dac6bea121e85f65813a28e8a5afa92806f99", + "client_s_sk": "bcfee28df33f566132013a012c4be99e51aee77a04d5742c093166d6e623fdf0", + "client_e_pk": "02b9232823cbe320c66d45aef3c8e31146798a5b9a161b829e85879326a328b52a", + "client_e_sk": "27da56d46df51a67667290be85ccd8030c13ffc5f75f46078b9601fc4e740b87", + "server_s_pk": "02e5202c8e9217e90cd06ef7a9bb4dea17ce6170621f3803b7f3f17230f3d35691", + "server_s_sk": "eb3e708a25acba8f9fca8135d0f685b8e0ab91b452ffd89ee0d07758e4d7ee4c", + "server_e_pk": "03bac6b6f7f15bd795ad978fb552bebc07197e57cc5a392786443bc367ccdc1058", + "server_e_sk": "39fafd6d4638e783f27703e92a4c819109a05c6754f76e28b3555b22bc31c830", + "fake_sk": "50527a47762e17b46ae5a6c480d4437549a269791d07bb8686af6e3988108d5c", "credential_identifier": "637265644964656e746966696572", "id_u": "696455", "id_s": "696453", "password": "70617373776f7264", - "blinding_factor": "8084b4564f290f9a2ade8105afb2604ca4d4545605693c8028b19502bf8c9da6", - "oprf_seed": "08676dd7c373d31d8de3505abe07f1b6f0168e95b29657ff68cbb308e3250b02", - "masking_nonce": "672e3f7d38c007ffd5df6ca75839bdf5dc8e2c5e0fd9f360d54c7692a51d3566657d483e7ca89148c24442d205a3b9421cbc45609ce5e6a01a9aaf010638e4e6", - "envelope_nonce": "ebf1e3db00c30b442206608c1a5db103299c8155fd63fe6fe89c33ef72863e83", - "client_nonce": "a96d561ef8a4d1a122fb37c0baf698d5670e18b6fd40d6d8779865d4332fafe0", - "server_nonce": "00e058b1198d86f8d210dac45efd532539c445317310dcfd65590cf3f5b288c0", + "blinding_factor": "87297ccb60457358e820e7d948ad6e8f7266366f478d25fcebb74bcef7d41134", + "oprf_seed": "546e300aa39124c332e8a9f9fffc7291e91a19bbce4f08233962444e5e7594d9", + "masking_nonce": "b2bc105726cecd45713109a08bef319afe9ec39a4956d3db15820795e7adb196de9fa7a4478a21722955b4608d94eb86a43da87a1aca5dfa93bac6659888d652", + "envelope_nonce": "70eff6c22d410b2edfaa688b6535a22fa5426ea3192203fb93bc6096c1c96b13", + "client_nonce": "7896d11f8bd9e6393fbc2e0331bc27fd84fdd186f3eeaeb4329e16d3864c05fb", + "server_nonce": "a33bfd52c69e78ebdd83f20f95932d0f717b1d4221f08c15252304a46fba1dc7", "context": "636f6e74657874", - "registration_request": "02b159cf62b8f4c7324c0af0afd2c71c4347e1f6806cb4a93c99d7dac2eee8ca57", - "registration_response": "03059212dd13d7535081d0848d0c02605b044bafd300340bbc22f2e7393715a032022c658f4cfec21d2317baef4bed0ea6fa359c3e6f4609ab77daf4d28f1db9db98", - "registration_upload": "03193588c902bcfedb82542268570364c966be2d0fad7a5c088ea41caa2610391a90f2ae1679620495ba742e75d54c16ed437ae382054907665b1f6a3ff2b9e0502b1cea37dcce617193b1e481512613d0ae657d9f1dd0bbabf3bca43dd3b2b9b5c7fd1251cec1ef5bd658d6d771f23b3b4645f0a6a9cebb233ab630af4982b636", - "credential_request": "02b159cf62b8f4c7324c0af0afd2c71c4347e1f6806cb4a93c99d7dac2eee8ca57a96d561ef8a4d1a122fb37c0baf698d5670e18b6fd40d6d8779865d4332fafe00220d8a0be3f983a1d60218949f8c7cfcfab0e85f475aa3366b9d5b85dcddc0f79", - "credential_response": "03059212dd13d7535081d0848d0c02605b044bafd300340bbc22f2e7393715a032672e3f7d38c007ffd5df6ca75839bdf5dc8e2c5e0fd9f360d54c7692a51d3566d88de676c07a5349b24f87571d0b52097bbd00a1364f572f2e9808367ff3a54a8adbff21f17afe686a8a2e07a25681a87fd4632f1282f3599da146700a9e16f8d58b82eb11f6121a9351cb82ad76bac043f990805252cb0a1315d79ebe385084b7e058bc7bb61379e6bf7d83240d8d4744a8e4e1a7fd43f9eaab4cad824928ebf703f2451ce6c763e633182274aeca243426609bad2bf08a7df1d51a3a0253b6d3b10ecf80abd9d9d775b307526fdeca5b5c09d8426a99bad829b024c9debfa5c88f", - "credential_finalization": "554b8419fd438c5492d0c0ac141a6ccc729d1862c9bd2845973c82d24931affe", - "client_registration_state": "8084b4564f290f9a2ade8105afb2604ca4d4545605693c8028b19502bf8c9da602b159cf62b8f4c7324c0af0afd2c71c4347e1f6806cb4a93c99d7dac2eee8ca57", - "client_login_state": "8084b4564f290f9a2ade8105afb2604ca4d4545605693c8028b19502bf8c9da602b159cf62b8f4c7324c0af0afd2c71c4347e1f6806cb4a93c99d7dac2eee8ca57a96d561ef8a4d1a122fb37c0baf698d5670e18b6fd40d6d8779865d4332fafe00220d8a0be3f983a1d60218949f8c7cfcfab0e85f475aa3366b9d5b85dcddc0f791caa915e5d150060adff98bdbca083a0c66131c312b2d98b12c0b18314715f30a96d561ef8a4d1a122fb37c0baf698d5670e18b6fd40d6d8779865d4332fafe0", - "server_login_state": "bf73f13d58b0c2391bc5b8efcc04a73461dc5a76e80d4a6a6e975fae897886a1c380b68db4924f437f561fbeef19d34cdcbf8a6a6eff0746eaf85078441cbeae423e136b3acad115bf24254e10eb1daa85587f3a0f80300b20bb2ac0b5f93854", - "password_file": "03193588c902bcfedb82542268570364c966be2d0fad7a5c088ea41caa2610391a90f2ae1679620495ba742e75d54c16ed437ae382054907665b1f6a3ff2b9e0502b1cea37dcce617193b1e481512613d0ae657d9f1dd0bbabf3bca43dd3b2b9b5c7fd1251cec1ef5bd658d6d771f23b3b4645f0a6a9cebb233ab630af4982b636", - "export_key": "cc448b499a4d621f1fc57d63a190170c65b2661f8bc8378ad0d9874612c891e3", - "session_key": "423e136b3acad115bf24254e10eb1daa85587f3a0f80300b20bb2ac0b5f93854" + "registration_request": "02c1474c248fc1fd51f8014e8cc807026348801f75b62d7abdd266c2215878f143", + "registration_response": "0287d584c35750ca9764e36def26b01e3ebc6b844175d173a309ed3a340060e56302e5202c8e9217e90cd06ef7a9bb4dea17ce6170621f3803b7f3f17230f3d35691", + "registration_upload": "03edf96c4b3a3267c15b22825194ab601065f93db7aa3fee9ec8eb6c560d42b6b6f49bbd1967f61c75a010b737e9bc0bfd5e44c1f3696f4f0a8adca4cfc7a477e3bcfee28df33f566132013a012c4be99e51aee77a04d5742c093166d6e623fdf0bc959b9e70119937e5fde6b3a6f4ae5e8d54b056754bcacbcbf2585a1b2e9883", + "credential_request": "02c1474c248fc1fd51f8014e8cc807026348801f75b62d7abdd266c2215878f1437896d11f8bd9e6393fbc2e0331bc27fd84fdd186f3eeaeb4329e16d3864c05fb02fcdd46dd17da6c1dad889cb9bf953832952205566335e2803c779cc6166db67d", + "credential_response": "0287d584c35750ca9764e36def26b01e3ebc6b844175d173a309ed3a340060e563b2bc105726cecd45713109a08bef319afe9ec39a4956d3db15820795e7adb196c7ea1d3c3c7241226d295618a63a105de893c559c84c4ef1266cfe49579e6f346d52e76ecc6c82349c6f57cebb49aca51316805daac4ec99ff2588592bbc3a8cc635c429a12a9c9808ac6f182e680c52756f133add0165aef618a5ad1c54cc4d3839fafd6d4638e783f27703e92a4c819109a05c6754f76e28b3555b22bc31c8300385ca57dc00c9af52e206907185a237672c8ffe03f09ce43a4287d26b02ff378831c3e5b0b63ae927633da254768ad20dd5311f225811011a347ef8561a70fbd4", + "credential_finalization": "aecd09dd6fc90cda63d3ea018319b3b7e072268e20d995f2a4bc0698d8b8f5e9", + "client_registration_state": "87297ccb60457358e820e7d948ad6e8f7266366f478d25fcebb74bcef7d4113402c1474c248fc1fd51f8014e8cc807026348801f75b62d7abdd266c2215878f143", + "client_login_state": "87297ccb60457358e820e7d948ad6e8f7266366f478d25fcebb74bcef7d4113402c1474c248fc1fd51f8014e8cc807026348801f75b62d7abdd266c2215878f1437896d11f8bd9e6393fbc2e0331bc27fd84fdd186f3eeaeb4329e16d3864c05fb02fcdd46dd17da6c1dad889cb9bf953832952205566335e2803c779cc6166db67d8a1739c64dc7047f7791f4a205ba8c96d215026ee33589d371b0acbc97f773f37896d11f8bd9e6393fbc2e0331bc27fd84fdd186f3eeaeb4329e16d3864c05fb", + "server_login_state": "c63b679e73afa923f87e90ae5f50fd90961c3c51959ad3165b71b7798d1554ca46e6addd5af7e8e592da3dd384b55e0a5202f40d77d77c974005bd0901a09b0908f2d2a797b7c29fe9fff28d7e3badf6e107ebfcf06c12b74d693b3e68b31ef9", + "password_file": "03edf96c4b3a3267c15b22825194ab601065f93db7aa3fee9ec8eb6c560d42b6b6f49bbd1967f61c75a010b737e9bc0bfd5e44c1f3696f4f0a8adca4cfc7a477e3bcfee28df33f566132013a012c4be99e51aee77a04d5742c093166d6e623fdf0bc959b9e70119937e5fde6b3a6f4ae5e8d54b056754bcacbcbf2585a1b2e9883", + "export_key": "1fcdb95235a35bfa52705f23125bbb00fccb6cc6628cfcedf5271f13288e13bf", + "session_key": "08f2d2a797b7c29fe9fff28d7e3badf6e107ebfcf06c12b74d693b3e68b31ef9" } "#; pub static TEST_VECTOR_P256_P384: &str = r#" { - "client_s_pk": "025d48e4944bff38e99305202d217b4497311af58ee2db18e51199ac416e0d4aa1", - "client_s_sk": "45c55050c92b1b8a6450b7389407e119c0916b967edbd5ef04b98763c36fe2d2", - "client_e_pk": "0387be21578cc1e516c4b26acca3be89352c77d4be8885b52b80199b9c98ec685d", - "client_e_sk": "6a268ef3accba7bf9baa8a3ade90a8e3157f971b372c05610d360f00d2471c60", - "server_s_pk": "0316dd82162ef92a6e04003b9ddfb7dea5f44b2249b740ce9a9576e0816458fcc9", - "server_s_sk": "45525b301b14d389020a83d921ec60e38b7ae678c3237e25f601a58dfaf8cea2", - "server_e_pk": "026a291e2427fa5640575a1405f9cfe47e891b088a5cc7792ba837cc4f97fbcc8e", - "server_e_sk": "fa0c9927cec1a60594aa3766778650c40b13d0210170b27f1291891fb6906881", - "fake_sk": "2664472cab25259bfa5623b25856d02577f0ea3ef162a48de454ffa72c9e405e", + "client_s_pk": "037db920a7fc17c1bddf3d5df4facf09e3cccea3971d13720d9309607cf1548470", + "client_s_sk": "7bc64eb39a8a92b61e419d785dc9ac5a23512b03792bfe5f8e64b9373681559d", + "client_e_pk": "02eaf7afa8c4f1676697f900fe796efd845a4f5ef515ef0ee20e561cb33ae95728", + "client_e_sk": "788e7d17e5a6bcde79b23b4dc246c62cba389417d49a08a9a765e0c0a1b3842f", + "server_s_pk": "03ac410674716104544f3d11ae559c5e4a41ed04242b463151f6d23b5491518d00", + "server_s_sk": "e53eeac20735410158c71cbfee0eb8432b765a8dbd4d0ef94acd161287815cf0", + "server_e_pk": "036d6dae7adb9b213593704733af25e0b21f9cd01944ac338731117a1c4719517e", + "server_e_sk": "f92d20c842f55ca70fdf4ab60ca8d334d5cf50e2dbfc7028438ecad072e404a2", + "fake_sk": "16f7b5939d467ff0331239136fb7303d5e00b250961e814d7af69dfb5ec09df7", "credential_identifier": "637265644964656e746966696572", "id_u": "696455", "id_s": "696453", "password": "70617373776f7264", - "blinding_factor": "b9d8dd9458caf0bea43656f70afb32b33e831c8b56ec7b78334cbd0263b7f44f483ca2037b19cbecfb91453ad3017321", - "oprf_seed": "ec204830e312944acf9a5d2b3faff8a6d70f484dec564ccc3e40f2717b31bc15d074878b16c665bcfd450289aa3e4190", - "masking_nonce": "be784a14e05d4644ab726b2b939b7843f0398c53a3a698cda210b6fb726cf1c887442493107d00b893ec6a4231ae77c84c0958b6453fc2756df66160695d93df", - "envelope_nonce": "7321efdb895d8a217cf416f72474c42a35fa1815b5723936df5f9e4201faabb7", - "client_nonce": "a041203a967e5602373ea635716ef2c46ce29bd1c4084af073b891453100f874", - "server_nonce": "2ceb71969b1b956c5dcfcf01a3280b812fc7f001ae0eacdb003c28012106c5cf", + "blinding_factor": "b40568111e70ebea8438b9f1f97c539303fa3d93cee042c667bedb84b6e7071c51ac96493d3adb11ccf869ef9921265c", + "oprf_seed": "7210acfff18a93ab47c6c42feceb1e5c3ac1193c0e30c2895a9fbea67367d5b8bfed16c1f5ed3ef6578df49b54c1eb99", + "masking_nonce": "bcc579db0a166ff34cdfdc8914c28b2e0c534bfd1f8bb7be31eeea8975f8bf3c94cd8b3aed50cc7ea101b00de4b497a00b0a76de27c06141d8b4057a81366504", + "envelope_nonce": "6017d1c66048ec0eb730e1babb55f9331f45f3e6c9590d2a31df97b7e37ddad5", + "client_nonce": "d463315ead5aad791718f83fb49c302e7fc8374c8fa5aff9e276de577e347f0a", + "server_nonce": "d17664037d19f576b831dc581f19bff796777eb633f7c9ba67485df7989060b6", "context": "636f6e74657874", - "registration_request": "02bafb4ec30e7f957f9021726929b29323ac3a9125c494025b6ddc929ca8e3f524e89cadd5517d7c807af4a3facfe340ac", - "registration_response": "023d87194e69a126a23df959fed3bfa3649eb3b16fd564b21cdca3af9878b06c7957ec0066f773880aca72cef8e166018f0316dd82162ef92a6e04003b9ddfb7dea5f44b2249b740ce9a9576e0816458fcc9", - "registration_upload": "03acf1912b03a4af014e1071499a2132ddf201031c07b09db7586f301cbe879cf813d90d135613a946bc796c11b0d0b80573410f384c1523feff06509d4f1a1fb5ef4afd5c8ec01d1ba1c302317009480e45c55050c92b1b8a6450b7389407e119c0916b967edbd5ef04b98763c36fe2d2fc077770d06cdc08c46017928bb1f249b691a1ac7324059523c8744aa8d606e79d75f7aa58143e2ad093bc905ddde075", - "credential_request": "02bafb4ec30e7f957f9021726929b29323ac3a9125c494025b6ddc929ca8e3f524e89cadd5517d7c807af4a3facfe340aca041203a967e5602373ea635716ef2c46ce29bd1c4084af073b891453100f874031980cf56588b0bf278d6ff657fbc4dc852904fe557a4e4c42704410b0cf7774f", - "credential_response": "023d87194e69a126a23df959fed3bfa3649eb3b16fd564b21cdca3af9878b06c7957ec0066f773880aca72cef8e166018fbe784a14e05d4644ab726b2b939b7843f0398c53a3a698cda210b6fb726cf1c8962dc379b362b64b8a5edcada6dcaaae83e30e7bae54c5566fbb239e56277e9fa309e1dcde3c0cedb17d2a8fbb7366c858bc96949efb9aeaa65f5eac096415d39d3822c91903a16650b53723c3d2d65964fbaea214f2cc9bf1e278743dc01ba918be2c2691c4400b3a3567fdbccf90404cfa0c9927cec1a60594aa3766778650c40b13d0210170b27f1291891fb6906881035ed7d7a3a824e138ee7b31f20668c186602eb72d2bca3f532e6f13f1821b7462de22732fdee6f66173f31536af4107b7f2278a0242cd6b52ea68cbec0994e1a762e31349e4696c6042c6532db735ee1f", - "credential_finalization": "eb1d6fcb2b418c6f44226f930ada292b160a3fafd910c5126234f59daf1572cbdf3bc350c344c58b71f5a70ecc0b6f8d", - "client_registration_state": "b9d8dd9458caf0bea43656f70afb32b33e831c8b56ec7b78334cbd0263b7f44f483ca2037b19cbecfb91453ad301732102bafb4ec30e7f957f9021726929b29323ac3a9125c494025b6ddc929ca8e3f524e89cadd5517d7c807af4a3facfe340ac", - "client_login_state": "b9d8dd9458caf0bea43656f70afb32b33e831c8b56ec7b78334cbd0263b7f44f483ca2037b19cbecfb91453ad301732102bafb4ec30e7f957f9021726929b29323ac3a9125c494025b6ddc929ca8e3f524e89cadd5517d7c807af4a3facfe340aca041203a967e5602373ea635716ef2c46ce29bd1c4084af073b891453100f874031980cf56588b0bf278d6ff657fbc4dc852904fe557a4e4c42704410b0cf7774fd8214e0a6f5986e398ebb3c46a1832d4fb13f32722a002b5683c4da1c73c1a3ea041203a967e5602373ea635716ef2c46ce29bd1c4084af073b891453100f874", - "server_login_state": "27a700043ac66429c63ca7aa53949571eec1108629b8eff4ff626b9da00765e8e6d1aa8ecc2d4f97820f5cfa36400fd8bddca7a4de01994e85d81758875d73e3f7377de84091838e8a6b5f24920208a5286a512cffc3464bc33118682c4c621c5ab35e96454a2aeef38702deb953f371be3389b7a347fa4d66db54205b2ecec0a8913c362909b583c0d359e379bab006", - "password_file": "03acf1912b03a4af014e1071499a2132ddf201031c07b09db7586f301cbe879cf813d90d135613a946bc796c11b0d0b80573410f384c1523feff06509d4f1a1fb5ef4afd5c8ec01d1ba1c302317009480e45c55050c92b1b8a6450b7389407e119c0916b967edbd5ef04b98763c36fe2d2fc077770d06cdc08c46017928bb1f249b691a1ac7324059523c8744aa8d606e79d75f7aa58143e2ad093bc905ddde075", - "export_key": "7f875d311ef6af7230cd5ab772119e8d54917ae52c89ed3d66e8ca61ed28e7bd37931acafcc81427279b2e2b77654d39", - "session_key": "5ab35e96454a2aeef38702deb953f371be3389b7a347fa4d66db54205b2ecec0a8913c362909b583c0d359e379bab006" + "registration_request": "03a0f591f03af589dd6b6d78aabf5757e999baa87831548cb6731f506b1e2e14a6334a7f62ba9ec57c372c3bac442d1a4e", + "registration_response": "027353de953418ad61fced7bcad3c26652620633a55a7636dc76042ac7c4dcf193f98e6a4acdf94773b64c51e63533b2b303ac410674716104544f3d11ae559c5e4a41ed04242b463151f6d23b5491518d00", + "registration_upload": "025b2480ac15a741e60ab2aa98b6956177702ef36aed9845447385e435cbfeafc671a5e5975284ac8f368f58713b115653998589b016474244cffc2b23d8825614eef7cd69c3947f79b3435f1ebc7d9c717bc64eb39a8a92b61e419d785dc9ac5a23512b03792bfe5f8e64b9373681559deb6e65cb0de70fc21b573c0ed440e7405b2ae2f8f9bce9c78e2ef996a715b53605933c40e27de07480631aed0bd33c21", + "credential_request": "03a0f591f03af589dd6b6d78aabf5757e999baa87831548cb6731f506b1e2e14a6334a7f62ba9ec57c372c3bac442d1a4ed463315ead5aad791718f83fb49c302e7fc8374c8fa5aff9e276de577e347f0a025c1c63d4c806e36a3e5a625119bf35457ea767e3872df44cb4b16436619d8879", + "credential_response": "027353de953418ad61fced7bcad3c26652620633a55a7636dc76042ac7c4dcf193f98e6a4acdf94773b64c51e63533b2b3bcc579db0a166ff34cdfdc8914c28b2e0c534bfd1f8bb7be31eeea8975f8bf3cccca093b0ae2e99d8fb8f3a4a0dee0318326e6ffd5e1179b75f9c9c444740f7c77a32fee047428adbdb013c0b7d3bfaa2ada026f66cb9ba26a2f43199c0435e52483789021b08ab02e36f838f5fe19ff157365f89a91d52a6ba3c6cf7b7f213cc466cd46cee2e9e05febf0741575453ffbf92d20c842f55ca70fdf4ab60ca8d334d5cf50e2dbfc7028438ecad072e404a202439a7c8408d4cb6bce05920b0ea424636b04ce5bb22d782f772d01e8a8c2cca7a78e66d9561ac031c53c6273c5ef85ab25933e3847d6118d220566087796b4a55a03dde8e92ae3f2b9d6ba75153af3f6", + "credential_finalization": "8ff58bd7e949f48d8171d627ebe8748266df3313415e1646e70358bdd706dda5ff95fc3f288a5f5e5884258ed781db10", + "client_registration_state": "b40568111e70ebea8438b9f1f97c539303fa3d93cee042c667bedb84b6e7071c51ac96493d3adb11ccf869ef9921265c03a0f591f03af589dd6b6d78aabf5757e999baa87831548cb6731f506b1e2e14a6334a7f62ba9ec57c372c3bac442d1a4e", + "client_login_state": "b40568111e70ebea8438b9f1f97c539303fa3d93cee042c667bedb84b6e7071c51ac96493d3adb11ccf869ef9921265c03a0f591f03af589dd6b6d78aabf5757e999baa87831548cb6731f506b1e2e14a6334a7f62ba9ec57c372c3bac442d1a4ed463315ead5aad791718f83fb49c302e7fc8374c8fa5aff9e276de577e347f0a025c1c63d4c806e36a3e5a625119bf35457ea767e3872df44cb4b16436619d8879db6d8af5c3460bfa07e1c0f3e7299a999616f7ed228973fb2a4298d2182f1c4ad463315ead5aad791718f83fb49c302e7fc8374c8fa5aff9e276de577e347f0a", + "server_login_state": "592f006478427c18837b704f84d65d238cf7663c8f06261d200606caae0b9388c7d6c209d3cfeed9ee9b3231bb4d45bd59dbfd8f3811c094466dbd29902de17b4feb99b549858feeb8c2b143a4c0e31dccc3fee94133585f1c587b9211259b0a305780c5e6f869ac13c0927ad52d268ea38aad06a35c6108a103c5027147aacf0be4d1bf4de1511184be1863173ec58c", + "password_file": "025b2480ac15a741e60ab2aa98b6956177702ef36aed9845447385e435cbfeafc671a5e5975284ac8f368f58713b115653998589b016474244cffc2b23d8825614eef7cd69c3947f79b3435f1ebc7d9c717bc64eb39a8a92b61e419d785dc9ac5a23512b03792bfe5f8e64b9373681559deb6e65cb0de70fc21b573c0ed440e7405b2ae2f8f9bce9c78e2ef996a715b53605933c40e27de07480631aed0bd33c21", + "export_key": "23b6aa31c1f9a5c3e3946f522b48ded3b1643cd1cc1ea9c749cfa602c609437e228567ee938c6bb4228b454fd43fce9e", + "session_key": "305780c5e6f869ac13c0927ad52d268ea38aad06a35c6108a103c5027147aacf0be4d1bf4de1511184be1863173ec58c" } "#; pub static TEST_VECTOR_P256_P521: &str = r#" { - "client_s_pk": "032c739596e568ff4da745ad022178fc0ffe03a4a6d5aaa6b34b71094e83912833", - "client_s_sk": "8bb560746fd3abbb99abd55da73150aae164ef3486b4dee052b899f06755de98", - "client_e_pk": "02b8bab4bca86248c3a450d18251eb6728e436c4740c3d304af458f6c4a1f7a458", - "client_e_sk": "6c4903de1c778f9aadc955b2e99964dd1dd9b0cd30a0e7c5b0a0504e8962101b", - "server_s_pk": "03375a2e63a432c9d84f0b3bd28ce6d084b0c9c28de28d4660f3c14685d9605636", - "server_s_sk": "7e10dab770f9604d634538fd9257742e9d21a3a3c1fc2c29219ec045dab2fad0", - "server_e_pk": "02c3c9669bbba2f2d00002588fea2926f7c5e8ef0253c2c863bc2e50818dc2200e", - "server_e_sk": "fcee43be96ea5ddd340d4a02ca873211ea21e2ff2cdded160ce7d2a90edd600a", - "fake_sk": "13cfd06b2faaf019e84402b40a40b91c2c5b79676d5b13cdb69a79e848dc041a", + "client_s_pk": "02f68d493a4aaa0dafba7a497b518bf562ae461e5a94521b4ea6ef10d83ea10e95", + "client_s_sk": "7c3b1d9c6a3d0d9c92bae07ee3e7cff301d40bb258236d5e458931520b0546f3", + "client_e_pk": "02b30325531a221599d648f1fcb299399104e8929edc90611650fdfeafe3626bf4", + "client_e_sk": "a4449c906318add56054f9b5c811df8a24e41861e846030d6b7566c590f9c3e9", + "server_s_pk": "038b84ea6da8ff623ec5c93b23b515786f2ed7c70df9b7561a0d274c24ff85f773", + "server_s_sk": "845326c3920e0fed13964706f3d3e9e8932f61623d13cccaa5136ad51826719a", + "server_e_pk": "029ead4a83156afefe5f65133f00a714f253e07a02a51444cbacc32c935cfcd9b6", + "server_e_sk": "f55ceadb966e7c52a22cac5cbfe0c36d58de4fb872067efa5132daffcd29c1ac", + "fake_sk": "4fea296d2a060d735a747af4709ca136cfcb21d9c9d00881450d568f085a2887", "credential_identifier": "637265644964656e746966696572", "id_u": "696455", "id_s": "696453", "password": "70617373776f7264", - "blinding_factor": "01ec03df3e28a196897c2fddaa1c0e5995cb230d48a469a591512a1f059c08724492d91b00aef931fa97f0bf7b091d7e7f0cefbca891aada132eda220cf665645052", - "oprf_seed": "656b729d66fd4915b50affb41c48fdec444333acf62fb40adc7252b7ddec492c1246558dd4e90f05f6c5c26dafef6c0c9a82f0abaafe2ffc4dadb99f15bc3ec6", - "masking_nonce": "966728e74ed5c8ca5a1b76b8b6d5dac2b0406d45083781bb71bf80c7fe33a9a71c9a15599cc43629f2384f8ebcc5965f37685d1184a8012e5673e0c1c8b458be", - "envelope_nonce": "2110e02a871fb9bf1d50db4a9a868eb5f682335a2ce55776b1450639d276ad3a", - "client_nonce": "040e46dd0d1000739133e9a615dda26c8d2cd112cb4ad1f00f59b8982543bbaf", - "server_nonce": "70347efc779281160b4c708d0aaf0be0292deb8954b9d5a1f20ea81695642a9a", + "blinding_factor": "00dfb8d59ec7c6c30d602ea586f95c261a1534b75d50382b56f707115e7e29d8e99380be3815a75772cdbb9e393a4986c2e3a2b32493d359a14bb7c9b1243775d823", + "oprf_seed": "b804b82bab5b58fe69b26b2d36b45f2132b8fc39e475474f28c16daf15e331da003b2112453ac5f1e9c810edb577028169509702bae2d581c2b3d461d4674101", + "masking_nonce": "2dc894b0766faad433d764ed5390a4b49f82fb9bee6c6339ad593f69ec160b4d666b3bec7a951180f43b0f418b91daa3478472132e3ed43efa48063e3f54a086", + "envelope_nonce": "32c86704619997fd811400e23b8392b56e5c466209756c82be90ad50cf6b64ba", + "client_nonce": "2703e80e6fb860835c2c3c9e4c119d94dec8adc521b3d5cb46a61d0acd9225e3", + "server_nonce": "8c256610902caa348fcfea73ed11b13941c3a1f77a15a6606dcf74a998f4aad0", "context": "636f6e74657874", - "registration_request": "030149c75915fc8a8ac27e1892b830c333757106b8ebbc5b0a30864583611c9761ef170049e8646a7f50eaeb2177104a996e4c97a5e7c2578e5981217564ee4431ddb1", - "registration_response": "0201e832759e0e4c05c30c2af7049c3319cf2f667d99be37140f46abeca05b862075dd4705474c47ef3249e89f3b5eac4a166c6f21ba77f0cbe885a5790973baaa90c203375a2e63a432c9d84f0b3bd28ce6d084b0c9c28de28d4660f3c14685d9605636", - "registration_upload": "02c30b220271ac9445557b1b2493de5e1092454d46f9473006f3a10713d197cbe774423797c2e81a709c1e801ed9057597630d116ca27c07e430710bb09764db082b3a85dc31e5ab8c572379b73ad40a26702410f78d08588b968a819fddca89418bb560746fd3abbb99abd55da73150aae164ef3486b4dee052b899f06755de98f6b38328d008ce05f66cf636134b5e30270ffdf344f59b8a9c14cc4eda6151441c42cfceec71233445863ffc23d797d33f954c38dee728635c3814318ab37f98", - "credential_request": "030149c75915fc8a8ac27e1892b830c333757106b8ebbc5b0a30864583611c9761ef170049e8646a7f50eaeb2177104a996e4c97a5e7c2578e5981217564ee4431ddb1040e46dd0d1000739133e9a615dda26c8d2cd112cb4ad1f00f59b8982543bbaf03b12441c880972b16d541731ea52a7f35e6072448a6e0445c8287f82ffda3faf7", - "credential_response": "0201e832759e0e4c05c30c2af7049c3319cf2f667d99be37140f46abeca05b862075dd4705474c47ef3249e89f3b5eac4a166c6f21ba77f0cbe885a5790973baaa90c2966728e74ed5c8ca5a1b76b8b6d5dac2b0406d45083781bb71bf80c7fe33a9a7d0fe7a6e820af247078af7ced81e84cb98f2e773ed325a51f60ff1f0e8869780d16eac217a2cdec283492774ab84bef020101762a71ec914e3faf528317b4898af4a81c87c321e516ec781dfe5d7106655045a8a357c042abb079876b197b9aa496ab3214ef13705807745f61d1bed0bcdddab4b64f8f6d2c635080a48734e3e17fcee43be96ea5ddd340d4a02ca873211ea21e2ff2cdded160ce7d2a90edd600a0206d79e5dd7f3b9e77e8747024384347a9fe72b5bbb7359e108f5abf96ee726f2b72211f0d22ada84ccba178792b2ad6e03a6a9946761de7611575738402cad9a67bf18216aed5bd45cbadf7a5b8d8b43ffa9a8dd5ac755a4a0b1d6f21e69789b", - "credential_finalization": "aee8f7607a84a4d2aa5fb4e56a7f991203f66af4d12f05478703b3c6cef4fa8dbcedb313c69c1112bec6b7edbd2efb9559c0a720d4af066a4b8597d832423eab", - "client_registration_state": "01ec03df3e28a196897c2fddaa1c0e5995cb230d48a469a591512a1f059c08724492d91b00aef931fa97f0bf7b091d7e7f0cefbca891aada132eda220cf665645052030149c75915fc8a8ac27e1892b830c333757106b8ebbc5b0a30864583611c9761ef170049e8646a7f50eaeb2177104a996e4c97a5e7c2578e5981217564ee4431ddb1", - "client_login_state": "01ec03df3e28a196897c2fddaa1c0e5995cb230d48a469a591512a1f059c08724492d91b00aef931fa97f0bf7b091d7e7f0cefbca891aada132eda220cf665645052030149c75915fc8a8ac27e1892b830c333757106b8ebbc5b0a30864583611c9761ef170049e8646a7f50eaeb2177104a996e4c97a5e7c2578e5981217564ee4431ddb1040e46dd0d1000739133e9a615dda26c8d2cd112cb4ad1f00f59b8982543bbaf03b12441c880972b16d541731ea52a7f35e6072448a6e0445c8287f82ffda3faf7c273133b44bd2f29a1546ade5a7dc3a6a622fb47eccaa5e13ef57bcd3a20d034040e46dd0d1000739133e9a615dda26c8d2cd112cb4ad1f00f59b8982543bbaf", - "server_login_state": "585ba0a46a81f792750d15daeb41626f68acef1431b62ac680ff3099db271b57cf30e91db995cf295e5bf02a8b7e6050bc1c5335b2111b2b9a1f8ede802f7efbdc293ad1489ae8d6aa03e4bcc59259a72cad57af857be5c7f382561b4d67dff85356233d659147565fc952ef99039a16d915c63f90ac3f700e3d554c939bf1b5641a965de4348f57e1c53c0927a58bf719c6f78471e416fda8212812d9a0c019a3744d4ff8ff0e53d7fa7d39943208d9e30effc4cdd331959389b995fa86b177", - "password_file": "02c30b220271ac9445557b1b2493de5e1092454d46f9473006f3a10713d197cbe774423797c2e81a709c1e801ed9057597630d116ca27c07e430710bb09764db082b3a85dc31e5ab8c572379b73ad40a26702410f78d08588b968a819fddca89418bb560746fd3abbb99abd55da73150aae164ef3486b4dee052b899f06755de98f6b38328d008ce05f66cf636134b5e30270ffdf344f59b8a9c14cc4eda6151441c42cfceec71233445863ffc23d797d33f954c38dee728635c3814318ab37f98", - "export_key": "8ca70931fce3e4238b8daa0479e14108f250534a009da9bffa06d86d59c03ca416ff2c83e579a81c1b1a4c6d382c0319bbf0ff9c1e147d007df68fd3716d652e", - "session_key": "641a965de4348f57e1c53c0927a58bf719c6f78471e416fda8212812d9a0c019a3744d4ff8ff0e53d7fa7d39943208d9e30effc4cdd331959389b995fa86b177" + "registration_request": "0201645d5136fe6e795250d03764ddb9f173a01fc98b89516040d6986caee4689afdef2eba490edd8f165ea0aba8a4b8a5aab4872e3a43e67fb489135dfdb0c9697226", + "registration_response": "03017246c8bc37675afb67621b65f32d4bfc311994ab2c0992d73388b69f45e0d7d2dd615ee9051414898bfb67774a1b45bf95a10e86075d8f79719ef604b0aed1be87038b84ea6da8ff623ec5c93b23b515786f2ed7c70df9b7561a0d274c24ff85f773", + "registration_upload": "03282b3965995a7fb66e7cf0d5777809fb1bb5a342988eab5effd13c3613749905ba83d6d1acc250f20c7d89fe34b3a6f154fddb3e7c54891a83448b7cd70291021a1b07f66e505e133a8391e4615d1627a6cc81d768a81b367796c14fb288f78b7c3b1d9c6a3d0d9c92bae07ee3e7cff301d40bb258236d5e458931520b0546f3e3ab65f998ba70a36de72bbfe92aeb0a19cffd85d4f6ccca21a795f1a92f538daffa7f0182128bc244fcce8d46710e0200a3f5710e88448b9ec6e655b215c75b", + "credential_request": "0201645d5136fe6e795250d03764ddb9f173a01fc98b89516040d6986caee4689afdef2eba490edd8f165ea0aba8a4b8a5aab4872e3a43e67fb489135dfdb0c96972262703e80e6fb860835c2c3c9e4c119d94dec8adc521b3d5cb46a61d0acd9225e302766181b9dd6fc190a68b809e5fc7254648e3579906b71ee101770ebfa959133d", + "credential_response": "03017246c8bc37675afb67621b65f32d4bfc311994ab2c0992d73388b69f45e0d7d2dd615ee9051414898bfb67774a1b45bf95a10e86075d8f79719ef604b0aed1be872dc894b0766faad433d764ed5390a4b49f82fb9bee6c6339ad593f69ec160b4d637fa7bd2777f479323db16208a4716fd4843dea0b11cd38bd785fe563fe806742b8892678094cd2a56c176ed3f0398ee8562a7c73d4c85a645e3c05c5a8ed1abd15469970fe1fc20f53443a6e87463d2e3476fcba3df8d30830264c19a044cb016bb9a0ecc1e97317a78994d73a3a6ca7a75c6d120d7f18e61020d3b5c53d1fd0f55ceadb966e7c52a22cac5cbfe0c36d58de4fb872067efa5132daffcd29c1ac025ca34fba174d96127a8336ae05afdf2c72395a318a1ec296446c4a164e9afd56337edc1b6dd88e5cdf65171e70d6808ec977ba7f23d495e299d2883293c24e811560b0a9a527df370f6216b3519c116b48e6a2a3756e5794053019a9b4d43bcf", + "credential_finalization": "6e7098c67077389e093057306f456b58c1ddb0e6c1c2001482526d938c49e595766d250f8979918fdbdf478ac3790448fb788470843a61b876fe1ea5fbe053cf", + "client_registration_state": "00dfb8d59ec7c6c30d602ea586f95c261a1534b75d50382b56f707115e7e29d8e99380be3815a75772cdbb9e393a4986c2e3a2b32493d359a14bb7c9b1243775d8230201645d5136fe6e795250d03764ddb9f173a01fc98b89516040d6986caee4689afdef2eba490edd8f165ea0aba8a4b8a5aab4872e3a43e67fb489135dfdb0c9697226", + "client_login_state": "00dfb8d59ec7c6c30d602ea586f95c261a1534b75d50382b56f707115e7e29d8e99380be3815a75772cdbb9e393a4986c2e3a2b32493d359a14bb7c9b1243775d8230201645d5136fe6e795250d03764ddb9f173a01fc98b89516040d6986caee4689afdef2eba490edd8f165ea0aba8a4b8a5aab4872e3a43e67fb489135dfdb0c96972262703e80e6fb860835c2c3c9e4c119d94dec8adc521b3d5cb46a61d0acd9225e302766181b9dd6fc190a68b809e5fc7254648e3579906b71ee101770ebfa959133da1fde1661c1ff90a25c2b1cb4c78b11ee2843c7195c14621448765923e79fb782703e80e6fb860835c2c3c9e4c119d94dec8adc521b3d5cb46a61d0acd9225e3", + "server_login_state": "240eb3210981c9841e05ec3187219ccba98a32adb96d6c30ca95cef3b900152907c877c3ea259c6e147ae9ffc877fb4a2f20a6e4b8ea4913dd4e6565f6171b7b495343a07d4efee6ec675d1cf586e2d9548edd3a84e327e5d4515abc88ac73485ea935608e6f47f9fa0f2b9fe9da3703be1935180b1462a8b5f2c927cd8d4c8a360c921a275536f3e0d2743ce1d29d8c6fc2b467c5284f81d3d3ceb397fe84eb2c5253d5e1422a2b37c40179d3158f2f36fa69083cb231a9c3b18614eba554ae", + "password_file": "03282b3965995a7fb66e7cf0d5777809fb1bb5a342988eab5effd13c3613749905ba83d6d1acc250f20c7d89fe34b3a6f154fddb3e7c54891a83448b7cd70291021a1b07f66e505e133a8391e4615d1627a6cc81d768a81b367796c14fb288f78b7c3b1d9c6a3d0d9c92bae07ee3e7cff301d40bb258236d5e458931520b0546f3e3ab65f998ba70a36de72bbfe92aeb0a19cffd85d4f6ccca21a795f1a92f538daffa7f0182128bc244fcce8d46710e0200a3f5710e88448b9ec6e655b215c75b", + "export_key": "adbbdeb5b644a516474318a2bcbb3598de6d228498ed35795c7e6c198b778235eea1ed16f1329d1d8bfa4a5c7dec6df873f7e4e33e7f4396c354114e8e5193f0", + "session_key": "360c921a275536f3e0d2743ce1d29d8c6fc2b467c5284f81d3d3ceb397fe84eb2c5253d5e1422a2b37c40179d3158f2f36fa69083cb231a9c3b18614eba554ae" } "#; #[cfg(feature = "ristretto255")] pub static TEST_VECTOR_P256_RISTRETTO255: &str = r#" { - "client_s_pk": "034ceebf297e4c3589c5b78aa67763f3df355b3a43b5e6605c1469874965d2f1db", - "client_s_sk": "cc4340c5dfae39e73a4e051b4ef6ee9317995726293c7c1f8c5d97c56887e218", - "client_e_pk": "03d4e8d350670bbcee522878d965bd921cc7d384fd6511620fbe4d8fc86d56f695", - "client_e_sk": "5ca0844c7321d97e2ed15ee27e494fad4d3c3c5d92788090ae1b397ab6307e42", - "server_s_pk": "02ddea159b3bce585de2ad2906f16c2094b249a2ceb48b5f12b00f31f0c2f99579", - "server_s_sk": "50af2c998fcbf19c5b74a6ce4930a4633d303dbff41fa79d32561ffbc63cb324", - "server_e_pk": "0296c3ccfcbd06f3c2a1d6042abbdb267d60db83b112a321072cb9c82d1f7876b5", - "server_e_sk": "f26e243267022bc2fa977e06f13f4af878a2728622da9bfa49773c5223b919c8", - "fake_sk": "b8fd0e0522f6110500e461d6b91bee700b44157cbd0689c3f0fb72fa502a59fa", + "client_s_pk": "0232f96ddfe56e7a2e4e074e9d74da74b6ab43149defe4d54a2710f69e5fb0e5c4", + "client_s_sk": "06f3aafd3cd50a21a8ac7b6aae44929521f30112e53b4efd44cc33d2bca6d517", + "client_e_pk": "03ad24e8e6a619155a479c068320d0fc8cc78a1ca504700d07102e8d330b9482a9", + "client_e_sk": "cee58bb709f1286cbb7b9c23755e91f943f824c3948329c003e31c87c128da1f", + "server_s_pk": "022020d0d92efdc484c29ccb655ef75ec55de0dba6ec04be729a8f6cbbb83daa65", + "server_s_sk": "23b159484b95295a44c166827c2aed69c8c4e5784640bda3b8f1c1718bd16902", + "server_e_pk": "038e2dd02cdc547694799613cf38e99c23c8f6a83da6d61049d56c11cbf776fa04", + "server_e_sk": "8580907e01d670f032d71731561a40b8e47d80eadcbb145cabe606d947eb5ba1", + "fake_sk": "fc96b76b218b21a07b776a13d60ca63d007ec607b919063978cc156877cee068", "credential_identifier": "637265644964656e746966696572", "id_u": "696455", "id_s": "696453", "password": "70617373776f7264", - "blinding_factor": "3c85d9bd4df7caa7ab504656dc19e2f53eb6b847e00e1bceaf00780f58994106", - "oprf_seed": "878c974fad8cc956d20aee8e9762d446328564fa38cf7696c88505fb4040263fc282e986a5301250ebc41052413c7397e5880af572abcf45c906e7ac80e5294a", - "masking_nonce": "7925937e78889ed58f6d0277d443ceecdb9f499ac290b8e6028ad46e6ec9aeca7b4a31ca2bef81546f60b543f4f3f38b24df9d8800f98e4d4575bcbbd0a061b4", - "envelope_nonce": "fe8ed22dc8556d23cf74a91ec2c2e625b471dcd6cb2496d5a350e1e6d34a1f94", - "client_nonce": "f8f27e9fa18019fceb5cfbda000f5e973cb7db8c955b4cbf2f549c935b6fc26c", - "server_nonce": "c4b7c6c780ff25a4ed456db54a012cdfcef8441603c51f1e7cc36ca2460c91ad", + "blinding_factor": "dfbbc4a3594923d5fc36b031a39b58acbea0dedf7f2a3eb94d0cfc581241910f", + "oprf_seed": "5604b0ddb0958dc82026b5f2be9043fc9187bc663b3a351c2727d083754ebbd43d86b0b9945989e60995d6b475caf6a1009ead4fb3963e377899be740ddc8106", + "masking_nonce": "f7f950a1d2c95dd3b5cb073a679f964a37972f4cef7735d1c522b6a007ebd2e643c2dc9dc4398f4697f9f49d8e3c5b6e6cdfffb589818cd9b6994cdecd11bce5", + "envelope_nonce": "67208e2b5df13b73591919d12041fa43f680e65e7aacd6f3739190707e6c99e8", + "client_nonce": "8d6a164dc61c87bdeea94f0ce375a52c2b2ac00a0c2ca5905403dd465250e85b", + "server_nonce": "d9c80cfa129343dad3762907a0a6a9c87c54660f7936c5d4a69a3171e9d5b2eb", "context": "636f6e74657874", - "registration_request": "9cace2ee452a7cc0399c4ef0a631945e1452eb5179060593befbf773501fdd0e", - "registration_response": "d0da8366eda588b5b4a54b1b71d3c9c498c18e1e91a5839aa1d09fc2e989340c02ddea159b3bce585de2ad2906f16c2094b249a2ceb48b5f12b00f31f0c2f99579", - "registration_upload": "034548b2d9fdd7f1cb67a2d5d236ab1b9df3500c337746c526b150b56cfe3d6d61c2a07366823e4f02cba7e2aeca0c216f3e1f8f1c8ae4e6ddefe3f897daabd43c48894cadb44242f198a437c72927992ba150e138013f6d1bb2b03890ea9af31bcc4340c5dfae39e73a4e051b4ef6ee9317995726293c7c1f8c5d97c56887e21839c328c3ac431ccedc9a8081465da5ad0dc419e396fe589047ffaa00cea0621ceb9824029cb338ebb7dd619f1afcea11d96a1fa3972ad6c8135a160d4d5472e3", - "credential_request": "9cace2ee452a7cc0399c4ef0a631945e1452eb5179060593befbf773501fdd0ef8f27e9fa18019fceb5cfbda000f5e973cb7db8c955b4cbf2f549c935b6fc26c0208cd4a2392a5209096e1847c98aa74d75fb2f7912bc947e098c03f6472b40f1a", - "credential_response": "d0da8366eda588b5b4a54b1b71d3c9c498c18e1e91a5839aa1d09fc2e989340c7925937e78889ed58f6d0277d443ceecdb9f499ac290b8e6028ad46e6ec9aecac7b63a9719c75945ca1952ebd69d953ca843c92e9b7ca7123829989f7ee819f8658c97db066a277e85a8813c8018ba074a51cd25073d554f303db78e734137c3a0ed93d75b562adc46035c3b16780dfa2eb37ca2a746535882e44ef8002681b23f7a432b95146e7368b9fd895bee11cb12c4d9fffbcabfc48f384773ee00a95694f26e243267022bc2fa977e06f13f4af878a2728622da9bfa49773c5223b919c802ed5af74303cc02051400f12dd70f4e65cc7f1f16d302780a325f4df2c0eb13c594a88447505b07ed33dcdf4e8f857793fe12fb3e01bdc31fecf61380254f74e1f87b96155f9bf668313f498fb5acd4336b1c47066389d301005a52aa9aecdd6c", - "credential_finalization": "f36f0a0afbf8c11164d35954c101f268909cf0ce7e1616bb9f6b8a4594562c87860d455a926a894cd4d580d6afc6693d00e4e8971db5272c5ca20567e49edd77", - "client_registration_state": "3c85d9bd4df7caa7ab504656dc19e2f53eb6b847e00e1bceaf00780f589941069cace2ee452a7cc0399c4ef0a631945e1452eb5179060593befbf773501fdd0e", - "client_login_state": "3c85d9bd4df7caa7ab504656dc19e2f53eb6b847e00e1bceaf00780f589941069cace2ee452a7cc0399c4ef0a631945e1452eb5179060593befbf773501fdd0ef8f27e9fa18019fceb5cfbda000f5e973cb7db8c955b4cbf2f549c935b6fc26c0208cd4a2392a5209096e1847c98aa74d75fb2f7912bc947e098c03f6472b40f1a5b2d3abfd386b53645b6372ca91ebf4bcfab139646e1ccacb4c8853467708e10f8f27e9fa18019fceb5cfbda000f5e973cb7db8c955b4cbf2f549c935b6fc26c", - "server_login_state": "588af0acb3e8a3c01dcf092574a42af600e873af562837f698f7db257b4de0248adaa8f1616bf868817396cacb6dc7aebee7301982afbf124fa871580f0e6ccad782a49b66c676013562f5ce02b15dc4b77b2bd6ec2fca173fb1d58fa7b359aed976c29a53fa0609ea12e60134a7d938584f467f891500ace2e3263c2b93d1c653ab94cbefac77f220e58915a7b4ef56255761a302815f4c5a8d4f4361f8ac8b616c73602a755e380cff5f9060615cb9a2c80df6d9d8ddeba8c973f4e2cae549", - "password_file": "034548b2d9fdd7f1cb67a2d5d236ab1b9df3500c337746c526b150b56cfe3d6d61c2a07366823e4f02cba7e2aeca0c216f3e1f8f1c8ae4e6ddefe3f897daabd43c48894cadb44242f198a437c72927992ba150e138013f6d1bb2b03890ea9af31bcc4340c5dfae39e73a4e051b4ef6ee9317995726293c7c1f8c5d97c56887e21839c328c3ac431ccedc9a8081465da5ad0dc419e396fe589047ffaa00cea0621ceb9824029cb338ebb7dd619f1afcea11d96a1fa3972ad6c8135a160d4d5472e3", - "export_key": "87120b54a6eb8fee9fa4b2459d1d34e1db01bee10f3716a47fedb9f683f241a0782ba6c715b0b62986787a46a52fa54e009e5ae697deb725e3797ad62eaf5c03", - "session_key": "53ab94cbefac77f220e58915a7b4ef56255761a302815f4c5a8d4f4361f8ac8b616c73602a755e380cff5f9060615cb9a2c80df6d9d8ddeba8c973f4e2cae549" + "registration_request": "608d1b79841130d796b3776a1b3e6a8928e0e3660a4651fd333a8a92b6689f3f", + "registration_response": "c41a3ada81f9e1f952781123189201e6369d11f25d6a075312107b768e1db512022020d0d92efdc484c29ccb655ef75ec55de0dba6ec04be729a8f6cbbb83daa65", + "registration_upload": "03fe8657649536f98f0fff03c793ddf1cc22ac08f016ba2ca015091698eae0e4a483ecd9108dca9b3108102a54caab02c0ca2d4142e0009b08379120d55a377a8fb4630eb60376a33cd65c0619abfde09e84cce4bac9b6ec560169863d8067a35f06f3aafd3cd50a21a8ac7b6aae44929521f30112e53b4efd44cc33d2bca6d5170798634677cccb653c747c365c19ffb233b4e02e7100646c66bf817b0ca8fe6a75201cf946c327fab1806b54670e33bed844a17415c8319551919e8745a0ccd6", + "credential_request": "608d1b79841130d796b3776a1b3e6a8928e0e3660a4651fd333a8a92b6689f3f8d6a164dc61c87bdeea94f0ce375a52c2b2ac00a0c2ca5905403dd465250e85b03fd9440e72a09450c0b5f4ad285db8c74f5a2e3ab341ffe60f5a7dc53214b6232", + "credential_response": "c41a3ada81f9e1f952781123189201e6369d11f25d6a075312107b768e1db512f7f950a1d2c95dd3b5cb073a679f964a37972f4cef7735d1c522b6a007ebd2e6ec35a603b9d56a7a7b5aa789911f23e848b6258634e9bfaef10a35650ab4aae2de27a7f5e1793be3351f7e641a632f6cba604399010d58df2bf037e3de8fc4a7c04851aa331ee491ab3286842b4538d77f2cf0ebbe31ab82dfcd1211f8584cc05ef042067487afcf082488bbdfff7fed6ac5338db2b4e9b138f051d0227a2d06a28580907e01d670f032d71731561a40b8e47d80eadcbb145cabe606d947eb5ba10203ca7969c7e281a44f91bc1b69960618aea65fe36b1812f1d32fbbd36c32e48a11a2e5edeb366be5f67ccf2afb512d98e4a419817cb2284dab7962b480e90f092be420563d003719c85aa829779b2d74e578578d23028ebbadd66426b819bcbb", + "credential_finalization": "de3e8259ede24455b670c823972d29339ff5370fee1b182df47335d89e2aef7df9d430fcec990db1c81b2b4d67649042d87896d5cafd8f232ebba508ddb67666", + "client_registration_state": "dfbbc4a3594923d5fc36b031a39b58acbea0dedf7f2a3eb94d0cfc581241910f608d1b79841130d796b3776a1b3e6a8928e0e3660a4651fd333a8a92b6689f3f", + "client_login_state": "dfbbc4a3594923d5fc36b031a39b58acbea0dedf7f2a3eb94d0cfc581241910f608d1b79841130d796b3776a1b3e6a8928e0e3660a4651fd333a8a92b6689f3f8d6a164dc61c87bdeea94f0ce375a52c2b2ac00a0c2ca5905403dd465250e85b03fd9440e72a09450c0b5f4ad285db8c74f5a2e3ab341ffe60f5a7dc53214b6232d8a6390659bed9c40351d3d924d3da3301c2fa009db33185eb3dbc99e05b56338d6a164dc61c87bdeea94f0ce375a52c2b2ac00a0c2ca5905403dd465250e85b", + "server_login_state": "e914ad49288c5e371acc03fda464419eb654adcef9c0ea0d95bd4dc4f667a0584de5f3e65186a7192fe4148a5329dde7ae2bbcd709b337cb498b76d7c3dfc0dfa52a8fc36c6ef488395d0d0b972323c3ccd070818b8b2aedd7e3fce6c1c28bce065420dd6932cc26d4faccabd909089bbe3028c729798ea45817dba4e669ecc022cac476937370465c3ac6e71999779cb6e0b6bc548269ec255c56143e906fe8298a34116000d0539f85f0f27d7e4f362498e098d8aae2a5d33005627a177aba", + "password_file": "03fe8657649536f98f0fff03c793ddf1cc22ac08f016ba2ca015091698eae0e4a483ecd9108dca9b3108102a54caab02c0ca2d4142e0009b08379120d55a377a8fb4630eb60376a33cd65c0619abfde09e84cce4bac9b6ec560169863d8067a35f06f3aafd3cd50a21a8ac7b6aae44929521f30112e53b4efd44cc33d2bca6d5170798634677cccb653c747c365c19ffb233b4e02e7100646c66bf817b0ca8fe6a75201cf946c327fab1806b54670e33bed844a17415c8319551919e8745a0ccd6", + "export_key": "ec8114329e7b0e00bb262fd04ee14b647ba641539434141381c6226c7946c3aa88bf8a47b61ffe21cba6108b630de7c4e26a84a700cbbae0ac476297c53680e8", + "session_key": "22cac476937370465c3ac6e71999779cb6e0b6bc548269ec255c56143e906fe8298a34116000d0539f85f0f27d7e4f362498e098d8aae2a5d33005627a177aba" } "#; pub static TEST_VECTOR_P384: &str = r#" { - "client_s_pk": "0354a366fe515cbdfc1623e2340d0f71497c0ddc994222604824e4bed8656635cb90bf8a988eecc7cc4d56d6f46e5a4c09", - "client_s_sk": "b1ad256d64c77833840d0c576d39b3fe250f4e7fbfd3cb63451b7a8bfabf8c597d1040d6597041bee75cdfe66636698b", - "client_e_pk": "03c2c93779e14ed050d52594e5a519da923bb40502933810c8d318cc97d5d3a691271e4cc09139130a58f7eb0afef1a659", - "client_e_sk": "1d37fa72aa7fd3d3a6a027619412f8fd169f8938959bbab546ae17847463fcbc7e66838eb304bce258afd53b7634cab3", - "server_s_pk": "03d729ce50ba1437235658b888234f1ea1d25df59aa75fce2b75583d8c41af1fc375ee15d416bcc849edea7a16fe93b921", - "server_s_sk": "d10405be775a6c87cb3504d783ea0d3f1fa7ce5555c2688b81c85c4e23942d9840be46991904c960eb8035e4d007ca95", - "server_e_pk": "033bb335d8c2ad6382a297c667914af3394a7702b730d75ad7b605d2ae7e8f2ae4ae0738dedba04be34004458b9c18e1f9", - "server_e_sk": "1dd578294d8db225b714d4bf77d0794c55a31bb8973657e08c8771ee8725486b934a4f8fa9cf47290967fa6a972eaa83", - "fake_sk": "b55f4f0af32b354fe4bde966b0423ab9131cbfc8a020a770f312b8b618ec53c465c9eb16347d0fc663fcaed41e4c6ca8", + "client_s_pk": "033f6e7ad66b185a7ef6ba32525f28bf6d0519030ee7bd78f66020b9a0bbb4bac0443f345cd470928c7d4a24e68776da77", + "client_s_sk": "ad4183e0cd7d488df286d06a811623888f6de721a9cec6f3e5b003c24ee5a83c09311f6f049dbe9423d4105424989d57", + "client_e_pk": "022dc08c5eb54748862888dcdfdde660521494fda850ccd5278eb907a31703a56696aaaa62a608c36f980768fb0ee14085", + "client_e_sk": "f867fc2d847a43d420551716718a187ab1965ffbdcdff85411c691efb941fda913bf7d5b6e40e31c997ee2cd314d07c2", + "server_s_pk": "0377169b0a037218452a1199f38189eee125792876c024fdb69aacf58a264351119f7d4cad603e0a3b95f85188a1d5f27c", + "server_s_sk": "f0e0f9465cba4fe1abca6cf0188c2094ddb41245bfb915dfe086a49389ef7f6d05a1e28ae91f1dbd0ba9cf49422f5a41", + "server_e_pk": "02a71364c394b387e483ff0b49abcc124219e8192798586b581e90c7c6c15416a2258bcc1bee163ddf4c180b1fdef7c57d", + "server_e_sk": "47cb0c964ddcc830029742e77420b9aa522d432675042beed8bff540b64ad018c3a11bd386b3ffa940b2c70e5cb08fa6", + "fake_sk": "e16d25fec93c4aba2f0be3892f5a19cc2d0426bf08a873ab318b1c1077ac998b24534a487991bd76ecabf3880501211e", "credential_identifier": "637265644964656e746966696572", "id_u": "696455", "id_s": "696453", "password": "70617373776f7264", - "blinding_factor": "14051146ed8b782bcec67b902c39a4deaf1c7505c3445ba3ddafd5e8b25f044e4d9d5cfdfc224027472c487fb8b0331b", - "oprf_seed": "3b49b3e4f07c49714ccef44600963a8b8402a24d2cca84c6ed32852401756928e56ee4fa529fbb3b8e7f712b6a410ea2", - "masking_nonce": "2f6dc4dfb831260ef4e92c749eac9ce54a67d647cac5adc65508d72e9ca9ae19aaec426e4faec39ecdb9319d1f29873db96a8ac323cff41267c569d8e44d356b", - "envelope_nonce": "5df1e6d2383fd773c2027f0fdd7a74b0b7bba5d0f38d57f0b89c4884935b4081", - "client_nonce": "811120f15836d3caff504f3957a5f7424297dc3aefa19cb2fa017088362b55a6", - "server_nonce": "517ab0d8c0045bfde47d9bc3a97cec573a13a2e41760d6fbe910d7b01f23a21a", + "blinding_factor": "cbba5f207e6c49a2153a397078ef9375af1168731efae4cb8534337d76af27d0d34d278e3a4e14c0d5974a932ef439d6", + "oprf_seed": "fe64c6fc5a9a298199f65eda02424919e1c72671264be1cd0342a909cda7f59feb930295b18fe9cef1757113b26184d8", + "masking_nonce": "d4946b913d1ef0304cb215fdc795332c23de2ecccf34e9735f31151c5ee4ae306cf8845804cd9d6a18650341ace4bfa0bf9cff2594012453782c0e1b094b2eee", + "envelope_nonce": "65f32b6122d0dab77800c4316e04b41fb205a0be12ebb5f9eeec0320db95fc2d", + "client_nonce": "84d9643d29c4dc7f8bc1470303ac567f030f0364b631a0a48aa8e6a9d977df9b", + "server_nonce": "985f1f9272a0231cae7dfa6d8686d6a48caf0f6b5aef488be811f953626e8c8c", "context": "636f6e74657874", - "registration_request": "026f48f8591864dc85e976825a9dd842c7af248426010618e625b7e133681e97297fc28d6a3882eec687ab3d80a436abc6", - "registration_response": "03c38a6013375388888bfa77b85f06a2f988ee33e79f073b3b32ef2fbb46071666a6f1a2170cde6b6c38942569fb3749c503d729ce50ba1437235658b888234f1ea1d25df59aa75fce2b75583d8c41af1fc375ee15d416bcc849edea7a16fe93b921", - "registration_upload": "03403427023536efbdbbccb035f343462a90cb7e02ac7f27ed6ca8030b4af35fb8e4a4025c38dd556a1305c21b92abf1043fdc29cd29d6fd43ac741b66ddca9b0097c4563a2ee087f66324754bf5974e5ecdd3028d45b3367bb98ba1e3e44d53a8b1ad256d64c77833840d0c576d39b3fe250f4e7fbfd3cb63451b7a8bfabf8c598ff0fd15685256f792398ca143e282611819c873e62bb847a0f3fd23f2e6b5ea0ae8af3def5f4313030200cc3b1f335f", - "credential_request": "026f48f8591864dc85e976825a9dd842c7af248426010618e625b7e133681e97297fc28d6a3882eec687ab3d80a436abc6811120f15836d3caff504f3957a5f7424297dc3aefa19cb2fa017088362b55a60320d9935c0e8135b508ea75f72085dedd2e756ab8765c26f8969f0dac0ab6a7c5aefb2c879f26d6177cbc8e1a5c915aac", - "credential_response": "03c38a6013375388888bfa77b85f06a2f988ee33e79f073b3b32ef2fbb46071666a6f1a2170cde6b6c38942569fb3749c52f6dc4dfb831260ef4e92c749eac9ce54a67d647cac5adc65508d72e9ca9ae195a6608c4a3bb3ace24778357d8ab6d84f9dd02131442aae571d5878ee2a8a732d4a99055683b0685a69cd54bc5686ff5cd7916c772dc7be348167ec8fb51b00e0b6b6a30eb0870f7c62f89ea7eadf6fac8c1e171afed14192633988d4accf8a190c18430b754b599d9a876eadd5a7661e5fffb91160f3738dc7f595ac651a7962455a31bb8973657e08c8771ee8725486b934a4f8fa9cf47290967fa6a972eaa830235c701ca67b34b7d538f16ed96a480acdbfd8b716fb4e37c1a7459baff2d5dfdc5c899776396994119f83e9cbbfb91439e167d14476f5b21d2e38e2c02c42557d731818d98c09f90e754d8202e35cffe0bbaedf209f99dc3f481b5ef8016df45", - "credential_finalization": "70b1618194b315fa860fb4f8b1269f1aa0aa7fcc61fc5c871be5481043fb926221faf53320bc50b59048beb4a6eb2d16", - "client_registration_state": "14051146ed8b782bcec67b902c39a4deaf1c7505c3445ba3ddafd5e8b25f044e4d9d5cfdfc224027472c487fb8b0331b026f48f8591864dc85e976825a9dd842c7af248426010618e625b7e133681e97297fc28d6a3882eec687ab3d80a436abc6", - "client_login_state": "14051146ed8b782bcec67b902c39a4deaf1c7505c3445ba3ddafd5e8b25f044e4d9d5cfdfc224027472c487fb8b0331b026f48f8591864dc85e976825a9dd842c7af248426010618e625b7e133681e97297fc28d6a3882eec687ab3d80a436abc6811120f15836d3caff504f3957a5f7424297dc3aefa19cb2fa017088362b55a60320d9935c0e8135b508ea75f72085dedd2e756ab8765c26f8969f0dac0ab6a7c5aefb2c879f26d6177cbc8e1a5c915aacb7bebc8c569c8872421541d13abaffaa76f1243e2a3ee96af42238e6917e71df01c51b48fa036eed2a3ff6a5dad6fe87811120f15836d3caff504f3957a5f7424297dc3aefa19cb2fa017088362b55a6", - "server_login_state": "f3aa5959d422531460661ef47f20aec52ea0a0dafdf328df11d90c435696dde0de0e586e1c3af22de0b2c53756e0b1b68ea64f740b789b82ac9e14176210c06b830bd57938cf81727171892463b4f11c1543a7893de405c0508bea2a72e69b6d0a84dd1ac4f23d000fe71a40f119bcdb416fab1fba8e1ad4d968fa2e80232d95f56848df4a0420294c30b02df7e5ce44", - "password_file": "03403427023536efbdbbccb035f343462a90cb7e02ac7f27ed6ca8030b4af35fb8e4a4025c38dd556a1305c21b92abf1043fdc29cd29d6fd43ac741b66ddca9b0097c4563a2ee087f66324754bf5974e5ecdd3028d45b3367bb98ba1e3e44d53a8b1ad256d64c77833840d0c576d39b3fe250f4e7fbfd3cb63451b7a8bfabf8c598ff0fd15685256f792398ca143e282611819c873e62bb847a0f3fd23f2e6b5ea0ae8af3def5f4313030200cc3b1f335f", - "export_key": "939a56d04995e2dd7abcdbf8f8a0282587727eb9949f501364187d5b73f6f77436a316189f6ca249a27bcede28c5c61c", - "session_key": "0a84dd1ac4f23d000fe71a40f119bcdb416fab1fba8e1ad4d968fa2e80232d95f56848df4a0420294c30b02df7e5ce44" + "registration_request": "039722252574d3fc4f6cecf3a98849120eaec6a8cca8be2908579400b3518170be5bfb356477c9433e6c11e1c54a69e1ba", + "registration_response": "03d911055ff0aa395efae628d9d8e07103f11f4b8b831d67588323dd35161adfc82aa931d91905aed0055b33593a94da8e0377169b0a037218452a1199f38189eee125792876c024fdb69aacf58a264351119f7d4cad603e0a3b95f85188a1d5f27c", + "registration_upload": "0347e8859a8ac88e3903d49288e257c80d4e65ae7477e24eba59e85db568796af011cc0744a67bbc6a8d24446f013f6c05a73dade265e529363719f81b602982187b6a54e11c4b874956fc9019faa7517851b0d0b3c5f810f2cf98f3d285c8606fad4183e0cd7d488df286d06a811623888f6de721a9cec6f3e5b003c24ee5a83c15e31beb4c83cded57b5135c8a32a3f30772779839b0b23143d4be40a74fd67b941504edab34c5b2c3d6e138f87025e3", + "credential_request": "039722252574d3fc4f6cecf3a98849120eaec6a8cca8be2908579400b3518170be5bfb356477c9433e6c11e1c54a69e1ba84d9643d29c4dc7f8bc1470303ac567f030f0364b631a0a48aa8e6a9d977df9b029a033668dc7c40058d20dd6b82b7646d7cbd0186b28808f0638882b3d71c085faecc9744c9bfd123f46691763b2d9502", + "credential_response": "03d911055ff0aa395efae628d9d8e07103f11f4b8b831d67588323dd35161adfc82aa931d91905aed0055b33593a94da8ed4946b913d1ef0304cb215fdc795332c23de2ecccf34e9735f31151c5ee4ae30e300e280dc7215848c9d11819c2835d0c03c56511f870ab8d3332aac08104f068e82f0629af4824d4c8be2d1d60fa2a46a4db296f4d04e30c6a7c6cbe8afa2a6c185d6b5316cce9d6aba9fb33b97c448c739eec12ecc23fad8c88fd06ebc6e18c5effd69522ca87d52d78b71f8d6a25c1d5cb434505467e7f98173cace6b03224a522d432675042beed8bff540b64ad018c3a11bd386b3ffa940b2c70e5cb08fa602835f0726a913b28e8b5ffbad58362a0f44177a24a99f3204290b6fb1a9fe29f0adc725029b49f2af6e2815d943116468651d8d9962b7bb634c88ac581d07bafa31a9492d92c1ad6bf56668656181da8d2acc8d454dc332ff68588c504c682a7d", + "credential_finalization": "1ecb78f519d7988f435223672b70dd8ece9c1879323f5576bbeb8470debdf5b7e4681f40421d9fcfeb86b43c855ce138", + "client_registration_state": "cbba5f207e6c49a2153a397078ef9375af1168731efae4cb8534337d76af27d0d34d278e3a4e14c0d5974a932ef439d6039722252574d3fc4f6cecf3a98849120eaec6a8cca8be2908579400b3518170be5bfb356477c9433e6c11e1c54a69e1ba", + "client_login_state": "cbba5f207e6c49a2153a397078ef9375af1168731efae4cb8534337d76af27d0d34d278e3a4e14c0d5974a932ef439d6039722252574d3fc4f6cecf3a98849120eaec6a8cca8be2908579400b3518170be5bfb356477c9433e6c11e1c54a69e1ba84d9643d29c4dc7f8bc1470303ac567f030f0364b631a0a48aa8e6a9d977df9b029a033668dc7c40058d20dd6b82b7646d7cbd0186b28808f0638882b3d71c085faecc9744c9bfd123f46691763b2d9502611f451bf975c1f6c31c33cc6ca6e161c4dc50ceeab142da1db5522e33bafde902011023aac9730b40909e979034afb784d9643d29c4dc7f8bc1470303ac567f030f0364b631a0a48aa8e6a9d977df9b", + "server_login_state": "7d2d62e042b2a8550245a48ed1a04bdfed3e2ce55983d55040025e6606189714b94d2729ac87e2ad245846f96288c6b3f38e7655852860005163bd361e880b83c5b3112f15fa77d4df3f2112e03861d2ce18daffb0eab5a85c6c46d1a5ad1a19a6c926eee9908f9d7283767301e08333e1a41c562274859871a24ee48e6a25421fbc87ba68c63f5396d2885782abeaac", + "password_file": "0347e8859a8ac88e3903d49288e257c80d4e65ae7477e24eba59e85db568796af011cc0744a67bbc6a8d24446f013f6c05a73dade265e529363719f81b602982187b6a54e11c4b874956fc9019faa7517851b0d0b3c5f810f2cf98f3d285c8606fad4183e0cd7d488df286d06a811623888f6de721a9cec6f3e5b003c24ee5a83c15e31beb4c83cded57b5135c8a32a3f30772779839b0b23143d4be40a74fd67b941504edab34c5b2c3d6e138f87025e3", + "export_key": "80050e6f74171953062390b4af3f5d7bb58ede5ac84660e578fa79d121408b966569080ab92fbd9b4075861c77bf087c", + "session_key": "a6c926eee9908f9d7283767301e08333e1a41c562274859871a24ee48e6a25421fbc87ba68c63f5396d2885782abeaac" } "#; pub static TEST_VECTOR_P384_P256: &str = r#" { - "client_s_pk": "03b8b0f5245537e495baffee7b3b1b003452514a92b22f9d2ed89dcbdcb641d73371f0af41370682a8d4101c53e9dc6288", - "client_s_sk": "f5773140577e8ac202bade3a2abb6f82843fc734c517091ebeeafd89dd25707fc41113709fdcd6535acd3fbf6dac6a4b", - "client_e_pk": "035cdef9593471d8351fd5b00183d6e859ab08a000662d1b3993f61de5d12b53a50b79dac219a622b2b742ced6ab29644a", - "client_e_sk": "d0ce94c053562dfc01418156c135879f829e167e0c3a1fa8e420eb271bafdd8a91a01967cc60ea5aa958c0ffcc405c03", - "server_s_pk": "0295d0880631de39cb340787659471f5ccf4005c044152c94beac35fcdc6cbe80cc3fc79d478f5e1ef5bb05d2698ff7732", - "server_s_sk": "c082e887aefd530d2536c0a364a547253816415a5767802b3896cd2ddb6f5b634344c660b178209643eefe006354154c", - "server_e_pk": "02551d4b8129e9b783f51be55da0b1326a150ac78f0a46d174e8c0038a7a35d0b6ad38fa346382e032ec833d894f8f1310", - "server_e_sk": "47f0c617d4bf0e2d6cfab740558433a27b0c7a642b32813e35e781a30c57fdd8cc81afd67ebeb087754ecaad58a31e1e", - "fake_sk": "63404a11b890fdbc4f46e812a3beecd8aad196d36ac7b13d626c014ae668e9cd933d2a297bbc0fa30e9513f556a31617", + "client_s_pk": "032698c69aba84e0727842c1d66c14a0ae0ccd605db3e373add955f4452dc7454cfbe2d14548aac38061085f9cec75366b", + "client_s_sk": "e250ce81d3e8071f3fedfc92b0637358e1c369b34d94df37ac834abe62694b959625c7b6d9d43ac6fc8273edaad301c1", + "client_e_pk": "02d930cc0e369aa748f8ab577b1e56f2f7709d9235116eb37fb20f771c679fa2468564fc66c91fd9c68d9ffc5fa1acc5b9", + "client_e_sk": "c58e63f59584ddafe81fb38c1d97690802ec7a188e1f7ceb77144592d1222a11eb0d1ca202d78a075f3ecd1ba844c6b9", + "server_s_pk": "035eed71aadd5306fb523a62c28c8d7ff93b261ec86469dc746d7128b9ebaf8528bab98776046d352c0c22a9de48bd75a2", + "server_s_sk": "8a0730a3f7b0300036b9d151dd18f75b2b53ba26df580613377bc6f3cc33268992f21917149100303cc2c046295c2832", + "server_e_pk": "03307fa8be7089934f408b012300a17c0c4bf140b05a0a29988a639411231ff95b1ffcbafa767d955bf61bc5f7394b5d6c", + "server_e_sk": "0f6d2bc9c1b56b185af19b1b59f3862320bf9144fbb5df707b7c0a841353e73a68d1a88f195b2dadea12f580516dba97", + "fake_sk": "ab45f5c894db3ecfcf8495a515d0d0ad5f11074b022252764156e3e612da96370102d85976fbdacb45de59a0470c25fa", "credential_identifier": "637265644964656e746966696572", "id_u": "696455", "id_s": "696453", "password": "70617373776f7264", - "blinding_factor": "a4944aa53d7d3735351d97cee1c2cb1070d1386894efc2937503625bc7835f05", - "oprf_seed": "e3c91c87fb7d4041ac14d856acfbcfb8a59f9abecae7b74ddf879038cc6fdb6d", - "masking_nonce": "5a491376cfe0ac5441b8ba6273f0b921918c4c8b9924e6a97d93d39857af02dd879f9b628b415c62920aaf716617ef916121902fc6437287ceee4f06af524c11", - "envelope_nonce": "c258197f50aec5c2d60c63a41d6afafa0bd4c6172b8efcd9215db7ad03161bc8", - "client_nonce": "8c5512a1a0d00b6a771fc2aee228e27f06c29c2baf4d56c5b3240d54e5ef5312", - "server_nonce": "834199b583d9473c5592c6b2313167b68e127f3e2dfa928158e25c18d9ef0697", + "blinding_factor": "3686c0d26b7b404b81b4074b37d0559b36b410f3e5273757dc381c7992f259f3", + "oprf_seed": "7f7f745ffc756efb48e09f5972f3ba7da793fe637d122e731cee5903ae302b31", + "masking_nonce": "41c48f31e6008f4f092442340cdf0aa5fca99a5e407b06d515c9bc7f363f3097795518a03f7274bcb784dbad6cbfc03b34bd0ae8fcc1b004a33b1e5e1ad892ae", + "envelope_nonce": "9d5e86f88598cfa463640b2414d341485e28647f2bfa8dcd6986ff132745d8fc", + "client_nonce": "8f392ea6ec62fef5edb4e98e47e1f21cdb04f7a387c64301057dabed7f9858a0", + "server_nonce": "878b7f637e105d1119577e1585862c02ebb00e0288dc3c29c0a5cacbbdc7ec94", "context": "636f6e74657874", - "registration_request": "02c24cfafadd53197ee094597e500f4bed1d82cf13866cedda372b426dfe9af019", - "registration_response": "0385c6c436f14414cacb2ed4150bf8a70b4a5a5cd1d5218bf9087c4f0e15e368e50295d0880631de39cb340787659471f5ccf4005c044152c94beac35fcdc6cbe80cc3fc79d478f5e1ef5bb05d2698ff7732", - "registration_upload": "0244fcc63ecf09c89edfd93924984b600dff0ab11190a70de55a6417b46276b594c6d64a2f279db6345f92a024ac17ca6f08684194ed2ba879165dd8b4f22e251bba0f6f0239462337a3e044d1f1f0793bf5773140577e8ac202bade3a2abb6f82843fc734c517091ebeeafd89dd25707f476cd7053e72117c4cbe614a68d214f3d0b61a1c0534e104ddffea1e7fce1f32", - "credential_request": "02c24cfafadd53197ee094597e500f4bed1d82cf13866cedda372b426dfe9af0198c5512a1a0d00b6a771fc2aee228e27f06c29c2baf4d56c5b3240d54e5ef531203060096f01d3455ef36a1987a62b43437c1f615d93fccb9c6f351b8f068a94f77eb1959dfa28d44940dc4e5c05aa99125", - "credential_response": "0385c6c436f14414cacb2ed4150bf8a70b4a5a5cd1d5218bf9087c4f0e15e368e55a491376cfe0ac5441b8ba6273f0b921918c4c8b9924e6a97d93d39857af02dd18421a834c9a25d3e185f51052de0a0647a7364c523011256c5ea408fe37ef150e7a8dc16a493c518a51f4a9abe8559b0b117916336dd4df3b959fdc5a00d52a778693cc0ccce3f1d97e797248172182479f2fc89655bc39eb58ec1e40d60ac4d5f34109fd6afc8434c109ded5d162f6137b0c7a642b32813e35e781a30c57fdd8cc81afd67ebeb087754ecaad58a31e1e0212226eda8d14dc16f80ff996127c6c2ffbbe2c175b758c86465655a0b1b8378df6e5d711996b2699e9b5e216c3bd8ce38c7784e13b1ac6da0240503287bd717d25089269a730aa9a9bf831fe0bb814f5", - "credential_finalization": "a1fa731ff420416939b4e7e970a9cc94dd1fed0c148ba3dd8edec61ecc7e5093", - "client_registration_state": "a4944aa53d7d3735351d97cee1c2cb1070d1386894efc2937503625bc7835f0502c24cfafadd53197ee094597e500f4bed1d82cf13866cedda372b426dfe9af019", - "client_login_state": "a4944aa53d7d3735351d97cee1c2cb1070d1386894efc2937503625bc7835f0502c24cfafadd53197ee094597e500f4bed1d82cf13866cedda372b426dfe9af0198c5512a1a0d00b6a771fc2aee228e27f06c29c2baf4d56c5b3240d54e5ef531203060096f01d3455ef36a1987a62b43437c1f615d93fccb9c6f351b8f068a94f77eb1959dfa28d44940dc4e5c05aa99125dccb508dda7516532b2901c94119b0f24369710dfc774828fd37497cc1fd28fb56af32e8aa7fb9cc8015a08f4272a2418c5512a1a0d00b6a771fc2aee228e27f06c29c2baf4d56c5b3240d54e5ef5312", - "server_login_state": "c254d6df8ae484e092983d8120986dae4f4a019c36d9ea4b9380addd7caac6e0fa06d5b3e3f2717b11ccdc26c4ab3b3958fd5f6d74951193c375d5b2a8b603fe56bd2671579b7e13ef0bbceec21fb4d84ffc479a7aacb1cf2b22b58f078a729c", - "password_file": "0244fcc63ecf09c89edfd93924984b600dff0ab11190a70de55a6417b46276b594c6d64a2f279db6345f92a024ac17ca6f08684194ed2ba879165dd8b4f22e251bba0f6f0239462337a3e044d1f1f0793bf5773140577e8ac202bade3a2abb6f82843fc734c517091ebeeafd89dd25707f476cd7053e72117c4cbe614a68d214f3d0b61a1c0534e104ddffea1e7fce1f32", - "export_key": "2b7ea0e43e09aaf2162bac86036d9a81ad7cfe53547a5be615e35bbacfca63dc", - "session_key": "56bd2671579b7e13ef0bbceec21fb4d84ffc479a7aacb1cf2b22b58f078a729c" + "registration_request": "02d64673447d13c48f66528d4e0bbb7ea6c4dbc4984e5fa19f6856d280b8bf1a78", + "registration_response": "0219cd7a3b152a6fce648b0785e505b63e34926d361989ee1b27fbbc89053ad731035eed71aadd5306fb523a62c28c8d7ff93b261ec86469dc746d7128b9ebaf8528bab98776046d352c0c22a9de48bd75a2", + "registration_upload": "03edf73b175ae743a24df7f1e7b894417016a4c2a68909e6a914b6c588bd47e68c848d80358906f7138708f0362a7f62004d8164b33094c383e77527a8397bc453a8ee2d6c3a5f67aa12e4fa553d1a7838e250ce81d3e8071f3fedfc92b0637358e1c369b34d94df37ac834abe62694b9566fad3f0f6327defe8346ed78058d2807742bbe0c8f594cf54ed4b7445efea48", + "credential_request": "02d64673447d13c48f66528d4e0bbb7ea6c4dbc4984e5fa19f6856d280b8bf1a788f392ea6ec62fef5edb4e98e47e1f21cdb04f7a387c64301057dabed7f9858a003130cc71ca757906cb9bb4839abd9b20c90395eb2424084425f076aeb5809a8f61d4e1bcfd0a17c4be01e9bb297e93302", + "credential_response": "0219cd7a3b152a6fce648b0785e505b63e34926d361989ee1b27fbbc89053ad73141c48f31e6008f4f092442340cdf0aa5fca99a5e407b06d515c9bc7f363f3097272db862fed79a4ba56bc6e069fd4d2e2b7a7e890e88965d337a9cbd8b82d1e7e4b19653c58b2da5d243dc041d311ce2ff1fae58f6d96d9f8e9168073731decde3f9195b1c65ce3f9458862735cf761e3f785658988f5858e84a9d397bb595afd1d80c9c66c2499cd8fb4042e27008b28920bf9144fbb5df707b7c0a841353e73a68d1a88f195b2dadea12f580516dba97023164f65a4741e526d49f871f3eae477f6faee2d37a59e2f181dc01034682b10260149a7843d7b7b80b290fc4bc23028fbabbdb3d19997c195d8118f688918e1bbbb6bb9959f9f9b36cde71d789eae230", + "credential_finalization": "603411c032e28834b256f5da5caeb110b5e516092a7d5c4cbae0e19298345162", + "client_registration_state": "3686c0d26b7b404b81b4074b37d0559b36b410f3e5273757dc381c7992f259f302d64673447d13c48f66528d4e0bbb7ea6c4dbc4984e5fa19f6856d280b8bf1a78", + "client_login_state": "3686c0d26b7b404b81b4074b37d0559b36b410f3e5273757dc381c7992f259f302d64673447d13c48f66528d4e0bbb7ea6c4dbc4984e5fa19f6856d280b8bf1a788f392ea6ec62fef5edb4e98e47e1f21cdb04f7a387c64301057dabed7f9858a003130cc71ca757906cb9bb4839abd9b20c90395eb2424084425f076aeb5809a8f61d4e1bcfd0a17c4be01e9bb297e93302892392b78204766f9282ff37518329761f37da6676ee1b829ba518ba20e0b403afcff0da34ddba9e0c1bd162d416b50c8f392ea6ec62fef5edb4e98e47e1f21cdb04f7a387c64301057dabed7f9858a0", + "server_login_state": "79f66c5ea71ee9037aa74a56477a801ca13a1f674a0a702bdc157c8ffc902494d7a13aa590cc248bc748ef9c472809cec397f29d770f0058826ad7e652d4fa57c74ce2e09cf09f00780f39c7e2e3fcdf4a0227d0e203590278f13fd6fb9d28fa", + "password_file": "03edf73b175ae743a24df7f1e7b894417016a4c2a68909e6a914b6c588bd47e68c848d80358906f7138708f0362a7f62004d8164b33094c383e77527a8397bc453a8ee2d6c3a5f67aa12e4fa553d1a7838e250ce81d3e8071f3fedfc92b0637358e1c369b34d94df37ac834abe62694b9566fad3f0f6327defe8346ed78058d2807742bbe0c8f594cf54ed4b7445efea48", + "export_key": "4ded50afe9e009456951cc58ee5bf702743902634227101821120eb9aa5aecd2", + "session_key": "c74ce2e09cf09f00780f39c7e2e3fcdf4a0227d0e203590278f13fd6fb9d28fa" } "#; pub static TEST_VECTOR_P384_P521: &str = r#" { - "client_s_pk": "03e012844d066033f8f8c73108f28b89550690ec2ec9453fb5e3fe02f50b086dc6867eecda07341ed3a74b35dbd88be0cc", - "client_s_sk": "fc0c112a63173a7810e89d86a9f66e1e60b4f176973b50678e6fcb45d344a1920218057628302a01826159d101684984", - "client_e_pk": "0296c24891be6fd1c97116c3b4136fe5372f726866dd889614ed4a724dd9076f767716e8b8e7848d87c0af25d07e71fb3e", - "client_e_sk": "192bd624b540b58d8216002bb87cc326500ad2a5077e60abc0bb3f68a9e8a8144d5fad5098c4af747ea7add1fdfc711a", - "server_s_pk": "029f7c4dc4a1845782badae60273f21fcb3c29465e35499f68a12ae60f67984f739f73895a25a75c56f2ee9d5991e45368", - "server_s_sk": "07f28736b3c1d84a03b224f950cf3a70b45582d17bc11e840997f1e827d18d3a2f7a7399e577fd5a239b8f49002ef82f", - "server_e_pk": "024f754a7764550bd17162bd52f5f55e7063c7a42a41f3fa86c0bb90a79df4d1888296e5f239bc146a6a32f41cbcd105d0", - "server_e_sk": "eef46807c9af3d600ea5398118c0858fdde997061a43fe9f20036c28484e365c2056a369aafb283df27230960f0ff6f0", - "fake_sk": "aa54106ac3a7303b3fcc22615186d51f77364dfe197e34d32f2b8d38dad31a4f921c70ad664d9ef2a0e3559e112a5111", + "client_s_pk": "029c6ed243c1e66346d7df72803b0a15104f538615b896bc74c0182e96cd0d7f8641c80127b83eac0c1f742a28f26ec8eb", + "client_s_sk": "b5cb757628b601fbc691dea7fddfe7f6cfba6d077cb4aa7c15ef85e28b536820de37625d1779eb9fca512aeba60a4e2f", + "client_e_pk": "03ff45c455462ce1bc7d5132c0a1a6568437b1a296b0ba605555ea4e1d70d3f0548125e132fd77e37aadd595607b1873e4", + "client_e_sk": "07f4898c309358e54472a858f863f8b93f464bf91a243273e250a4ce94cba7494c9725cf548f3859c692ad28fe998465", + "server_s_pk": "0324371de0d494e2f0c8942b5860d52fc83de9ddd6918c979a8752971e01a94868f2ce3521ab68300f4c554fcd189b764f", + "server_s_sk": "55c6c8b1ac00097c6ce54f200618e482c5eb4b1ad8f685d3ecb57585d493c45265a329eae10285b340279aec958e8730", + "server_e_pk": "022231d6d2487a1e0724931b71c990403e93490d63c6c4d56003870ebff7dcff8c79f8407ce949ae2ec2da81a3c78dcccd", + "server_e_sk": "1939382ec8b8cf2ccb2af98c0f45827935de9da05537e8e52a75a50de565afe0fa1e0b7e272321d635c66b9a2ec99cc1", + "fake_sk": "85acb08ab78c4b1f3d840281f9988760d5c691e7b88573fa8e07e13fe5d19877066921440d7476b0e7d27bc6da07a7d9", "credential_identifier": "637265644964656e746966696572", "id_u": "696455", "id_s": "696453", "password": "70617373776f7264", - "blinding_factor": "00820bd8ba8c3a7c62bcbc9fb97a71d793fb0c9f0b0d7008f647492f9c0e943642156fd19020eaea773d8c3d9ef678359f181bee2d407254873def7bfa1063e0cd9a", - "oprf_seed": "67958a387495b07863f016a041bd93de2b5397fe4e11803612970599b6f0696e10fdd6ffe8dd7654230f9c955427e94cbe1895711e946de84ea1a8dd28fb80ea", - "masking_nonce": "f7f6d7c988dcb557f91f4ba5194eb5718dda6aeeae7a8d807e437a179d41a3562f00a724ccedda124f6b1cb5d21a74983fa7bb9c9476f84882ee445afd8718b3", - "envelope_nonce": "5405a842027af774b61487c9663aed94de4e1b71ecb12d6ac5b27a0079a45964", - "client_nonce": "7c951e078f852dba7d0b18e3d3da97bf0e986a4c145df53b630653725d2b4259", - "server_nonce": "90bc7b453a9b775ebfa219a7c2a108a381b4cce4624eb3981e5f1c57ae06cc85", + "blinding_factor": "008ff5428faae62f87ccf7c3460fececdbc240468df47dcf2e546666f7a9ff698b8f73bea97b653abab744b176818fcf51b7de2fe0c74e4203b1f949422e35bb8343", + "oprf_seed": "70a5c530beb44f4ede00d11f3a3c3af4d264add340f386056fcfe36c18158f192779a3206c21da98b67affd743c22787fd9b0d8dcf9643bbb7fcf6a15c876b37", + "masking_nonce": "ea293a1ff9b277cd1b4322ba0d59c3b217022125ad19a6f63b6f6c733961a3c380f1d381b635d7ce1d003d7a126a6c5d07552e82271c3bb01bf92ea83b22243e", + "envelope_nonce": "47b6fde2e551d8f6c6b7fc0b25c10d4222309b22c9d3d90c2bbe5f22649d9f99", + "client_nonce": "f3421c22f16865e9d5e28549ea19590ad14605d7d8c5bb4255cca9b96ab20cc2", + "server_nonce": "fdf6d969443c8c7f7a03b9224626b1537df7e7610d4749bc7fd30390091e4a9d", "context": "636f6e74657874", - "registration_request": "02013645a85ce6311a4dacacc6f0893ad5eec63725dc0f99e8d80451aff04bbf8e7fdff3be3ff118cdfc476b33d11897178c68f8f95d525822625f9844403db7838eef", - "registration_response": "0301f785b8dd7641f164546ef63e02bdd390e9868bd7d007233a34004ce1af93b4b421e6f3c58afe3884ada2a1eee5893408b9817e39c29d95ad696e6da5a402c03587029f7c4dc4a1845782badae60273f21fcb3c29465e35499f68a12ae60f67984f739f73895a25a75c56f2ee9d5991e45368", - "registration_upload": "02db7c3c6626803154fdd89113efa552ad77925c507b0a453e596ce1299ba5f0eda55f45203d77a17190a2b928f752a840757cdaa6468e270aa0a2a2e919918d439a18f13c1ce30bd250900401f6bc74665c1609bf7f0e0449698e7f4fb0f368c5b2c712b3046612ab1bcf5e010f068929fc0c112a63173a7810e89d86a9f66e1e60b4f176973b50678e6fcb45d344a19255fa2e7725cb45d1c696a493549b7dea87c270a1eeb88e2d4829561d49e5b90a8e4c3126bad32c712082a1bd19eaf1f1fc5bb3530cd4060ec7c7f0c45f78ee13", - "credential_request": "02013645a85ce6311a4dacacc6f0893ad5eec63725dc0f99e8d80451aff04bbf8e7fdff3be3ff118cdfc476b33d11897178c68f8f95d525822625f9844403db7838eef7c951e078f852dba7d0b18e3d3da97bf0e986a4c145df53b630653725d2b425902f072b105b96a20f3309e7bc3d5f982567544ab460190e6176f2d455de13886bc7bd15bc2030a77f7c1bdb7b67a90b978", - "credential_response": "0301f785b8dd7641f164546ef63e02bdd390e9868bd7d007233a34004ce1af93b4b421e6f3c58afe3884ada2a1eee5893408b9817e39c29d95ad696e6da5a402c03587f7f6d7c988dcb557f91f4ba5194eb5718dda6aeeae7a8d807e437a179d41a3566608899485b80850ae167b05ebbe786fdcbbcf41139bc6f7d19342a48e84a968c82c91d19af54ad4bb2b400a5dcb61d63bfc5197fd021f3bd44c357eed1a8fdbbcfb0102422ba8cdb8bb3ffeb21ee811fb660afa32b0fc5e0d090ab3f179808c5ab0767ae01051f9b357976631e9d580ff654c00e9ef806ba8cefa494f5573493b67518472012457897aeae35ad6642bacdde997061a43fe9f20036c28484e365c2056a369aafb283df27230960f0ff6f002c5f2406a316c1b783100b61d8ca76123a23c36bf21e3d421ac60fea1ff7d9479bc2948be77e6af4048260f4038ab87820ec8a60cc65f83fda737b9efe24e70a5e1bc88038e92c9c45151cfbdbfb51e8aa110db831209008fc1762ad218b4c296b488755e8af51a5907e18c7497862caf", - "credential_finalization": "9505c71ed5827eec8bc8a5ff79446d0fafb0ca55fa5da5c68a66bd82dd5958f01e200306b0d8265e75068a6e5cec6da4681d986a015f27d770908d4306c84aa2", - "client_registration_state": "00820bd8ba8c3a7c62bcbc9fb97a71d793fb0c9f0b0d7008f647492f9c0e943642156fd19020eaea773d8c3d9ef678359f181bee2d407254873def7bfa1063e0cd9a02013645a85ce6311a4dacacc6f0893ad5eec63725dc0f99e8d80451aff04bbf8e7fdff3be3ff118cdfc476b33d11897178c68f8f95d525822625f9844403db7838eef", - "client_login_state": "00820bd8ba8c3a7c62bcbc9fb97a71d793fb0c9f0b0d7008f647492f9c0e943642156fd19020eaea773d8c3d9ef678359f181bee2d407254873def7bfa1063e0cd9a02013645a85ce6311a4dacacc6f0893ad5eec63725dc0f99e8d80451aff04bbf8e7fdff3be3ff118cdfc476b33d11897178c68f8f95d525822625f9844403db7838eef7c951e078f852dba7d0b18e3d3da97bf0e986a4c145df53b630653725d2b425902f072b105b96a20f3309e7bc3d5f982567544ab460190e6176f2d455de13886bc7bd15bc2030a77f7c1bdb7b67a90b9784e2ba41ac03c4c6a66b963060ec87a35b45bbbb772e3907c2213c14fe5149c17c2fb37f722b20f626669771056eb71917c951e078f852dba7d0b18e3d3da97bf0e986a4c145df53b630653725d2b4259", - "server_login_state": "6f609696f70ecfec6285b21417d5bec4de5579b498d71f32dec2771f75aded3d8f32d88f5fcbda0b1428608df443f60ce07dbc2871350cca7f278fb04fc22e4cca973589b356690803a22dcf7fd85bbcc9af226fc9d209af985c2f622e5c0156d884de6dfa9ee0476e1861755af7d18b1861023a436c861c4d26b164adb7d55eba086fba54ba8b3a63c9d7ef5e06b0f990c28f11af4b4d3b62ab99be6bd80ff82f4f3aa791fe062de4595b4373fd7256ad117837e243de9394bf48ed68bcd113", - "password_file": "02db7c3c6626803154fdd89113efa552ad77925c507b0a453e596ce1299ba5f0eda55f45203d77a17190a2b928f752a840757cdaa6468e270aa0a2a2e919918d439a18f13c1ce30bd250900401f6bc74665c1609bf7f0e0449698e7f4fb0f368c5b2c712b3046612ab1bcf5e010f068929fc0c112a63173a7810e89d86a9f66e1e60b4f176973b50678e6fcb45d344a19255fa2e7725cb45d1c696a493549b7dea87c270a1eeb88e2d4829561d49e5b90a8e4c3126bad32c712082a1bd19eaf1f1fc5bb3530cd4060ec7c7f0c45f78ee13", - "export_key": "5d1f5949dd36d4810cfe3be8df2c5523cf34e1ca9e6e517a50a600bd5ded8dbc38ed9f84eee1c1766325b22b78768045a61920ccadf0123d8244ada47b528713", - "session_key": "ba086fba54ba8b3a63c9d7ef5e06b0f990c28f11af4b4d3b62ab99be6bd80ff82f4f3aa791fe062de4595b4373fd7256ad117837e243de9394bf48ed68bcd113" + "registration_request": "0200bfe38f55d87976c3ed075cafe9b78c6823a6db518d1734add23a820e9d966bdcd18058e75a0e2964cf70bb7fab228617c8c5e68f4cdb1d1d7138dbd48fc855e960", + "registration_response": "0300d6023480b91b5111d1429e609535bb49e597724aac55087e03789adc594e678b2bdedb862ceae646be1b99c91197bbc03bb8149ffc5ed7f2e6769200c8952f77e10324371de0d494e2f0c8942b5860d52fc83de9ddd6918c979a8752971e01a94868f2ce3521ab68300f4c554fcd189b764f", + "registration_upload": "0321a513c40861cc408f904ac1ef4be0036709ad3b310ce849ccc9fe3203dce2d3a041896dbe0040ab6be1878d58abeddc2a3a6e856b242afa943cd3affb9072ff8370e2cd79f3ce51071d80506b39caa6f64b913f6945597f731d44a282ce097224e8bd2d2ba9ec643d61cbbf1c3c49e7b5cb757628b601fbc691dea7fddfe7f6cfba6d077cb4aa7c15ef85e28b53682036b01db9756205090889668fab90f9b8b34ac0b0889c8d6584391375dfc45779393776d2838ef01c599cce58e7c797a423921649e70d0bd4c025a8cb4a26480b", + "credential_request": "0200bfe38f55d87976c3ed075cafe9b78c6823a6db518d1734add23a820e9d966bdcd18058e75a0e2964cf70bb7fab228617c8c5e68f4cdb1d1d7138dbd48fc855e960f3421c22f16865e9d5e28549ea19590ad14605d7d8c5bb4255cca9b96ab20cc202799ff9112412c32c30cfde5c089f14f8de0d2ac4849874e1127010668749bfbda8b96e3eea4f0fc8a6d5b2b221ceb33a", + "credential_response": "0300d6023480b91b5111d1429e609535bb49e597724aac55087e03789adc594e678b2bdedb862ceae646be1b99c91197bbc03bb8149ffc5ed7f2e6769200c8952f77e1ea293a1ff9b277cd1b4322ba0d59c3b217022125ad19a6f63b6f6c733961a3c3b4bc0a3085e106d30351459029a35dbec0c1a5420d4b1e720522a413c03481399a71e847897b1846c258f52d80a7adf83ee7267786f86685ea2a79fdeca055b9d21a1fc6653fa209a9b3d3ffcd5f2b1ce334b22ec9197a3955b3606f65d196f10d66a88ad4d1e796b9909e53d997356ef7a74cea7f26f721f02f4057b5f12024fe7a0b7652ed308d6c0afc4402cdb20fed35de9da05537e8e52a75a50de565afe0fa1e0b7e272321d635c66b9a2ec99cc102d8afdd4de772708ac661911bf342d8d840684a9e372c636d161af4d326b7f90e285a7995cef5bee7396bee618790af230c3e56aee02d8909b7fb215206d49bfc88f1a6321ad42d7902c897c00a5d7ff7856a53925c624f0a5431bd72732e48360a11ec3a1ac1ac7cbfee4e36109611fb", + "credential_finalization": "530f32b2bde57b7ff6a4eee6fe782f23e552c462d1911c751cfa8603dc732383ccf97d6b04693e0914fc5d0db4fd82079a0b12ae44d927266f4b7d84fe94faa2", + "client_registration_state": "008ff5428faae62f87ccf7c3460fececdbc240468df47dcf2e546666f7a9ff698b8f73bea97b653abab744b176818fcf51b7de2fe0c74e4203b1f949422e35bb83430200bfe38f55d87976c3ed075cafe9b78c6823a6db518d1734add23a820e9d966bdcd18058e75a0e2964cf70bb7fab228617c8c5e68f4cdb1d1d7138dbd48fc855e960", + "client_login_state": "008ff5428faae62f87ccf7c3460fececdbc240468df47dcf2e546666f7a9ff698b8f73bea97b653abab744b176818fcf51b7de2fe0c74e4203b1f949422e35bb83430200bfe38f55d87976c3ed075cafe9b78c6823a6db518d1734add23a820e9d966bdcd18058e75a0e2964cf70bb7fab228617c8c5e68f4cdb1d1d7138dbd48fc855e960f3421c22f16865e9d5e28549ea19590ad14605d7d8c5bb4255cca9b96ab20cc202799ff9112412c32c30cfde5c089f14f8de0d2ac4849874e1127010668749bfbda8b96e3eea4f0fc8a6d5b2b221ceb33a5c832000430b740671124d5dac2cc6a6a323110a28eec2c38e22e14d7d521aa012b47de819badc1f5db632182c1afac7f3421c22f16865e9d5e28549ea19590ad14605d7d8c5bb4255cca9b96ab20cc2", + "server_login_state": "58c65b151104ffced7b8e6ff84b8c8e32176812aa3eaedb34ed4fe77ff5f53902e280aca9fdb32c3ab39d8655e181bb3726f6069d32ab4e0c06ce619e86446f2a9fdd1fce7d77b2434532f2cae9931bb791928fdc023ecce6618d29691d7690aee28aae79e209925f05b347d67073dbc5185f7c3a2ca32ffbc4ed45b4b3d4942c2238ca0b5f0ea14ddbc42c4f0dcfa8cb844e5f0443fc531b59df3e408eb79220195a0dd4177aa66244752b7d9ddedd775d4cdd375806f84e320e1a08253a67b", + "password_file": "0321a513c40861cc408f904ac1ef4be0036709ad3b310ce849ccc9fe3203dce2d3a041896dbe0040ab6be1878d58abeddc2a3a6e856b242afa943cd3affb9072ff8370e2cd79f3ce51071d80506b39caa6f64b913f6945597f731d44a282ce097224e8bd2d2ba9ec643d61cbbf1c3c49e7b5cb757628b601fbc691dea7fddfe7f6cfba6d077cb4aa7c15ef85e28b53682036b01db9756205090889668fab90f9b8b34ac0b0889c8d6584391375dfc45779393776d2838ef01c599cce58e7c797a423921649e70d0bd4c025a8cb4a26480b", + "export_key": "15d2d3a14eb491db38f57b2209fe38a9e3770fb84653c19e5de1f2336ed0bf3062136b9d899729bd23369690eeeef4957acf16f4772b1dfbdd9d3a763cc3b23b", + "session_key": "c2238ca0b5f0ea14ddbc42c4f0dcfa8cb844e5f0443fc531b59df3e408eb79220195a0dd4177aa66244752b7d9ddedd775d4cdd375806f84e320e1a08253a67b" } "#; #[cfg(feature = "ristretto255")] pub static TEST_VECTOR_P384_RISTRETTO255: &str = r#" { - "client_s_pk": "0213f0c80918a5eacec2d9b8612953e864b011cce306921e8607c0dceb15bbe5885b2662bf466b2ba426a730838bce38e0", - "client_s_sk": "f217994652e109e6e6d69a498e5d79abe1eec3d9bd3dba2fc9b027344a35382b6e6e3c0755cce73a95bbcd41d74b5681", - "client_e_pk": "03e62a87e79d824a7c1b5736a9dd34576a85eb27117a8fe5933f16c5ec91a38d3cc9e7adf1dc52fe1bee7f7d9dd0de506c", - "client_e_sk": "4780387171acfb76b03a30c21fe8808b897993f569f3bead9557682b502c8acbfb808a9ccc61aeba9daf0490fae82891", - "server_s_pk": "02e5e89f4b0ea6713f459eec96a4e5ac1d19b7af90608f1d7cba1f26795478459f6fc961194e7f97e447f1b9c9a636584e", - "server_s_sk": "5f44eb2fc242d66e98a8dab934db67122e5bc3efacb9d290021e87113a4ba19f4a6f5018f60019bb8d47615e43145927", - "server_e_pk": "022acc4b27096fad797359a5ff53b3d6a1df1b87ad3e1e4aa1bd034a57a521a55b9d72c2ae34bfd71bff9f81fe9116e971", - "server_e_sk": "0cf4a806021a7b451d4f21424b71b309e333919d090c3429558e437fa5034506df2a2d4db34abed908fa98b847acaeb4", - "fake_sk": "8af1624b04a0f61e22125dcf791f1c64d2626c17c5cbd24377164dfd10977147adbbfa109c5bf6f97a248e51c5a069bd", + "client_s_pk": "02fae6910cada9f7ab33b7ba69355a20f233584c7a1cb6bb6339f9e18c2b4ea99b3f70d138eb2688de9bd6476cb4c00556", + "client_s_sk": "e9d477f5e347d9e944a4e81cae96ada3fac8466af7ec186677c6bb0ef96953b5351e66a65da67995e9c973fd8a2301a6", + "client_e_pk": "0319fc38a7715ada5bae9a16fc3ba5a34dc1936da1ccd41e7ca59aa283756137faf77bbf4a324db2a833629814db116031", + "client_e_sk": "d39073298253fd4b05e31470646b87004f5d7197816b157c72837f7f3f0174a7d5745d5d45b1b0a0fed270e7e710561a", + "server_s_pk": "02da134636c8de16b1af7ed156df2c045c2ff216f996bd5d53489b392f48aa18ec808fa6ebafdd3c6016b62c0fffc66f01", + "server_s_sk": "4a107962e417a5c04fe0f38112925c843ce56afc2236d162afd98377a7e0edbc7b23f4c6863447c5904efbc505c0093d", + "server_e_pk": "022bba42627a682f55234910a57ccfe8adc47c04aae8b609bd51fab61e9a4093875ff077bd9d76a81f5fb0e8b61113b776", + "server_e_sk": "ac7e756381d235a929ee7b5f43060a6f78c457fe4edc4789f305cf6f047adca6f2bd2922c382e763923ff15f17dc190f", + "fake_sk": "14d102b117bf707edce43281e106d82044bb9880ef2cb4b5795b1a5538dd66fe29fd5c8a48a8c0574676be823ee100e9", "credential_identifier": "637265644964656e746966696572", "id_u": "696455", "id_s": "696453", "password": "70617373776f7264", - "blinding_factor": "7561121511345f82a5197d0745076b1cf6e809495aecbeec71e6da4f25f42109", - "oprf_seed": "3724cd012f1514730257cdf3d09425e1456600a0bab7356c309ffa53dd46c0d2ef645e8926a63520f0742fcc98f08b6ec24c8098ba566fccdb3e1e27cdf26170", - "masking_nonce": "4334d80f74847e7641788348e9a842359951f81eb88b509ec7e9af22e74a4010c4800264719e1f0bda1c09b7b059f4a90f3069bc2675dc12fd623c521aa5706c", - "envelope_nonce": "61b18d1c4f75ebc3e9f7438092c99d94ba2f153cb01d71290a4888c7178673e3", - "client_nonce": "fdcf1dcf5ce229482e57f2ce0bcb8ce4d78d8e4ea4cf4385a4f9787b576a50af", - "server_nonce": "5ebd09e4bcc90899c476235d86594e10d8d7c4bdd7616f843a1d7f2caca6090d", + "blinding_factor": "8e668445776537b3f9e5dfe4680ec72c3c6a95f031e399d0b41d6506237e8f06", + "oprf_seed": "2199caab5a9e637486ca99d9ced8d281aa0762b8d6d3abb344134fb517914b2dac8dc41ac5eb7fccd0fa82c90f62b23500b1077ad380cd51d11da889dee8db8e", + "masking_nonce": "95c5a86de5daa1db0ffe7f3901bbf49e0b4418705cb1466adff416b5018cd3feafe7771684420befe84b7b0adea299af952f8aa24e36d3a63b979433e9406902", + "envelope_nonce": "9cd544789d1c50d09ffe49a19fde4b75cd3714faf623287707db54bb139efc91", + "client_nonce": "3c475005b05a0e46923a6ef10838272fcda5e78518c05cf2283c0ab827eee917", + "server_nonce": "5c85bbe52052e767513fc1996871a86ee21f93442d6f28fc563b84b1a36de8cc", "context": "636f6e74657874", - "registration_request": "465cf52e606bd0d47be00055c1c557b7ce1b7db023aa4fde92b1721b6d110264", - "registration_response": "96d6edb19bd10cef04354a8376547e53c5bbddc92c96ede73df880809bf10a7502e5e89f4b0ea6713f459eec96a4e5ac1d19b7af90608f1d7cba1f26795478459f6fc961194e7f97e447f1b9c9a636584e", - "registration_upload": "03a578c65fe4d802b4fcd05ffa5e965c7e8b7d9c0dfec03aad39c75922f9431729548f7a6d5703edb635ee228f426778e2f9637fffd924422be36b88bf11e193f47a6a8131ebd8e644479d321844f15a10ab29752f5557ad03c71dd0c9804cf52522e94462641eed27698773a5d45aa1c8f217994652e109e6e6d69a498e5d79abe1eec3d9bd3dba2fc9b027344a35382be1236ff53058ee8b1bff087fad3c510d0440dea4b649087a11080958199561b50d99415fff92b67b701f1b904d84a7545981efee1fc7fa67896fc74c38041717", - "credential_request": "465cf52e606bd0d47be00055c1c557b7ce1b7db023aa4fde92b1721b6d110264fdcf1dcf5ce229482e57f2ce0bcb8ce4d78d8e4ea4cf4385a4f9787b576a50af026f89c7150c89bdffffaf8570316d362492bd102d391ede0837940f60e202b67dcaf6b6ffbafbe13a8b1a95f19b571be2", - "credential_response": "96d6edb19bd10cef04354a8376547e53c5bbddc92c96ede73df880809bf10a754334d80f74847e7641788348e9a842359951f81eb88b509ec7e9af22e74a4010b192cf5c4e8b69d2788938d3b0ece445cf4b0e907a23d92d6fefd00306be8c517a445cd7917cb1b58f3e7e9792b7b5a3843baee76d2c95d81939943331c8bb452f58c167103794e5e067807cbd6d477f95af2a3ec46a6c21508e0028eb2c6cd6bee7d153cc0b6fd37ffe031820f8236f327901746e8a25f49bc3018c0ad09a4da8574cd9d388efebe4ae1d8135b726fd20e333919d090c3429558e437fa5034506df2a2d4db34abed908fa98b847acaeb403e0150240a2b4ea5326e4ad0d33d3052a3d7fc95e9e9db836b1922033d18046f570cc3c37663605d88b99138403fe0af5d68ac75ef1cf21b535e954093c92d87378a74b301d6709de6d907c328a3b7ba3c2606187e4dc3333b5b17bf50d67b3ec5639f61dd0b52f246f1de5f33da469cc", - "credential_finalization": "88045925ed64b518ca45b6b3af35820b9babec206cd89edc4958471af45f58a0d840a6f28b9e64fffcda7e8c02ff8f05628b35c545955672744bc35af1974a1e", - "client_registration_state": "7561121511345f82a5197d0745076b1cf6e809495aecbeec71e6da4f25f42109465cf52e606bd0d47be00055c1c557b7ce1b7db023aa4fde92b1721b6d110264", - "client_login_state": "7561121511345f82a5197d0745076b1cf6e809495aecbeec71e6da4f25f42109465cf52e606bd0d47be00055c1c557b7ce1b7db023aa4fde92b1721b6d110264fdcf1dcf5ce229482e57f2ce0bcb8ce4d78d8e4ea4cf4385a4f9787b576a50af026f89c7150c89bdffffaf8570316d362492bd102d391ede0837940f60e202b67dcaf6b6ffbafbe13a8b1a95f19b571be2d3006541d54b4c75e80a7425ca8c84f37ec04349e294a4ffdb310891954dce0f6209e4eaa799fa811bd4e959a501be40fdcf1dcf5ce229482e57f2ce0bcb8ce4d78d8e4ea4cf4385a4f9787b576a50af", - "server_login_state": "55c65cb0075961368cfb05d424392545df4cec3f5eb58f4821b6f0484777d43a63ce723c1502fcf95aac3ae8a2075d3af529a4e6921c431752ceb5db6ed146dba521b6cebaeafbd3c2602946fd6955b80402319de194977b71c1395ed5a6dee7fe0de82b650f41f2518f233b824c58af43dc36d331b1940f1fe7105190416c9d4caf4e5ceafcfa7c18d74bff2f7cb66585dd493c64dc10e808bfa5c8f7342ee8d56d1d59b7ebc881be5e828ad61f1162ec10a34d8920d97e92b05bee36b3dce4", - "password_file": "03a578c65fe4d802b4fcd05ffa5e965c7e8b7d9c0dfec03aad39c75922f9431729548f7a6d5703edb635ee228f426778e2f9637fffd924422be36b88bf11e193f47a6a8131ebd8e644479d321844f15a10ab29752f5557ad03c71dd0c9804cf52522e94462641eed27698773a5d45aa1c8f217994652e109e6e6d69a498e5d79abe1eec3d9bd3dba2fc9b027344a35382be1236ff53058ee8b1bff087fad3c510d0440dea4b649087a11080958199561b50d99415fff92b67b701f1b904d84a7545981efee1fc7fa67896fc74c38041717", - "export_key": "60c276cb9c768c94d3f37d839e01022daaf34b12a62eeed5c45577e2365a67428235c236b267efc7bb1e29d45adbfbac768b8402c53d304e99c1331b4bba5055", - "session_key": "4caf4e5ceafcfa7c18d74bff2f7cb66585dd493c64dc10e808bfa5c8f7342ee8d56d1d59b7ebc881be5e828ad61f1162ec10a34d8920d97e92b05bee36b3dce4" + "registration_request": "648cc5fc13926eed1f00b20a202f11784d369eb459f3e664e862a4390ae70764", + "registration_response": "6e85a0123e64371e51402782a302603b035cb28c2c0496ff9f52c68b8a0fb53e02da134636c8de16b1af7ed156df2c045c2ff216f996bd5d53489b392f48aa18ec808fa6ebafdd3c6016b62c0fffc66f01", + "registration_upload": "0231371fbeaf3e78dced354fe072ef9fd7d91f11735de4e0231f61bee3e0502f975313992016a7a95af2d309c099ba1cf754329d9b1c2cde4c47e62113adedabb52797bcd013c7214086711d100d003eba350743d212b6996a05906a88578be527aef7c5c3e1791ef5e6db5215d3a707bae9d477f5e347d9e944a4e81cae96ada3fac8466af7ec186677c6bb0ef96953b5f526af7e438140aa4c767b4f4cae572c88d07ce0a11d37b1f9f1ebb722894900d889b597fa05d70cfedc021fdd9b74864a3122b5209de84c333dcbb76f326b1a", + "credential_request": "648cc5fc13926eed1f00b20a202f11784d369eb459f3e664e862a4390ae707643c475005b05a0e46923a6ef10838272fcda5e78518c05cf2283c0ab827eee91702d94f3f16cf82d54c014171c6ac6b2ce0b6cdf37bea1e4ead01b3fb7fb23a9030bc671f7bfbd9b59a65dab35c884e2b48", + "credential_response": "6e85a0123e64371e51402782a302603b035cb28c2c0496ff9f52c68b8a0fb53e95c5a86de5daa1db0ffe7f3901bbf49e0b4418705cb1466adff416b5018cd3fe3f4e9478ae1bfe0ca3a60942f0afc6207e7e8891b9ed5bdc1705377bf79a7ae5c6f7e9a7bcfddc4e500f0ffd2443257a1f28d4b6f4d36475749eabd92fcaf5860b91c84731cb1e7ec5d4019a555a0a503ba30046bf6d5b007c57d7dc3047dc818a70271c2d261dfbc5822baef4d153fd9769299ee52fed596ddb790ca161d100a05bbf50ed7e6067fe8108a57440de928178c457fe4edc4789f305cf6f047adca6f2bd2922c382e763923ff15f17dc190f027ad0d32e52227d9291e3ea115d4e5f19f19bb1864110e330c642139e03a5fa8b8152fc431969bb27c5fd4ec904aaefb03a901a6d4c9567ac22122d10ef4378ca487a94e976ea738054b5a2ce3d9592f89376cff9a42ec06947f983bef480f9d9f15fbd50d14e9a94b2515b0f42aa0152", + "credential_finalization": "f46dd84631900912dce0d1ab828982f257e046816b4eb87f85618f9bfce7cbdd251605a92695a1a4261154e23dddbfcf5dbaefee54a9c9fa93aeabddd495e5cf", + "client_registration_state": "8e668445776537b3f9e5dfe4680ec72c3c6a95f031e399d0b41d6506237e8f06648cc5fc13926eed1f00b20a202f11784d369eb459f3e664e862a4390ae70764", + "client_login_state": "8e668445776537b3f9e5dfe4680ec72c3c6a95f031e399d0b41d6506237e8f06648cc5fc13926eed1f00b20a202f11784d369eb459f3e664e862a4390ae707643c475005b05a0e46923a6ef10838272fcda5e78518c05cf2283c0ab827eee91702d94f3f16cf82d54c014171c6ac6b2ce0b6cdf37bea1e4ead01b3fb7fb23a9030bc671f7bfbd9b59a65dab35c884e2b4897c35fc85a81620b62c7105412b3d5d02d50c90cfe31a15c216862644f2d405911a723c038b560331048a749b444020d3c475005b05a0e46923a6ef10838272fcda5e78518c05cf2283c0ab827eee917", + "server_login_state": "612582cd3e17ebca41a808948e5c5af5698112888893ac700b7622449b489bacb3378bcf61949d70439caafa28668d3f3aba2aca2a40483fdbc296ed57e22868c40aafa2a0803da464aa9f9c443b3970c1e323b8d6b75c10f2c068b627418286341eecc875847ea93c51cbbfc43b9ae8dd9fc953d6478f6a61cc53e924eac62002cd7d042496a78600eded021fcac7d44201ec8db3f8669644c778bca1dc44df6b11aa6bfe7e8989106e7107993aa5161b6e2091ec570bb2472a50860a362a0f", + "password_file": "0231371fbeaf3e78dced354fe072ef9fd7d91f11735de4e0231f61bee3e0502f975313992016a7a95af2d309c099ba1cf754329d9b1c2cde4c47e62113adedabb52797bcd013c7214086711d100d003eba350743d212b6996a05906a88578be527aef7c5c3e1791ef5e6db5215d3a707bae9d477f5e347d9e944a4e81cae96ada3fac8466af7ec186677c6bb0ef96953b5f526af7e438140aa4c767b4f4cae572c88d07ce0a11d37b1f9f1ebb722894900d889b597fa05d70cfedc021fdd9b74864a3122b5209de84c333dcbb76f326b1a", + "export_key": "a080e14c657d067a8330c3c5966c7fc2c896d9a571a72a1c8ed9e00e83b54eb613da5beab959bd94b9523148f3c17834322f93c6528525a4759bd2f8ea3bd55d", + "session_key": "02cd7d042496a78600eded021fcac7d44201ec8db3f8669644c778bca1dc44df6b11aa6bfe7e8989106e7107993aa5161b6e2091ec570bb2472a50860a362a0f" } "#; pub static TEST_VECTOR_P521: &str = r#" { - "client_s_pk": "0300a0c80c9e329954a46144bf31afd0b4b5d2146e54740769eb1b8f2a46ac4d2ef378d91a7ba95ec9901ab5a56abd11a9432b4778688799327dbd543c13d91bbc7324", - "client_s_sk": "0159d841bafbcd84b891668fd25ad0cfe3d4a6fd7c9dc4cc24845dcbffe4bd1f254d1d86ee0f8c3c94eb2699fa5ff2f7ca9c143191744d2ce6bfdf9e5b5f0c3e91d7", - "client_e_pk": "0300e8cc83e48aace4a171038b1de9ac48cddcf7fd374a436b3fed69cda18d2ada2125aad9818d4672e11a84547a868f2e41d23c32f5c1fbd7ccd6c94cde940da60c39", - "client_e_sk": "01cb07457adcfb61e169f49649ff6bb55e8e9bb1d26ba3f8c70ae20641b814726d2233656fc83de59d9bb69fae6d29a87aba4aca2189754206c60f641ca208c86e63", - "server_s_pk": "0301569fe3ed959c2132e234d8d8b582e7e2afbb924fa1f338e24524216b867efb208e2b8012a5e63860ea7b567ba8b8d9e4d74d69d040ce0e4ca8f9783920112d0abe", - "server_s_sk": "00687197618dfe9216fd6b5d370e5a9dbbe249f6654f5e92866d1a4553b539ec4bcd481a33205f0bd0452130db860e8d80703f1f22b44f843849fa044f7574d4ca09", - "server_e_pk": "030158844ed1e4360f9159d5b30182f93e4dd62bf6b1d120b43653f18a02e8636e60edd67a7c9b7bb46dbf4038d020c707bcbc9cd1a6bc6c54614e89f2f78f8b08cba6", - "server_e_sk": "00313319707c9610db44771bff817a54a1cc5f1e2c827226d0e470600820ea4bfc1e4b604b2b37d053c427e34ee39d156786c9c84444b76e4745ec2a450105688670", - "fake_sk": "00a7d50308933ff13180b1e01f7ec0cc404436a18b6fb12094b61470cfc88953c646092fd97d9ae02a74212df44c81137f2e8e9921508b8564b541963a2185432d80", + "client_s_pk": "03017916f4f9181cf963fcf68a325bb483cf2eaa7491f7eaf02bfa0cf6983a5b313ede7814ea6bc54f40013573c42aa922986a6b5cf600ce0a6638c5ec8b6aa28d0220", + "client_s_sk": "008f76172b7381fa17c1918596ef1774d68e6336706c2218d0ab01cd63fdeb76f4f37c6649e5a01929d7ba0e8cb89d26b6d2d895b2137b711166c4ecce5e5c96280f", + "client_e_pk": "0301f463e80dd6eaed5a4b3a499f9cc0a18cfbed8d2a44adbee40c6174a709c365a324437158d817643cb78bf489731076af41b90bb1d02cf4bb1a5cf7e7153d916c53", + "client_e_sk": "00848cc1433684d2aab315cdafbe723c89b8f22e1cb5f5e4c0ef12699d683d1c408f0895dcb554b2b8c354d35515237fc2741b40c715b23d801ada649d9b658c63bd", + "server_s_pk": "03015e4c23dd9a1fb8a9a3482b6d5d1a6948203da5c0ffc29f82d0919f51ffc3c2e906292cb1ad926eab8324f6cc82a955d953d8e38a80bb6cbf54592c448139986097", + "server_s_sk": "014b568846991f292ea555c5948db4fe5d1fdab873e7029a83f93c50134e336dc75eac8e9d47096e4f46917010af2151268c5af6bfe6e4bb2b83110329cd8b5e8faa", + "server_e_pk": "0201527b027324141cb7d7e5fa3e15dd45d35e2a5d2ca8c1db605a90409aea79afdb1dc499e7dee8d7c6a697ea00a8f4c3b9e2a4b2adbf2bbbad3add3bb172339b2521", + "server_e_sk": "0165604a713f7fb8920d2c4668df9ca85a2ec992229915f12bec6cb3fbbb8f0087eb201b0eb36393e6823e7ce6bdacb855e81eab5379221661de84aaf5efd673c33c", + "fake_sk": "00d3c82ee1965e6ea5e1f07cce15895079a51568637e6d2602e7bdcb495e261aaa3ff33f127d540fea9e0b3d1af68839915c3f19edf99ccde84376042b5dea4c4e86", "credential_identifier": "637265644964656e746966696572", "id_u": "696455", "id_s": "696453", "password": "70617373776f7264", - "blinding_factor": "01d53d0742dea86cf835400c5f63e6944dcd5bef624954eaed6bc01e938dd80b4bf6c380bbd8b4fbec55395383f1febfccc48bda5d32c786e2ba1f476bc694da2682", - "oprf_seed": "88e43f46ac70ae26e61cefb8f153515c461ee266ff3bee9258ad982548af6690f5f79cabaad18e7c41502b8a6630042bf345b64cf0676c0ea9eff85a881074b9", - "masking_nonce": "00a611eb2ba3f456d7ce5619c7b9b25cd8b835d75e2f1f7954f94c4693276ac31770b9d34dadbd47ec2860ba54c2ed2087d34ee4dd96701391e64f2d20d789e3", - "envelope_nonce": "28054a3ea0410e4c5f597b0f748ef1b0a0ccb795502d2e17ea1c69ef7035af4e", - "client_nonce": "f291c492b0493d3ea43f6d675e6675abddae2b2c519631b06662866c6ba645af", - "server_nonce": "0d50a08d26939bdd7c3e420f9e035f0a92d438e605a94e2233ef8873857edcec", + "blinding_factor": "00f0aadf923941ecee0b08d1556a86554a726fd93d0103730cc31946112b10d7cf28047ecfd09aafe4c33cbd99a83b1dda02da339edd0381c030cbdeb95d9a7e45f9", + "oprf_seed": "0aa9035636cc8b4e6f0f835a381e13297252082df598fae5c4015b36c309931947fa2af99aec09877b6243d630d8cf651010f5fc0d68a5893734cf4aaf085104", + "masking_nonce": "a9e6386cbc63c5cba327c4b738b37adbf485f5cf1861f235f64684ec200c12befaffb146c9c4be7f51fe1b1a40043689bc6d29684a1a5e8710938f02989395f8", + "envelope_nonce": "fba5ac32c3ea6bdcb2608d83ec54812b3b58073fd335ea7686732eb0ed9f22ab", + "client_nonce": "1f17bfad6de460e3cc3b894bd906f93a8c2a506efb35885343035078f0e2faef", + "server_nonce": "eaffd7e7a9b320bad534a1392a516c680c43114dbd5d815f3216c9b8ee9bf4ef", "context": "636f6e74657874", - "registration_request": "0300bdcb719e1151f90f6c4c112db037dd019871509fb97a2fe80d0c454be9b6a6c92b8b0c17ec259336772de66d9c2bcdd6b367c184656f35382ac57f8126184e517e", - "registration_response": "030161e48f7af98a107e1ace62fa36bb818fecb9cd835236fc7703d9fac6c19f609903e8731c8f95b3ca929a8e7bb52fa25c4f3e2f8bbacb10211008c57179a62db61d0301569fe3ed959c2132e234d8d8b582e7e2afbb924fa1f338e24524216b867efb208e2b8012a5e63860ea7b567ba8b8d9e4d74d69d040ce0e4ca8f9783920112d0abe", - "registration_upload": "0201aada3f53fb6031afff983dbc2d87e41746f19cb1b2483cfbe5f9e05c42cdccbecfbb1c471f5608ab53b7b99b787697fc7ca54948444800468d18f58fb764371f9e1cad97fe383169e0cedea4d7a792988d9a212f909d79f4502d49a0b1bc7dafde0f2cedafced5400cb23eb151c5590e4f3af04318973beb03070b1bb428eb80f10159d841bafbcd84b891668fd25ad0cfe3d4a6fd7c9dc4cc24845dcbffe4bd1f2ff6938bb5e57ace14c61a0873a810244e5e2391d1f2a0bd5451f738532d8948caab74c358dee6057b9de2b13a0fcf43567a52ff836d9b5c4af48c1e6170ff69", - "credential_request": "0300bdcb719e1151f90f6c4c112db037dd019871509fb97a2fe80d0c454be9b6a6c92b8b0c17ec259336772de66d9c2bcdd6b367c184656f35382ac57f8126184e517ef291c492b0493d3ea43f6d675e6675abddae2b2c519631b06662866c6ba645af020085e98bf7fcaee49362bc264ba627d799cdc549d5a151ba72f6369b2105a3dcf2fd1e06c453012685c207a2ee4aaf67a69c3df678ae373e0849a1ae1a3ecd0f0d6a", - "credential_response": "030161e48f7af98a107e1ace62fa36bb818fecb9cd835236fc7703d9fac6c19f609903e8731c8f95b3ca929a8e7bb52fa25c4f3e2f8bbacb10211008c57179a62db61d00a611eb2ba3f456d7ce5619c7b9b25cd8b835d75e2f1f7954f94c4693276ac302c6b0c1e007acffdbdd52b8557ea7036ec12c4d488d493c96aa14ba56f899707cfaae41d89c6e9edfb59f957ab8fede03c17232b23a8a88d8884fb36b1a08319b7a6a06b6c1f3c9e0158eb4974b63ae83176edc8edb834e4b9f48cf6a1f13b2600152abe6d89be27252b6de9143e185b0428812fef18efa42117b4dc3a2978fc3b4997aac3352887966f2c45d21b154a3ff618c331659c2b56c12fa7227c381448ce44b604b2b37d053c427e34ee39d156786c9c84444b76e4745ec2a45010568867003007363ac908a029b36a27e79c67d36f9805a96d67123f83dd1b71e50c5baa5cda6072a394f6de7adc2854da53e8d55e49724937b93ab979b4c5946a870a73a9d1674da567c0950dde947d9c2d12804c9fa8a10cfbd6462397260b9e558afccd66b2e7ab2707a8ab658a82db6e3d86d09b07b5fdd2b2029f94b6c50e87c19b62887d8", - "credential_finalization": "5d46d71394d579936497fab61312fb35559d4ee016f3b4dc64d53f106902ed3af7dd6ecb163e1c07ed2350edc0b7a0196c43084e65544e60697b5c94f0c60131", - "client_registration_state": "01d53d0742dea86cf835400c5f63e6944dcd5bef624954eaed6bc01e938dd80b4bf6c380bbd8b4fbec55395383f1febfccc48bda5d32c786e2ba1f476bc694da26820300bdcb719e1151f90f6c4c112db037dd019871509fb97a2fe80d0c454be9b6a6c92b8b0c17ec259336772de66d9c2bcdd6b367c184656f35382ac57f8126184e517e", - "client_login_state": "01d53d0742dea86cf835400c5f63e6944dcd5bef624954eaed6bc01e938dd80b4bf6c380bbd8b4fbec55395383f1febfccc48bda5d32c786e2ba1f476bc694da26820300bdcb719e1151f90f6c4c112db037dd019871509fb97a2fe80d0c454be9b6a6c92b8b0c17ec259336772de66d9c2bcdd6b367c184656f35382ac57f8126184e517ef291c492b0493d3ea43f6d675e6675abddae2b2c519631b06662866c6ba645af020085e98bf7fcaee49362bc264ba627d799cdc549d5a151ba72f6369b2105a3dcf2fd1e06c453012685c207a2ee4aaf67a69c3df678ae373e0849a1ae1a3ecd0f0d6a000f16ba3799e6a70d957b8f1f43e65dcd8ad03b55486569e708deddf2e649bfce5addc58e91f1e74b13978dc7d7d311b44cbb83f5a179c85a81c028a91b2b6f4595f291c492b0493d3ea43f6d675e6675abddae2b2c519631b06662866c6ba645af", - "server_login_state": "d6286ff49733a4370a58d3d312f70aa693d1a50ab789b25b9daac211d6546f49dc109848d78ff27c8505cd214d491ae4e461dd8e5da9c73ac22e2300daa9b0136490c1e83b765a6940a3f58a7179d4270c5aec733f4587235ebb81e1eec5abbc6627b4124e56fae739d86537116ee09b4029a41b5aa668f18c95aa77b423971a0d88ae45515bfcae0eb67fa549af728f6b3868fce6567f75735bc13206cfbdeb71038fe9eee43772c108649fd9f744c4c7b1c98300247aa5b5889509a6aa0991", - "password_file": "0201aada3f53fb6031afff983dbc2d87e41746f19cb1b2483cfbe5f9e05c42cdccbecfbb1c471f5608ab53b7b99b787697fc7ca54948444800468d18f58fb764371f9e1cad97fe383169e0cedea4d7a792988d9a212f909d79f4502d49a0b1bc7dafde0f2cedafced5400cb23eb151c5590e4f3af04318973beb03070b1bb428eb80f10159d841bafbcd84b891668fd25ad0cfe3d4a6fd7c9dc4cc24845dcbffe4bd1f2ff6938bb5e57ace14c61a0873a810244e5e2391d1f2a0bd5451f738532d8948caab74c358dee6057b9de2b13a0fcf43567a52ff836d9b5c4af48c1e6170ff69", - "export_key": "b321ee27fca6499d3a395ab10ad1428b59940ca154d24c5ff6106cd0029fc9bb3df11f9aeb49b82b875f59e5354ca5861250d3745b53f4d21d85bafbc6cbe9d2", - "session_key": "0d88ae45515bfcae0eb67fa549af728f6b3868fce6567f75735bc13206cfbdeb71038fe9eee43772c108649fd9f744c4c7b1c98300247aa5b5889509a6aa0991" + "registration_request": "0201591421d02c1b456513d0c6114e7015fc0ce03b5e2ed898a096a7a203bcc9fc98e4fbdb34639bea2b110489df5139eb836bd8ae523a8817fd64c8ef3ac59c4f788d", + "registration_response": "02003657fc2a63fe1677b146e547649ab36811d5526b3284f161275b12ef0c45016af7f0aefcf329d2eedf99df7fb916d4952858a65ff2d96474392a910a2405d420ae03015e4c23dd9a1fb8a9a3482b6d5d1a6948203da5c0ffc29f82d0919f51ffc3c2e906292cb1ad926eab8324f6cc82a955d953d8e38a80bb6cbf54592c448139986097", + "registration_upload": "0201fbf7aedc48df2dc0b64a386b752241d1e0382c8bab87e1aa0c3bea58fc9d4e9a22eb54ea06b98aedddde51181c55f7c373e145f77fbac8416ace5f8cac4ba5c7fe6e1d0eaa9f5bc69fff4584d4dc21b2d8559a4aef763ba55f0821b5ee423a5e2873bec92f522ab285a0f125c2f13feee6289c8d529e1953c105dbf91aad8e5207008f76172b7381fa17c1918596ef1774d68e6336706c2218d0ab01cd63fdeb761efb374c03159986023a115311eaec6c1ab72a003f45fde25bca5fa7c62fd8147bfc3196b1fea3df4c83561e562eef8bab8d3f08611e60606b2b8df57139451f", + "credential_request": "0201591421d02c1b456513d0c6114e7015fc0ce03b5e2ed898a096a7a203bcc9fc98e4fbdb34639bea2b110489df5139eb836bd8ae523a8817fd64c8ef3ac59c4f788d1f17bfad6de460e3cc3b894bd906f93a8c2a506efb35885343035078f0e2faef030087951a779f75ce1d5aa4c8bc789f692d42706351122abb1c793908946eee4112c471573a86df5b00298357d48d40d291464d631217c69d716cb3191ad878e30b01", + "credential_response": "02003657fc2a63fe1677b146e547649ab36811d5526b3284f161275b12ef0c45016af7f0aefcf329d2eedf99df7fb916d4952858a65ff2d96474392a910a2405d420aea9e6386cbc63c5cba327c4b738b37adbf485f5cf1861f235f64684ec200c12be9bd85f62b71dbdb335f6f648c4ca93cd437dcb3f8d3e18e0022f55c531175b24d17f4f0daa670fe826ca4c23b449f411fc195eb373770cd81ddfc9b9027d2daef8710d773d1c2f626f1afffe7ebcbbd4746deff43c4e35b8e357747522943ab60f854dcad72c8e3088b551290f2b5ed7ed09a3dca77d45f76d2e251d87136db3c6acdd28dbaa4a77089bdc43b8ab5b52d934ce159e890774d235ec3781b72be6d07c99201b0eb36393e6823e7ce6bdacb855e81eab5379221661de84aaf5efd673c33c0300eeb6bad6b72aa544f0c3d4d741c9e4b257096af43e519c10d44afb8c3d11e338d775eadcf0e2262b76d4cd43ba7e5486521df5f60e00d82e95b2fd010ee5c389ddf126a5d4122daa5cea863dd32d22d7486b08e5724044324a327e6a9e47e20ab23e8215d6da6e71131b1ef1bffb4cc8d41b4ec6c1171efd0e8da5823c8a8a6121", + "credential_finalization": "ab1cc7b6c7128485740607e59811fd2b208130e2553316b93ac9e96db93f43d84d3ae1786257120d50477e0f5e590a84154946bd16923095a16ac1736dec1fa7", + "client_registration_state": "00f0aadf923941ecee0b08d1556a86554a726fd93d0103730cc31946112b10d7cf28047ecfd09aafe4c33cbd99a83b1dda02da339edd0381c030cbdeb95d9a7e45f90201591421d02c1b456513d0c6114e7015fc0ce03b5e2ed898a096a7a203bcc9fc98e4fbdb34639bea2b110489df5139eb836bd8ae523a8817fd64c8ef3ac59c4f788d", + "client_login_state": "00f0aadf923941ecee0b08d1556a86554a726fd93d0103730cc31946112b10d7cf28047ecfd09aafe4c33cbd99a83b1dda02da339edd0381c030cbdeb95d9a7e45f90201591421d02c1b456513d0c6114e7015fc0ce03b5e2ed898a096a7a203bcc9fc98e4fbdb34639bea2b110489df5139eb836bd8ae523a8817fd64c8ef3ac59c4f788d1f17bfad6de460e3cc3b894bd906f93a8c2a506efb35885343035078f0e2faef030087951a779f75ce1d5aa4c8bc789f692d42706351122abb1c793908946eee4112c471573a86df5b00298357d48d40d291464d631217c69d716cb3191ad878e30b01007f56d4532c001a559490042a727356f129449a79386a65e5ab19abe8f155fd03a57d1fb60c536dfeb104f2a771232348f6aeed5a06f1cc95754e4a592cbaddb5f21f17bfad6de460e3cc3b894bd906f93a8c2a506efb35885343035078f0e2faef", + "server_login_state": "2ba66e1609e3a0beae765083f533f6a2570f9ddea77efeb877ae32393a183fb0cb326ffd8f3213b335e4f0ff55f494fb6945a124b76c148be7c63eeff55df599c65faf10d3af187096494fe995b7889ebca60b6febb4bb196a85381ef9ea75e7ca703419b650cc108a679f61822d81fba1b44028604ebecea6db8bfe70899b7bd294d1796ff1ae150e797f257382f122a812d286c9c7e391086b9ec92aede4e9fc5829696c1012764dca30d75dc9909852f265bd52133172d0b470cda0b5cdc8", + "password_file": "0201fbf7aedc48df2dc0b64a386b752241d1e0382c8bab87e1aa0c3bea58fc9d4e9a22eb54ea06b98aedddde51181c55f7c373e145f77fbac8416ace5f8cac4ba5c7fe6e1d0eaa9f5bc69fff4584d4dc21b2d8559a4aef763ba55f0821b5ee423a5e2873bec92f522ab285a0f125c2f13feee6289c8d529e1953c105dbf91aad8e5207008f76172b7381fa17c1918596ef1774d68e6336706c2218d0ab01cd63fdeb761efb374c03159986023a115311eaec6c1ab72a003f45fde25bca5fa7c62fd8147bfc3196b1fea3df4c83561e562eef8bab8d3f08611e60606b2b8df57139451f", + "export_key": "564dde3213032dace1204293e104d12374c2812fd3f0da7588a489ffcdde8a295687efb90c1ef37bedf37a5884869d255bc82786802525851aee565e48935776", + "session_key": "d294d1796ff1ae150e797f257382f122a812d286c9c7e391086b9ec92aede4e9fc5829696c1012764dca30d75dc9909852f265bd52133172d0b470cda0b5cdc8" } "#; pub static TEST_VECTOR_P521_P256: &str = r#" { - "client_s_pk": "030088199d4184b761089e1c2e2be858cfa79f980f435fd403b52dfdb0268ae2b051fefa0b69e266f625d85d4daa7fbd4e1f75baf415e4ff36bd301370b80da3a6c725", - "client_s_sk": "00a5e78b13c731614b14c348ee1ae085948f0de613071915b6c9e2e54bc27da6c57eaf03b6f4023278fea577c3bfe88a9ecbaa303924892f47ff4acf99233aee8a8d", - "client_e_pk": "030124fdf13ee9d1ca11a4f17304d7aab2745355646b249ee5ed77ce2ba1dff5444ce3e6e43906d908508718d42b0fffa88e1de686acb4b1ef9ca8dff3720fbf9f8abb", - "client_e_sk": "0168600c2d7181fd2e7711ab16bb9fd4a3e6c3bec16a16b1cf771116e0a75b71a7a5ed0ec28f4e9c2d7fb006c6418f5a92a21038617c1f012e89cac0ebf83566bd5c", - "server_s_pk": "0301b7c0482b40154df6a691c0b2b2069fa218dccf642e5bf5082961f9cbd8af1493c5a75537c888c6f94e733ff1abcdbd74b8c6b727437a94e23a1531fb9d09a47971", - "server_s_sk": "00363ea9f6784a57c7f19fce47872f1685507c33dfe49325fd3ef64c24d964e4fa4032db20aa4c101269a7dd6d30a0eb99248d0408b7cbb963270f85e510c8242075", - "server_e_pk": "0301e796e0589ffba01d62897599ba4cc34d03aa59e8892ed8395bd4c67fe4657a28495301723fbec13563e841d17fb2fce7396965939b90ba88c2ae164ad57e213427", - "server_e_sk": "01521c04cd3aec2839e9284dd69a8190b69b3de6604218fc72d2b47fd64fbb2a2f7b1a04bc6481c2778b6cfea515d8f1e24da5ef9ad17e67b1964a2ff7e80ed2bb89", - "fake_sk": "010354b843e9a45a1ac426c3d235d13aa10a09b8ae77d337acf607363ba23410a15eb57dcbcea70e43383a50f68972e1ce8b845f4477f602a66cf2149ac57a54adb7", + "client_s_pk": "0200fc003687b72c78a2413abbce6723c317fd368d2bf1b32223cb15a8974be4dc8121bbf9ef181319e873761ba987b703280ecd877dcacaad3dd140bbb453e3f7f88e", + "client_s_sk": "00b65fd296d1d797e798d250104bdb49d4af178dec9efd9db9436c83190212899788adcc64d713aad9c226b9fb0a46443290c26251cf6272ee677be05a48d23ec6f3", + "client_e_pk": "0300cbaf2e244815da79889ab3ff581174d71d47108371a42b6720fbfe4ae0e56fb23f99cbf4bc4083d1ed922a05aa76e3c515f0bd8c0e217a19c5788087a9f54a4644", + "client_e_sk": "00188835eac6c3672a7d663cad1771a4403cfa661d1e66286d4ff4f5615f3bbd33f5e96f1fc3edc3123f139efd9e4898ecedd5a5932dba20e55274ea5e53ea915035", + "server_s_pk": "0201a6a379e464bd2d667c4864bae521ecad74a1e1b3c4d705a4d15f99e0ebaf4b41992eb38f1cd750d033e8eb3547a2c20d9652150a8f671177611a06ece47d5c8921", + "server_s_sk": "0185fa5a58e6904f692225e515e59371f16c54f26dff48113772b09b958331a4d0a3c4f1ffa0e0b2f97cb1ff1cc3a1e22709730dfae1ae76a2ef4accc00543575c68", + "server_e_pk": "0200bb476935213a3c1f2207119120dbaece4af7a92184a7ba33c8547582f91069b87fd2c4e0fbbc8dfb7e25f6b79c83d9c031039bd3c2225c64727a1aff1b6d8e6b8d", + "server_e_sk": "00475f2bd685bfd60aeff0cc27f16747dc37621656cb2c0f01f0a42e0727ae89b7ed9025a5f2071d6df248a9b6a0e3dc68dde0c2045733d23f0b433cebfe9dede057", + "fake_sk": "00c5c80c12daa5069e7d06ae8800615e371ed4c156d78424b0699cbd5acfa8c36c8d564954f54d43c0acf486daf7bc63c6bf4ce88e9eacce8548f4c10e34c0972435", "credential_identifier": "637265644964656e746966696572", "id_u": "696455", "id_s": "696453", "password": "70617373776f7264", - "blinding_factor": "b7a45bb40fdcbc48dab6175b7afdd255e239d04ba1c03da41619e6cca75ab675", - "oprf_seed": "21c8e677b8991f1458c1cc0c7c9d8b5a2a7a195813cf56efe12ef21a773c0916", - "masking_nonce": "c425b286c1b2f348121ec1890718da921b0012e88cd1d4ef38b404fd2557a8b63c1b5c4ad76320856bf69cb0999e9b378df62329a6a9ec252c50ca2a3082c059", - "envelope_nonce": "6bbec126b5c79b8ca34d22f32dd04b4155edd144eb8630f7d81fc653709c704e", - "client_nonce": "89e40a5c268ff8238209a2541f9a4a58cf8d1f61f30c49ecd36426448fbcb705", - "server_nonce": "e4929237073c843ff23a99a1a1e3fb38039ef02847cd561649d0d5ae362b3d9a", + "blinding_factor": "c85450d250a2974acfafd419b0f662b13e017947c32fe3d791a324b9afa5c684", + "oprf_seed": "a0c6fc7431eae99616f8a870d5efe55b798f51a3a870b4fd599eb0b23a7f351b", + "masking_nonce": "569a7d5d6aecab49c5e98f18c05c8c8963ba40ec6d049abeeb40f327d793814042fc1912c14b8f590a1afa853074a8e6066fd858999d3e50e36a0efe9d173c79", + "envelope_nonce": "b1ee4bf162565cfa47e0f7bb3f82d1210b8c97f3973c3dac2024a3bb9ca6ae59", + "client_nonce": "fbf70fdd73a3c78ec7bdedb8ef66e2437043ecf9231cfa45f5bd9cde2d26dc92", + "server_nonce": "42effecfecedcc54b67f48cdf2b789bdebc18e458c76158887a1a9ae9465baef", "context": "636f6e74657874", - "registration_request": "030f8ca3c03824a1e09dcd43cf3b6c13474f3d8c9d2b271c91fad320cb0968b378", - "registration_response": "036129f94a04519afe6f271420e1599624de03611e7b9634ec0ffb925ec68b2aaf0301b7c0482b40154df6a691c0b2b2069fa218dccf642e5bf5082961f9cbd8af1493c5a75537c888c6f94e733ff1abcdbd74b8c6b727437a94e23a1531fb9d09a47971", - "registration_upload": "0300990dfdeddb00e2d64e90ea895f7d8b911a545206d7902c3f5e5e017b544d2e2bac701af1e587f46f2161cc34b3ce56a50f408c46ee21fb20b8013851189e34b56653242f342b085450a088a4b4e09207684fe2674a61c7ea0c87c0f9266960094800a5e78b13c731614b14c348ee1ae085948f0de613071915b6c9e2e54bc27da68bd82df25787d11501e25973ec94a7a2aef7bfc8fa861dd2413e48a5774ea67e", - "credential_request": "030f8ca3c03824a1e09dcd43cf3b6c13474f3d8c9d2b271c91fad320cb0968b37889e40a5c268ff8238209a2541f9a4a58cf8d1f61f30c49ecd36426448fbcb7050200cbee16fa009cb4cbb6768af98b7cfec57d8abd5c0a48ceb96e3346436926f465180b9f99dc9c0fc5356344ea741bf3449a8964645d1113c7266e95f7034529eaa3", - "credential_response": "036129f94a04519afe6f271420e1599624de03611e7b9634ec0ffb925ec68b2aafc425b286c1b2f348121ec1890718da921b0012e88cd1d4ef38b404fd2557a8b6849d844c54e3b5544d221a4344f30edaece372d90c93431ce9c595790a189c0ab203341ceff1b52c7a23ea211567cd6581d5571221e53f647c0d96c5062d0dfd385d2025c662c0c603b336af18434edebc06bca0189b69e99370304484bbda2932175ef59bc42a17f972ecb3aebb3435c692b09b8a875f1156657ae79a4fbb061f00451a04bc6481c2778b6cfea515d8f1e24da5ef9ad17e67b1964a2ff7e80ed2bb890200c3eee50b586317c123b0e84625a77f3149f145ca56562153984495a0edbc1d7e9425f43d67793ddd667e26ab1fb81d0bee13fce15cf21d7bf3e0b552a37f0fd3a194830466e4c81905bf09a8c53598f4810a6d88912a2e6e6ff34209e16afb0e4e", - "credential_finalization": "0a6edabbf67a6c45d4e6bd456915bf9c842f70c4cbd0f05d60c5073c46a00ed2", - "client_registration_state": "b7a45bb40fdcbc48dab6175b7afdd255e239d04ba1c03da41619e6cca75ab675030f8ca3c03824a1e09dcd43cf3b6c13474f3d8c9d2b271c91fad320cb0968b378", - "client_login_state": "b7a45bb40fdcbc48dab6175b7afdd255e239d04ba1c03da41619e6cca75ab675030f8ca3c03824a1e09dcd43cf3b6c13474f3d8c9d2b271c91fad320cb0968b37889e40a5c268ff8238209a2541f9a4a58cf8d1f61f30c49ecd36426448fbcb7050200cbee16fa009cb4cbb6768af98b7cfec57d8abd5c0a48ceb96e3346436926f465180b9f99dc9c0fc5356344ea741bf3449a8964645d1113c7266e95f7034529eaa3009f150be53d7b352923df1ff345a8e32af621fb547e0ee8fecd97c984188e214d70384dd1bc409ae0f56bf04bb70f59f18dfaf1caa322159eb1904a48eb5758bf4b89e40a5c268ff8238209a2541f9a4a58cf8d1f61f30c49ecd36426448fbcb705", - "server_login_state": "03bb0135a05f6894c25550c25de788b3a80f305d4b4f67935f143d9a9778d7a9e2743c32915424143c3233fe5c05baba3179bafb3d7ce77e94b405d4745151ed7bfccb7d3de5e5b25b5eb654d60b660ff6800da8d2737fdae8a8ba422d5b4239", - "password_file": "0300990dfdeddb00e2d64e90ea895f7d8b911a545206d7902c3f5e5e017b544d2e2bac701af1e587f46f2161cc34b3ce56a50f408c46ee21fb20b8013851189e34b56653242f342b085450a088a4b4e09207684fe2674a61c7ea0c87c0f9266960094800a5e78b13c731614b14c348ee1ae085948f0de613071915b6c9e2e54bc27da68bd82df25787d11501e25973ec94a7a2aef7bfc8fa861dd2413e48a5774ea67e", - "export_key": "3d307f7ceb83ffa41fbff4a411dfe1ee89771fd3c9862bffc3c29a47afdfa092", - "session_key": "7bfccb7d3de5e5b25b5eb654d60b660ff6800da8d2737fdae8a8ba422d5b4239" + "registration_request": "020d1b237e27056789d2ee2f2ef41d4fbddb09fa68574e58295d7b232395de64c4", + "registration_response": "033d2fa134c63688d56ad42517c26a40436b4a6144ffeb992c1caee431a290b0560201a6a379e464bd2d667c4864bae521ecad74a1e1b3c4d705a4d15f99e0ebaf4b41992eb38f1cd750d033e8eb3547a2c20d9652150a8f671177611a06ece47d5c8921", + "registration_upload": "030145d13f432a85d0d49044011b8c1975605fa471986345dbf47238c16cb996487c748e704ca70c1829e2d067b908f40100d9b99b46d18c94f0556c501e50784677749a9fd4bdbfa5554c7b7a0debc78ede47da6948b21c5740440d07d876ed57e33a00b65fd296d1d797e798d250104bdb49d4af178dec9efd9db9436c8319021289af7f37e0475ba619ba45a4705370f3983e5abad374ba4f93bb1206d2beec7c96", + "credential_request": "020d1b237e27056789d2ee2f2ef41d4fbddb09fa68574e58295d7b232395de64c4fbf70fdd73a3c78ec7bdedb8ef66e2437043ecf9231cfa45f5bd9cde2d26dc920200736b7ba2b67db2011b01460ca7ae14f537c746deee93a5923bdb759b02e6a60cc47f173d6400fe98e3a4bced1a1ab424b07f17801428c7ea26fe7d69de686c3d14", + "credential_response": "033d2fa134c63688d56ad42517c26a40436b4a6144ffeb992c1caee431a290b056569a7d5d6aecab49c5e98f18c05c8c8963ba40ec6d049abeeb40f327d793814063013520c248371c18b648f68eb9d35b7967f19d7c1741d1820edb7ea414038599c15f57d159af947da3e940ce1830e8a7b1fbdfea970b0b0e190e80c1a2a6fb2fe15febf406cbfc864bdbc8c24a18e8c4d91050a15aeaaafc598156a658a4e2d08d4a929d390309c66c974811999b6ad3bf96f09cfe98560707af693d8070969527a29025a5f2071d6df248a9b6a0e3dc68dde0c2045733d23f0b433cebfe9dede0570201aed5f0b7461afadd03b744414a1eb3b09c5b294d616be598121bee9fd63a7bc36c4f91af2c9217e48919036ad1494a1d96b10d2d53cdd0e0f331cfe0ef1e9bba63f1b7425eec61fc5faa7d1e9921b8cb1a7a273272ee19d2014c424a7fa73bd174", + "credential_finalization": "66051195dc15cccec3932c808ed515e4438daa7238032c3a62ab18677d032c1a", + "client_registration_state": "c85450d250a2974acfafd419b0f662b13e017947c32fe3d791a324b9afa5c684020d1b237e27056789d2ee2f2ef41d4fbddb09fa68574e58295d7b232395de64c4", + "client_login_state": "c85450d250a2974acfafd419b0f662b13e017947c32fe3d791a324b9afa5c684020d1b237e27056789d2ee2f2ef41d4fbddb09fa68574e58295d7b232395de64c4fbf70fdd73a3c78ec7bdedb8ef66e2437043ecf9231cfa45f5bd9cde2d26dc920200736b7ba2b67db2011b01460ca7ae14f537c746deee93a5923bdb759b02e6a60cc47f173d6400fe98e3a4bced1a1ab424b07f17801428c7ea26fe7d69de686c3d1401b6b38b66c4e154ddea53022e60eee18a973a122537af7a552052ec5ef4118414cf7e2ddf13d52894afb688226e1c5b1cef37c1b438d3f40db76c7dc65b10bbbff7fbf70fdd73a3c78ec7bdedb8ef66e2437043ecf9231cfa45f5bd9cde2d26dc92", + "server_login_state": "1a9100b3a653b2c85fa6694100eee978c2ac290287ca29db2f540507e95116a5a0924b6144f95d739e17a178b417d62f9cb32b284eaaf88a838474758fc81a6ee894fd228cc7e41f86a090b5194297fb19476cc6537d84ee9ab4b58501200bc8", + "password_file": "030145d13f432a85d0d49044011b8c1975605fa471986345dbf47238c16cb996487c748e704ca70c1829e2d067b908f40100d9b99b46d18c94f0556c501e50784677749a9fd4bdbfa5554c7b7a0debc78ede47da6948b21c5740440d07d876ed57e33a00b65fd296d1d797e798d250104bdb49d4af178dec9efd9db9436c8319021289af7f37e0475ba619ba45a4705370f3983e5abad374ba4f93bb1206d2beec7c96", + "export_key": "2af075808d74b077f231dc33c44b0b96523f836db932f2ae98443a3ff5c9f0ef", + "session_key": "e894fd228cc7e41f86a090b5194297fb19476cc6537d84ee9ab4b58501200bc8" } "#; pub static TEST_VECTOR_P521_P384: &str = r#" { - "client_s_pk": "0301a716b9be4a64edfcf7124c12e44f6d58c1f576cbbb95994f4f523b0aabf1771b579295157c460431891dce34723b7a3a238c642bf97107e5e488a665dbb06ba870", - "client_s_sk": "0184d9f698348306ddd6da32d5952ed19fc986b26927abd5c33956d9c496520946bccc0819e7161808a9a92fb5aff7a0dcd305abdc4dfb009948759d9c7348f89559", - "client_e_pk": "0300c6552c5c5879a3e209abe267b165c13736f614881b3e126bd581ab6d74bafc4b6d74a1da414738e14a3e7ba533d36ede5960ee57a22709e03600f2608af676aab5", - "client_e_sk": "019810babe6a7975ea1ffa90bb1b2d4ada857803b82cd625f744941619f72a46126884cd5dfc0aafc2a2e6e0fbbbbdd34fd72f596e7a671368bec85d3e478eb5790b", - "server_s_pk": "0301f4ac8deb4d4d7620565bea830b9f90059bdf5d8df9c9ebf35796e6c6236a586c1ba8e9a37cece56b41a535405bb6a8f225525b066768fbf4b676e605ce02216568", - "server_s_sk": "006c801178543c74a46c968bc077c77a1b081872bd4e58807d08655c594f90759e101a993a8c4c908dc811f4e138bc64d393589a4b3eef5da89f333b8c4cfb207e1b", - "server_e_pk": "02004f01a5051548acfb7d1295afc1ec3ed78758bf8611ce04e5e78318c70b8f6e44a98e20a674bdea0c77783ad9de7d1d5c2a791e4e65e7bac22cb760f118c6862910", - "server_e_sk": "011e4210962528a316d9e92ee0a22df9b737396d2453f0d1bc4ac96a49241f4d8e8d4bdcd20d8bce1dd4defedf991578178ef155a6c6a5acd71e33882cc2db14ed18", - "fake_sk": "01e615efa1501907b7fb277393239c416f329f0d2f9ff26ef200e48943c39ea2782ebb43ddaac3b6d6dfc92f1f5cf296f78901e96801fbab0ec51912f5f3e28e310f", + "client_s_pk": "03003c3e8d8cc6aafff52417e2e4a88bcce233a6de7dec31232127553706b24aadbfbce0e57ccde2d6965c4ae8cf2432b2ece98529de61c385b83a38301c75bf5e1105", + "client_s_sk": "0192069fb9cb0ee50bd26702d9a2ac701d0b59a9677d593d7b38a65cd28ead4640d91bf01e03078c6f1278de63b3379b9331959babe808981204f728472c19139865", + "client_e_pk": "0300fa57033e1c0d9b25247b147b316e968a9aa227d8f07b1f3f18e6deca35f4f544d1418e47212c72b62f40717a5c0151fbdc2f464a02a971d738535aa5eb2d22b65d", + "client_e_sk": "01f0fdf40111657954169a539cb9fe12450d857c3bba5a77123088166e9026604bfb1e19ac43a873961530bd0d65ba568e3b6212fdc3cceda57be4344307bc664d61", + "server_s_pk": "03002bcfe40e2f4b1651302d64e08398517491872ae87ebc8c636188c124d0fc04c9cb6d7c7f7e68f79e958893e20cd5f099e63d18ee4885a18cad70aa8cae4256d294", + "server_s_sk": "0080c5f8c9a6cb6929d08208885b8669899d9b829375a0c0f05c2d25287b437c9152d67a47ef180e67297c8ac0e65cb70a5436a34bc1ed8d9c8e3fd89e571d51c61b", + "server_e_pk": "0200240a5738818341d261f8300a2f9233341ea94fb7c8c92bc4c0b76cb73dcf552741399b71e9d8bbae17a437a124c192d40c9d629f1c8f84cfd287d55e3ea19ca336", + "server_e_sk": "009beaef309998aea9e7d640171067be5173643f84a81ed36608e103e6c35ccf2f905c752a2f67e74c3573d9f866951dcd8937e9d9a9e2b891d308128d239794dd88", + "fake_sk": "0098159f9aa7dc5f1932fbec68120a1502bb506ac78bc40816fd8db62abb715ae6677f021e75b6b772180ea49876985a189d472f3585113cf9ecb72f3b015e9dcb69", "credential_identifier": "637265644964656e746966696572", "id_u": "696455", "id_s": "696453", "password": "70617373776f7264", - "blinding_factor": "28f753c3e4f129ceb6a1343f03bcb5b942ae2d5a856d5ef9b105ed1e6c28a7165caf822920d9b6fad903cd9ce9119881", - "oprf_seed": "044d037840558af9b5b95254c23dd8a5d9b89be0f1baceb83c23d7de8658d4088c2c09e03cbc57b0840770bcd0663355", - "masking_nonce": "a20d9c2173af5e3c4f078dfb52b957e82f0c8c413795a158b085eaa6737a72cf6b18e3d75b750b7aefdf7835f87d3ea174562461860b1d9104215c69c84f2bc5", - "envelope_nonce": "e8e11d572fe53325955bad589778718838aa2e22ee1942f4317ecfedd442ce59", - "client_nonce": "d5884faa28baca9f5cdcf15738869edf02f31a954f5c4581dcb065291e503c63", - "server_nonce": "7e00ba5130ce1d9f06a590558dd6e9250fc5ac29d3604da62978bb98ee32009e", + "blinding_factor": "e932034afbcd814be22b3ae6b28b6fd9974d460ebfb8c21ac7fdbf6bb8d17fc3ee6e5d436e10c6f282ccfbe93d510100", + "oprf_seed": "0125dcdf93c2eccf805d7c1be95f3391d88ceb1bc07aa34074ae5000127e23dbebb1f25059ba94d6938da254dd729be0", + "masking_nonce": "2c8df03782e7d0ff1f7a90ae89a22efe896d54aa4fa8e0c121c0348e8e5e7d880316393d25bf5ae2e917e01f2cbbee4de582a9f7532d9666b7a96e4a739b6f9e", + "envelope_nonce": "74f051e1ebedad4298dfcd0096fb38109dd0564e94b48dbf0c43022dc918ce81", + "client_nonce": "ee78421ee72110b2c2e7245e8ac1704b94d904cbc246c368a2aa8322d8bb9761", + "server_nonce": "a7f68cf8761586e43d40468514737738b9babd5e2734ba71733e74155065b1fa", "context": "636f6e74657874", - "registration_request": "02a1d37e5168c0bc187cb43b7f17ad1cd5dbbcb34c9a7f545d96125c4cdc61ca4771acc8184daf4a9103d44f53de6b647c", - "registration_response": "038328a0133863249ed225872867584dc486337d7b1e984ef2fbed0d6a5a13a0351d32c7517bcc2e345179bca2048814e10301f4ac8deb4d4d7620565bea830b9f90059bdf5d8df9c9ebf35796e6c6236a586c1ba8e9a37cece56b41a535405bb6a8f225525b066768fbf4b676e605ce02216568", - "registration_upload": "0201d7a3f69092e2fe5ae4980aaf396a9792b67ae32a7f1bb2805473f1e58ae8a5e39774b1fa602ace55fc11b5a729342cd72717835b15307ff3044d97b4fa0f831736c66b123f324599018950cbcf0e5bb6b6d7c240757e0c7cd943d8634ded57d33a9cfe4667ca889b0de6949c56fc290a950184d9f698348306ddd6da32d5952ed19fc986b26927abd5c33956d9c496520991d3a01faaf8200b9c5ae6975b3fc980c7b05c06cd832be6b45bac4e5c82af6ac68129af18e4c7b0f2b611c5e921cc26", - "credential_request": "02a1d37e5168c0bc187cb43b7f17ad1cd5dbbcb34c9a7f545d96125c4cdc61ca4771acc8184daf4a9103d44f53de6b647cd5884faa28baca9f5cdcf15738869edf02f31a954f5c4581dcb065291e503c630300cc10de7db87e0a652ba9db5d051699ad978be3a1f66b86367d37985001b45c80a8c411fcf333d0e7fdfc3d5f72a4843d2ae13d48c660d2540ac0cff8f0899f9277", - "credential_response": "038328a0133863249ed225872867584dc486337d7b1e984ef2fbed0d6a5a13a0351d32c7517bcc2e345179bca2048814e1a20d9c2173af5e3c4f078dfb52b957e82f0c8c413795a158b085eaa6737a72cff671a4e9da29f62c300f5137e663886acc5cb09580084cbf097b58353956055a4410a6c201e53365f179b9162602295189f60d2c8edb179ad603585c104f49583b526aee9facac71b7bcd0da57267c7ff177703ae0806a7a875e5c9248dd24dcbfbe03514035ee7c2740fa9470925dd19746cefcaa722e770c4da9fb20ee17052524e31a55b1815d373c40856445440c0ea1674bdcd20d8bce1dd4defedf991578178ef155a6c6a5acd71e33882cc2db14ed180300131f6bd571cace2f3e5f7f9d30a74718f5b85a9419df3d9396cdb7f8c988c09d92bb2427411cf8742b362f001c75fdef73c1c90c9f09635dd757bdb1f5b47b86062d32fcc832a605d3332097e317155790b65503548cfd31030f4538d2a67f256409202c3b9895f0d984226eb0d5ffcfeb", - "credential_finalization": "74d55fed076ca357fc42d6d810490be30cf1f66c6aace86f1eb19a9f02448b12076b8330d1342678caa63357eb1666a4", - "client_registration_state": "28f753c3e4f129ceb6a1343f03bcb5b942ae2d5a856d5ef9b105ed1e6c28a7165caf822920d9b6fad903cd9ce911988102a1d37e5168c0bc187cb43b7f17ad1cd5dbbcb34c9a7f545d96125c4cdc61ca4771acc8184daf4a9103d44f53de6b647c", - "client_login_state": "28f753c3e4f129ceb6a1343f03bcb5b942ae2d5a856d5ef9b105ed1e6c28a7165caf822920d9b6fad903cd9ce911988102a1d37e5168c0bc187cb43b7f17ad1cd5dbbcb34c9a7f545d96125c4cdc61ca4771acc8184daf4a9103d44f53de6b647cd5884faa28baca9f5cdcf15738869edf02f31a954f5c4581dcb065291e503c630300cc10de7db87e0a652ba9db5d051699ad978be3a1f66b86367d37985001b45c80a8c411fcf333d0e7fdfc3d5f72a4843d2ae13d48c660d2540ac0cff8f0899f9277013f46e72bda9671fa3fa9fefad740729f510a01f1895767ae3621b6d1bbee551860f587f7b4dde887dcaa6ed45ebadb2d89e4deb6620352af7015b1182644e4f5cad5884faa28baca9f5cdcf15738869edf02f31a954f5c4581dcb065291e503c63", - "server_login_state": "274c683c4bd0427b1e90fa56f2366247fc8b8f6874fe2e268f0fb27ead7f884bbc6fc74fdfbd6bc63e70210ea3287550b4289494ead368a4a39bcdd2f4299abad33278f31c19fdbe42d5154067a2c5436f8e3d559037d547e567c654bb625640fdb6cd4a235e4e7e131dadcf9db64b567392c58bd01704963f4ce99c48c5d6a03816cbff976738d612309b582cc3a516", - "password_file": "0201d7a3f69092e2fe5ae4980aaf396a9792b67ae32a7f1bb2805473f1e58ae8a5e39774b1fa602ace55fc11b5a729342cd72717835b15307ff3044d97b4fa0f831736c66b123f324599018950cbcf0e5bb6b6d7c240757e0c7cd943d8634ded57d33a9cfe4667ca889b0de6949c56fc290a950184d9f698348306ddd6da32d5952ed19fc986b26927abd5c33956d9c496520991d3a01faaf8200b9c5ae6975b3fc980c7b05c06cd832be6b45bac4e5c82af6ac68129af18e4c7b0f2b611c5e921cc26", - "export_key": "3161d922d75a098464ae080a1a969452a31679caef02011f25a5497aaed7ba687ca7067744e2e32a4a98438c0db6d3eb", - "session_key": "fdb6cd4a235e4e7e131dadcf9db64b567392c58bd01704963f4ce99c48c5d6a03816cbff976738d612309b582cc3a516" + "registration_request": "02359742cf3e2836ba4e06a94af7d575dc177b3724f380c546150d7acbefdd437e0e1b784e4a5a62f8dc21ac4862f8c710", + "registration_response": "024c5de96abab75462c441813630077cbb6af44cc5aaab241c588a548d8514964d93d25b5c8642ba2f49ebf937b3ec6b5903002bcfe40e2f4b1651302d64e08398517491872ae87ebc8c636188c124d0fc04c9cb6d7c7f7e68f79e958893e20cd5f099e63d18ee4885a18cad70aa8cae4256d294", + "registration_upload": "02007a238608c245c4720a2f9a63c00842ac7d60cef9f90898d7a80ee45413420c1f36dbe962b79ba9e81951da4f98032f2e29eb38494fcf598c58823ba7489658237acb359d99ffd97a058dfbfba096c8c5abc09e7abbc09fbd447b87129e31eed40d4d62d127474b9ba92156189f7d24d6200192069fb9cb0ee50bd26702d9a2ac701d0b59a9677d593d7b38a65cd28ead46df936696cf3b2c0f5ecf4e68eb336d6e948378d01172cc900736e9ec06e73c21699caa9af4c302bded07e4b3b0840bcb", + "credential_request": "02359742cf3e2836ba4e06a94af7d575dc177b3724f380c546150d7acbefdd437e0e1b784e4a5a62f8dc21ac4862f8c710ee78421ee72110b2c2e7245e8ac1704b94d904cbc246c368a2aa8322d8bb976103007f3adfa706397b91c4afb8f95504392a7f3e1e35c394d3e64f65b3f449a82083eb853ca757d35065cc339a646c0650e415ab071ca2ca508dc62613794fd067cacc", + "credential_response": "024c5de96abab75462c441813630077cbb6af44cc5aaab241c588a548d8514964d93d25b5c8642ba2f49ebf937b3ec6b592c8df03782e7d0ff1f7a90ae89a22efe896d54aa4fa8e0c121c0348e8e5e7d8818dd85990304bee7a0f4bcfdc7cdcf78f1ced144d4bfca54a774f1cf432b8d82fa2878b4c857013bc3f6c4d4ea53bdec8d5b8793c296e246c63c8414fce8d2a342e08e88a5f794c46320265a84d05f869b0e12517dfeb9a0e1e2ec896acd613fab43f9706d3748b1b0240ec1c77ca8d7666cc1e0d0e2b4664e3a74709c88aab7d06b8c6b58006b5df6015ecbc36bc0adabb9415c752a2f67e74c3573d9f866951dcd8937e9d9a9e2b891d308128d239794dd880300c2ef947dd5e67665afa8ddf2a6fb45fff0fbb5ef598c1b92f24aa47442a3186bd4e724cf9be9c80f04cb57dbe340ec00c3650c43131554a4ce2a1abd9d91b95beb7be83858c3fa1d4e091949c3a172a163889ccd6fed799f0ad549934394d60cf6bf8871eadd89e13f70423a888e3fa7fc", + "credential_finalization": "acedd65010dd7ed56b18a56482e9389f448fe48553309c427f2022ba6c65956c7c0df7425ea0d68c56b030d9af945f4b", + "client_registration_state": "e932034afbcd814be22b3ae6b28b6fd9974d460ebfb8c21ac7fdbf6bb8d17fc3ee6e5d436e10c6f282ccfbe93d51010002359742cf3e2836ba4e06a94af7d575dc177b3724f380c546150d7acbefdd437e0e1b784e4a5a62f8dc21ac4862f8c710", + "client_login_state": "e932034afbcd814be22b3ae6b28b6fd9974d460ebfb8c21ac7fdbf6bb8d17fc3ee6e5d436e10c6f282ccfbe93d51010002359742cf3e2836ba4e06a94af7d575dc177b3724f380c546150d7acbefdd437e0e1b784e4a5a62f8dc21ac4862f8c710ee78421ee72110b2c2e7245e8ac1704b94d904cbc246c368a2aa8322d8bb976103007f3adfa706397b91c4afb8f95504392a7f3e1e35c394d3e64f65b3f449a82083eb853ca757d35065cc339a646c0650e415ab071ca2ca508dc62613794fd067cacc001181cb0d98c632bf895b6ea6a3687dc716e897fbada9205cf1911ee43aca83c304b687403d8c89db380aea8fae21b6846d1effeedd3cb5531f6d5ae5751e39f835ee78421ee72110b2c2e7245e8ac1704b94d904cbc246c368a2aa8322d8bb9761", + "server_login_state": "41700f8dfd92042693776cd39c95150efca4c46d50888f7755ea6a6508961b168f643997b3fbdbc3621ad41666bb92adf500da30ffdf4e61728ddff80cf0d5e0a96ce6e8f5fc8c79f6c8d4921f6a592d4de5b48c046c65c4beff8a36b4d4d50c75de20538a25d768426e156b66cc3598fc6757acfdb93d3b0b5293671b4875aee6726c4ef4f323ff9a4264e8f3e69157", + "password_file": "02007a238608c245c4720a2f9a63c00842ac7d60cef9f90898d7a80ee45413420c1f36dbe962b79ba9e81951da4f98032f2e29eb38494fcf598c58823ba7489658237acb359d99ffd97a058dfbfba096c8c5abc09e7abbc09fbd447b87129e31eed40d4d62d127474b9ba92156189f7d24d6200192069fb9cb0ee50bd26702d9a2ac701d0b59a9677d593d7b38a65cd28ead46df936696cf3b2c0f5ecf4e68eb336d6e948378d01172cc900736e9ec06e73c21699caa9af4c302bded07e4b3b0840bcb", + "export_key": "826ba0fb7889e16fba6c19eee647dd464d6528a273222831f361a70f1181eb27017eeef844ac0b855a037a721f5a661c", + "session_key": "75de20538a25d768426e156b66cc3598fc6757acfdb93d3b0b5293671b4875aee6726c4ef4f323ff9a4264e8f3e69157" } "#; #[cfg(feature = "ristretto255")] pub static TEST_VECTOR_P521_RISTRETTO255: &str = r#" { - "client_s_pk": "0301145bb075fd439286f6cddb343c51c4bedced2d4e188fbec73d21ccd3374379413f5b6e169a80fe1168eee9e6558973f61bb14eb1e9b455a86f3612316f462628c2", - "client_s_sk": "0155153fa6146292c7d715b3f9a4df097177d523acc855570c70d2b0b1da30803e88c2ef4a090391d91f457d3ed418a42df402336a86b06f8af4b430414e8a6eb67b", - "client_e_pk": "02018d46afbe3336f1fd238c04e34e0fa955ce93dee3de94d10aef8c1df9b323e842a8740301b8844d20c103417f8cd1cb5a1a8c0adae4839a60d05e409c5b59bce8a7", - "client_e_sk": "01447a1cbca9c8221dbb0b774cb1f886b63807050e2f77e3b01a0af967aec64144182f9bd76b776bde2194a4ae45a3ed3bba6563b30b3e24c7b6be74ae7e64884773", - "server_s_pk": "0201f28f04b9b77eda9aee527dd7cf9fb807ae78b439890bd299ad566d3579f39a8a788414f88f78223bc67800e0994bbc326ee31601c135bcc7d3aa38638482229cc0", - "server_s_sk": "00a69cbb0b03d92835dfca3a8de774c01f9a477bf3f38eb7600953051aee3c230a4355f08c68150e46fb6d0898413336eac49c59dbaff676d4e9c3752fa6679da485", - "server_e_pk": "0301dec7e37cfb33c861ab69c74b31369795adeac3c547a6089ac61d6d2dfab577b72a74daf504f948911655780b644b434111b548f547d92599137a28303b8c179c1e", - "server_e_sk": "001835589bbad20a31ed02102c75adcd95a5ee61fe7f70ff61366a742932341e5a3f1bebfcba793df08496d72ea9355f7e9f22f233c1d4e12fc185706defd0d25a97", - "fake_sk": "01b10546a8a8285cb0f75acda89b3d04bffc5101d2ab37c8e9bdbefeaeb469e57055994bb54764376af94a65982e03609248d55b4f8e3ec4fdeb2c725b141623001b", + "client_s_pk": "030117b004d7ccd9870973c1e5c64575e843d0338dc8b816246386cbbb7a08d82c646450c8a7316acfa910d347f66bf516f2a84f9b51bc835022969e02b7b88d4e0700", + "client_s_sk": "00a162d4160ff84ad0ed608506138bc2f22b7da60cf94300b678f4b0cf5a2e924ff6e1b1f95a970b1f211221c3d03936620004bc5c2777f0e8c3b21e645c26770fef", + "client_e_pk": "02000283b117a412cc67ede8c65702792546fe1e703efd2bb7cf4559870ac72de51dec8a65a832ef1142b432e9cf3987728ed7cf6c404a02ac344da112d606c1e115cd", + "client_e_sk": "01808ff87c71950add3e312e6a03f0415459b67d847a15ad2fa3c1a8500a064a0d5363ad1b6b4f6b4440e3dbd2f5b826b85e0efcabe54859868644dead6ab22966df", + "server_s_pk": "0300e145d23ebe0348c47b5e63c66533e03ad6cc0aa8514386fcc285ee46dc5a96090947de90635d25777ba12d81eb6c2acf24dd36305dae7354b24afd0a5d46d1c0dc", + "server_s_sk": "01f1f1e2384f97fd746302c68ae7691c1835b28c2f7f7a03bf9d89f95477377503c0008473ef270ebdecf83a77302ee2e59497fddd07aca7bd5aa66827fefeaf40a0", + "server_e_pk": "03008110bede927dc965185a6d0b4bbf6bcb38fa65809b0ffd23d4db09423110e52fd7d34858dc6b93c3816cfd6f168a19b2548d9f31498b86dfae7035408ddcad773b", + "server_e_sk": "00c00d1f9f12d23b59d3087c009bb7bbccb1a1022ef32eec1eb326872a9c9911ff3912dc2b4f9c222e32fd9cc4179c345dcaec11da9c570b20848da2981b0ed66c01", + "fake_sk": "005639fdc88bb2724ca1c1463f0e8f959d5f0892dd699c08cae8853dded4f6de2b9961b8d04562f397f395da86c43dd7247df836be0665a9a2e85ff5bd73841a9bc0", "credential_identifier": "637265644964656e746966696572", "id_u": "696455", "id_s": "696453", "password": "70617373776f7264", - "blinding_factor": "7f6822f06ba40f0089575925d1996a39a20e7c4f550291bf351eabdabf779308", - "oprf_seed": "086f5ba35074cd6b311e2d80fbb710aa7adc864aba2e222939d46478ab21bc282eff7ca3f6ff10d386a4589d787fba18d33333e70c7fd204a9d3f06806f110c0", - "masking_nonce": "2a45f32b32a5ca0b2cad0139e83c1e7c920578d019bd2a78933439b2454a5f27f9b31b74fd7fa22f8836e75f35eb9fd0938b47541643628441fb218b4e4ee18d", - "envelope_nonce": "8b10eaad6ee7c6e7dc4f0e3e83bae8c9f58ad0e4d46618d70d36184df1871e19", - "client_nonce": "4b1fbc0d307e77109344f2ee9702eca6cd47139a519044421850b3a5a744b80f", - "server_nonce": "0dcf01e13f28a0f09ac07827d9fee748c97db1019f319c05213444aa2e591ee9", + "blinding_factor": "6fb1448328d91fcc39fc2a2e37ea809a6a3487eb7fea9090f27aa1cae6530705", + "oprf_seed": "9214eb396e7bd12434f058be742c6717b871fee1541ae40b724b2d6b6a64275d33d8ae92264ee37d0d9628b3bfb186d8e366b37a486b1f95b8cd034e72bf6a67", + "masking_nonce": "0133fbbf924ee396e5eafab8bd8ba2ec3dc9125a26f8248e584ff5ffed00fa0b10393951a3a6ac56f1b358531db2636ae2576d84d6de6960845bb25b765dfc84", + "envelope_nonce": "537d27fc473e7063ca027ec30b2b17d964150766e9d75183a160de2346e0ae53", + "client_nonce": "9a7f7be2ec21e8aae5a5375986e95f092bee2c3de20146cb3ff3606de6fb217e", + "server_nonce": "e7c03852ba79e544414430ad43b38cfb75f168671e8ed43543bb2f28b043aadc", "context": "636f6e74657874", - "registration_request": "12c9d1648e724bbdde4c2717a42a00992e5c825895adc26976f792cc469f4f40", - "registration_response": "8a7384cd1c2af5e23e2674520dfebcd5a33eb58282805d6d35fc12fad2a942060201f28f04b9b77eda9aee527dd7cf9fb807ae78b439890bd299ad566d3579f39a8a788414f88f78223bc67800e0994bbc326ee31601c135bcc7d3aa38638482229cc0", - "registration_upload": "0300f34695787b243746fe6880493c8b424aa5a392b3a25e06bc4c5bb7fe7ab94945ac302c142f7802960de91ac23da80edbce2ad472800d4344f4d5ff7c1a892917aac28b7f50411ab9bc221eae90a7d0892e48554b57c8cf0ce5d4f93b3a9c802e50b1dbd67084bfcdca076dc7dfc87dd0fd0820acb001f4a46ce11fd3b01cc082fe0155153fa6146292c7d715b3f9a4df097177d523acc855570c70d2b0b1da308080e5c782c971e615a2daad2feab765690e90c412ec6c11808cfc278689b362f7269d2c50413ac5e84e1623cdaf5ce252f69eea03744dc935cc4a9ec1ced75caf", - "credential_request": "12c9d1648e724bbdde4c2717a42a00992e5c825895adc26976f792cc469f4f404b1fbc0d307e77109344f2ee9702eca6cd47139a519044421850b3a5a744b80f02016deb800dc30cd6e1b443ed0a97c1bca14c66c1b2eb3e0179a9775c3e00705780d4f8b6b3e5b68cd3e104247b0bdd80078761527c3b08e42b92c957eb94da99168c", - "credential_response": "8a7384cd1c2af5e23e2674520dfebcd5a33eb58282805d6d35fc12fad2a942062a45f32b32a5ca0b2cad0139e83c1e7c920578d019bd2a78933439b2454a5f273113aa5c7d79b198338b3c7e0cdd1511026146430fb5a6cf2a37908e634190f751a6dee16c8b08236d9c2570a88610fe94a07f4491ad50aea41e9edb291eb25ca321464c965a0efedff46f83e823b8f7ec66e55c7fa2f07ec87e4c67759a9c04053f584e38805a7cef220865ad1ee1f3f354db2268d42d814445876c71eac9ae50c637e64a49b9fae7b35c5a8d96ea70bbc5ce0127b97111b81e3235b73223d5f207ba1bebfcba793df08496d72ea9355f7e9f22f233c1d4e12fc185706defd0d25a970200c5820422e722f17f153b27b47f06767feabe9f08970bbfa173c032698df288ebb1b5b1552492706cf653b0cc709166f7d2a99e03ea6ebbe2bc50236e1f977ca74d5773d2a09dfbd2b7aa769b5dc467fc4f9c388e303c932e5f4102759b71eed39eb437267727d57e644655e5d93aabb5b2a8290ca72f853c8c122f77841a7ca405", - "credential_finalization": "7ecee6ec700bf5d3ab1d6d12d712c26ed5991e262411947904d1dcd74072cc7594273b3bbcf5281156693092d2712bc82a6c09aacdd88a1e50a3671af295b9ce", - "client_registration_state": "7f6822f06ba40f0089575925d1996a39a20e7c4f550291bf351eabdabf77930812c9d1648e724bbdde4c2717a42a00992e5c825895adc26976f792cc469f4f40", - "client_login_state": "7f6822f06ba40f0089575925d1996a39a20e7c4f550291bf351eabdabf77930812c9d1648e724bbdde4c2717a42a00992e5c825895adc26976f792cc469f4f404b1fbc0d307e77109344f2ee9702eca6cd47139a519044421850b3a5a744b80f02016deb800dc30cd6e1b443ed0a97c1bca14c66c1b2eb3e0179a9775c3e00705780d4f8b6b3e5b68cd3e104247b0bdd80078761527c3b08e42b92c957eb94da99168c0062824eee3e9829988af023518bf839df7c9a503796228e2c8d9bb678a1e5fb6602b52c3c46505ea29d03065e44d2ebf8fef95b1ef5e30fac62530bb22c4184c2334b1fbc0d307e77109344f2ee9702eca6cd47139a519044421850b3a5a744b80f", - "server_login_state": "016b3a6312c6d960da61e6feb1714fdfdbf778e51134d895a22ba02cf971af8b26fd9774f0ed6099d4d6eab227dc75e69bee9ad8e6d1709e7ad0ad0b34b8673596f1d5334d0f4d219ba92ea2e7960dd4739a3983a90ec7901a0788a16ffe0a448f519a8c90d3daa5b725ca1969cf589ef672a409a8250150bcf041f039a439198b6e3941373e46d39da3eaf963049bc17ad26e7dbdd5c7c1359967cb997b9d1bf01795d00b20e6b1690712c6c36858a71f2f2fab06dac0ceb2d0f47dceb7afc0", - "password_file": "0300f34695787b243746fe6880493c8b424aa5a392b3a25e06bc4c5bb7fe7ab94945ac302c142f7802960de91ac23da80edbce2ad472800d4344f4d5ff7c1a892917aac28b7f50411ab9bc221eae90a7d0892e48554b57c8cf0ce5d4f93b3a9c802e50b1dbd67084bfcdca076dc7dfc87dd0fd0820acb001f4a46ce11fd3b01cc082fe0155153fa6146292c7d715b3f9a4df097177d523acc855570c70d2b0b1da308080e5c782c971e615a2daad2feab765690e90c412ec6c11808cfc278689b362f7269d2c50413ac5e84e1623cdaf5ce252f69eea03744dc935cc4a9ec1ced75caf", - "export_key": "6411891269a792b0a955d3d44bbdaeb04610ab8aa3ef67b193eadc83d8bf03ae3dd862e658860897654eb13089e594a27b98aa0cecb9e2dc7a96435e7c7c8dc3", - "session_key": "8b6e3941373e46d39da3eaf963049bc17ad26e7dbdd5c7c1359967cb997b9d1bf01795d00b20e6b1690712c6c36858a71f2f2fab06dac0ceb2d0f47dceb7afc0" + "registration_request": "60e43580dc54c8ab8779a0967b3ac30d8b37056ca464b15046cdca9472191868", + "registration_response": "0864fddafd70284ac0dcaef22879c2f62f737d6df5448661aa1d43a24f9791380300e145d23ebe0348c47b5e63c66533e03ad6cc0aa8514386fcc285ee46dc5a96090947de90635d25777ba12d81eb6c2acf24dd36305dae7354b24afd0a5d46d1c0dc", + "registration_upload": "020030caf56fc13e730455549f6fa5ef4eb29c20e9c1d4f5267dcf43ecf550e8da1d33822b33b5bba51f11c0296b9885516ad72ae19702275145d983616359db32e92bf915074e22eadc96f311605e30dc2671a93f548d38ec91091221811b2b2213a967aca9cbf0e6e4924383b15942f4e075b6ccd223c7af205a0c771b4a5906e26a00a162d4160ff84ad0ed608506138bc2f22b7da60cf94300b678f4b0cf5a2e92a74c5687d8ed44816f47555257a7c7695b80932385ad16a1eb1b6f207edbb17211f139dabfe433ba673a7576a80ddc7add714cc5fe87dc4078dfcc4029473752", + "credential_request": "60e43580dc54c8ab8779a0967b3ac30d8b37056ca464b15046cdca94721918689a7f7be2ec21e8aae5a5375986e95f092bee2c3de20146cb3ff3606de6fb217e030031de5048eb9a89bb824c321d653e862911586723c76716dd42d0c45e1335cd05b6c2071a5b5f8e47bbceb8c14060beeb1d0256a4a2da13b603c4bdcd83a54c9127", + "credential_response": "0864fddafd70284ac0dcaef22879c2f62f737d6df5448661aa1d43a24f9791380133fbbf924ee396e5eafab8bd8ba2ec3dc9125a26f8248e584ff5ffed00fa0b0af0e7c0ba040919be7b41b661371635ef30dee1e8e12eefb39d99f3a5c1a8ecda0620d26e6673241cb28c216fba8a9fdf4921cdab8660ffab5b14b87aa715caeefd8380583e9f81221ec86c81a7c48e484181daae6aa71b355a84e036a72aad28cd97e84b5b06e1acf174275ac6513f0afa1f99ff1efe42b97d5461d26950ca9eeb001c15b33375377793570e7bf3711a5856d63ae05b7ca71d80286c9e52dd5dc0af12dc2b4f9c222e32fd9cc4179c345dcaec11da9c570b20848da2981b0ed66c010301eaa374668589416fd66b8caf01e996be46bf800e43cd392154ef022375378b26a30cd76c8f64ff5f4b0ed83618e1031ab6ddd6cb69aa6a795cdc85c7135ccec825ab8aea7be0db08a3d3a22fb5df4e3ba9e8be795506ae8930fe1c365490310f7f78ec62c9d910dd8f913eb799b8a1a44ed255bfadac558510ea8bf911c7e6a12c", + "credential_finalization": "1dbadf4a802108f2ff276d1e4f496441adf9adc55c4da765532c9fbba818a7387ec711bc21435dc41b9562713525609df47b36d28f210740e45bfc64ba1effe4", + "client_registration_state": "6fb1448328d91fcc39fc2a2e37ea809a6a3487eb7fea9090f27aa1cae653070560e43580dc54c8ab8779a0967b3ac30d8b37056ca464b15046cdca9472191868", + "client_login_state": "6fb1448328d91fcc39fc2a2e37ea809a6a3487eb7fea9090f27aa1cae653070560e43580dc54c8ab8779a0967b3ac30d8b37056ca464b15046cdca94721918689a7f7be2ec21e8aae5a5375986e95f092bee2c3de20146cb3ff3606de6fb217e030031de5048eb9a89bb824c321d653e862911586723c76716dd42d0c45e1335cd05b6c2071a5b5f8e47bbceb8c14060beeb1d0256a4a2da13b603c4bdcd83a54c912701117f9f392cdd34fba8107fea3fb5c87dc640815852ccaa6cd88b4e6cc80e0e416c70527d6df9123f78d721958b546f39df32334da8d31b4ffd8b2efb6cfbd550019a7f7be2ec21e8aae5a5375986e95f092bee2c3de20146cb3ff3606de6fb217e", + "server_login_state": "f57b203fc8f97df3b53fa4832d4b00e60f1b5cde6e86b8d969a386af12f662bb1d79494ea69721c681608118cbe0404e4f264217e6f6983dcb5740d53351ce6509838fa7650129d4a71f809974fe9ed47a685cb8a448d0695b1a206bdd9bfdc9323941d148beaf6614e433b9f6178e315b04d022141baeaffdf02a8f5c67b3438ab00c3a2d4aea514a7cc056126ab56ad221b3ed34f367577b55bc9f271bf789681ed107aee8f049d4dc420f00e3024b77d992568cdb70283a01aca39c37153b", + "password_file": "020030caf56fc13e730455549f6fa5ef4eb29c20e9c1d4f5267dcf43ecf550e8da1d33822b33b5bba51f11c0296b9885516ad72ae19702275145d983616359db32e92bf915074e22eadc96f311605e30dc2671a93f548d38ec91091221811b2b2213a967aca9cbf0e6e4924383b15942f4e075b6ccd223c7af205a0c771b4a5906e26a00a162d4160ff84ad0ed608506138bc2f22b7da60cf94300b678f4b0cf5a2e92a74c5687d8ed44816f47555257a7c7695b80932385ad16a1eb1b6f207edbb17211f139dabfe433ba673a7576a80ddc7add714cc5fe87dc4078dfcc4029473752", + "export_key": "984a30460970a7690cfdffb5f06893c5988c670875ea794c7b7b37f84c0a6a2d12fca3929dd3b79ef6856f3f7ba24c8e45bf3838d14639b1cee1239961fd35ec", + "session_key": "8ab00c3a2d4aea514a7cc056126ab56ad221b3ed34f367577b55bc9f271bf789681ed107aee8f049d4dc420f00e3024b77d992568cdb70283a01aca39c37153b" } "#; #[cfg(feature = "curve25519")] pub static TEST_VECTOR_CURVE25519_P256: &str = r#" { - "client_s_pk": "d14fd8dde75d1b10645b2a89ba42c6615b05dfb1a093438cc1704d8dd2282349", - "client_s_sk": "90965c6cb443523e451872764a3abb1dfd4ed9369e33b66c5e3c91afbf2e2757", - "client_e_pk": "409d5c3e32b2b2179191bca50fabaf6298deb4d4563765aeff680c3c2f5c8c15", - "client_e_sk": "900dbf928953244d76f93d00915eaae392764a52d5958893514309356c32cd57", - "server_s_pk": "f1d376a74c91ef48463147c86032d0f26114b7b4d13ef8ce4bf1faca9c4ed531", - "server_s_sk": "802d9d7337f64aaa1fbc50a51501fac1073391eb6c8f9e3048020c59a0d40170", - "server_e_pk": "e160d9ff9f7e67f1733ea5d67163d4b5351990dfe8a70268d5d1063061acad55", - "server_e_sk": "68f47c9ff6e37fd8946802088bb5acc3eaccc611855870b0b145d2927cd16d62", - "fake_sk": "9870d0812fcd626e6a79b04872badcc7a10275108b7ad44ec123e25dcc5af559", + "client_s_pk": "5c7ca9ecc67dd213d91e8bf85e340cd8cab2cf708f313dec949191b88046334e", + "client_s_sk": "60762da6d87e1396ff2ba1a868da45d21bc8bf299504373e3b5b1c8707b61f71", + "client_e_pk": "51c33a5bb360323440416ffa9e3077ef013f3d4b0484e678fbe7e1111add7d07", + "client_e_sk": "28566a5054dee59969eea63ed6980b512d8935422430517d9ad8b43bd24d7768", + "server_s_pk": "69f3c0d9eb8a9081fd3868f633eebd4e58ad6956f3b01a4dfc8707187d98ce46", + "server_s_sk": "f029baa2d788ba66cabe34daf6ee2518942d5a1b3ee9becfd476191b7ebe7b73", + "server_e_pk": "40b0a19d2d6c27a649274f9286fa598109637b833f55d3fe9f044a65d77f8853", + "server_e_sk": "902d9ff4cad722647d7c52fc7d048ced06494c9d797530df8e1afb2ec5379973", + "fake_sk": "b0e722b245fe9f27917facc11aa78168a4fed7369e1ff53102a22b43f44e4165", "credential_identifier": "637265644964656e746966696572", "id_u": "696455", "id_s": "696453", "password": "70617373776f7264", - "blinding_factor": "9dd01eb98a98117adbf61e6b47bb792f37946dd650119bedad41d707aaa6cedc", - "oprf_seed": "fc153d01ebab01fde819b251966890363e5bc4fe3f59d34e5a07a22de6bb3e93", - "masking_nonce": "f32bcc52e549853528ff84a21a3b1ca3f35bbc4153233e80481346796d1066c6c9196a73071462d36a6fa4620a2330dfcbe5739ae4f74ff5c4ce5bbbcbac4a20", - "envelope_nonce": "f22ffbcf337130d24ecf762ffe595f1679e993122b05fcfb167e5d9e01e14296", - "client_nonce": "28c3b59d6ca159f449ef24ace855da639816cfc3e8eb831936819b985e097a66", - "server_nonce": "4cfa0c60c2e85788c4747ead5d3170ee243d273a41bd9fa2940d8a293a2af9d7", + "blinding_factor": "f23b54d8cf30db69e752f287b6ff372cc1d23777953b5b75ed8d1021e64e48cf", + "oprf_seed": "f10a335c2a281480093e99959d6bb1ab878fa7a512600724af6d6cd125560937", + "masking_nonce": "9496400df3ce0fce53e3258c171006ca6f1a0f1f5b1b1992e9b7330600271254d91ed6f0b1ad8106288c79cb0c720da52a65476e0f0841f9e1016b9d1cb9458e", + "envelope_nonce": "9fbfbabf8bd622a2a03804a6da6c3b0f4be15cd646dfb147abf1877abbea6891", + "client_nonce": "ccbcce08f3b51acb53f35c5486df2be5c133394a6fd52c6a201621d0c908f2f2", + "server_nonce": "8ca84e36632f6630c669d81d4d98615751a0d92f05a44482641209b32b4b53cd", "context": "636f6e74657874", - "registration_request": "0370df57e0dd97bf7b63d857e2a78643a2859e6181eabb7f172869ef8dec1e8855", - "registration_response": "0227ab9161d7c2a9e03ff45f835c497f1a7e6d3415685aa4d7872fa91ebc977192f1d376a74c91ef48463147c86032d0f26114b7b4d13ef8ce4bf1faca9c4ed531", - "registration_upload": "398af8860b5b97dfe3e535b84adee179d07dc6e54300d277b570eb5f9402f10dabd9ed4ebbdc3086c316d8abb6e6a6b733042932f8e898fb06bb740d807c7efb90965c6cb443523e451872764a3abb1dfd4ed9369e33b66c5e3c91afbf2e27575593168bd4ef4413ca76e44b6abcc704f72351d51e23e433dd326ebe3dde0856", - "credential_request": "0370df57e0dd97bf7b63d857e2a78643a2859e6181eabb7f172869ef8dec1e885528c3b59d6ca159f449ef24ace855da639816cfc3e8eb831936819b985e097a66409d5c3e32b2b2179191bca50fabaf6298deb4d4563765aeff680c3c2f5c8c15", - "credential_response": "0227ab9161d7c2a9e03ff45f835c497f1a7e6d3415685aa4d7872fa91ebc977192f32bcc52e549853528ff84a21a3b1ca3f35bbc4153233e80481346796d1066c66279956c7826298c3809f449810dd12aeb1a03b7646fbc8d4e2812cdfeafbb46dc4a2ea6568a9d2e26b1345aeeb5b530a96d339c8d6686be27c004771f1c33ae15ec75779d427b27ea1e4aa83c03b05478b3474cac7d7641e616a017d2835c6b68f47c9ff6e37fd8946802088bb5acc3eaccc611855870b0b145d2927cd16d62210c150aa648ca52dca1e24a346363c24390f040a2d470847a93e5e27fb24157717e9b5e71d174a8aa45db34c4c20e32412a34566a65b8b0020b91e569d2e47c", - "credential_finalization": "165313d2ea22ecbf5bea4c51403e23c5499ce0fcfd310e82e18548af6d01bc79", - "client_registration_state": "9dd01eb98a98117adbf61e6b47bb792f37946dd650119bedad41d707aaa6cedc0370df57e0dd97bf7b63d857e2a78643a2859e6181eabb7f172869ef8dec1e8855", - "client_login_state": "9dd01eb98a98117adbf61e6b47bb792f37946dd650119bedad41d707aaa6cedc0370df57e0dd97bf7b63d857e2a78643a2859e6181eabb7f172869ef8dec1e885528c3b59d6ca159f449ef24ace855da639816cfc3e8eb831936819b985e097a66409d5c3e32b2b2179191bca50fabaf6298deb4d4563765aeff680c3c2f5c8c15900dbf928953244d76f93d00915eaae392764a52d5958893514309356c32cd5728c3b59d6ca159f449ef24ace855da639816cfc3e8eb831936819b985e097a66", - "server_login_state": "d3a292fd12038a20628b0e1c795a7fa62aca3ffc5161252c05bcee2d2c9f3c57fbd539b9e16092b76099587f21a5d6f53edf0d3965658dbd55e80f60a1271de6bae6d3a6c1ea344ae1447f450e4a7054fcc8469c536ad82478e246cf1f64f618", - "password_file": "398af8860b5b97dfe3e535b84adee179d07dc6e54300d277b570eb5f9402f10dabd9ed4ebbdc3086c316d8abb6e6a6b733042932f8e898fb06bb740d807c7efb90965c6cb443523e451872764a3abb1dfd4ed9369e33b66c5e3c91afbf2e27575593168bd4ef4413ca76e44b6abcc704f72351d51e23e433dd326ebe3dde0856", - "export_key": "f1ad9cda4afaa1247a368201f3fa97ad22895f6ffaf80ab6a27fc7eb32567c85", - "session_key": "bae6d3a6c1ea344ae1447f450e4a7054fcc8469c536ad82478e246cf1f64f618" + "registration_request": "02bc35869ac20a5f644d3aa622274cfb0904af4e6bda6b72f9dfb4beac7f580c1c", + "registration_response": "030fc086a56fb68e03a66ccc9cf765b853ef8e4d9b57cbbef9d280bfd187453d2a69f3c0d9eb8a9081fd3868f633eebd4e58ad6956f3b01a4dfc8707187d98ce46", + "registration_upload": "484ea9ac626b704c9df75e80d2264209ec4e713b6c3d904768a3cec0efa7a665dd2a44c2c902a6648d10e68b66f950357509bea5f975953737d9af506581e78160762da6d87e1396ff2ba1a868da45d21bc8bf299504373e3b5b1c8707b61f7102f3327093c4a437b42f7fd4403897043c2f727f3dcff0303a2430e9d25b9ab9", + "credential_request": "02bc35869ac20a5f644d3aa622274cfb0904af4e6bda6b72f9dfb4beac7f580c1cccbcce08f3b51acb53f35c5486df2be5c133394a6fd52c6a201621d0c908f2f251c33a5bb360323440416ffa9e3077ef013f3d4b0484e678fbe7e1111add7d07", + "credential_response": "030fc086a56fb68e03a66ccc9cf765b853ef8e4d9b57cbbef9d280bfd187453d2a9496400df3ce0fce53e3258c171006ca6f1a0f1f5b1b1992e9b7330600271254f5ba3ea5f542bb31be40589d9743f9b940a8db5bfa964a92d0789e2e2194cabbe5b622f4d748e96f974885ac5473cad7647f7d41e2f42060d145d95eb5c875a09385993df8449247e401d58399dc6d5dbaab5d2841d26f5b8f5b7e5a81785d9a902d9ff4cad722647d7c52fc7d048ced06494c9d797530df8e1afb2ec5379973decca7f09dab680932d6b5faa5a30d9c4d43468943ecb804dcebb71c6b6d9a31a62f2ae769735698a532a7206f3bc2cc11c62c5fad733339994cf11048425607", + "credential_finalization": "68dcacb5fc2eadbd0d0689c8a5a342b7b89c0ae94c68bd8c6da2ee56026c2df2", + "client_registration_state": "f23b54d8cf30db69e752f287b6ff372cc1d23777953b5b75ed8d1021e64e48cf02bc35869ac20a5f644d3aa622274cfb0904af4e6bda6b72f9dfb4beac7f580c1c", + "client_login_state": "f23b54d8cf30db69e752f287b6ff372cc1d23777953b5b75ed8d1021e64e48cf02bc35869ac20a5f644d3aa622274cfb0904af4e6bda6b72f9dfb4beac7f580c1cccbcce08f3b51acb53f35c5486df2be5c133394a6fd52c6a201621d0c908f2f251c33a5bb360323440416ffa9e3077ef013f3d4b0484e678fbe7e1111add7d0728566a5054dee59969eea63ed6980b512d8935422430517d9ad8b43bd24d7768ccbcce08f3b51acb53f35c5486df2be5c133394a6fd52c6a201621d0c908f2f2", + "server_login_state": "84e2cd0a4bfd6ab716218815e8bcde1413a59ca29d2b8546683f1b01af25fd7fcefa6f734ecdec1ba2936d0bd41dbed8dab865a1f05588478aa24a023a0610689b21d0bc80bdde7d5640fa1ac51790e94d411f6401cc70cfaf38a5a318dca259", + "password_file": "484ea9ac626b704c9df75e80d2264209ec4e713b6c3d904768a3cec0efa7a665dd2a44c2c902a6648d10e68b66f950357509bea5f975953737d9af506581e78160762da6d87e1396ff2ba1a868da45d21bc8bf299504373e3b5b1c8707b61f7102f3327093c4a437b42f7fd4403897043c2f727f3dcff0303a2430e9d25b9ab9", + "export_key": "fdafed4117633c12258aee16179b7c60aaca5e6e7edc3d6ab7588bc3704d8114", + "session_key": "9b21d0bc80bdde7d5640fa1ac51790e94d411f6401cc70cfaf38a5a318dca259" } "#; #[cfg(feature = "curve25519")] pub static TEST_VECTOR_CURVE25519_P384: &str = r#" { - "client_s_pk": "9d76a8bd81a34053a505e6d75ed153cf17693a7067b52bfab286af35dda62823", - "client_s_sk": "18cdf990fba0921839754c6cf59b4130faec08a6b5bae26d26ec14ca1a312468", - "client_e_pk": "d54762285880bd21c3471c90eee165d53c1504ac4b142d470f30c416a2aea073", - "client_e_sk": "c868e0a5e0db07e903eab983d2806ea6b45cec0d30fbc6e9f6ca4859fa922661", - "server_s_pk": "547b2bdb5e6411315e72fbf58df3fb1f9de0a7288109531a1504e43170f51b33", - "server_s_sk": "d082d401940ee29784739d96163367db3336d6faae7420fa29fc09b647020b77", - "server_e_pk": "ab871184862350f553130ec236c47b684e0768bacf9fcde0a5ada6209b452043", - "server_e_sk": "5023b6a48d1214dbac2943bf87278b50b9291930e8ca5eeb5cfa5be3dc63b940", - "fake_sk": "284dc8790610711200e4ed7288eaddd5415a6ef9ded8464993906efd11107e6a", + "client_s_pk": "e9c0b472dd51cbf3772267bde44ba816416fd194f4f28083e619701436d6696b", + "client_s_sk": "4016c17760d8e3a1bd013d13c3201bb311baa124957c43ff9a95b34f43260e73", + "client_e_pk": "8061d86adf004fd8b96d8f48b3f020cc864419b81def7a6f413c35a9535ff51a", + "client_e_sk": "78c93b71a14b16a82fc8e2ba931f0970121f8aa81ddaf0a2e9503891185c1675", + "server_s_pk": "ffbe84ae2f3a8870d637667ca28e92e8d0451fed5baae72f9ac981e579e24f32", + "server_s_sk": "581fd70d249c303a10470547ce4f298189cf45eea1b599110b484efe2ab27f67", + "server_e_pk": "412c37b002025cf41baeb80495d0f0d372a04d038353d539e7a56c992d67e10d", + "server_e_sk": "9008a263c9e3298f23b29c0c0092b475eabf29307e127961df637e0fd69faf50", + "fake_sk": "28a594972bb810c33718903b0fb129edfde315d4f57199c4726f5d5843d40062", "credential_identifier": "637265644964656e746966696572", "id_u": "696455", "id_s": "696453", "password": "70617373776f7264", - "blinding_factor": "e5f905e484b233c70aa996ef816e0404e375e3a0e6b91d3017f7dcbe5b8ad31931548f02ceb851e93b9d487ce0f256e6", - "oprf_seed": "ce695ea4631ec3fbbb706b5b6f1493605f9b0a796fcb133b81a43e4c5e81ca1fa181a50fc65f162686644a66817d2825", - "masking_nonce": "aa0d9fa824295b5d4e490d01955ef91a9a2c8eab88456f385fdb831b8edf340ec668229261825171b2611362df4e96e5e88188d1d1770792b23f573359a88e1a", - "envelope_nonce": "e36bb168bd377d1608b12ec466d22287531b22783bc062cff9c265fc04d4b207", - "client_nonce": "9f35b5b7d1c604139a2d9aa24d6108d9d54ab4414a3dc7a30ab0c966b11c4e9a", - "server_nonce": "8edd08d2a31fbbf0ab768e539956141eff023c29da045251224340c82ca3a4ed", + "blinding_factor": "af36f377c3f17efe8478da5bb04fb23f33c1befdb33d478b4829ca00e20824b3ce1ca6f828877ffa2418daf5ca8f71b8", + "oprf_seed": "594c08e0ad4c3af8cab1a3c411ee8aea304a3ca10be921f542a165d0f2edcf93ea883834f36d75e6a0421f249b668834", + "masking_nonce": "f68f8bc7c6ca91f14254fc5c3f6a05673081f059439b8a01c4744825b88fc11e5095fd46a900f883ba3672b9216ad074e07c0fee61729d7c55cbb228e47bbbd7", + "envelope_nonce": "3bd5c256e55ad39dc2abf0e8d791fb1ae30035b7d61a9f4b69fa23a227963384", + "client_nonce": "feef6340d638438d9773b60b2883fc82a0ae3f54b1421d8eeee54cb7f4006003", + "server_nonce": "392b2901e8030d7adf83a4cbc65bfc2810360fd756102d6a41847a4972f7138c", "context": "636f6e74657874", - "registration_request": "0274c87f3d7b5d97d0ecfac4b4effe4423d7d67dd877ba9639a6d850f226cbc6925ef891418365426b7047be915aa78394", - "registration_response": "02b89fe013da805bce2e8cfa27193caf6ab735c2312b348680845f63610c6fd046abe7e0e819621c8f9d581c7d39252eb0547b2bdb5e6411315e72fbf58df3fb1f9de0a7288109531a1504e43170f51b33", - "registration_upload": "a640dd4e580e445339b7197941249f0da676480ed219a471a165fd6724a06871338ab60d552b9695e7830612c0dbdc63350a15ce5e07449f2d073429e30e502cd554c17594d293239ce1e1519d5844eb18cdf990fba0921839754c6cf59b4130faec08a6b5bae26d26ec14ca1a312468efa19c73a471983de466090dc7f59797b13756916d6ec7c671f1d130b219d9a4270a8f6292145becb0093c6609442068", - "credential_request": "0274c87f3d7b5d97d0ecfac4b4effe4423d7d67dd877ba9639a6d850f226cbc6925ef891418365426b7047be915aa783949f35b5b7d1c604139a2d9aa24d6108d9d54ab4414a3dc7a30ab0c966b11c4e9ad54762285880bd21c3471c90eee165d53c1504ac4b142d470f30c416a2aea073", - "credential_response": "02b89fe013da805bce2e8cfa27193caf6ab735c2312b348680845f63610c6fd046abe7e0e819621c8f9d581c7d39252eb0aa0d9fa824295b5d4e490d01955ef91a9a2c8eab88456f385fdb831b8edf340e725ed7e8f8900effb16aa3adc88e767a820f24310021e1f0d4f07b1f2824f6e0b3b4abcf731ffd3f76be091f61c81336e687106d25e86013ca63a5ac7f463676dcf0d034ec82b75ce5b42a4c4a592f3588683e6fd7d0e1cb29377c3ad1da9c2c09db8c1c08b0e82465b031465b9ecc0a5023b6a48d1214dbac2943bf87278b50b9291930e8ca5eeb5cfa5be3dc63b940d051bc53f5b2b408cad4949923869e613a0680e98f5d17b13fb3cb7dcee0271c9e298e586e66faa016e3c8adb7fdd4ffc640bbf6f0d7ac69e0ce20822044e94daf11cdaffe616d79bdb9a74a7faedf58", - "credential_finalization": "470c26069718f2654ae15fc6f8da8a562e1b2e5f1f7de41af868f8543e8e918e99b389787483fc167f12538ea1afb57f", - "client_registration_state": "e5f905e484b233c70aa996ef816e0404e375e3a0e6b91d3017f7dcbe5b8ad31931548f02ceb851e93b9d487ce0f256e60274c87f3d7b5d97d0ecfac4b4effe4423d7d67dd877ba9639a6d850f226cbc6925ef891418365426b7047be915aa78394", - "client_login_state": "e5f905e484b233c70aa996ef816e0404e375e3a0e6b91d3017f7dcbe5b8ad31931548f02ceb851e93b9d487ce0f256e60274c87f3d7b5d97d0ecfac4b4effe4423d7d67dd877ba9639a6d850f226cbc6925ef891418365426b7047be915aa783949f35b5b7d1c604139a2d9aa24d6108d9d54ab4414a3dc7a30ab0c966b11c4e9ad54762285880bd21c3471c90eee165d53c1504ac4b142d470f30c416a2aea073c868e0a5e0db07e903eab983d2806ea6b45cec0d30fbc6e9f6ca4859fa9226619f35b5b7d1c604139a2d9aa24d6108d9d54ab4414a3dc7a30ab0c966b11c4e9a", - "server_login_state": "32de46ce527efc9e1e93c8d87152bf08f333c97ed7b9a7330fb343fe0508d3ce7f9d2e0f6097c997fe5da8b4068c05f1221500906d5743ebb53fd38f705addbc50fca346b892f66f86bd83054a407855c1e46b92f85d01a090ab73bcbe2195058a0c2c13312d03de4861a067c79fd2c2343e6c5c43c946a6e5b1ddd38f6b9693f290e6f86e3121f7dd3c67b4d1f8baa1", - "password_file": "a640dd4e580e445339b7197941249f0da676480ed219a471a165fd6724a06871338ab60d552b9695e7830612c0dbdc63350a15ce5e07449f2d073429e30e502cd554c17594d293239ce1e1519d5844eb18cdf990fba0921839754c6cf59b4130faec08a6b5bae26d26ec14ca1a312468efa19c73a471983de466090dc7f59797b13756916d6ec7c671f1d130b219d9a4270a8f6292145becb0093c6609442068", - "export_key": "024c1f4b9304679986790e08c90f4d29b7c7326eca259b6fedf49041eb52a45d1aa3d5f4ca1971e5c3603ae364a25f28", - "session_key": "8a0c2c13312d03de4861a067c79fd2c2343e6c5c43c946a6e5b1ddd38f6b9693f290e6f86e3121f7dd3c67b4d1f8baa1" + "registration_request": "028651c77c0b2bda2bd911734252f9d60bdae40fe4df7d14fcbf05af2e172b279df4f55f15592ef27d6cab5693b80c407e", + "registration_response": "020553886f4c81c3be22440dcf3646a26b1cadd57e343f4c221cfdc6e217137b6926389c874e109a6bc53795823dfe0bb4ffbe84ae2f3a8870d637667ca28e92e8d0451fed5baae72f9ac981e579e24f32", + "registration_upload": "00ed24d1228beeadc4806918f823f6e1dc5b9b70ac6ec8cb62231344fc20f07728bdb0e50393bb4df5f52f3f4ea0853970189f8824f821740367f48a84f349b4a5062c5c7853e813a860cb465b239e014016c17760d8e3a1bd013d13c3201bb311baa124957c43ff9a95b34f43260e7357ba0ded21689082a8eac0f58c322752c449e442115b9f889db932e366c1408d3aec85733676841bf294eee9c9a11edc", + "credential_request": "028651c77c0b2bda2bd911734252f9d60bdae40fe4df7d14fcbf05af2e172b279df4f55f15592ef27d6cab5693b80c407efeef6340d638438d9773b60b2883fc82a0ae3f54b1421d8eeee54cb7f40060038061d86adf004fd8b96d8f48b3f020cc864419b81def7a6f413c35a9535ff51a", + "credential_response": "020553886f4c81c3be22440dcf3646a26b1cadd57e343f4c221cfdc6e217137b6926389c874e109a6bc53795823dfe0bb4f68f8bc7c6ca91f14254fc5c3f6a05673081f059439b8a01c4744825b88fc11edd6b8e74148a7de1fe31a733301021cf4a12db722aa71868109da8c5f4ca2c5a0b164d4210b117d3fe56bba4d705529aa4cf75eca834ddb386d0f668207db0556ce32b3ed4c55195bea82641ad11fadc70451e2a6d9db58263fcfb8bf9cf554bab31f740b8f8609e49a846ef6960f0659008a263c9e3298f23b29c0c0092b475eabf29307e127961df637e0fd69faf503839f76b5186c40076cea29def5e7f9cdf4dcc7457ddaff3e7a855dee2a8fd70f5fb6ad18439b15b820ca0367a1ae3d9445b3493a42585668ea3195bb778cee633d5a94d721eb1f5cd82cb582881307d", + "credential_finalization": "afd9f0618e9ea53ddcc4d47f5c7616cf02073998ed2dfa05d19443faf590a57c731476cb5169d55511758fbcd0088276", + "client_registration_state": "af36f377c3f17efe8478da5bb04fb23f33c1befdb33d478b4829ca00e20824b3ce1ca6f828877ffa2418daf5ca8f71b8028651c77c0b2bda2bd911734252f9d60bdae40fe4df7d14fcbf05af2e172b279df4f55f15592ef27d6cab5693b80c407e", + "client_login_state": "af36f377c3f17efe8478da5bb04fb23f33c1befdb33d478b4829ca00e20824b3ce1ca6f828877ffa2418daf5ca8f71b8028651c77c0b2bda2bd911734252f9d60bdae40fe4df7d14fcbf05af2e172b279df4f55f15592ef27d6cab5693b80c407efeef6340d638438d9773b60b2883fc82a0ae3f54b1421d8eeee54cb7f40060038061d86adf004fd8b96d8f48b3f020cc864419b81def7a6f413c35a9535ff51a78c93b71a14b16a82fc8e2ba931f0970121f8aa81ddaf0a2e9503891185c1675feef6340d638438d9773b60b2883fc82a0ae3f54b1421d8eeee54cb7f4006003", + "server_login_state": "f965cbe67a8a0beb75dd06fc2b1646c539d0b2fa4c70cdb8aeb01d9b1fdcd72c48ece4ad0da47064e01f255e27368bcc76b74b37395de0cdaeceb11284a34e80ec3a16c2190c57ec8907b3f73a60179b49d4523eb52f0295002c5dcf42135195fb259574d1c500b036a97b4b22767f0f5ef8781ede072d8ebffe78f795cdf0ef479fd604a57e313fd30b973658ed4be6", + "password_file": "00ed24d1228beeadc4806918f823f6e1dc5b9b70ac6ec8cb62231344fc20f07728bdb0e50393bb4df5f52f3f4ea0853970189f8824f821740367f48a84f349b4a5062c5c7853e813a860cb465b239e014016c17760d8e3a1bd013d13c3201bb311baa124957c43ff9a95b34f43260e7357ba0ded21689082a8eac0f58c322752c449e442115b9f889db932e366c1408d3aec85733676841bf294eee9c9a11edc", + "export_key": "15396ab94bd1191ca00df9d5c42a47b43bed16f89e8e4c254ddb4a18a603949062b5fa85a4b1c3fb084cbe9a8df250a2", + "session_key": "fb259574d1c500b036a97b4b22767f0f5ef8781ede072d8ebffe78f795cdf0ef479fd604a57e313fd30b973658ed4be6" } "#; #[cfg(feature = "curve25519")] pub static TEST_VECTOR_CURVE25519_P521: &str = r#" { - "client_s_pk": "63451f335e44125fb42bf927fe1fe745032a6ef7aa1ca1fd98a416b8be9f9769", - "client_s_sk": "704d6fa7bbb63b397bbea0d0854a80bb522b5849de62f38d0f6c2e34cd84ac4a", - "client_e_pk": "76da0d06a99c1a4b5a597a21c07160233f97e29b32b5e16ad4f14f4abbd4c61a", - "client_e_sk": "b0d9e818f3509807010df9e4ac2814e638bb59ff393c98bc884aa5e9df47a368", - "server_s_pk": "e81076a674f07ee8d507d06d9def45725593bced8dd05a0b187f9cd38324441b", - "server_s_sk": "4886e84492c1c3bf512646aa99f76a5bef045649edc6d34e14d6f44c9e07305b", - "server_e_pk": "21aa7c5f3c8509fa14b0ea5699733934849421b477f84b42581a3fc927097f68", - "server_e_sk": "405b7acfaf305452a06e681a84325deb30cd671bed5989fb1f4362f2e366055a", - "fake_sk": "b8b9d9a1d97e83f83b7da05bb92395463f14514374ca381e8300a36ae3d77a48", + "client_s_pk": "cb573eedb7af6f4b60dd18bc6dbe5526c959d21f44e9cb49210db44544068e3d", + "client_s_sk": "c0d1664072ef68509b7da9eaaafc87293e7284dea1ddde04cba481e7208b1544", + "client_e_pk": "03532d20ae42c93f5f149c511ef260fc7f934a77d5c648805ed93db22c71b36d", + "client_e_sk": "c061b530480c35fd50b81a916fa4efa30a447644f41d6a52d0790af60510ef61", + "server_s_pk": "3eb0acc0a9b5860a9926fbaacad88dec9c9a2264748f3696a3a37b3272351b46", + "server_s_sk": "c0aaae8bb231caeafadb4444af7e3982849574def3c612de1eee5fe31ea0de78", + "server_e_pk": "63bd38a9d69b43143c057405c776fba4dbe239b4bc57a9995b52db7ef27d8631", + "server_e_sk": "b0feff29d0a8eac2678af1201e8e494661c89a0f4f7883d473959893689c7a74", + "fake_sk": "704b860980669f221291cfe9eaa6fc945e88e66fc45c1a2080971deb28c2616e", "credential_identifier": "637265644964656e746966696572", "id_u": "696455", "id_s": "696453", "password": "70617373776f7264", - "blinding_factor": "003746c5d4296be07e02180c09ded1b02818899d95467c4c31036f885a250c4355a7df93a6fa1a80f7d7d5f7305219d7dff2ff1feffd90ad30528fe5b4efac77b78c", - "oprf_seed": "8e7bf5c0c3e7523632c2a38c510f55fcb8534f0a5b139e8ccc6784ffd0a19c44a5f644fa4d60fd7c0e14792b09ac6261e6bf905bb4a676283205cdc7ba347843", - "masking_nonce": "177cc2be0d688ff355e6b5876e70b7b6c7de27e4e34156232a220dfa6597c461234df89ebd34217860b0757794b82c5704bb53c96d8afca5ce3197b66c0dc8ec", - "envelope_nonce": "c50d5c585c6389a8587871c36eda250b4f0f54495bbef877dd1b2adeb87972af", - "client_nonce": "a8ea6cc47d48ce1e98fd2ab2f5274811fdaa52463674ae68c5e240bc21c7ab1d", - "server_nonce": "3c1fa2b1c9c560352547de815df269ece1eff9b92a5e72e8f3829e72a9319148", + "blinding_factor": "00c1fb38278c3d1d760c6a6c99601ed15724ba7511676bafb7b3ad2f4ea24667c1e99a9186dab0031a2a36f6d6d8e1dde2165651e4bc63ff77d20901085b7aac303f", + "oprf_seed": "5ede3337402028fe6a667dae0ec46cd046eb77aefb1447576256ae17fd483c0a2a202ae300ac14632c8bbe222fda063f2c88647f23cc54dea2148e1474e6c359", + "masking_nonce": "11c547da56e3cf0414284cc6ce5e1ca17470d1dd6697ee5d70a114e9a092816a596e63fd428181164f646fee583c1f407dbf03717409a3ec1f670d0bb369d965", + "envelope_nonce": "deeca6cf567e051e0cd52e3bbe32e8da02fde0a3c29579434ff78911be506d9a", + "client_nonce": "52fa59a9e2424b923320ffccaa852f702190cca2abe44c7b600508d32d8d7e7d", + "server_nonce": "bde3f5ea7b27f9b6e6faaa2d27da25931c18c07878365d5ee0dd1d134a3e3b44", "context": "636f6e74657874", - "registration_request": "0300652dbedb61b4db66d29cbf2503e421b3c3a016b076342dcbe5eab869098a01eb6a58406310c2bcda53d560987356242a02629c628edfab14e5fca8529e84b5612c", - "registration_response": "0301fe3dc9317dfb622dcc6c4660393b087cc1b00635e144cc35680ef31c76d1d3cfe4e7b937eee6fe66a5176b7953eb61bb7975c16f6a0e7c9d53ea4d5b5c1a04a394e81076a674f07ee8d507d06d9def45725593bced8dd05a0b187f9cd38324441b", - "registration_upload": "3f4769c1d1587c567787ce00e9aab9860c3819b8bb96acc0a5b83cc2d5f060316cd6fa876c77cf0b601e3249e7ac7ce55e1cc44a931a254d36dac17f5270a546c36cf74746e2233441f0c3bb203d3c8143d24bf5970b72ff90f5363c7017bbdf704d6fa7bbb63b397bbea0d0854a80bb522b5849de62f38d0f6c2e34cd84ac4a7ff4234a988335eeb6cecddb6c0a388cc81636f5392c0b2870ebf18ad56d77aaba65ca5df9e12ca0fa968d838bea7f5413b6f2c1399a66a60d479eb23dea025b", - "credential_request": "0300652dbedb61b4db66d29cbf2503e421b3c3a016b076342dcbe5eab869098a01eb6a58406310c2bcda53d560987356242a02629c628edfab14e5fca8529e84b5612ca8ea6cc47d48ce1e98fd2ab2f5274811fdaa52463674ae68c5e240bc21c7ab1d76da0d06a99c1a4b5a597a21c07160233f97e29b32b5e16ad4f14f4abbd4c61a", - "credential_response": "0301fe3dc9317dfb622dcc6c4660393b087cc1b00635e144cc35680ef31c76d1d3cfe4e7b937eee6fe66a5176b7953eb61bb7975c16f6a0e7c9d53ea4d5b5c1a04a394177cc2be0d688ff355e6b5876e70b7b6c7de27e4e34156232a220dfa6597c4616162eb440e86122539ed97e1354d9aa1244ff1ad90d28693bee19c127ecf9ed1537a25992471d9e122cc2d5492a2850f120e67a27a67380a063c4f0edf23d8463f2342273b946c6a6c310ab1fbf2529a5f6a332a074a7dd6d93835706f3213a6450cb84dc4b130b90db2d825d91ee267cd5d6f960bc6c964e5e6f4f2c8a38b9e405b7acfaf305452a06e681a84325deb30cd671bed5989fb1f4362f2e366055af80d4c62109145d82e85c47ba81214779ab0d36705b21b7e578457b1d677800fe4ad504b1a35b6cc240f990e6a9ca308be393cb0bbaf61f8f684b0e1d05ce265c4692125686550aaf0ba9361f37aac8b5115c2c4c543a1f7ae3e5819d67802d7", - "credential_finalization": "7324f1b61c676ff9fd864fbef35ebe16e1a4f58a06616f605eda73519e406d263b302050511af364af90b64869fa68c511b82cddddb80234f1b373ac536a3510", - "client_registration_state": "003746c5d4296be07e02180c09ded1b02818899d95467c4c31036f885a250c4355a7df93a6fa1a80f7d7d5f7305219d7dff2ff1feffd90ad30528fe5b4efac77b78c0300652dbedb61b4db66d29cbf2503e421b3c3a016b076342dcbe5eab869098a01eb6a58406310c2bcda53d560987356242a02629c628edfab14e5fca8529e84b5612c", - "client_login_state": "003746c5d4296be07e02180c09ded1b02818899d95467c4c31036f885a250c4355a7df93a6fa1a80f7d7d5f7305219d7dff2ff1feffd90ad30528fe5b4efac77b78c0300652dbedb61b4db66d29cbf2503e421b3c3a016b076342dcbe5eab869098a01eb6a58406310c2bcda53d560987356242a02629c628edfab14e5fca8529e84b5612ca8ea6cc47d48ce1e98fd2ab2f5274811fdaa52463674ae68c5e240bc21c7ab1d76da0d06a99c1a4b5a597a21c07160233f97e29b32b5e16ad4f14f4abbd4c61ab0d9e818f3509807010df9e4ac2814e638bb59ff393c98bc884aa5e9df47a368a8ea6cc47d48ce1e98fd2ab2f5274811fdaa52463674ae68c5e240bc21c7ab1d", - "server_login_state": "8abbc16af5df318a202c2cc55356b3db9761e4644c05e72d163d8c978dc2f9ac6cfc31f200de3c088bec9d6bc499497d25e3758ff70518a0e5a187114a75859f334c41d8e05df279a19ad0c9388c92dd4c2cb772baac7c2750bd65c2b1ac9309552b6c75197a15b92e74971355956d5b1b1535092db9cec0aa2a574b5aaa88d5c4a6f68e2e3687e267bb57fed54a2b23ba3348b8abebc93c80c3e079b6f633cd6f71126228cf3604436a8686c931827a743291c0cac1dbf81eb9d7a29e88964f", - "password_file": "3f4769c1d1587c567787ce00e9aab9860c3819b8bb96acc0a5b83cc2d5f060316cd6fa876c77cf0b601e3249e7ac7ce55e1cc44a931a254d36dac17f5270a546c36cf74746e2233441f0c3bb203d3c8143d24bf5970b72ff90f5363c7017bbdf704d6fa7bbb63b397bbea0d0854a80bb522b5849de62f38d0f6c2e34cd84ac4a7ff4234a988335eeb6cecddb6c0a388cc81636f5392c0b2870ebf18ad56d77aaba65ca5df9e12ca0fa968d838bea7f5413b6f2c1399a66a60d479eb23dea025b", - "export_key": "d8d600a733bedf7f32326f2b66fadff76984f5fbf82b4139c81669ede8fc526f301baebf48989cba1e6e6b854ac5e2aba1a6d2862fa0e3b368f0229079b6b7fc", - "session_key": "c4a6f68e2e3687e267bb57fed54a2b23ba3348b8abebc93c80c3e079b6f633cd6f71126228cf3604436a8686c931827a743291c0cac1dbf81eb9d7a29e88964f" + "registration_request": "0200bd9a8c2aa16ecf4df0d137e132a351b3be10078bccf314bcc73660a933d81f20463ce27fa2857ece1f1e080fa9b64528574d9f34cc3131db669da357c33b332b81", + "registration_response": "0200fe7e7a5151c9f79c9b7c0d379ef71e2b4730fe2b2db3b01930214253342514f1aa7cc3bcfc410d0b1ea67d9738b53a5c8f83dae263857843a69797ccbd6bb83ead3eb0acc0a9b5860a9926fbaacad88dec9c9a2264748f3696a3a37b3272351b46", + "registration_upload": "d2813983a5efc7cb83a70eefdb8446c79c98cc42e0fd56fede769b47380f27456b1479c2b17014e909d1a6247f1c9846c83a0ca7b592d8197e6feb477edbefb3d300a67b54ba4805078bb06c50525c3fa4152c4ced1a1e93d2c6f7d03472d2bac0d1664072ef68509b7da9eaaafc87293e7284dea1ddde04cba481e7208b1544e4cc99f7108530358951d21cef0801f97d555ff6f3e3e14d4edefe6cea149a707f3e9fecb822dfaa6438a8f08d27ea330f533d77d231ed0c743f236a4e5d2678", + "credential_request": "0200bd9a8c2aa16ecf4df0d137e132a351b3be10078bccf314bcc73660a933d81f20463ce27fa2857ece1f1e080fa9b64528574d9f34cc3131db669da357c33b332b8152fa59a9e2424b923320ffccaa852f702190cca2abe44c7b600508d32d8d7e7d03532d20ae42c93f5f149c511ef260fc7f934a77d5c648805ed93db22c71b36d", + "credential_response": "0200fe7e7a5151c9f79c9b7c0d379ef71e2b4730fe2b2db3b01930214253342514f1aa7cc3bcfc410d0b1ea67d9738b53a5c8f83dae263857843a69797ccbd6bb83ead11c547da56e3cf0414284cc6ce5e1ca17470d1dd6697ee5d70a114e9a092816aaaee72d95d86ab4da949338b1652dd9f995c1c7c4c28791dde1e97c58b197724c9fc301b9554e7069919dd017233d78961906a3c200091fbe446ef06aecc40f27c672d77a1cc9932290cbd932e8b4eb56e637138ace1128f74948306791e88e370ce15529147b16d8f1b474c3341eb87bb4d31d5d7d3443b71d6b34e1e82a59eb0feff29d0a8eac2678af1201e8e494661c89a0f4f7883d473959893689c7a7493deac34c101cd1b936c84c033aa24b953215e58f426e88d8d36276117b84443440b58221f64ddcc355035a715a5542702584cd847432a3e131f4c76b9a1371890a54dc5a4a1b22bfa2b9662d84501c1484df09d75fc25f92b001116aa98fea2", + "credential_finalization": "d7cbc44c62703fe53ad4fcd6e049b1976c51f0c9b6cff52abe48f002b02a05b9062f2c64a12137cf860fb3dddfe8747adb95e808483f95f2b6fbf022490efd3a", + "client_registration_state": "00c1fb38278c3d1d760c6a6c99601ed15724ba7511676bafb7b3ad2f4ea24667c1e99a9186dab0031a2a36f6d6d8e1dde2165651e4bc63ff77d20901085b7aac303f0200bd9a8c2aa16ecf4df0d137e132a351b3be10078bccf314bcc73660a933d81f20463ce27fa2857ece1f1e080fa9b64528574d9f34cc3131db669da357c33b332b81", + "client_login_state": "00c1fb38278c3d1d760c6a6c99601ed15724ba7511676bafb7b3ad2f4ea24667c1e99a9186dab0031a2a36f6d6d8e1dde2165651e4bc63ff77d20901085b7aac303f0200bd9a8c2aa16ecf4df0d137e132a351b3be10078bccf314bcc73660a933d81f20463ce27fa2857ece1f1e080fa9b64528574d9f34cc3131db669da357c33b332b8152fa59a9e2424b923320ffccaa852f702190cca2abe44c7b600508d32d8d7e7d03532d20ae42c93f5f149c511ef260fc7f934a77d5c648805ed93db22c71b36dc061b530480c35fd50b81a916fa4efa30a447644f41d6a52d0790af60510ef6152fa59a9e2424b923320ffccaa852f702190cca2abe44c7b600508d32d8d7e7d", + "server_login_state": "1b3fd6b0ee4da036fddbc5f8e6480b11d87c83d8a11975c55c97fc912c05ef5e2da97fb557686d6d7e79c6cca70a08da0044b886b59e97596f3520766250adc5702620aa8b4905f3b8a19cbf8ce3b83e1ff02a291c98b60047abed9e368cff7fef55d0f3e72c95e113a851ed0821d89e08dec5dce2f7b789eaf5d2dff35847bf070db7bfc169d48a47eaf52e44faa9722bc3071aec5932c2fa9a4de510975da8ca6ce2bc779a69f4ebf0e1d73711e8f4ba5b1b54cea2c0eca56933e0ffbae22f", + "password_file": "d2813983a5efc7cb83a70eefdb8446c79c98cc42e0fd56fede769b47380f27456b1479c2b17014e909d1a6247f1c9846c83a0ca7b592d8197e6feb477edbefb3d300a67b54ba4805078bb06c50525c3fa4152c4ced1a1e93d2c6f7d03472d2bac0d1664072ef68509b7da9eaaafc87293e7284dea1ddde04cba481e7208b1544e4cc99f7108530358951d21cef0801f97d555ff6f3e3e14d4edefe6cea149a707f3e9fecb822dfaa6438a8f08d27ea330f533d77d231ed0c743f236a4e5d2678", + "export_key": "8426365ba8b82b05658144c5e79ea8211e0308bb84767de8face6a551a5a77a1e6cf89ea11b425853f0c7348906a4cc84a4463ad884ec715008545367e08b72b", + "session_key": "070db7bfc169d48a47eaf52e44faa9722bc3071aec5932c2fa9a4de510975da8ca6ce2bc779a69f4ebf0e1d73711e8f4ba5b1b54cea2c0eca56933e0ffbae22f" } "#; #[cfg(all(feature = "curve25519", feature = "ristretto255"))] pub static TEST_VECTOR_CURVE25519_RISTRETTO255: &str = r#" { - "client_s_pk": "383628e35ea9bb4ae5f9f97ccebd32dcbbd1a86e767ee672bde7c9c9c5e3d533", - "client_s_sk": "88413ce81f01a5760d1d8ce3e9e74cdca4da73bd58f42787d834f48d83cf906d", - "client_e_pk": "742b4b8f679f5e69a4d4cf2170f0e31cb965e8e36252b9556208af5a539c872d", - "client_e_sk": "40441167dc35503b0973ea25d7bdf3d3ae7a84f0a5886806ed559015b6814d56", - "server_s_pk": "26232ac4cee78dad6cde65010b41473f3e5c0dfa8248ba1031daae3f2dc4776a", - "server_s_sk": "889d5f7db11025f107ed3368609f011a543d2c76e5e4ccf50eea908af059eb7a", - "server_e_pk": "1d9131f1a3efe9384c4da6d2ffb2a42969360b6372aa95fc8d380bd7404c5a72", - "server_e_sk": "e84342e11b1956caf5a39805eabd61162b2eec3f62a3b898d032f0b699d9a74e", - "fake_sk": "a851d3a2315b4c3ad418843ad6cb147799aa5362bd12409ec4c1c405c45f5b55", + "client_s_pk": "8c7d6a7cedcc693aef517377bc73396fa80c47faeb1fb5e6a6feb9cc8d6c080d", + "client_s_sk": "10c345ceac40394d0ee5bb2556e1ddb5f8b5a7c78c1267be2e2366b790cfdf43", + "client_e_pk": "24008fb5a442eef012f1c53186091420bab0600518fdf4fac7f52d9e4a8f2260", + "client_e_sk": "e0a92763fe3b1bb0c799afebdde96e4898fd00294e2274e29aabf11d84f59d4a", + "server_s_pk": "0b3f41170693a2ebc7ff0d585e9c62794f0de2276a9ee1f268736faea5c18e35", + "server_s_sk": "c8497fd76f56e049429a333b2f82a253dbc39f542c024b3ace57816b2cc80b70", + "server_e_pk": "988e029acabbccfa4297ae2fb8b7104ed08ac53d09001e1ba5834641fcedab16", + "server_e_sk": "188d96b2bcb039a0b43c8ca566ebde8765d79133e7869742db5372b2b6da5551", + "fake_sk": "98388ca7458050f84250b01643fedc4be089b01ee81cb17afbf6dc6c6a60fe55", "credential_identifier": "637265644964656e746966696572", "id_u": "696455", "id_s": "696453", "password": "70617373776f7264", - "blinding_factor": "7259abefb88fdd0a92b62f6d6fd71d532b452a5be0d60f77c5ef9466c17aff08", - "oprf_seed": "502556c14f26fa993a6eaadf4d2ce2480ba9bec9784d1d00ae04270eebc56f7c1b7a6bf7dd5016f2f391de0e6180288aa29fed379d1bb354c513efb51d4d6a3a", - "masking_nonce": "af92715726a1d09ff34a8c449fcb4601cd8c677bc730be4c6011c84faa45bb75798c40fe329522c64e7698e55e616ee5a07ea8ee3a1a9d93e1dd83c54952ad99", - "envelope_nonce": "a71add11cba79a9a5422afc981c70611b43f4a44ffb3b3ac17995e13482f825e", - "client_nonce": "bf8c182b38731d6c3b2fd539021ba373786b340a715a87ba97d7a88db8f62162", - "server_nonce": "accb7301448a78db7e804b68116a2004ad9568fa90cf75b0aaf3c0d1e2ad068b", + "blinding_factor": "3f88f924fd4e2e2062a9ecdbe7c42cf77b1f3078266039fb9ad5c10158e4950c", + "oprf_seed": "9084a04307cadf3575f31537954261b077df05dfe4b284d5646e674adf539f914f55a11f095cda3eb76393aa1a594f733677272934237594f54bc8f8295769b7", + "masking_nonce": "0a42a77917459118faf327d16e3c5f6df94b0ebe55d3a1e5d0de521085ecd43ac6068c1169585b0e8f903e75d387d8efb6f5d567b1b32cd27f4b25be20c61e2c", + "envelope_nonce": "fd59237061b039b36db251b6f711c847bb8578a6a0a312d511e0cff60beb20d9", + "client_nonce": "d646304ab1186ff70a5d027c0452865d41526cadd95a9d1542fc4ea1d7b04364", + "server_nonce": "7373439b5daacc7aad050f08217b791ea09caa37c31dcec82a1655b17220c89b", "context": "636f6e74657874", - "registration_request": "805c06c9e2a64a579da1679c28066b0d311828ba65d30c7abda1a82ffb241728", - "registration_response": "74c4f40bfc9e2cca0e054a31e74911660a38c07de6cc2c25c2d5e5b4a153034426232ac4cee78dad6cde65010b41473f3e5c0dfa8248ba1031daae3f2dc4776a", - "registration_upload": "a962d1ad70eb06beb7302638150a13d22bf7ec4fa5ebcd55da7d24d9257a7f6221d6a85f394f9e3bcf3abddd2401d7b47c639bd5a42a00dbd5a1bf37837701b408964cf5ca70981a2ee7c913caa3931992e0778841a78231cb7cda4d887a117088413ce81f01a5760d1d8ce3e9e74cdca4da73bd58f42787d834f48d83cf906db03db448f3cbb78f49fd18522097e2b5c21d2b8a028e6fde90b2cd1d22103e96d16386ab6be752dff69783915c89028956aa5caee824479cdc401d898daae9e4", - "credential_request": "805c06c9e2a64a579da1679c28066b0d311828ba65d30c7abda1a82ffb241728bf8c182b38731d6c3b2fd539021ba373786b340a715a87ba97d7a88db8f62162742b4b8f679f5e69a4d4cf2170f0e31cb965e8e36252b9556208af5a539c872d", - "credential_response": "74c4f40bfc9e2cca0e054a31e74911660a38c07de6cc2c25c2d5e5b4a1530344af92715726a1d09ff34a8c449fcb4601cd8c677bc730be4c6011c84faa45bb7517ff495d706ea8b0eaf13c729a17812aea3d197615b28dc22530ebd44be1d30f689fec02d9cc27753ed82133529b0b2b0f4829431e301d449239f21ff96731fe22443701d79395dc29ed801dd06dbeaceb3e945a61ef0bb7ac8d2d160049cf81e6ece31d4512dffcd8ed9d061b819ec6d70d71418d64a6a48179603982b50cfee84342e11b1956caf5a39805eabd61162b2eec3f62a3b898d032f0b699d9a74ebe87af61ff7b7f4b706f9e9bbadbc48a1f4daaf57b975f6c0f5894bdba808255952b73aac6f851659e9e06e3777860f307606da47d9a1b140892e01642af5a3327afc2039c801ed94a9a226b60eb64a20ff6ec1dc42e8a23b35f761047b8bfa2", - "credential_finalization": "f73a56dc67de8926e62426e849419dea16eb4570e70279726a57197359de88daa3655806bead9edd7b1a6fc633c1a1fa79b13f34b5778d389520600fe82be3e5", - "client_registration_state": "7259abefb88fdd0a92b62f6d6fd71d532b452a5be0d60f77c5ef9466c17aff08805c06c9e2a64a579da1679c28066b0d311828ba65d30c7abda1a82ffb241728", - "client_login_state": "7259abefb88fdd0a92b62f6d6fd71d532b452a5be0d60f77c5ef9466c17aff08805c06c9e2a64a579da1679c28066b0d311828ba65d30c7abda1a82ffb241728bf8c182b38731d6c3b2fd539021ba373786b340a715a87ba97d7a88db8f62162742b4b8f679f5e69a4d4cf2170f0e31cb965e8e36252b9556208af5a539c872d40441167dc35503b0973ea25d7bdf3d3ae7a84f0a5886806ed559015b6814d56bf8c182b38731d6c3b2fd539021ba373786b340a715a87ba97d7a88db8f62162", - "server_login_state": "10f9d97b73c7db86a9980a9ac1d8833fd4847de708667e377ac22f3df3f90884806311d5a684272ce5e8a4f8594e780c541736531b8c181ec62ed58f7b22ec743d776583defe4983252e39e2bd6fcba7da876acae118e8f928a9d9b3088f5ea0721f7cbc356779bb69a76e2edbc6c4df599433e0922eb2129fdbeee6eceada4506b58894846059a824b5abe8afd4ab401e9609435bd4eeaf5aafb2a2a0b5bf91cbfa109fadd91446a97425f14f60f85fc4716f1b30ae57fd6a02cc0fb3f37a31", - "password_file": "a962d1ad70eb06beb7302638150a13d22bf7ec4fa5ebcd55da7d24d9257a7f6221d6a85f394f9e3bcf3abddd2401d7b47c639bd5a42a00dbd5a1bf37837701b408964cf5ca70981a2ee7c913caa3931992e0778841a78231cb7cda4d887a117088413ce81f01a5760d1d8ce3e9e74cdca4da73bd58f42787d834f48d83cf906db03db448f3cbb78f49fd18522097e2b5c21d2b8a028e6fde90b2cd1d22103e96d16386ab6be752dff69783915c89028956aa5caee824479cdc401d898daae9e4", - "export_key": "2553ad41a7a260563a59ce672923b3de1f2826503261c1c2e98cdd28a165a63927d3d9fcd1a27d128c46f4353f46915b6064e2001b0d1fbd3448430d955038fa", - "session_key": "06b58894846059a824b5abe8afd4ab401e9609435bd4eeaf5aafb2a2a0b5bf91cbfa109fadd91446a97425f14f60f85fc4716f1b30ae57fd6a02cc0fb3f37a31" + "registration_request": "443c53245a06d2b4c50edfb860ae940c33ce8f19ea57582d1417b9fefdbcb27b", + "registration_response": "7258e3cb4eb1edf22aa4f691ec2151fcd39cbb1b93e6cfc2934b078228b758330b3f41170693a2ebc7ff0d585e9c62794f0de2276a9ee1f268736faea5c18e35", + "registration_upload": "d3f40886abcdf884acd379bb5e756c84be0c77d2a349b61b8b7a8979e7f1d557ecdee67c9b793d6dd5642f89807d765adbcf8baedc857bb91298cc670c0416da82549985f2018bc5fac87a58facee56ab536581ca30ecdef33d70b9cd08ffd2710c345ceac40394d0ee5bb2556e1ddb5f8b5a7c78c1267be2e2366b790cfdf4392c4961c3d7d725241503e3ef3034db372cbfe3e7cf006be9e23bf20ad69b1a4e843d8e96144fa3c207e3f9152c8f62e4c619763b437ad719556aed670764d74", + "credential_request": "443c53245a06d2b4c50edfb860ae940c33ce8f19ea57582d1417b9fefdbcb27bd646304ab1186ff70a5d027c0452865d41526cadd95a9d1542fc4ea1d7b0436424008fb5a442eef012f1c53186091420bab0600518fdf4fac7f52d9e4a8f2260", + "credential_response": "7258e3cb4eb1edf22aa4f691ec2151fcd39cbb1b93e6cfc2934b078228b758330a42a77917459118faf327d16e3c5f6df94b0ebe55d3a1e5d0de521085ecd43a553752a71f9f2e525e1932b6904b3e042e471dfba536a134825d1386ec27aefb76fee626ca86d4c5db53a2fbec8867218dbe95c6e2ff45a7f4fd6adf6f1023a7a06bf35ae8b0861c0486482155598e2abfbf7f7af79bb7f336b13357c7377b2cd0aba6bdd0a1e46e1fd138b82a9514aa5382394ad0d10f7f95c001e1ea54b18c188d96b2bcb039a0b43c8ca566ebde8765d79133e7869742db5372b2b6da5551111c8f44ae67cafb39fa94b4ca4e301210c6cc43d95fa65c760d2d897624613efdbbbdb4dc12dd1724e874f0924c3e8fcdcd8b6040e3fb7ae779db4f3f88cd0d96cfacfe0439bd280dde48dd8bd80e9efa11ab36d3c826df08dbde5c9c6378cb", + "credential_finalization": "3e3aab968d6c65797733c7e92fa42ff01142209c236d2624bd4e0b704f10314cb08fb6fe8eb696b31cd94c49521134c0205df47d31b863fa849614795377125c", + "client_registration_state": "3f88f924fd4e2e2062a9ecdbe7c42cf77b1f3078266039fb9ad5c10158e4950c443c53245a06d2b4c50edfb860ae940c33ce8f19ea57582d1417b9fefdbcb27b", + "client_login_state": "3f88f924fd4e2e2062a9ecdbe7c42cf77b1f3078266039fb9ad5c10158e4950c443c53245a06d2b4c50edfb860ae940c33ce8f19ea57582d1417b9fefdbcb27bd646304ab1186ff70a5d027c0452865d41526cadd95a9d1542fc4ea1d7b0436424008fb5a442eef012f1c53186091420bab0600518fdf4fac7f52d9e4a8f2260e0a92763fe3b1bb0c799afebdde96e4898fd00294e2274e29aabf11d84f59d4ad646304ab1186ff70a5d027c0452865d41526cadd95a9d1542fc4ea1d7b04364", + "server_login_state": "181b98a790d61837dfe63f835a70d9bc3cc25f47359359b6db168c8ec8abcee20cf5c59070c0fef30fda4531bf1351030056eef11178a43c3acb3fe7f650ebbbbd8d450b188bca4d070ca7898db0caedf0bdfa17ebb6b547c26f107705eb09f6cfb0edb24ded8ba32b0faf3edd0a0e55872ee48542306472ce20b2f2973fd767fbc3cfcc037ff1a94c61a99e6ef367e2befae2f5910484d2e2577054f2b0469c4a21f6c0e19fe07a98f09d7de744a99364ba118e401f4ec83ac0bcc5e9bb40d9", + "password_file": "d3f40886abcdf884acd379bb5e756c84be0c77d2a349b61b8b7a8979e7f1d557ecdee67c9b793d6dd5642f89807d765adbcf8baedc857bb91298cc670c0416da82549985f2018bc5fac87a58facee56ab536581ca30ecdef33d70b9cd08ffd2710c345ceac40394d0ee5bb2556e1ddb5f8b5a7c78c1267be2e2366b790cfdf4392c4961c3d7d725241503e3ef3034db372cbfe3e7cf006be9e23bf20ad69b1a4e843d8e96144fa3c207e3f9152c8f62e4c619763b437ad719556aed670764d74", + "export_key": "7a629fd4189b6511b003463a7c6e234139fe814cc7c64d458918834d29bd8a5459d2923af58272048cf1e02e5e76018fd583a89258857e2da737583f2abeaf18", + "session_key": "fbc3cfcc037ff1a94c61a99e6ef367e2befae2f5910484d2e2577054f2b0469c4a21f6c0e19fe07a98f09d7de744a99364ba118e401f4ec83ac0bcc5e9bb40d9" } "#; diff --git a/src/tests/opaque_vectors.rs b/src/tests/opaque_vectors.rs index 73028402..64127c56 100644 --- a/src/tests/opaque_vectors.rs +++ b/src/tests/opaque_vectors.rs @@ -7,7 +7,7 @@ // licenses. //! The OPAQUE test vectors taken from -//! +//! pub(crate) static VECTORS: &str = r#" ## Real Test Vectors {#real-vectors} @@ -75,15 +75,15 @@ d329beb932e9adeea73d5d5c22a0ce1952f8aba6d66007615cd1698d4ac85ef1fcf15 envelope: ac13171b2f17bc2c74997f0fce1e1f35bec6b91fe2e12dbd323d23ba7a3 8dfec634b0f5b96109c198a8027da51854c35bee90d1e1c781806d07d49b76de6a28b 8d9e9b6c93b9f8b64d16dddd9c5bfb5fea48ee8fd2f75012a8b308605cdd8ba5 -handshake_secret: 7032215dfe771d18168271a8dd8c220098f6cfa6e63ccec7770 -61f6e6b74acee646d655454ee28e1a089c2bcdf0659999d2b60782290b2a5a067d663 -09ea1e46 -server_mac_key: 4d9c9d82092b7a932d8ab42a9acfc7e08ce84c94eaa309c32321d -f90c5f93b093bdd8df15f573ec4d8952a1616d15127e270d97f9c638a6613187966e2 -fa031a -client_mac_key: 7ee640a0a860b1751d67f5994a3db290a0afd928434d65c166f34 -c73a245a7ab75d8ba15683f0701034f87d5c047f5082e138880fb37bec387c4863ba9 -1c9750 +handshake_secret: 81263cb85a0cfa12450f0f388de4e92291ec4c7c7a0878b6245 +50ff528726332f1298fc6cc822a432c89504347c7a2ccd70316ae3da6a15e0399e6db +3f7c1b12 +server_mac_key: 0d36b26cfe38f51f804f0a9361818f32ee1ce2a4e5578653b5271 +84af058d3b2d8075c296fd84d24677913d1baa109290cd81a13ed383f9091a3804e65 +298dfc +client_mac_key: 91750adbac54a5e8e53b4c233cc8d369fe83b0de1b6a3cd85575e +eb0bb01a6a90a086a2cf5fe75fff2a9379c30ba9049510a33b5b0b1444a88800fc3ee +e2260d oprf_key: 5d4c6a8b7c7138182afb4345d1fae6a9f18a1744afbcc3854f8f5a2b4b4 c6d05 ~~~ @@ -112,17 +112,17 @@ KE2: 7e308140890bcde30cbcea28b01ea1ecfbd077cff62c4def8efa075aabcbb471 52786e0382f95ad85c08f6afcd1ccfbff95e2bdeb015b166c6b20b92f832cc6df01e0 b86a7efd92c1c804ff865781fa93f2f20b446c8371b671cd9960ecef2fe0d0f749498 6fa3d8b2bb01963537e60efb13981e138e3d4a1c4f62198a9d6fa9170c42c3c71f197 -1b29eb1d5d0bd733e40816c91f7912cc4aa47faa9314446793501f622f63a84db1bf5 -b346d13f48d2f1a93902475e625fac1d0dea3ad473c0db2de94098b7142c5099758f8 -568c98495d409b5a601b3e59 -KE3: 2a5e2036d390f4c79e6d5a15ffa8ede52b8da7ff07b9a016a201f22f3420aaa3 -3326ba6fe19b947f23cfbb8a2534b488cca31e35a2521e1ab7a49e299c82a07b +1b29eb1d5d0bd733e40816c91f7912cc4a660c48dae03e57aaa38f3d0cffcfc21852e +bc8b405d15bd6744945ba1a93438a162b6111699d98a16bb55b7bdddfe0fc5608b23d +a246e7bd73b47369169c5c90 +KE3: 4455df4f810ac31a6748835888564b536e6da5d9944dfea9e34defb9575fe5e2 +661ef61d2ae3929bcf57e53d464113d364365eb7d1a57b629707ca48da18e442 export_key: 1ef15b4fa99e8a852412450ab78713aad30d21fa6966c9b8c9fb3262a 970dc62950d4dd4ed62598229b1b72794fc0335199d9f7fcc6eaedde92cc04870e63f 16 -session_key: db06b9d5d2c6034db948f58da84a6c5bdeaab7037adc338d7fada357 -3c5dbcfe649c4f172615f97f63da944bee601abb69121203f0bf56cb7742efdd1afbb -21a +session_key: 42afde6f5aca0cfa5c163763fbad55e73a41db6b41bc87b8e7b62214 +a8eedc6731fa3cb857d657ab9b3764b89a84e91ebcb4785166fbb02cedfcbdfda215b +96f ~~~ ### OPAQUE-3DH Real Test Vector 2 @@ -190,15 +190,15 @@ d329beb932e9adeea73d5d5c22a0ce1952f8aba6d66007615cd1698d4ac85ef1fcf15 envelope: ac13171b2f17bc2c74997f0fce1e1f35bec6b91fe2e12dbd323d23ba7a3 8dfec1ac902dc5589e9a5f0de56ad685ea8486210ef41449cd4d8712828913c5d2b68 0b2b3af4a26c765cff329bfb66d38ecf1d6cfa9e7a73c222c6efe0d9520f7d7c -handshake_secret: ce0bce1d698443e07b85551d38654ddf2d9fa3791cab39c0ceb -84a87408d3189da191d5f28d994178c794a363c8b2431d66de8e6d048bf1afc09588a -1790017d -server_mac_key: 87212e945d15bd1ff230240795a0b09e1e1d42d7ce8b78fbe4bf5 -6a60288ed64d8cd9e13a27537d3d06323fee990d994653809466a47b0786885f933c6 -9f1c68 -client_mac_key: c0f37b7c91f2d16b5466e55d27dbdf1f6727c2ee830b1bcd03cf4 -7c4fc3b5520a166a0a21e9f12a4880555272153c77b97b3e534c327aea1b60e8b5d18 -a14b9a +handshake_secret: 5e723bed1e5276de2503419eba9da61ead573109c4012268323 +98c7e08155b885bfe7bc93451f9d887a0c1d0c19233e40a8e47b347a9ac3907f94032 +a4cff64f +server_mac_key: dad66bb9251073d17a13f8e5500f36e5998e3cde520ca0738e708 +5af62fd97812eb79a745c94d0bf8a6ac17f980cf435504cf64041eeb6bb237796d2c7 +f81e9a +client_mac_key: f816fe2914f7c5b29852385615d7c7f31ac122adf202d7ccd4976 +06d7aabd48930323d1d02b1cc9ecd456c4de6f46c7950becb18bffd921dd5876381b5 +486ffe oprf_key: 5d4c6a8b7c7138182afb4345d1fae6a9f18a1744afbcc3854f8f5a2b4b4 c6d05 ~~~ @@ -227,17 +227,17 @@ KE2: 7e308140890bcde30cbcea28b01ea1ecfbd077cff62c4def8efa075aabcbb471 95dd8914f164e49f81c7688a38928372134b7dccd50e09f8fed9518b7b2f94835b3c4 fe4c8475e7513f20eb97ff0568a39caee3fd6251876f71cd9960ecef2fe0d0f749498 6fa3d8b2bb01963537e60efb13981e138e3d4a1c4f62198a9d6fa9170c42c3c71f197 -1b29eb1d5d0bd733e40816c91f7912cc4a376718206a20e4941b5423a1fb1603b8452 -d3a2071b37132c9f9324b1cf160e10d40469f54d5f1c4a25f1ed1bb74dd5b87b27ae3 -9a8b53e22382f2e45f156d74 -KE3: d015536b2ecafb1a87f6ed057982cf73e75ec56a774549f672d59c0c4b7e3762 -e0c6d8a2382ae855c8ef5240bbe1e404b8c455c03dc1a716d459f67828f0574f +1b29eb1d5d0bd733e40816c91f7912cc4a292371e7809a9031743e943fb3b56f51de9 +03552fc91fba4e7419029951c3970b2e2f0a9dea218d22e9e4e0000855bb6421aa361 +0d6fc0f4033a6517030d4341 +KE3: 7a026de1d6126905736c3f6d92463a08d209833eb793e46d0f7f15b3e0f62c76 +43763c02bbc6b8d3d15b63250cae98171e9260f1ffa789750f534ac11a0176d5 export_key: 1ef15b4fa99e8a852412450ab78713aad30d21fa6966c9b8c9fb3262a 970dc62950d4dd4ed62598229b1b72794fc0335199d9f7fcc6eaedde92cc04870e63f 16 -session_key: 494a13c9d02c5af791ce743e8c08abd0be287e4ddd32a1dcc93072a6 -3b4109d67ae53fa3ae2d1333501a40dfbab630235688f3b000828f7084e5f4a6b3a10 -48d +session_key: ae7951123ab5befc27e62e63f52cf472d6236cb386c968cc47b7e34f +866aa4bc7638356a73cfce92becf39d6a7d32a1861f12130e824241fe6cab34fbd471 +a57 ~~~ ### OPAQUE-3DH Real Test Vector 3 @@ -303,15 +303,15 @@ f3963fbb2e1 envelope: 40d6b67fdd7da7c49894750754514dbd2070a407166bd2a5237cca9bf44 d6e0b20c1e81fef28e92e897ca8287d49a55075b47c3988ff0fff367d79a3e350ccac 150b4a3ff48b4770c8e84e437b3d4e68d2b95833f7788f7eb93fa6a8afb85ecb -handshake_secret: 6936d2b78f13d865997dd37c42c741dfe4c0297199e55d7f889 -1fa4771ed2357e990b44faec69733c607b7541442b5f27ea01513b4f0b84545e0ff75 -81ea7764 -server_mac_key: 62a11be878ecfcbd7c8875e86a0f479befcb4b1742480c9ac2d2a -5fa8d9e96c3bf60edb953ba15e32dc3e2cba60029c0c61481fdc7a80946f596b77fff -6b18ee -client_mac_key: e646055bf0a395c6c7c61078dabe0f0026ec6ba079ddb70f11ec9 -ba41e5ff70e37a87d8fbeca11d7dc22e2aacf2828de6e1d776b451fa1bd4419b0a6b5 -9cc353 +handshake_secret: 178c8c15e025252380c3edb1c6ad8ac52573b38d536099e2f86 +5786f5e31c642608550c0c6f281c37ce259667dd72768af31630e0eb36f1096a2e642 +1c2aa163 +server_mac_key: f3c6a8e069c54bb0d8905139f723c9e22f5c662dc08848243a665 +4c8223800019b9823523d84da2ef67ca1c14277630aace464c113be8a0a658c39e181 +a8bb71 +client_mac_key: b1ee7ce52dbd0ab72872924ff11596cb196bbabfc319e74aca78a +de54a0f74dd15dcf5621f6d2e79161b0c9b701381d494836dedbb86e584a65b34267a +370e01 oprf_key: 62ef7f7d9506a14600c34f642aaf6ef8019cc82a6755db4fded5248ea14 6030a ~~~ @@ -340,17 +340,17 @@ eb5e8767d175248c62c017de94057398d28bf0ed00d1b50ee4f812fd9afddf98af8cd 58067ca43b0633b6cadd0e9d987f89623fed4d3583bdf6910c425600e90dab3c6b351 3188a465461a67f6bbc47aeba808f7f7e2c6d66f5c3271cd9960ecef2fe0d0f749498 6fa3d8b2bb01963537e60efb13981e138e3d4a141f55f0bef355cfb34ccd468fdacad -75865ee7efef95f4cb6c25d477f720502601bd116f3cb70f03d9cbc25d5606b8c5764 -a1b9b11b28f2cbbd5630a836f9dbb2e7e8914639bca0fb9c99d58d42dfe3057cfe881 -491b1d0812948aa4a7a7c7f7 -KE3: 93a3c0da12392ad5336962e340b7c44ed445a67d61dae7bc5e2ccf891f6e9fac -6596f93350d3d559f7bbb182376a07ec7377e7966b7cc549fb8d0b6fb575f157 +75865ee7efef95f4cb6c25d477f720502676f06a3b806da262139bf3fa76a1090b94d +ac78bc3bc6f8747d5b35acf94eff3ec2ebe7d49b8cf16be64120b279fe92664e47be5 +da7e60f08f12e91192652f79 +KE3: 550e923829a544496d8316c490da2b979b78c730dd75be3a17f237a26432c19f +bba54b6a0467b1c22ecbd6794bc5fa5b04215ba1ef974c6b090baa42c5bb984f export_key: 9dec51d6d0f6ce7e4345f10961053713b07310cc2e45872f57bbd2fe5 070fdf0fb5b77c7ddaa2f3dc5c35132df7417ad7fefe0f690ad266e5a54a21d045c9c 38 -session_key: a30c5ad775d0bc9aeb47757cc68a9332cb3acb7fc332ca07ba96d707 -1847e492c8de3541997f97a605eb9b60cde6feb8dc57322e60ec42ae78c87a2e215e2 -77f +session_key: fd2fdd07c1bcc88e81c1b1d1de5ad62dfdef1c0b8209ff9d671e1fac +55ce9c34d381c1fb2703ff53a797f77daccbe33047ccc167b8105171e10ec962eea20 +3aa ~~~ ### OPAQUE-3DH Real Test Vector 4 @@ -418,15 +418,15 @@ f3963fbb2e1 envelope: 40d6b67fdd7da7c49894750754514dbd2070a407166bd2a5237cca9bf44 d6e0bb4c0eab6143959a650c5f6b32acf162b1fbe95bb36c5c4f99df53865c4d3537d 69061d80522d772cd0efdbe91f817f6bf7259a56e20b4eb9cbe9443702f4b759 -handshake_secret: f5b8fa77a67e638114899eca80c3549aa2c8e277a3412bccbe0 -a7e3943a5798d1e5ede2a847144759b17eb253f2f65efcccf82fe7b5f26e17175713d -be845786 -server_mac_key: a8cdc5647342743be8ae6fc51e7105651b16bcb5fe4913834e7c2 -139dbc06d84c75215e7e84e1785f431c925844eb8c9c0d14959239422368166f41485 -e7847a -client_mac_key: b326230809ee373101e8b387aa33a865f7afa375f8c3e5a8fb592 -b2e89e3117ccae85b0440421c75eb38a4ca4bde9355a549179b84748e21a3e378a3eb -538e37 +handshake_secret: 13e7dc6afa5334b9dfffe26bee3caf744ef4add176caee464cd +eb3d37303b90de35a8bf095df84471ac77d705f12fe232f1571de1d6a001d3e808998 +73a142dc +server_mac_key: a58135acfb2bde92d506cf59119729a6404ad94eba294e4b52a63 +baf58cfe03f21bcf735222c7f2c27a60bd958be7f6aed50dc03a78f64e7ae4ac1ff07 +1b95aa +client_mac_key: 1e1a8ba156aadc4a302f707d2193c9dab477b355f430d450dd407 +ce40dc75613f76ec33dec494f8a6bfdcf951eb060dac33e6572c693954fe92e33730c +9ab0a2 oprf_key: 62ef7f7d9506a14600c34f642aaf6ef8019cc82a6755db4fded5248ea14 6030a ~~~ @@ -455,17 +455,17 @@ eb5e8767d175248c62c017de94057398d28bf0ed00d1b50ee4f812699bff7663be3c5 d59de94d8e7e58817c7da005b39c25d25555c929e1c5cf6c1b82837b1367c839aab56 a422c0d97719426a79a16f9869cf852100597b23b5a071cd9960ecef2fe0d0f749498 6fa3d8b2bb01963537e60efb13981e138e3d4a141f55f0bef355cfb34ccd468fdacad -75865ee7efef95f4cb6c25d477f7205026816ce1eb529f8f3c6cec676d8c08f5ca760 -c4322016850f329c4a2fb07364768a11a5380564d4cbceae511c873627c22c9ee9f05 -488278de0fcf646f0825efdd -KE3: f6325cf6a7bd808fca69d54546ef61f2b5ec62fe8b96ca3c9b3e054841ab35ae -552bc5d8eea5ec840f56578be2cd2c30b52fa03266a2f4518cf764d9ced467ec +75865ee7efef95f4cb6c25d477f72050267cc22c87edbf3ecaca64cb33bc60dc3bfc5 +51e365f0d46a7fed0e09d96f9afbb48868f5bb3c3e05a86ed8c9476fc22c58306c5a2 +91be34388e09548ba9d70f39 +KE3: d16344e791c3f18594d22ba068984fa18ec1e9bead662b75f66826ffd627932f +cd1ec40cd01dcf5f63f4055ebe45c7717a57a833aad360256cf1e1c20c0eae1c export_key: 9dec51d6d0f6ce7e4345f10961053713b07310cc2e45872f57bbd2fe5 070fdf0fb5b77c7ddaa2f3dc5c35132df7417ad7fefe0f690ad266e5a54a21d045c9c 38 -session_key: 867930cba2b9988acfbe8289bffff728f7c799153be737c8a915ed98 -647a7bc7a7f5f9c03deb797d36eda54de6015683a60e08f34e746e37514c4714d0644 -99f +session_key: f6116d3aa0e4089a179713bad4d98ed5cb57e5443cae8d36ef78996f +a60f3dc6e9fcdd63c001596b06dbc1285d80211035cc0e485506b3f7a650cbf78c5bf +fc9 ~~~ ### OPAQUE-3DH Real Test Vector 5 @@ -528,12 +528,12 @@ randomized_password: 06be0a1a51d56557a3adad57ba29c5510565dcd8b5078fa3 19151b9382258fb0 envelope: a921f2a014513bd8a90e477a629794e89fec12d12206dde662ebdcf6567 0e51fad30bbcfc1f8eda0211553ab9aaf26345ad59a128e80188f035fe4924fad67b8 -handshake_secret: 12f661f08a195208b2558d6c4c9fff5527a6af971087ce9eca8 -00a77ca9c277a -server_mac_key: e07959284f64abd523651d0619d67cd5e026081671400af6282ff -bff85949d93 -client_mac_key: d6672fd556c0811391bb48177255341979bfd0418c15169a62cb4 -f18a40a37d6 +handshake_secret: 83a932431a8f25bad042f008efa2b07c6cd0faa8285f335b636 +3546a9f9b235f +server_mac_key: 13e928581febfad28855e3e7f03306d61bd69489686f621535d44 +a1365b73b0d +client_mac_key: afdc53910c25183b08b930e6953c35b3466276736d9de2e9c5efa +f150f4082c5 oprf_key: 2dfb5cb9aa1476093be74ca0d43e5b02862a05f5d6972614d7433acdc66 f7f31 ~~~ @@ -560,13 +560,13 @@ c547f70deaeca54d878c14c1aa5e1ab405dec833777132eea905c2fbb12504a67dcbe 0e66740c76b62c13b04a38a77926e19072953319ec65e41f9bfd2ae26837b6ce688bf 9af2542f04eec9ab96a1b9328812dc2f5c89182ed47fead61f09f71cd9960ecef2fe0 d0f7494986fa3d8b2bb01963537e60efb13981e138e3d4a103c1701353219b53acf33 -7bf6456a83cefed8f563f1040b65afbf3b65d3bc9a19b037d9b23fea94aa69aff597a -63f2e8109064925589923667840390535d331279 -KE3: c1252b9a0af176f5878b8f9b55934c2463ee7226d2b7d97cadfb901ca4a55b8f +7bf6456a83cefed8f563f1040b65afbf3b65d3bc9a19b50a73b145bc87a157e8c58c0 +342e2047ee22ae37b63db17e0a82a30fcc4ecf7b +KE3: e97cab4433aa39d598e76f13e768bba61c682947bdcf9936035e8a3a3ebfb66e export_key: c3c9a1b0e33ac84dd83d0b7e8af6794e17e7a3caadff289fbd9dc769a 853c64b -session_key: 1fc4d7b0d75bb02c36a9b10b563671967e27283c9fe0082fa16cfa94 -a12151b2 +session_key: 484ad345715ccce138ca49e4ea362c6183f0949aaaa1125dc3bc3f80 +876e7cd1 ~~~ ### OPAQUE-3DH Real Test Vector 6 @@ -631,12 +631,12 @@ randomized_password: 06be0a1a51d56557a3adad57ba29c5510565dcd8b5078fa3 19151b9382258fb0 envelope: a921f2a014513bd8a90e477a629794e89fec12d12206dde662ebdcf6567 0e51f4d7773a36a208a866301dbb2858e40dc5638017527cf91aef32d3848eebe0971 -handshake_secret: 1546f3fb57232805f5d44afd97ade62d104f976261f631b5734 -04b80fcac744f -server_mac_key: 04142fcb444d419a62fcdb5624dc3e31888146bcf4ab980f77445 -cf43d4e61ae -client_mac_key: a93654bfe439ea07a85a944d650148cd0794d76341a74c8409f9c -01e7a91c2d3 +handshake_secret: 80bdcc498f22de492e90ee8101fcc7c101e158dd49c77f7c283 +816ae329ed62f +server_mac_key: 0f82432fbdb5b90daf27a91a3acc42299a9590dba1b77932c2207 +b4cb3d4a157 +client_mac_key: 7f629eb0b1b69979b07ca1f564b3e92ed22f07569fd1d11725d93 +e46731fbe71 oprf_key: 2dfb5cb9aa1476093be74ca0d43e5b02862a05f5d6972614d7433acdc66 f7f31 ~~~ @@ -663,13 +663,13 @@ c547f70deaeca54d878c14c1aa5e1ab405dec833777132eea905c2fbb12504a67dcbe 0e66740c76b62c13b04a38a77926e19072953319ec65e41f9bfd2ae268d7f10604202 1c80300e4c6f585980cf39fc51a4a6bba41b0729f9b240c729e5671cd9960ecef2fe0 d0f7494986fa3d8b2bb01963537e60efb13981e138e3d4a103c1701353219b53acf33 -7bf6456a83cefed8f563f1040b65afbf3b65d3bc9a19b606ebbf63c85a49acaa94b61 -b9c5ad3d1c8368f5e73635df42c386d9dcb77c77 -KE3: 690ab24fe2cb5889bc42426cce3445ee425fbd2f368c95aac23dfbee9729c788 +7bf6456a83cefed8f563f1040b65afbf3b65d3bc9a19b84922c7e5d074838a8f27859 +2c53f61fb59f031e85ad480c0c71086b871e1b24 +KE3: 46833578cee137775f6be3f01b80748daac5a694101ad0e9e7025480552da56a export_key: c3c9a1b0e33ac84dd83d0b7e8af6794e17e7a3caadff289fbd9dc769a 853c64b -session_key: a2f482abd58500c560d0f4dbd6c6e55d573cfb350ade0a016f079dfe -e5f42657 +session_key: 27766fabd8dd88ff37fbd0ef1a491e601d10d9f016c2b28c4bd1b0fb +7511a3c3 ~~~ ## Fake Test Vectors {#fake-vectors} @@ -737,9 +737,9 @@ a510a5978e64dcdabecbd7ee1e4380ce270e58fea58e6462d92964a1aaef72698bca1 c673baeb04cc2bf7de5f3c2f5553464552d3a0f7698a9ca7f9c5e70c6cb1f706b2f17 5ab9d04bbd13926e816b6811a50b4aafa9799d5ed7971e10f6eeab2a7a420bf09da9b 27a4639645622c46358de9cf7ae813055ae2d1298251c5ba55f6b0b2d58d9ff0c88fe -4176484be62a96db6e2a8c4d431bd1bf27e077203e6dc290083d0769a2e8d3c8755c8 -5974c32294c6f9fa0adbb34b977472a794b9fb2bdacd6347c8f9d1e0a50b6e763f384 -f32b42c8bc40ad608ba6135e +4176484be62a96db6e2a8c4d431bd1bf27fe6c1d0537603835217d42ebf7b25819827 +32e74892fd28211b31ed33863f0beaf75ba6f59474c0aaf9d78a60a9b2f4cd24d7ab5 +4131b3c8efa192df6b72db4c ~~~ ### OPAQUE-3DH Fake Test Vector 2 @@ -805,9 +805,9 @@ b0e83ecc249613116d605b8d77bb68bdf76994c2bc507e2dcae4176f00afed68ad25c f3040a0e991acece31ca532117f5c12816997372ff031ad04ebcdce06c501da24e7b4 db95343456e2ed260895ec362694230a1fa20e24a9c71e10f6eeab2a7a420bf09da9b 27a4639645622c46358de9cf7ae813055ae2d122d9055eb8f83e1b497370adad5cc2a -417bf9be436a792def0c7b7ccb92b9e27513c6a0d5d96e939563ad168990ed0156b8d -8fb82888ce111f217b1103b4c6d67ee9738777033dd0d85e39776993b5f1f7fa4252b -13a9c37c0fdd06204ca315c6 +417bf9be436a792def0c7b7ccb92b9e275d7c663104ea4655bd70570d975c05351655 +d55fbfb392286edb55600a23b55ce18f8c60e0d1960c960412dd08eabc81ba7ca8ae2 +b04aad65462321f51c298010 ~~~ ### OPAQUE-3DH Fake Test Vector 3 @@ -870,7 +870,7 @@ da65ce0a97b9085e7af07f61fd3fdd046d257cbf2183ce8766090b8041a8bf28d79dd 4c9031ddc75bb6ddb4c291e639937840e3d39fc0d5a3d6e7723c09f7945df485bcf9a efe3fe82d149e84049e259bb5b33d6a2ff3b25e4bfb7eff0962821e10f6eeab2a7a42 0bf09da9b27a4639645622c46358de9cf7ae813055ae2d12023f82bbb24e75b8683fd -13b843cd566efae996cd0016cffdcc24ee2bc937d026f459621ce1b4126bc75fb6114 -1194c77ea9dc92d11aa1993f35336ccdbbcf13fc +13b843cd566efae996cd0016cffdcc24ee2bc937d026f80144878749a69565b433c10 +40aff67e94f79345de888a877422b9bbe21ec329 ~~~ "#; diff --git a/src/tests/test_opaque_vectors.rs b/src/tests/test_opaque_vectors.rs index 425bca1e..a3c5ed09 100644 --- a/src/tests/test_opaque_vectors.rs +++ b/src/tests/test_opaque_vectors.rs @@ -14,9 +14,9 @@ use digest::core_api::{BlockSizeUser, CoreProxy}; use digest::OutputSizeUser; use generic_array::typenum::{IsLess, IsLessOrEqual, Le, NonZero, Sum, U256}; use generic_array::{ArrayLength, GenericArray}; -use json::JsonValue; use rand::rngs::OsRng; use rand::RngCore; +use serde_json::Value; use voprf::Group; use crate::ciphersuite::{CipherSuite, OprfGroup, OprfHash}; @@ -89,11 +89,11 @@ macro_rules! parse_default { }; } -fn decode(values: &JsonValue, key: &str) -> Option> { +fn decode(values: &Value, key: &str) -> Option> { values[key].as_str().and_then(|s| hex::decode(s).ok()) } -fn populate_test_vectors(values: &JsonValue) -> OpaqueTestVectorParameters +fn populate_test_vectors(values: &Value) -> OpaqueTestVectorParameters where as OutputSizeUser>::OutputSize: IsLess + IsLessOrEqual< as BlockSizeUser>::BlockSize>, @@ -184,10 +184,12 @@ where macro_rules! json_to_test_vectors { ( $v:ident, $vector_type:expr, $cs:expr, $cs_ty:ty) => { $v[$vector_type] - .members() + .as_array() + .into_iter() + .flatten() .filter_map(|x| { - if x.has_key($cs) { - Some(populate_test_vectors::<$cs_ty>(&x[$cs])) + if let Some(val) = x.get($cs) { + Some(populate_test_vectors::<$cs_ty>(val)) } else { None } @@ -198,8 +200,9 @@ macro_rules! json_to_test_vectors { #[test] fn tests() -> Result<(), ProtocolError> { - let rfc = json::parse(super::parser::rfc_to_json(super::opaque_vectors::VECTORS).as_str()) - .expect("Could not parse json"); + let rfc: Value = + serde_json::from_str(super::parser::rfc_to_json(super::opaque_vectors::VECTORS).as_str()) + .expect("Could not parse json"); #[cfg(feature = "ristretto255")] {