1. md5模块
md5.new([arg]) 返回一个md5对象,如果给出参数,则相当于调用了update(arg)
md5.update(arg) 用string参数arg更新md5对象
md5.digest() 返回16字节的摘要,由传给update的string生成,摘要没有ascii字符
md5.hexdigest() 以16进制的形式返回摘要
import md5
a = md5.new('passwd') a.digest() 'vxa2x17;xe692Txe7/xfaMmxf1x03 ' a.hexdigest() '76a2173be6393254e72ffa4d6df1030a' a.update('hello world') a.digest() 'xb2x83fxb8x14xc9xc6x19kx01xfexd8xd9x8fxe0H' a.hexdigest() 'b28366b814c9c6196b01fed8d98fe048'
2.sha 模块
用法同md5一样
import sha b=sha.new('passwd') b.digest() "0'LGx90;xd1xbaxc7c;xbf t1Ixebxabx80_" b.hexdigest() '30274c47903bd1bac7633bbf09743149ebab805f' b.update('hello') b.digest() 'cxc19xb4]YGzx85xe8Cx8fFxfex9exc3|xb16xba' b.hexdigest() '63c139b45d59477a85e8438f46fe9ec37cb136ba
3.crypt
crypt模块中就一个函数,crypt(str,salt) --> string
from crypt import crypt crypt('passwd','a') 'aaIslqfNH03LA' crypt('passwd','abc') 'ab8RogIKnX0og' crypt('passwd','a') 'aaIslqfNH03LA'