key_agg_vectors.json raw
1 {
2 "pubkeys": [
3 "02F9308A019258C31049344F85F89D5229B531C845836F99B08601F113BCE036F9",
4 "03DFF1D77F2A671C5F36183726DB2341BE58FEAE1DA2DECED843240F7B502BA659",
5 "023590A94E768F8E1815C2F24B4D80A8E3149316C3518CE7B7AD338368D038CA66",
6 "020000000000000000000000000000000000000000000000000000000000000005",
7 "02FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC30",
8 "04F9308A019258C31049344F85F89D5229B531C845836F99B08601F113BCE036F9",
9 "03935F972DA013F80AE011890FA89B67A27B7BE6CCB24D3274D18B2D4067F261A9"
10 ],
11 "tweaks": [
12 "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141",
13 "252E4BD67410A76CDF933D30EAA1608214037F1B105A013ECCD3C5C184A6110B"
14 ],
15 "valid_test_cases": [
16 {
17 "key_indices": [0, 1, 2],
18 "expected": "90539EEDE565F5D054F32CC0C220126889ED1E5D193BAF15AEF344FE59D4610C"
19 },
20 {
21 "key_indices": [2, 1, 0],
22 "expected": "6204DE8B083426DC6EAF9502D27024D53FC826BF7D2012148A0575435DF54B2B"
23 },
24 {
25 "key_indices": [0, 0, 0],
26 "expected": "B436E3BAD62B8CD409969A224731C193D051162D8C5AE8B109306127DA3AA935"
27 },
28 {
29 "key_indices": [0, 0, 1, 1],
30 "expected": "69BC22BFA5D106306E48A20679DE1D7389386124D07571D0D872686028C26A3E"
31 }
32 ],
33 "error_test_cases": [
34 {
35 "key_indices": [0, 3],
36 "tweak_indices": [],
37 "is_xonly": [],
38 "error": {
39 "type": "invalid_contribution",
40 "signer": 1,
41 "contrib": "pubkey"
42 },
43 "comment": "Invalid public key"
44 },
45 {
46 "key_indices": [0, 4],
47 "tweak_indices": [],
48 "is_xonly": [],
49 "error": {
50 "type": "invalid_contribution",
51 "signer": 1,
52 "contrib": "pubkey"
53 },
54 "comment": "Public key exceeds field size"
55 },
56 {
57 "key_indices": [5, 0],
58 "tweak_indices": [],
59 "is_xonly": [],
60 "error": {
61 "type": "invalid_contribution",
62 "signer": 0,
63 "contrib": "pubkey"
64 },
65 "comment": "First byte of public key is not 2 or 3"
66 },
67 {
68 "key_indices": [0, 1],
69 "tweak_indices": [0],
70 "is_xonly": [true],
71 "error": {
72 "type": "value",
73 "message": "The tweak must be less than n."
74 },
75 "comment": "Tweak is out of range"
76 },
77 {
78 "key_indices": [6],
79 "tweak_indices": [1],
80 "is_xonly": [false],
81 "error": {
82 "type": "value",
83 "message": "The result of tweaking cannot be infinity."
84 },
85 "comment": "Intermediate tweaking result is point at infinity"
86 }
87 ]
88 }
89