📄 sign.py
字号:
#!/usr/bin/env pythonfrom M2Crypto import RSA, EVP, Randimport time,sys#import shadef sign(keyfn, msgfn, outfn): print 'sign (%s, %s, %s)' % (keyfn,msgfn,outfn) key = RSA.load_key(keyfn) ft= open(msgfn,'rb') text = ft.read() ft.close() shax = EVP.MessageDigest('sha1') shax.update(text) dig = shax.digest() #dig = sha.new(text).digest() fd = open(msgfn,'rb') msg = fd.read() #padding = RSA.pkcs1_padding padding = RSA.pkcs1_oaep_padding ptxt = key.sign(dig) fd.close() fo = open(outfn, 'wb') fo.write(ptxt) fo.close() print ptxt print 'done' if __name__=='__main__': from optparse import OptionParser parser = OptionParser(usage='sign [-k] [-o] msg', version='sign 1.0') parser.add_option('-k','--key',dest='key', help='private key',default='svpvk.pem') parser.add_option('-o','--out',dest='output',help='output file',default='sign.dat') (options,args) = parser.parse_args() keyfn = options.key outfn = options.output msgfn = args[0] sign(keyfn,msgfn,outfn)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -