aboutsummaryrefslogtreecommitdiff
path: root/gp-scripts/smc.gp
blob: f32f5f2559d3e2f1cc290ec59088f5677e7690d4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
/* search for a random prime with the specified amount of bits */
\\ randomprime(bits:small=127)=
\\ {
\\ 	local(r:int=4);
\\ 	while(!isprime(r),
\\ 		r = bitor(2^(bits-1) + random(2^(bits-1)-1), 1);
\\ 	);
\\ 	r;
\\ }

smc_hextodec(s:str) =
{
	local(v:vecsmall = Vecsmall(s), ret:int = 0);
	for(i = 1, #v,
		ret = (ret<<4) + if(v[i]<=57 && v[i]>=48, v[i]-48, v[i]<=70 && v[i]>=65, v[i]-55, v[i]<=102 && v[i]>=97, v[i]-87, error("invalid input format"))
	);
	ret;
}