mirror of
https://github.com/serai-dex/serai.git
synced 2025-12-08 20:29:23 +00:00
85 lines
3.0 KiB
Rust
85 lines
3.0 KiB
Rust
use rand_core::OsRng;
|
|
|
|
#[cfg(any(feature = "secp256k1", feature = "p256"))]
|
|
use crate::tests::vectors::{Vectors, test_with_vectors};
|
|
|
|
#[cfg(feature = "secp256k1")]
|
|
use crate::curve::{Secp256k1, IetfSecp256k1Hram};
|
|
|
|
#[cfg(feature = "p256")]
|
|
use crate::curve::{P256, IetfP256Hram};
|
|
|
|
#[cfg(feature = "secp256k1")]
|
|
#[test]
|
|
fn secp256k1_ietf() {
|
|
test_with_vectors::<_, Secp256k1, IetfSecp256k1Hram>(
|
|
&mut OsRng,
|
|
Vectors {
|
|
threshold: 2,
|
|
shares: &[
|
|
"08f89ffe80ac94dcb920c26f3f46140bfc7f95b493f8310f5fc1ea2b01f4254c",
|
|
"04f0feac2edcedc6ce1253b7fab8c86b856a797f44d83d82a385554e6e401984",
|
|
"00e95d59dd0d46b0e303e500b62b7ccb0e555d49f5b849f5e748c071da8c0dbc",
|
|
],
|
|
group_secret: "0d004150d27c3bf2a42f312683d35fac7394b1e9e318249c1bfe7f0795a83114",
|
|
group_key: "02f37c34b66ced1fb51c34a90bdae006901f10625cc06c4f64663b0eae87d87b4f",
|
|
|
|
msg: "74657374",
|
|
included: &[1, 3],
|
|
nonces: &[
|
|
[
|
|
"95f352cf568508bce96ef3cb816bf9229eb521ca9c2aff6a4fe8b86bf49ae16f",
|
|
"c675aea50ff2510ae6b0fcb55432b97ad0b55a28b959bacb0e8b466dbf43dd26",
|
|
],
|
|
[
|
|
"b5089ebf363630d3477711005173c1419f4f40514f7287b4ca6ff110967a2d70",
|
|
"5e50ce9975cfc6164e85752f52094b11091fdbca846a9c245fdbfa4bab1ae28c",
|
|
],
|
|
],
|
|
sig_shares: &[
|
|
"280c44c6c37cd64c7f5a552ae8416a57d21c115cab524dbff5fbcebbf5c0019d",
|
|
"e372bca35133a80ca140dcac2125c966b763a934678f40e09fb8b0ae9d4aee1b",
|
|
],
|
|
sig: "0364b02292a4b0e61f849f4d6fac0e67c2f698a21e1cba9e4a5b8fa535f2f9310d".to_owned() +
|
|
"0b7f016a14b07e59209b31d7096733bfced0ddaa6398ee64d5e220ddc2d4ae77",
|
|
},
|
|
);
|
|
}
|
|
|
|
#[cfg(feature = "p256")]
|
|
#[test]
|
|
fn p256_vectors() {
|
|
test_with_vectors::<_, P256, IetfP256Hram>(
|
|
&mut OsRng,
|
|
Vectors {
|
|
threshold: 2,
|
|
shares: &[
|
|
"0c9c1a0fe806c184add50bbdcac913dda73e482daf95dcb9f35dbb0d8a9f7731",
|
|
"8d8e787bef0ff6c2f494ca45f4dad198c6bee01212d6c84067159c52e1863ad5",
|
|
"0e80d6e8f6192c003b5488ce1eec8f5429587d48cf001541e713b2d53c09d928",
|
|
],
|
|
group_secret: "8ba9bba2e0fd8c4767154d35a0b7562244a4aaf6f36c8fb8735fa48b301bd8de",
|
|
group_key: "023a309ad94e9fe8a7ba45dfc58f38bf091959d3c99cfbd02b4dc00585ec45ab70",
|
|
|
|
msg: "74657374",
|
|
included: &[1, 3],
|
|
nonces: &[
|
|
[
|
|
"e9165dad654fc20a9e31ca6f32ac032ec327b551a50e8ac5cf25f5c4c9e20757",
|
|
"e9059a232598a0fba0e495a687580e624ab425337c3221246fb2c716905bc9e7",
|
|
],
|
|
[
|
|
"b9d136e29eb758bd77cb83c317ac4e336cf8cda830c089deddf6d5ec81da9884",
|
|
"5261e2d00ce227e67bb9b38990294e2c82970f335b2e6d9f1d07a72ba43d01f0",
|
|
],
|
|
],
|
|
sig_shares: &[
|
|
"bdaa275f10ca57e3a3a9a7a0d95aeabb517897d8482873a8f9713d458f94756f",
|
|
"0e8fd85386939e8974a8748e66641df0fe043323c52487a2b10b8a397897de21",
|
|
],
|
|
sig: "03c41521412528dce484c35b6b9b7cc8150102ab3e4bdf858d702270c05098e6c6".to_owned() +
|
|
"cc39ffb2975df66d18521c2f3fbf08ac4f7ccafc0d4cfb4baa7cc77f082c5390",
|
|
},
|
|
);
|
|
}
|