密碼學替代技術_替代技術及其類型| 密碼學

密碼學替代技術

As we already discussed what are the Substitution techniques and one of its type Ceasar Cipher? So we are not discussing it here for that please refer to Cryptography: CeasarCipher here: Cryptography: Caesar Cipher and its Python Implementations

正如我們已經討論的那樣, 什么是替代技術,以及哪種類型的Ceasar Cipher ? 因此,此處我們不在此討論,請參考密碼學:CeasarCipher此處: 密碼學:Caesar Cipher及其Python實現

替代技術的類型 (Types of Substitution Techniques)

1. Mono-alphabetic Cipher:

1.單字母密碼:

Predictability of Caesar Cipher was its weakness once any key replacement of a single alphabet is known then, the whole message can we decipher and almost 25 attempts are required to break it.

一旦知道單個字母的任何鍵替換,Caesar Cipher的可預測性就是它的弱點,那么我們就可以解密整個消息,幾乎需要25次嘗試才能破解它。

In this technique, we simply substitute any random key for each alphabet letter, that is 'A' can be being replaced with any letters from B to Z and 'B' can be changed to rest of the Alphabets but itself and so on. Let's say we substitute A with E that doesn't mean that B will be replaced by F.

在這種技術中,我們只需將任意隨機鍵替換為每個字母即可 ,即可以用B到Z的任何字母替換“ A”,并且可以將“ B”更改為其余字母,但以此類推。 假設我們用E代替A并不意味著B將被F取代

Mathematically, we have 26 alphabet permutation which means (26 x 25 x 24 x...2) which is about 4 x 1026 possibilities.

在數學上,我們有26個字母排列,這意味著(26 x 25 x 24 x ... 2)大約有4 x 1026個可能性。

There is only one problem with it and that is short text created using this technique, a crypto analyst can try different attacks solely based on her knowledge of the English language. English analyst found that the probability of occurrence of the letter P is 13.33% which highest followed by Z with 11.67% and occurrence of letters like C, K, L, N or R is negligible. A cryptanalyst can try various alphabets in place of cipher-text alphabet or she can look for repeated patterns of the word for is example word 'to' or 'is' occur frequently in English so she can try replacing all the T's and O's from the cipher-text and deduce further to three letter words like 'the', 'and' and so on.

它只有一個問題,那就是使用這種技術創建的短文本,加密分析師可以僅根據她的英語知識來嘗試不同的攻擊。 英國分析家發現,字母P出現的概率為13.33% ,其次是Z ,其出現概率為11.67% ,而字母C,K,L,N或R的出現概率可以忽略不計。 密碼分析員可以嘗試使用各種字母代替密文字母,也可以尋找單詞的重復模式,例如單詞“ to”或“ is”在英語中經常出現,因此她可以嘗試替換字母中的所有T和O密文,并進一步推論出三個字母詞,例如“ the”“ and”等。

2. Homophonic Substitution Cipher:

2.諧音替代密碼:

The Homophonic substitution and mono-alphabetic substitution are very much alike. Like in plain cipher substation we replace an alphabet with a key but in case of Homophonic Substitution, we map an alphabet with a set of fixed keys (more than one key). For instance, A can be replaced with H, J, O, P and B will replace with any of the following inspite of A's key set D, I, W, Z etc.

諧音取代和單字母取代非常相似。 就像在普通密碼變電站中一樣,我們用一個鍵替換一個字母,但是在同音替換的情況下,我們使用一組固定鍵(一個以上的鍵)映射一個字母。 例如, A可以替換為H,J,O,P,而B可以替換為以下任意A,但其鍵集為D,I,W,Z等。

3. Polygram Substitution Cipher:

3.多邊形替代密碼:

In Polygram substitution cipher, instead of replacing one plain-text alphabet we simply replace a block of the word with another block of a word. Example, 'INCLUDEHELP' will change to 'WDSAEQTGTAI' whereas 'HELP' will replace to 'RYCV'. This is true that the last four letters are the same but still different in both words.

在Polygram替換密碼中,我們沒有替換一個純文本字母,而是簡單地用另一個單詞塊替換了一個單詞塊。 例如, “ INCLUDEHELP”將更改為“ WDSAEQTGTAI”,“ HELP”將替換為“ RYCV” 。 的確是最后四個字母相同,但兩個單詞仍然不同。

