資訊安全-2:python之hill密碼演算法[原創]

來源:互聯網
上載者:User

標籤:教材   pytho   不難   技術分享   ram   .com   就會   bsp   過程   

 

轉寄註明出處:http://www.cnblogs.com/0zcl/p/6106513.html

前言:

hill密碼演算法我打算簡要介紹就好,加密矩陣我用教材上的3*3矩陣,只做了加密,解密沒有做,不過我覺得會加密就會解密的~~

     

 

 

一、hill演算法原理

hill密碼是一種多字母替代密碼,由數學學Leste Hill於1929年研製成功。該密碼演算法取m個連續的明文字母,並用m個密文字母代替,用向量或矩陣表示為(這裡取m=3,C和P是長度為3的列向量,K是3*3矩陣):

即:C=KP  (C為密文,P為明文,K為密鑰矩陣)

PS:加密操作要執行模26運算

 

 二、加密規則

加密規則也不難的,就是有個矩陣運算(忘了可以穀哥一下,和線代有關~)

  1. 對明文進行分組,每3個字母一組,不足則字母Z(我設定的,下面編程也是補Z)
  2. 進行矩陣運算,對每組字母求密文

舉例:

對pay more money進行加密,明文的前3個字母表示為:pay=(15  0  24)T

計算密文的過程:K(15  0  24)T=(375  819  486)Tmod 26=(11  13  18)T=LNS

依此類推,可得密文為LNS HDL EWM TRW

 

 

三、編程與思路

 

思路請看我畫的流程圖,網址http://processon.com/diagraming/583aff30e4b086d1e7d3b617

 

 

 原始碼

 View Code

 

測試

 View Code

 

資訊安全-2:python之hill密碼演算法[原創]

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.