⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 t_dec.py

📁 It is an experimental testing for python M2Crypto module. M2Crypto is not well document. User may no
💻 PY
字号:
#!/usr/bin/env pythonfrom M2Crypto import RSA, EVP, Randimport time,sysdef decrypt(key, msg, padding):    ptxt = key.private_decrypt(msg,padding)    return ptxtdef test1(keyfn):    key = RSA.load_key(keyfn)    padding =RSA.pkcs1_oaep_padding    for i in range(87):        f=open('testv/cip%03d' % i,'rb')        ctxt = f.read()        f.close()        fm=open('testv/msg%03d' % i, 'rb')        msg = fm.read()        fm.close()        ptxt = decrypt(key,ctxt,padding)        if msg != ptxt:            print '%i %s ~ %s' % (i,msg,ptxt)        else:            print '%i ok' % idef test2(keyfn):    key = RSA.load_key(keyfn)    padding =RSA.pkcs1_oaep_padding    n=0    loopx = True    ctxts=[]    for i in range(87):        f=open('testv/cip%03d' % i,'rb')        ctxts.append(f.read())        f.close()    t1 = time.time()    print t1    i=0    while loopx:        n+=1        ptxt = key.private_decrypt(ctxts[i],padding)        t2 = time.time()        if t2-t1 >=10:            loopx=False            break        i+=1        if i> 86:            i=0    print t2    print 'passed', t2-t1    print 'number of decryption:', n    return t2-t1, ndef loop_test2(keyfn):    sum=0    N=10    for i in range(N):        tx,n = test2(keyfn)        sum +=n        time.sleep(1)    print 'average:', sum/Nif __name__=='__main__':    keyfn = 'keys/svpvk.pem'    #test1(keyfn)  # verify decrypt    #test2(keyfn)  # check performance    loop_test2(keyfn)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -