Skip to content

Commit 034d660

Browse files
authored
Merge pull request #51 from rarimo/dev
Add secp224r1 and RSA PSS (3072bit) support
2 parents 6ad43aa + 617b408 commit 034d660

29 files changed

+216986
-592
lines changed

circuits/bigInt/bigInt.circom

Lines changed: 400 additions & 337 deletions
Large diffs are not rendered by default.

circuits/ecdsa/p224/p224.circom

Lines changed: 511 additions & 0 deletions
Large diffs are not rendered by default.

circuits/ecdsa/p224/p224Func.circom

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
pragma circom 2.1.6;
2+
3+
function get_p224_order(CHUNK_SIZE, CHUNK_NUMBER){
4+
assert((CHUNK_SIZE == 32) && (CHUNK_NUMBER == 7));
5+
var ORDER[7];
6+
7+
ORDER[0] = 1549543997;
8+
ORDER[1] = 333261125;
9+
ORDER[2] = 3770216510;
10+
ORDER[3] = 4294907554;
11+
ORDER[4] = 4294967295;
12+
ORDER[5] = 4294967295;
13+
ORDER[6] = 4294967295;
14+
15+
return ORDER;
16+
}
17+
18+
function get_p224_params(CHUNK_SIZE, CHUNK_NUMBER){
19+
assert((CHUNK_SIZE == 32) && (CHUNK_NUMBER == 7));
20+
var PARAMS[3][7];
21+
22+
var A[7];
23+
var B[7];
24+
var P[7];
25+
26+
A[0] = 4294967294;
27+
A[1] = 4294967295;
28+
A[2] = 4294967295;
29+
A[3] = 4294967294;
30+
A[4] = 4294967295;
31+
A[5] = 4294967295;
32+
A[6] = 4294967295;
33+
34+
B[0] = 592838580;
35+
B[1] = 655046979;
36+
B[2] = 3619674298;
37+
B[3] = 1346678967;
38+
B[4] = 4114690646;
39+
B[5] = 201634731;
40+
B[6] = 3020229253;
41+
42+
P[0] = 1;
43+
P[1] = 0;
44+
P[2] = 0;
45+
P[3] = 4294967295;
46+
P[4] = 4294967295;
47+
P[5] = 4294967295;
48+
P[6] = 4294967295;
49+
50+
51+
52+
PARAMS[0] = A;
53+
PARAMS[1] = B;
54+
PARAMS[2] = P;
55+
56+
return PARAMS;
57+
}
58+
59+
function get_p224_dummy_point(CHUNK_SIZE, CHUNK_NUMBER){
60+
assert((CHUNK_SIZE == 32) && (CHUNK_NUMBER == 7));
61+
var DUMMY[2][7];
62+
63+
DUMMY[0][0] = 2986435338;
64+
DUMMY[0][1] = 657129847;
65+
DUMMY[0][2] = 27148369;
66+
DUMMY[0][3] = 1284817447;
67+
DUMMY[0][4] = 3597216048;
68+
DUMMY[0][5] = 1047788259;
69+
DUMMY[0][6] = 54675574;
70+
DUMMY[1][0] = 3491374278;
71+
DUMMY[1][1] = 3306683218;
72+
DUMMY[1][2] = 3122427365;
73+
DUMMY[1][3] = 2749526594;
74+
DUMMY[1][4] = 635201970;
75+
DUMMY[1][5] = 3785792721;
76+
DUMMY[1][6] = 2109873793;
77+
78+
79+
return DUMMY;
80+
}
81+
82+

0 commit comments

Comments
 (0)