Polygram Substitution Cipher

4. Polyalphabetic Substitution Cipher:

4.多字母替代密碼:

Polyalphabetic Substitution cipher was introduced by Leon Battista in the year 1568, and its prominent examples are Vigenère cipher and Beaufort cipher.

多字母替代密碼是萊昂·巴蒂斯塔(Leon Battista)在1568年提出的,其著名的例子是維格涅爾密碼博福特密碼

We use multiple one-character keys, each key encrypts one plain-text character. This first key encrypts the first plain-text character, the second the key encrypt the second plain-text character and so on, after all, keys are used then they are recycled. If 50 one-letter keys, every 50th character in the plain text would be placed with the same key and this number (in our case, 50) is period of the cipher.

我們使用多個單字符密鑰,每個密鑰加密一個純文本字符。 這個第一個密鑰加密第一個純文本字符,第二個密鑰加密第二個純文本字符,依此類推,畢竟使用了密鑰然后將它們回收。 如果有50個單字母密鑰,則純文本中的 50 字符將使用相同的密鑰放置,并且該數字(在我們的示例中為50)是密碼的周期

The key points of the polyalphabetic substation cipher are the following:

多字母變電站密碼的要點如下:

  1. It uses a set of related mono-alphabetic substitution rules.

    它使用一組相關的單字母替換規則。

  2. The ruleused for transformations determined by the key it uses.

    用于轉換的規則,由它使用的鍵確定。

翻譯自: https://www.includehelp.com/cryptography/substitution-techniques.aspx

密碼學替代技術

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/541705.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/541705.shtml
英文地址,請注明出處:http://en.pswp.cn/news/541705.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Flask+uwsgi+Nginx環境搭建

2019獨角獸企業重金招聘Python工程師標準>>> 開源軟件準備 需要的軟件列表: setuptools-33.1.1.zip Python-2.7.13.tgz pip-9.0.1.tar.gz nginx-1.10.3.tar.gz 軟件統一上傳到/usr/local/src/下,python是使用自己編譯的。Python安裝 先安裝以…

穿越迷宮c語言程序設計教程課后答案,實驗二 迷宮實驗.doc

#include #define ROW 11#define COLUMN 15typedef struct{ /*棧中的數據元素的類型定義*/int row; /*行下標*/int col; /*列下標*/int direction; /*下一步移動方向*/} DATA;Typedif struct node{ /* 棧類定義*/DATA data;Struct node *next;}LinkStack;Typedef struct{/*移動…

ofb模式_密碼學中的輸出反饋模式(OFB)

ofb模式This is an output feedback (OFB) mode is similar in structure to that of CFB in Cryptography. It is the output of the encryption function that is fed back to the shift register in OFB in the cryptography, whereas in CFB in the mode of blocks, the ci…

JavaScript0-閉包

