#![allow(
dead_code,
reason = "a shared fixture module; each test crate uses a subset"
)]
pub mod jwe_wycheproof;
pub struct EcKeyPair {
pub crv: &'static str,
pub len: usize,
pub x: &'static str,
pub y: &'static str,
pub d: &'static str,
}
pub const GENERATORS: [EcKeyPair; 4] = [
EcKeyPair {
crv: "P-256",
len: 32,
x: "axfR8uEsQkf4vOblY6RA8ncDfYEt6zOg9KE5RdiYwpY",
y: "T-NC4v4af5uO5-tKfA-eFivOM1drMV7Oy7ZAaDe_UfU",
d: "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE",
},
EcKeyPair {
crv: "P-384",
len: 48,
x: "qofKIr6LBTeOscce8yCtdG4dO2KLp5uYWfdB4IJUKjhVAvJdv1UpbDpUXjhydgq3",
y: "NhfeSpYmLG9dnpi_kpLcKfj0Hb0omhR86doxE7XwuMAKYLHOHX6BnXpDHXyQ6g5f",
d: "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB",
},
EcKeyPair {
crv: "P-521",
len: 66,
x: "AMaFjga3BATpzZ4-y2YjlbRCnGSBOQU_tSH4KK9ga009uqFLXnfv51ko_h3BJ6L_qN4zSLPBhWpCm_l-fjHC5b1m",
y: "ARg5KWp4mjvABFyKX7QsfRvZmPVESVebRGgXr70XJz5mLJfucple9CZAxVC5AT-tB2E1PHCGonLCQIi-lHaf0WZQ",
d: "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB",
},
EcKeyPair {
crv: "secp256k1",
len: 32,
x: "eb5mfvncu6xVoGKVzocLBwKb_NstzijZWfKBWxb4F5g",
y: "SDradyajxGVdpPv8DhEIqP0XtEimhVQZnEfQj_sQ1Lg",
d: "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE",
},
];
pub const LEADING_ZEROS: [EcKeyPair; 4] = [
EcKeyPair {
crv: "P-256",
len: 32,
x: "AFVDiUrz0A7X10Cr29dclrBod7eH219w7qeLkKjXwAo",
y: "u0yFo9jqKe-q-iRAaRLdhNWxTcMr9lbvbGvVil2UP5I",
d: "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXs",
},
EcKeyPair {
crv: "P-384",
len: 48,
x: "AE0QSybuVnH3LBDJhoQdPmXSheJRYWG3uqNBsSYxueMrbw1YlthDHFHV2To3y8kO",
y: "8RoeP4t7kFOO5CzADuk0puLuJVQWB9j7ZceosR4viGhTiG7vOGXskzIAufJVmfKf",
d: "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADF",
},
EcKeyPair {
crv: "P-521",
len: 66,
x: "AABgqI2FlqLGWXstxORl39fnSgvLe4Y_VvIcFBSllYtipJWZb9hrjp54pnEseIfnXfzpcqBOEsuc-eAy_yrBr_8Z",
y: "ATPR_AqtuggGE1eNKYDHf-Y8t80KYNGt8rLlCNmsniqLHQxTiNHLsF8OLFjQHLzAWUWSk9SYKLYfR8Hy7euJFFKK",
d: "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAER",
},
EcKeyPair {
crv: "secp256k1",
len: 32,
x: "AOOuGXRWbKBsxRbUfg-xZaZ0o9q8_KFeci8ONFD0WIk",
y: "Kuq-fkUxUQEWIX8Hv00HMA3pfkh0-B9TNCCnLusL1qQ",
d: "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJk",
},
];
pub fn generator(crv: &str) -> &'static EcKeyPair {
GENERATORS
.iter()
.find(|k| k.crv == crv)
.unwrap_or_else(|| panic!("no EC fixture for {crv}"))
}
pub const ED25519_X: &str = "11qYAYKxCrfVS_7TyWQHOg7hcvPapiMlrwIaaPcHURo";
pub const ED25519_D: &str = "nWGxne_9WmC6hEr0kuwsxERJxWl7MmkZcDusAxyuf2A";