python 異或加密字符串的實(shí)例
做個(gè)簡(jiǎn)單習(xí)題:輸入明文給定秘鑰,密文還原,按位異或處理。
import base64 as b64 def xor_encrypt(tips,key): ltips=len(tips) lkey=len(key) secret=[] num=0 for each in tips: if num>=lkey: num=num%lkey secret.append( chr( ord(each)^ord(key[num]) ) ) num+=1 return b64.b64encode( "".join( secret ).encode() ).decode() def xor_decrypt(secret,key): tips = b64.b64decode( secret.encode() ).decode() ltips=len(tips) lkey=len(key) secret=[] num=0 for each in tips: if num>=lkey: num=num%lkey secret.append( chr( ord(each)^ord(key[num]) ) ) num+=1 return "".join( secret ) tips= "1234567" key= "owen" secret = xor_encrypt(tips,key) print( "cipher_text:", secret ) plaintxt = xor_decrypt( secret, key ) print( "plain_text:",plaintxt )
以上這篇python 異或加密字符串的實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
使用python實(shí)現(xiàn)將視頻中的音頻分離出來(lái)
這篇文章主要介紹了使用python實(shí)現(xiàn)將視頻中的音頻分離出來(lái),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-11-11python實(shí)現(xiàn)逆序輸出一個(gè)數(shù)字的示例講解
今天小編就為大家分享一篇python實(shí)現(xiàn)逆序輸出一個(gè)數(shù)字的示例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-06-06簡(jiǎn)單談?wù)凱ython中的模塊導(dǎo)入
Python 模塊(Module),是一個(gè) Python 文件,以 .py 結(jié)尾,包含了 Python對(duì)象定義和Python語(yǔ)句,下面這篇文章主要給大家介紹了關(guān)于Python模塊導(dǎo)入的相關(guān)資料,需要的朋友可以參考下2021-10-10Python使用Numpy實(shí)現(xiàn)Kmeans算法的步驟詳解
將物理或抽象對(duì)象的集合分成由類似的對(duì)象組成的多個(gè)類的過(guò)程被稱為聚類。這篇文章主要介紹了Python使用Numpy實(shí)現(xiàn)Kmeans算法,需要的朋友可以參考下2021-11-11python中對(duì)開區(qū)間和閉區(qū)間的理解
這篇文章主要介紹了python中對(duì)開區(qū)間和閉區(qū)間的理解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07解決pip?install報(bào)錯(cuò):Cannot?connect?to?proxy問(wèn)題
這篇文章主要介紹了解決pip?install報(bào)錯(cuò):Cannot?connect?to?proxy問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-05-05