mirror of
https://github.com/logos-blockchain/lssa.git
synced 2026-08-11 09:23:20 +00:00
refactor(lee): update stale domain for keytree parent
This commit is contained in:
parent
736102329f
commit
5a1524dcb9
@ -34,10 +34,12 @@ impl ChildKeysPrivate {
|
||||
|
||||
#[must_use]
|
||||
pub fn nth_child(&self, cci: u32) -> Self {
|
||||
const DOMAIN: &[u8; 21] = b"/LEE/v0.3/Keys/Parent";
|
||||
|
||||
// `parent_hash`` is used to incorporate entropy based on the parent node's keys
|
||||
// to generate the `ssk` and `ccc` values.
|
||||
let mut parent_hash = sha2::Sha256::new();
|
||||
parent_hash.update(b"LEE/keys");
|
||||
parent_hash.update(DOMAIN);
|
||||
parent_hash.update(self.value.0.private_key_holder.nullifier_secret_key());
|
||||
parent_hash.update(self.value.0.private_key_holder.viewing_secret_key.d);
|
||||
parent_hash.update(self.value.0.private_key_holder.viewing_secret_key.z);
|
||||
@ -241,37 +243,37 @@ mod tests {
|
||||
let child_node = ChildKeysPrivate::nth_child(&root_node, 42_u32);
|
||||
|
||||
let expected_ssk = key_management::secret_holders::SecretSpendingKey([
|
||||
147, 244, 221, 25, 228, 53, 3, 55, 123, 178, 86, 169, 79, 154, 246, 163, 157, 33, 28,
|
||||
244, 16, 118, 43, 39, 193, 5, 29, 152, 132, 154, 95, 26,
|
||||
109, 21, 107, 97, 112, 105, 143, 134, 185, 35, 168, 205, 138, 110, 125, 155, 193, 57,
|
||||
36, 19, 214, 180, 194, 46, 107, 235, 43, 80, 132, 19, 254, 231,
|
||||
]);
|
||||
|
||||
let expected_ccc = [
|
||||
18, 103, 41, 76, 65, 124, 115, 176, 148, 75, 103, 77, 166, 183, 172, 236, 189, 17, 53,
|
||||
249, 173, 195, 106, 161, 244, 2, 14, 94, 158, 49, 84, 164,
|
||||
64, 218, 41, 59, 115, 126, 128, 3, 77, 77, 54, 84, 87, 253, 181, 112, 244, 254, 176,
|
||||
243, 86, 127, 219, 255, 64, 164, 218, 129, 83, 65, 176, 179,
|
||||
];
|
||||
|
||||
let expected_ask = lee_core::AuthorizationSecretKey([
|
||||
11, 214, 158, 158, 46, 193, 62, 186, 255, 46, 72, 251, 83, 23, 191, 113, 182, 211, 86,
|
||||
144, 187, 225, 221, 167, 83, 141, 174, 223, 217, 171, 50, 87,
|
||||
33, 29, 199, 63, 191, 14, 196, 15, 51, 70, 236, 125, 93, 120, 78, 99, 90, 239, 220,
|
||||
168, 226, 46, 208, 238, 70, 117, 17, 28, 163, 89, 177, 129,
|
||||
]);
|
||||
|
||||
let expected_nsk: NullifierSecretKey = [
|
||||
89, 206, 155, 18, 194, 73, 132, 144, 61, 65, 163, 8, 52, 169, 8, 140, 255, 86, 219,
|
||||
218, 141, 64, 238, 76, 118, 16, 30, 186, 23, 70, 79, 222,
|
||||
97, 83, 94, 170, 125, 55, 27, 105, 106, 42, 73, 99, 169, 221, 210, 124, 117, 52, 98,
|
||||
131, 98, 202, 79, 95, 151, 196, 239, 242, 6, 127, 160, 160,
|
||||
];
|
||||
let expected_npk = lee_core::NullifierPublicKey([
|
||||
29, 80, 209, 224, 61, 151, 130, 4, 70, 165, 106, 126, 91, 188, 92, 203, 46, 39, 37, 11,
|
||||
136, 10, 158, 67, 32, 147, 250, 231, 112, 76, 133, 178,
|
||||
81, 199, 141, 154, 209, 135, 105, 75, 106, 240, 124, 190, 245, 233, 152, 34, 225, 234,
|
||||
212, 221, 121, 68, 255, 97, 231, 142, 26, 54, 169, 53, 69, 242,
|
||||
]);
|
||||
|
||||
let expected_vsk = ViewingSecretKey::new(
|
||||
[
|
||||
87, 215, 216, 10, 193, 212, 245, 90, 212, 110, 113, 151, 70, 34, 227, 123, 166,
|
||||
189, 105, 219, 135, 194, 119, 50, 69, 66, 100, 121, 13, 217, 34, 135,
|
||||
14, 173, 255, 235, 8, 1, 246, 119, 243, 18, 235, 31, 209, 92, 142, 7, 175, 223,
|
||||
228, 201, 173, 165, 148, 137, 141, 160, 175, 161, 110, 139, 54, 183,
|
||||
],
|
||||
[
|
||||
103, 65, 25, 44, 172, 134, 69, 145, 152, 56, 155, 81, 211, 101, 141, 240, 222, 39,
|
||||
175, 218, 137, 42, 131, 133, 193, 25, 222, 112, 3, 80, 255, 98,
|
||||
10, 253, 101, 172, 213, 221, 88, 85, 178, 89, 218, 73, 28, 212, 1, 2, 105, 161,
|
||||
180, 24, 49, 6, 182, 155, 22, 220, 121, 42, 175, 59, 233, 109,
|
||||
],
|
||||
);
|
||||
|
||||
@ -279,68 +281,69 @@ mod tests {
|
||||
// implementation, unlike every other vector here; its trailing 32 bytes are
|
||||
// rho = SHA3-512(d || 3)[..32] per FIPS-203, checked against the independent `d`.
|
||||
let expected_vpk: [u8; 1184] = [
|
||||
70, 98, 188, 35, 130, 206, 210, 76, 99, 161, 241, 144, 206, 228, 9, 64, 229, 7, 98, 67,
|
||||
101, 1, 53, 181, 205, 7, 43, 212, 16, 207, 248, 34, 80, 88, 18, 51, 104, 163, 6, 33,
|
||||
119, 127, 223, 148, 109, 72, 52, 53, 190, 193, 153, 2, 68, 97, 142, 118, 59, 64, 6,
|
||||
108, 56, 99, 136, 111, 50, 130, 13, 90, 73, 154, 85, 126, 246, 146, 39, 18, 104, 88, 8,
|
||||
90, 13, 109, 124, 22, 52, 104, 24, 244, 179, 19, 84, 85, 63, 14, 138, 53, 185, 167, 15,
|
||||
82, 218, 67, 155, 184, 88, 58, 122, 136, 189, 12, 179, 96, 12, 25, 224, 197, 72, 222,
|
||||
85, 41, 48, 228, 133, 135, 139, 29, 213, 250, 177, 85, 75, 201, 115, 242, 47, 156, 145,
|
||||
40, 50, 33, 85, 168, 4, 85, 83, 198, 207, 246, 220, 138, 131, 166, 134, 42, 114, 116,
|
||||
190, 164, 15, 64, 227, 8, 214, 88, 1, 118, 197, 79, 179, 194, 18, 184, 84, 163, 163,
|
||||
12, 49, 140, 115, 84, 222, 136, 117, 140, 215, 169, 179, 240, 118, 51, 68, 130, 99,
|
||||
152, 170, 26, 7, 54, 188, 81, 76, 196, 25, 133, 147, 218, 136, 212, 42, 27, 178, 48,
|
||||
129, 207, 167, 137, 35, 154, 1, 137, 213, 166, 105, 107, 46, 1, 103, 29, 18, 132, 29,
|
||||
210, 150, 10, 117, 129, 45, 248, 97, 38, 245, 113, 200, 165, 130, 87, 161, 100, 25,
|
||||
132, 53, 135, 154, 139, 86, 92, 9, 171, 130, 72, 75, 228, 212, 180, 1, 7, 67, 81, 208,
|
||||
178, 239, 37, 182, 156, 196, 113, 3, 198, 191, 60, 24, 131, 58, 10, 14, 35, 249, 38,
|
||||
144, 97, 22, 66, 27, 105, 153, 210, 173, 182, 54, 177, 122, 180, 191, 7, 149, 127, 125,
|
||||
214, 46, 9, 0, 88, 246, 69, 33, 166, 120, 47, 138, 18, 53, 160, 215, 76, 93, 122, 103,
|
||||
139, 90, 160, 78, 149, 31, 53, 161, 46, 92, 228, 161, 169, 149, 166, 48, 48, 76, 229,
|
||||
102, 68, 80, 37, 137, 220, 44, 39, 143, 252, 40, 242, 90, 114, 140, 17, 191, 158, 225,
|
||||
102, 201, 181, 190, 215, 164, 100, 131, 76, 7, 126, 199, 151, 24, 59, 50, 94, 248, 132,
|
||||
4, 113, 89, 50, 115, 199, 206, 48, 1, 224, 88, 19, 32, 20, 196, 255, 71, 197, 180, 211,
|
||||
139, 139, 131, 88, 204, 107, 123, 132, 145, 4, 74, 252, 106, 165, 113, 81, 79, 4, 111,
|
||||
140, 244, 15, 216, 86, 42, 253, 243, 29, 21, 55, 46, 200, 242, 199, 216, 97, 49, 53, 3,
|
||||
134, 221, 178, 117, 192, 40, 149, 6, 212, 32, 222, 218, 100, 75, 200, 171, 19, 155, 45,
|
||||
186, 248, 180, 147, 140, 191, 242, 6, 96, 69, 200, 74, 213, 116, 0, 204, 209, 154, 220,
|
||||
219, 44, 5, 216, 40, 0, 109, 4, 233, 236, 130, 181, 186, 188, 115, 59, 174, 207, 74,
|
||||
19, 210, 41, 162, 1, 203, 141, 58, 72, 196, 219, 186, 113, 236, 138, 186, 107, 115,
|
||||
119, 254, 42, 201, 237, 2, 62, 89, 176, 52, 47, 59, 36, 188, 214, 185, 185, 187, 191,
|
||||
34, 160, 29, 185, 184, 15, 12, 210, 97, 252, 160, 38, 141, 164, 143, 33, 68, 6, 25,
|
||||
170, 192, 134, 24, 178, 164, 137, 57, 95, 245, 188, 224, 182, 94, 5, 52, 141, 104, 26,
|
||||
41, 8, 39, 98, 226, 244, 3, 237, 90, 24, 201, 250, 92, 120, 152, 26, 150, 230, 71, 192,
|
||||
154, 74, 201, 180, 62, 16, 140, 15, 167, 90, 16, 96, 65, 185, 232, 145, 63, 212, 156,
|
||||
160, 191, 38, 207, 46, 131, 97, 51, 98, 142, 116, 138, 92, 104, 186, 56, 229, 140, 92,
|
||||
196, 193, 204, 107, 139, 22, 34, 0, 39, 50, 10, 159, 222, 115, 4, 90, 170, 64, 150,
|
||||
116, 37, 172, 86, 24, 144, 248, 126, 251, 144, 119, 73, 36, 7, 50, 102, 14, 134, 216,
|
||||
16, 38, 185, 0, 29, 185, 191, 2, 82, 3, 14, 225, 24, 170, 74, 118, 158, 180, 18, 95, 1,
|
||||
192, 120, 68, 112, 21, 2, 130, 16, 235, 133, 67, 18, 171, 147, 179, 159, 146, 236, 162,
|
||||
254, 152, 200, 102, 104, 131, 71, 246, 134, 124, 64, 97, 118, 89, 159, 188, 166, 104,
|
||||
59, 7, 187, 224, 124, 194, 38, 248, 132, 233, 231, 53, 96, 208, 172, 11, 203, 9, 92,
|
||||
55, 63, 164, 114, 118, 2, 56, 63, 197, 92, 91, 98, 196, 37, 25, 23, 206, 172, 249, 19,
|
||||
156, 165, 91, 36, 216, 17, 195, 163, 192, 37, 86, 98, 44, 201, 74, 163, 117, 157, 174,
|
||||
74, 34, 250, 183, 63, 194, 91, 131, 1, 12, 5, 147, 136, 176, 107, 84, 34, 69, 230, 153,
|
||||
106, 87, 160, 68, 170, 75, 39, 230, 172, 113, 91, 8, 231, 244, 51, 23, 124, 43, 32,
|
||||
176, 141, 43, 153, 5, 24, 107, 161, 216, 71, 177, 44, 195, 134, 28, 17, 127, 137, 245,
|
||||
23, 250, 232, 98, 157, 186, 199, 224, 162, 34, 155, 180, 65, 82, 234, 1, 147, 162, 98,
|
||||
128, 194, 121, 90, 150, 183, 35, 250, 124, 207, 33, 70, 65, 25, 195, 143, 228, 70, 193,
|
||||
86, 73, 75, 128, 36, 219, 75, 143, 231, 91, 77, 223, 216, 163, 62, 185, 207, 111, 215,
|
||||
163, 49, 65, 128, 10, 247, 78, 88, 230, 127, 222, 203, 36, 149, 210, 171, 76, 26, 105,
|
||||
85, 18, 139, 24, 80, 148, 231, 58, 194, 153, 87, 84, 103, 210, 79, 236, 203, 52, 95,
|
||||
74, 164, 84, 192, 99, 40, 215, 123, 114, 244, 102, 89, 97, 160, 255, 212, 68, 206, 50,
|
||||
133, 145, 132, 82, 93, 117, 39, 227, 134, 84, 80, 211, 28, 110, 163, 127, 19, 2, 22,
|
||||
46, 124, 53, 213, 12, 31, 161, 70, 153, 251, 105, 121, 52, 145, 124, 7, 203, 107, 252,
|
||||
33, 145, 70, 243, 82, 69, 241, 20, 121, 54, 201, 135, 58, 183, 17, 161, 150, 62, 69,
|
||||
76, 253, 34, 206, 192, 171, 119, 101, 113, 128, 185, 32, 185, 185, 84, 17, 59, 40, 40,
|
||||
52, 20, 98, 81, 85, 8, 42, 58, 189, 65, 219, 101, 124, 72, 44, 108, 128, 147, 120, 123,
|
||||
171, 213, 17, 5, 157, 200, 141, 55, 118, 174, 232, 160, 155, 36, 117, 193, 24, 2, 117,
|
||||
204, 209, 199, 72, 233, 38, 99, 88, 85, 122, 160, 11, 88, 84, 79, 232, 50, 34, 195,
|
||||
136, 128, 47, 128, 186, 109, 179, 129, 205, 26, 81, 65, 242, 17, 13, 250, 48, 41, 220,
|
||||
71, 126, 3, 23, 221, 52, 196, 62, 153, 102, 167, 242, 188, 195, 89, 170, 91, 131, 6,
|
||||
157, 28, 78, 58, 201, 176, 185, 202, 90, 233, 112, 172, 105, 2, 129, 252, 38, 101, 194,
|
||||
181, 7, 196, 76, 68, 114, 20, 208, 215, 62, 49, 209, 90, 29, 238, 78, 190, 42, 134,
|
||||
255, 44, 171, 200, 73, 155, 242, 162, 87, 76, 97, 216, 137, 95, 83,
|
||||
153, 195, 136, 113, 42, 34, 28, 116, 169, 190, 53, 81, 59, 6, 163, 170, 199, 98, 201,
|
||||
54, 24, 171, 26, 191, 144, 248, 95, 63, 199, 113, 27, 67, 97, 49, 210, 66, 190, 74, 54,
|
||||
252, 12, 143, 197, 243, 27, 111, 198, 43, 23, 146, 3, 183, 171, 41, 72, 92, 46, 112,
|
||||
184, 160, 0, 25, 155, 109, 203, 70, 196, 88, 135, 121, 147, 12, 96, 230, 205, 217, 66,
|
||||
55, 78, 215, 196, 6, 8, 160, 186, 73, 56, 218, 76, 10, 31, 148, 182, 170, 131, 26, 101,
|
||||
210, 125, 125, 242, 160, 146, 35, 195, 59, 182, 55, 130, 198, 67, 109, 245, 66, 229,
|
||||
226, 154, 189, 112, 5, 160, 39, 7, 139, 152, 58, 197, 167, 81, 160, 37, 96, 175, 250,
|
||||
78, 232, 181, 152, 131, 41, 92, 45, 33, 184, 142, 25, 157, 62, 166, 111, 148, 137, 143,
|
||||
241, 176, 74, 176, 243, 178, 26, 232, 204, 119, 181, 17, 128, 91, 134, 8, 90, 35, 11,
|
||||
124, 98, 76, 76, 43, 82, 135, 85, 215, 72, 177, 37, 218, 131, 158, 139, 59, 155, 104,
|
||||
13, 13, 150, 34, 192, 54, 115, 90, 44, 84, 132, 51, 174, 155, 64, 26, 42, 246, 28, 30,
|
||||
252, 136, 227, 69, 174, 27, 233, 56, 214, 102, 117, 141, 177, 133, 181, 177, 8, 150,
|
||||
85, 104, 243, 123, 22, 25, 7, 42, 152, 226, 88, 93, 213, 201, 197, 235, 17, 185, 84,
|
||||
57, 161, 179, 37, 251, 129, 62, 214, 48, 161, 247, 124, 147, 120, 180, 197, 9, 83, 63,
|
||||
38, 182, 206, 20, 116, 28, 143, 134, 173, 55, 54, 1, 254, 86, 9, 67, 213, 144, 95, 48,
|
||||
29, 47, 119, 156, 188, 70, 18, 37, 202, 65, 173, 22, 177, 14, 244, 120, 166, 20, 82,
|
||||
203, 162, 24, 56, 240, 154, 249, 11, 31, 182, 55, 71, 171, 196, 3, 20, 151, 112, 159,
|
||||
131, 91, 201, 80, 116, 228, 6, 184, 140, 55, 205, 4, 91, 116, 46, 224, 32, 216, 146,
|
||||
46, 232, 75, 156, 109, 54, 193, 146, 248, 2, 49, 17, 102, 214, 150, 202, 1, 6, 110, 2,
|
||||
202, 34, 162, 107, 205, 241, 123, 83, 108, 152, 145, 231, 219, 158, 24, 171, 48, 121,
|
||||
2, 193, 15, 21, 9, 173, 172, 30, 111, 58, 94, 0, 18, 1, 140, 7, 52, 209, 214, 59, 127,
|
||||
228, 30, 154, 102, 119, 233, 170, 160, 120, 108, 154, 117, 28, 23, 70, 56, 35, 11, 9,
|
||||
39, 198, 86, 79, 119, 213, 88, 193, 5, 15, 214, 139, 199, 236, 243, 159, 171, 185, 22,
|
||||
35, 216, 20, 149, 137, 17, 74, 117, 165, 55, 116, 139, 171, 181, 204, 196, 104, 178,
|
||||
246, 103, 73, 249, 165, 108, 237, 234, 155, 133, 35, 139, 98, 136, 51, 220, 98, 181,
|
||||
40, 151, 80, 58, 242, 84, 206, 242, 199, 145, 156, 160, 61, 116, 100, 77, 89, 184, 213,
|
||||
119, 25, 4, 107, 26, 23, 87, 101, 85, 68, 115, 221, 171, 170, 123, 246, 26, 51, 108,
|
||||
13, 101, 217, 17, 0, 103, 110, 15, 136, 70, 255, 12, 197, 89, 225, 158, 25, 116, 32,
|
||||
53, 169, 122, 4, 32, 108, 30, 181, 180, 142, 250, 141, 217, 8, 33, 111, 89, 48, 196,
|
||||
90, 158, 207, 213, 165, 97, 196, 21, 193, 114, 199, 167, 123, 95, 118, 101, 107, 130,
|
||||
161, 186, 67, 27, 27, 161, 192, 157, 252, 98, 131, 186, 124, 64, 224, 199, 126, 47,
|
||||
230, 66, 92, 97, 38, 0, 35, 197, 178, 219, 121, 240, 149, 197, 18, 165, 39, 3, 137, 58,
|
||||
8, 227, 152, 124, 247, 103, 85, 150, 194, 140, 108, 96, 151, 57, 117, 182, 177, 47,
|
||||
168, 112, 184, 214, 42, 48, 65, 3, 30, 179, 187, 137, 179, 122, 98, 210, 3, 7, 102,
|
||||
235, 3, 145, 107, 200, 72, 4, 153, 135, 43, 202, 155, 170, 174, 148, 161, 37, 43, 219,
|
||||
16, 229, 65, 45, 225, 49, 126, 168, 215, 93, 153, 179, 49, 108, 51, 131, 227, 82, 134,
|
||||
77, 28, 175, 237, 136, 49, 137, 164, 197, 224, 42, 85, 250, 48, 109, 196, 70, 12, 236,
|
||||
65, 121, 254, 3, 37, 183, 201, 124, 246, 130, 174, 89, 7, 81, 235, 147, 148, 40, 147,
|
||||
174, 204, 99, 22, 150, 133, 195, 22, 108, 119, 59, 21, 104, 37, 251, 61, 92, 82, 9,
|
||||
122, 73, 48, 97, 82, 52, 170, 10, 79, 134, 17, 8, 247, 96, 108, 186, 230, 6, 138, 90,
|
||||
16, 36, 56, 45, 179, 121, 179, 17, 1, 174, 106, 4, 170, 81, 185, 60, 47, 201, 26, 67,
|
||||
199, 160, 52, 60, 63, 12, 82, 114, 122, 87, 166, 141, 168, 101, 177, 129, 197, 127,
|
||||
226, 166, 159, 168, 108, 218, 112, 31, 246, 4, 73, 134, 155, 197, 192, 8, 71, 135, 163,
|
||||
9, 122, 183, 127, 156, 60, 178, 124, 135, 129, 7, 185, 105, 232, 250, 199, 173, 80, 18,
|
||||
15, 118, 183, 3, 105, 56, 189, 107, 157, 44, 101, 103, 60, 99, 69, 187, 220, 146, 116,
|
||||
202, 85, 115, 219, 87, 241, 209, 39, 14, 184, 154, 236, 211, 31, 117, 106, 24, 68, 233,
|
||||
161, 49, 229, 105, 179, 58, 171, 215, 194, 178, 6, 243, 155, 2, 148, 202, 45, 145, 118,
|
||||
210, 233, 112, 208, 186, 157, 150, 68, 148, 94, 184, 49, 69, 36, 16, 33, 89, 36, 188,
|
||||
156, 122, 117, 124, 48, 83, 99, 153, 72, 148, 163, 14, 116, 15, 162, 169, 50, 10, 244,
|
||||
155, 136, 105, 76, 118, 209, 144, 130, 88, 102, 85, 234, 137, 222, 195, 37, 93, 169,
|
||||
179, 227, 195, 162, 203, 242, 19, 175, 252, 19, 197, 230, 97, 174, 167, 72, 10, 169,
|
||||
184, 26, 249, 41, 49, 199, 54, 205, 183, 178, 241, 5, 35, 142, 227, 196, 245, 2, 91,
|
||||
201, 6, 41, 62, 214, 158, 48, 39, 106, 189, 134, 27, 86, 2, 83, 27, 170, 30, 140, 103,
|
||||
7, 87, 65, 87, 163, 117, 188, 132, 38, 15, 116, 251, 23, 157, 113, 156, 165, 96, 41,
|
||||
112, 103, 3, 81, 200, 3, 166, 137, 98, 14, 86, 183, 200, 161, 100, 212, 199, 206, 167,
|
||||
114, 15, 235, 131, 103, 77, 103, 188, 254, 5, 30, 172, 183, 174, 176, 252, 9, 29, 90,
|
||||
78, 178, 188, 101, 158, 74, 200, 231, 75, 89, 233, 113, 206, 254, 122, 136, 41, 148,
|
||||
20, 10, 217, 144, 177, 108, 42, 124, 210, 7, 40, 138, 167, 223, 156, 151, 106, 236, 94,
|
||||
84, 183, 48, 39, 81, 77, 54, 129, 140, 133, 183, 107, 9, 8, 193, 99, 90, 185, 41, 229,
|
||||
43, 138, 11, 86, 161, 39, 124, 40, 114, 119, 122, 101, 124, 226, 227, 192, 241, 54,
|
||||
182, 89, 37, 186, 17, 90, 171, 245, 185, 119, 76, 21, 11, 170, 146, 46, 110, 228, 51,
|
||||
213, 162, 5, 193, 211, 153, 112, 148, 208, 43, 3, 254, 16, 173, 51, 88, 252, 219, 69,
|
||||
48, 242, 206, 198, 185, 105, 26,
|
||||
];
|
||||
|
||||
assert!(expected_ssk == child_node.value.0.secret_spending_key);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user