solvr:bignum library
Methods
Code parseBigInt(str, r) #
parseBigInt(str,r) {
return new BigInteger(str,r);
}
Code pkcs1pad2(s, n) #
pkcs1pad2(s,n) {
if(n < s.length + 11) {
print("Message too long for RSA");
return null;
}
var ba = new Map();
var i = s.length - 1;
while(i >= 0 && n > 0) ba[--n] = s.charCodeAt(i--);
ba[--n] = 0;
var rng = new SecureRandom();
var x = new Map();
while(n > 2) { // random non-zero pad
x[0] = 0;
while(x[0] == 0) rng.nextBytes(x);
ba[--n] = x[0];
}
ba[--n] = 2;
ba[--n] = 0;
return new BigInteger(ba);
}
Code prng_newstate() #
prng_newstate() {
return new Arcfour();
}