4 return reduce( lambda x,y:(x<<8L)+y, map(ord, s))
8 for byte in range(128):
9 res += chr((l >> (1024 - (byte + 1) * 8)) & 0xff)
12 def rsa_pub1024(src, mod):
13 return long2bin(pow(bin2long(src), 65537, bin2long(mod)))
15 def decrypt_block(src, mod):
16 if len(src) != 128 and len(src) != 202:
18 dest = rsa_pub1024(src[:128], mod)
19 hash = sha.new(dest[1:107])
21 hash.update(src[131:192])
22 result = hash.digest()
23 if result == dest[107:127]:
27 def validate_cert(cert, key):
28 buf = decrypt_block(cert[8:], key)
31 return buf[36:107] + cert[139:196]
35 fd = open("/dev/urandom", "r")