使用python加密自己的密碼
有些時(shí)候我們不得不在自己的代碼里寫上密碼,為了安全起見,我們可以為自己的密碼加密
先上段代碼,這個(gè)代碼是轉(zhuǎn)自網(wǎng)上
root@ProFtp:/usr/lib/python2.7# more jastmencrypt.py
"""
jastme encrypt password
"""
def encrypt(key, s):
b = bytearray(str(s).encode("gbk"))
n = len(b) # 求出 b 的字節(jié)數(shù)
c = bytearray(n*2)
j = 0
for i in range(0, n):
b1 = b[i]
b2 = b1 ^ key # b1 = b2^ key
c1 = b2 % 16
c2 = b2 // 16 # b2 = c2*16 + c1
c1 = c1 + 65
c2 = c2 + 65 # c1,c2都是0~15之間的數(shù),加上65就變成了A-P 的字符的編碼
c[j] = c1
c[j+1] = c2
j = j+2
return c.decode("gbk")
def decrypt(key, s):
c = bytearray(str(s).encode("gbk"))
n = len(c) # 計(jì)算 b 的字節(jié)數(shù)
if n % 2 != 0 :
return ""
n = n // 2
b = bytearray(n)
j = 0
for i in range(0, n):
c1 = c[j]
c2 = c[j+1]
j = j+2
c1 = c1 - 65
c2 = c2 - 65
b2 = c2*16 + c1
b1 = b2^ key
b[i]= b1
try:
return b.decode("gbk")
except:
return "failed"
以UTF8的編碼保存這個(gè)代碼到/usr/lib/python2.7
In [1]: import jastmencrypt In [3]: jastmencrypt.encrypt(119,'mypassword') 加密 Out[3]: u'KBOAHAGBEAEAAAIBFADB' In [4]: jastmencrypt.decrypt(119,'KBOAHAGBEAEAAAIBFADB') 解密 Out[4]: u'mypassword'
我們?cè)趇python中先加密好密碼,然后拿到代碼里,要使用的時(shí)候解密一下即可,這樣可以很大程度上保證我們的密碼安全。
以上就是本文給大家分享的全部內(nèi)容了,希望對(duì)大家學(xué)習(xí)Python代碼能夠有所幫助。
相關(guān)文章
numpy如何刪除矩陣中的部分?jǐn)?shù)據(jù)numpy.delete
這篇文章主要介紹了numpy如何刪除矩陣中的部分?jǐn)?shù)據(jù)numpy.delete問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-02-02
python matplotlib 繪圖 和 dpi對(duì)應(yīng)關(guān)系詳解
這篇文章主要介紹了python matplotlib 繪圖 和 dpi對(duì)應(yīng)關(guān)系詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-03-03
python數(shù)學(xué)建模之Matplotlib?實(shí)現(xiàn)圖片繪制
這篇文章主要介紹了python數(shù)學(xué)建模之Matplotlib?實(shí)現(xiàn)圖片繪制,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-07-07
Ruby使用eventmachine為HTTP服務(wù)器添加文件下載功能
這篇文章主要介紹了Ruby使用eventmachine為HTTP服務(wù)器添加文件下載功能的實(shí)例,同時(shí)作者也分享了Windows上eventmachine安裝報(bào)錯(cuò)問題的解決方法,需要的朋友可以參考下2016-04-04

