python 換位密碼算法的實例詳解
python 換位密碼算法的實例詳解
一前言:
換位密碼基本原理:先把明文按照固定長度進行分組,然后對每一組的字符進行換位操作,從而實現(xiàn)加密。例如,字符串“Error should never pass silently”,使用秘鑰1432進行加密時,首先將字符串分成若干長度為4的分組,然后對每個分組的字符進行換位,第1個和第3個字符位置不變,把第2個字符和第4個字符交換位置,得到“Eorrrs shluoden v repssa liseltny”
二 代碼:
def encrypt(plainText,t): result =[] length = len(t) temp =[plainText[i:i+length]for i in range(0,len(plainText),length)] for item in temp[:-1]: newItem='' for i in t: newItem = newItem + item[i-1] result.append(newItem) return''.join(result)+ temp[-1] p ="Error should never pass silently" c = encrypt(p,(1,4,3,2)) print(c) print(encrypt(c,(1,4,3,2)))
三 運行結(jié)果
Eorrrhs odlu venep ra ssselintly Error should never pass silently
以上就是關(guān)于python 換位密碼的算法實例詳解,大家有疑問可以留言或者到本站社區(qū)討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
Python函數(shù)的周期性執(zhí)行實現(xiàn)方法
這篇文章主要介紹了Python函數(shù)的周期性執(zhí)行實現(xiàn)方法,涉及Python使用sched模塊實現(xiàn)函數(shù)周期性調(diào)度觸發(fā)的相關(guān)技巧,需要的朋友可以參考下2016-08-08關(guān)于Python dict存中文字符dumps()的問題
這篇文章主要介紹了關(guān)于Python dict存中文字符dumps()的問題,本文給大家分享問題及解決方案,給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-10-10python對Excel按條件進行內(nèi)容補充(推薦)
這篇文章主要介紹了python對Excel按條件進行內(nèi)容補充的相關(guān)知識,非常不錯,本文通過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-11-11python統(tǒng)計中文字符數(shù)量的兩種方法
今天小編就為大家分享一篇python統(tǒng)計中文字符數(shù)量的兩種方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-01-01