int main() {
mip = mirsys(500, 0);//每個大數500位,型別根據需要轉換
mip->IOBASE = 10;
//Encryption(mirvar(20)); //輸入明文和亂數r
Pailliertesrt();
mirexit();
system("pause");
return 0;
}
big Encryption(big M){
big temp = mirvar(0);
big temp1 = mirvar(0);
big rr = mirvar(5);
ccode = mirvar(0);
//n = mirvar(0);
p = mirvar(59747);
q = mirvar(40387);
lamdba = mirvar(1206450978);
n = mirvar(2413002089);
n_square = mirvar(5822579081518363921);
g =mirvar( 2);
//ccode=g^m*r^n mod n_square
powmod(rr, n, n_square, temp); //計算ccode=rr^n mod n_square
powmod(g, M, n_square, temp1);
multiply(temp, temp1, temp);
powmod(temp, mirvar(1), n_square, ccode);
//這個函式行不通
printf("Paillier ccode:\n");
cotnum(ccode, stdout);
mirkill(temp);
mirkill(temp1);
mirkill(rr);
mirkill(p);
mirkill(q);
mirkill(g);
mirkill(n_square);
return ccode;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/269794.html
標籤:C語言
下一篇:資料結構題目各位大佬幫幫忙!!