1.閉包的概念:在JavaScript中局部作用域總是能夠訪問到全局作用域,即內部函數總是能夠訪問到外部函數的參數和變量,即使內部函數調用完畢。也就是指有權訪問到函數作用域里的變量。 function fn1() {var x 0;return function() {cosole.log(…

win8編程c語言,Win8系統怎么運行C語言 win8系統運行C語言的方法

C語言是一門通用計算機編程語言,是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言,但是許多win8系統用戶并不知道要怎么運行C語言,針對這個情況,小編就給大家分享一…

stack示例_C.示例中的Stack.CopyTo()方法

stack示例C#Stack.CopyTo()方法 (C# Stack.CopyTo() method) Stack.CopyTo() method is used to copy the stack elements/objects to an existing array from the given index. Stack.CopyTo()方法用于將堆棧元素/對象從給定索引復制到現有數組。 Syntax: 句法&am…

Linux sudoers文件的寫法

2019獨角獸企業重金招聘Python工程師標準>>> 文件的組成 sudoers文件由三部分組成: sudoers的默認配置,主要設置sudo的一些缺省值(本文不會對這些默認配置進行介紹,若有興趣可以自己man 5 sudoers然后搜defaults)alias…

if是什么c語言,這個C語言是什么(if(1))?

我在openssl源代碼中注意到一個奇怪的成語,here并重復如下:if ((in NULL) && (passwds NULL)) {if (1) { (* #ifndef OPENSSL_NO_UI/* build a null-terminated list */static char *passwds_static[2] { NULL, NULL };passwds passwds_static;if (in …

c#queue_帶有C#示例的Queue.CopyTo()方法

c#queueC#Queue.CopyTo()方法 (C# Queue.CopyTo() method) Queue.CopyTo() method is used to copy the Queue elements/objects to an existing array from specified index. Queue.CopyTo()方法用于將Queue元素/對象從指定的索引復制到現有數組。 Syntax: 句法&a…

指針在c語言中的運用,怎么理解C語言中的指針,如何運用?

恰好我之前寫了一系列介紹 C 語言的文章,介紹了什么是指針,以及為什么要使用指針,下面摘錄一部分,感興趣的話,可以點我了解更多。什么是 C語言指針?不同的數據類型的主要區別在于占用的存儲空間不同。我們知…

設計模式(一)單例模式的七種寫法

1. 餓漢模式 public class Singleton { private static Singleton instance new Singleton(); private Singleton (){}public static Singleton getInstance() { return instance; } } View Code這種方式在類加載時就完成了初始化,所以類加載較慢,…

scala 字符串轉換數組_如何在Scala中將字節數組轉換為字符串?

scala 字符串轉換數組Byte Array in Scala is an array of elements of a byte type. String in Scala is a collection of the character data type. Scala中的字節數組是字節類型的元素的數組。 Scala中的String是字符數據類型的集合。 將字節數組轉換為字符串 (Convert byt…

智能關機軟件 c語言,智能關機軟件

智能關機軟件是一款免費共享關機軟件。智能關機軟件不但具有定時關機、自動關機的功能,而且還可以進行定時提醒信息、打開文件、打開網頁、重啟計算機、注銷用戶、鎖定計算機、計算機休眠、計算機待機、關閉顯示器,并且可以進行多任務計劃,可…

wget: command not found

-bash: wget: command not found的兩種解決方法 今天給服務器安裝新LNMP環境時,wget 時提示 -bash:wget command not found,很明顯沒有安裝wget軟件包。一般linux最小化安裝時,wget不會默認被安裝。可以通過以下兩種方法來安裝:1、rpm 安裝rp…

數據庫數據規范化看不懂_數據庫管理系統中的規范化

數據庫數據規范化看不懂DBMS中的規范化 (Normalization in DBMS) Every table must have a single idea. The method by which we divide tables approximately is called normalization and the rest used for normalization is a functional dependency. For the normalizati…

c 語言開發一個四則運算器,C++實現四則運算器(無括號)

本文實例為大家分享了C實現無括號的四則運算器的具體代碼,供大家參考,具體內容如下完成度更高的帶括號版本可以看C實現四則運算器(帶括號)對于無括號的計算器,實現起來比較容易,下面讓我們一步步實現。舉例首先明確需要實現怎樣的…

iOS開發之解決系統數字鍵盤無文字時delete鍵無法監聽的技巧

最近在做用戶登錄獲取驗證碼時添加圖形驗證碼功能,就是只有正確輸入圖形驗證碼才能收到后臺發送的短信驗證碼。效果如下: 看起來雖然是個小功能,但是實際操作起來,會發現蘋果給我們留下的坑,當然更多的是自己給自己挖的…

c ++查找字符串_C ++結構| 查找輸出程序| 套裝1

c 查找字符串Program 1: 程序1&#xff1a; #include <iostream>#include <math.h>using namespace std;struct st {int A NULL;int B abs(EOF EOF);} S;int main(){cout << S.A << " " << S.B;return 0;}Output: 輸出&#xff1a…

二級c語言加油,二級C語言 備考指南及常見問題(2013版)

該樓層疑似違規已被系統折疊 隱藏此樓查看此樓3、關于上機操作部分的復習最好買一本上機題庫方面的教材&#xff0c;或打印、閱讀南開百題之類的電子文檔。配合上機模擬軟件(無紙化考試軟件)&#xff0c;上機練習是必須的。上機軟件一般有100套題多一點&#xff0c;每套有程序填…

開放定址散列表

再散列之后散列函數要重新計算。 // kaifangliaobiao.cpp : 定義控制臺應用程序的入口點。 //使用平方探測解決沖突問題時&#xff0c;散列表至少空一半時&#xff0c;總能插入一個新的元素#include "stdafx.h" #include<iostream> using namespace std;#ifnde…