欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python實(shí)現(xiàn)字符串加密成純數(shù)字

 更新時間:2019年03月19日 16:51:54   作者:狡猾的皮球  
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)字符串加密成純數(shù)字,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了python實(shí)現(xiàn)字符串加密成純數(shù)字的具體代碼,供大家參考,具體內(nèi)容如下

說明: 

該加密算法僅僅是做一個簡單的加密,安全性就不談了,哈哈. 

算法流程:

1.字符串以utf8編碼成字節(jié)數(shù)組
2.把每一個字節(jié)轉(zhuǎn)換成十進(jìn)制數(shù)字字符串('0'~'255')
3.在每個十進(jìn)制數(shù)字字符串之前加上一個長度位(長度位固定只占1個字符)
4.進(jìn)行數(shù)字替換,例如:(0-1,1-9,2-3,3-8,4-7,5-6,6-2,7-4,8-5,9-0) 

代碼實(shí)現(xiàn):

加密:

#加密
def encrypt(srcStr,password='1938762450'):
 #將字符串轉(zhuǎn)換成字節(jié)數(shù)組
 data=bytearray(srcStr.encode('utf-8'))
 #把每個字節(jié)轉(zhuǎn)換成數(shù)字字符串
 strList=[str(byte) for byte in data]
 #給每個數(shù)字字符串前面加一個長度位
 strList=[str(len(s))+s for s in strList]
 #進(jìn)行數(shù)字替換
 for index0 in range(len(strList)):
  tempStr = ""
  for index in range(len(strList[index0])):
   tempStr+=password[int(strList[index0][index])]
  strList[index0]=tempStr
 return "".join(strList)

解密:

#解密
def decrypt(srcStr,password='1938762450'):
 #數(shù)字替換還原
 tempStr=""
 for index in range(len(srcStr)):
  tempStr+=str(password.find(srcStr[index]))
 #去掉長度位,還原成字典
 index=0
 strList=[]
 while True:
  #取長度位
  length=int(tempStr[index])
  #取數(shù)字字符串
  s=tempStr[index+1:index+1+length]
  #加入到列表中
  strList.append(s)
  #增加偏移量
  index+=1+length
  #退出條件
  if index>=len(tempStr):
   break
 data=bytearray(len(strList))
 for i in range(len(data)):
  data[i]=int(strList[i])
 return data.decode('utf-8')

測試:

if __name__ == '__main__':
 ret=encrypt('id:123,time:7200,key:123456789987654321','1938762450')
 print('密文:',ret)
 
 ret=decrypt(ret,'1938762450')
 print('原文:',ret)

運(yùn)行結(jié)果:

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python將文字轉(zhuǎn)成語音并讀出來的實(shí)例詳解

    Python將文字轉(zhuǎn)成語音并讀出來的實(shí)例詳解

    今天小編就為大家分享一篇Python將文字轉(zhuǎn)成語音并讀出來的實(shí)例詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • Python實(shí)現(xiàn)圖像的二進(jìn)制與base64互轉(zhuǎn)

    Python實(shí)現(xiàn)圖像的二進(jìn)制與base64互轉(zhuǎn)

    這篇文章主要為大家介紹了如何在Python中使用OpenCV從而實(shí)現(xiàn)圖像轉(zhuǎn)base64編碼、圖像轉(zhuǎn)二進(jìn)制編碼、二進(jìn)制轉(zhuǎn)圖像等功能,感興趣的可以跟上小編一起學(xué)習(xí)一下
    2022-03-03
  • Python調(diào)用百度AI實(shí)現(xiàn)人像分割詳解

    Python調(diào)用百度AI實(shí)現(xiàn)人像分割詳解

    本文主要介紹了如何通過Python調(diào)用百度AI從而實(shí)現(xiàn)人像的分割與合成,文中的示例代碼對我們的工作或?qū)W習(xí)有一定的幫助,需要的朋友可以參考一下
    2021-12-12
  • Python經(jīng)驗(yàn)總結(jié):兩種Type?Error問題

    Python經(jīng)驗(yàn)總結(jié):兩種Type?Error問題

    這篇文章主要介紹了Python經(jīng)驗(yàn)總結(jié):兩種Type?Error問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Python中時間datetime的處理與轉(zhuǎn)換用法總結(jié)

    Python中時間datetime的處理與轉(zhuǎn)換用法總結(jié)

    今天小編就為大家分享一篇關(guān)于Python中時間datetime的處理與轉(zhuǎn)換用法總結(jié),小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • Python利用matplotlib繪制約數(shù)個數(shù)統(tǒng)計(jì)圖示例

    Python利用matplotlib繪制約數(shù)個數(shù)統(tǒng)計(jì)圖示例

    這篇文章主要介紹了Python利用matplotlib繪制約數(shù)個數(shù)統(tǒng)計(jì)圖,結(jié)合實(shí)例形式詳細(xì)分析了Python使用matplotlib進(jìn)行統(tǒng)計(jì)圖繪制的相關(guān)操作技巧,需要的朋友可以參考下
    2019-11-11
  • opencv3/C++ 平面對象識別&透視變換方式

    opencv3/C++ 平面對象識別&透視變換方式

    今天小編就為大家分享一篇opencv3/C++ 平面對象識別&透視變換方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • 一文帶你深入了解Python中的數(shù)據(jù)清洗

    一文帶你深入了解Python中的數(shù)據(jù)清洗

    數(shù)據(jù)清洗一般包括:空值,異常值,重復(fù)值,類型轉(zhuǎn)換和數(shù)據(jù)整合這些操作,這篇文章將通過一些示例為大家詳細(xì)講講Python中數(shù)據(jù)清洗的操作的實(shí)現(xiàn),需要的可以參考一下
    2023-03-03
  • 帶你精通Python正則表達(dá)式

    帶你精通Python正則表達(dá)式

    本文將給大家分享一份關(guān)于比較詳細(xì)的Python正則表達(dá)式寶典,學(xué)會之后你將對正則表達(dá)式達(dá)到精通的狀態(tài),一起來學(xué)習(xí)下面內(nèi)容吧
    2021-08-08
  • Python try-except-else-finally的具體使用

    Python try-except-else-finally的具體使用

    本文主要介紹了Python try-except-else-finally的具體使用,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08

最新評論