加盐base64算法(自创)(python) ∞
python不是很完美,有些问题,先记录下来,欢迎拍砖。
def encode(s,key,n): # key表示密钥,n表示加密的次数,n要大于0
tmp=s
for i in range(n):
for j in range(len(key)):
k=(ord(key[j])-ord('a'))%len(tmp)
tmp=tmp[:k]+key[j]+tmp[k:]
tmp= base64.encodestring(tmp)
return tmp
def decode(s,key,n=10):
tmp=s
key=key[::-1]
for i in range(n):
tmp= base64.decodestring(tmp)
for j in range(len(key)):
k=(ord(key[j])-ord('a'))%(len(tmp)-1)
tmp=tmp[:k]+tmp[k+1:]
return tmp
结果示例:CrijvajVxNbdytDcvLPHx/jcvLPHx/jVxNbdyqbUurTvwO277rav1tDQxArK1SC79SDIy6O6zszU\nwr6yICDTyrHgo7ozNjMwMDC15yAgICC7sKO6MTUwMDYwMDQwODkKcXF3JnhpYW9idWRpYW44ODY=\n