import numpy as np
import cv2
import hashlib
import rsa
def toHex(s):
    lst = []
    for ch in s:
        hv = hex(ord(ch)).replace('0x', '')
        if len(hv) == 1:
            hv = '0'+hv
        lst.append(hv)
    
    return reduce(lambda x,y:x+y, lst)


x=np.loadtxt('small.txt')
r=str(x)
#(pubkey, privkey) = rsa.newkeys(512)
pubkey=rsa.PublicKey(11480060456748007523835064941328580064805863222076835592665701498626460611302141918251595045259022275115378154527348049014018676101117805257448811531453787, 65537)
privkey=rsa.PrivateKey(11480060456748007523835064941328580064805863222076835592665701498626460611302141918251595045259022275115378154527348049014018676101117805257448811531453787, 65537, 5297290206639249515972598667786404469838322011975305326118123792971341305581493511087015261944383036870856937146402441329496981768409514206571316532062993, 6695999916070553788087198710526758994630148877255684251404807367511363647665240457, 1714465442150857621418573490449635374350469483254021679683981914252714691)
signa=rsa.sign(r,privkey,'SHA-1')
ap=repr(signa)
#np.savetxt('signa.txt',ap)
#ak=pl.read()
signv=str(signa)
xc=str(signv)
c=toHex(xc)
#print c
#print g
#signa = str(signa)
z='\x95\x98\x9c\x8c%\xdf9o\x05v\xb8\x9a\x18\x81kWR\xef\xe1\xc4x\xe8\x17\xaa7hd\xb2:\xd3\xc1\x85\xd5\xac0K\xa0\x9d\x8dO*$4\xc3\xa0\x93\xbc\xc6\xcd \xcc\xe3\xf3\x9d\xa8\x1d\xec\xe8N9#}\xc9\x08'
print 'aaaaa'
print z
val=rsa.verify(r,signa,pubkey)
print val 


