密码生成脚本
这是在网上看到一个很好用的的工具,原网页在 http://flowerpassword.com/
使用方法也可以在该网页上了解。
这里使用Python实现了一下,一方面是学习生成密码,一方面也是备份。
#!/usr/bin/env python
# -*- coding:utf8 -*-
import hmac
import sys
string1 = "snow"
string2 = "kise"
string3 = "sunlovesnow1990090127xykab"
str = ""
def huami(password, key):
print "记忆密码 : "+ password + " 区分代码 : "+ key
md5one = hmac.new(key, password).hexdigest()
md5two = hmac.new(string1, md5one).hexdigest()
md5three = hmac.new(string2, md5one).hexdigest()
rule = [md5three[i] for i in range(0, 32)]
source = [md5two[i] for i in range(0, 32)]
for i in range(0,32):
if string3.find(rule[i]) > -1:
source[i] = source[i].upper()
code32 = str.join(source[i] for i in range(0,32))
code1 = code32[0:1]
if code1.isdigit:
code16 = "K"+str.join(source[i] for i in range(1,16))
elif code1.isalpha:
code16 = str.join(source[i] for i in range(0,16))
print "16位密码: "+code16
print "32位密码: "+str.join(source[i] for i in range(0,32))
if __name__ == "__main__":
arg1 = raw_input("请输入你的记忆密码: ")
arg2 = raw_input("请输入你的区分代码: ")
key = arg1
password = arg2
huami(key, password)
结果如下,与原网页生成结果一致。
~>python huami.py 请输入你的记忆密码: abc 请输入你的区分代码: 123 记忆密码 : abc 区分代码 : 123 16位密码: Ka1ecD6B0307215a 32位密码: 5a1ecD6B0307215aC4477030358A384B
当然,根据记忆密码+区分密码的方式,很容易定制自己的专属密码(增加更多符号,变量),记忆也比较简单。
最后,再声明一次,原网页在http://flowerpassword.com/
纯属学习

浙公网安备 33010602011771号