天津理工大學密碼學期末複習

1,單表與多表密碼體制的概念是?

單表密碼體制:在一個密碼體制中,如果明文字母對應的密文字母在密文中始終保持不變

多表密碼體制:在一個密碼體制中,如果明文中不同位置的同一明文字母在密文中對應的密文字母不同

2,密碼體制中的5個有限集合,分組密碼是什麼?

  • 明文空間M
  • 密文空間C
  • 密鑰空間K
  • 加密算法E
  • 解密算法D

分組密碼:又稱密鑰密碼,對稱密碼,它的加密密鑰與解密密鑰相同。利用分組密碼對明文加密時首先對明文進行分組,每組長度相同,然後對每組明文分別加密得到等長密文。

3,Playfair密碼體制的使用

(由祕鑰——》生成密鑰矩陣——》按照加密規則得到密文)

內容介紹:

 

 

4,理解Vigenere密碼體制

Ci=(Mi+Ki)%26——》密文字母的下標=(明文字母的下標+祕鑰字母的下標)%26

例題解讀:

在表中找到第一個明文字母T的位置,和第一個密文字母c的位置,我們知道c的下標是2

(從0開始標記),所以字母T向後移動2個單位得到密文字母V。同理我們知道第二個密

文字母的i的下標是8,將明文字母h向後移動8個單位得到密文字母P

-----------------------------------------------------------------------------------------------------------------

5,Hill密碼體制(如何進行加密,解密,證明其相關的題)

    概念:

 

 

 

 

 

6,仿射古典密碼

加密變換公式:C=(K1*M+K2)mod26

解密變換公式:M=(K1逆)*(C-K2)mod26

 

 

H——》(5*7+7)%26=16——》Q

E——》(5*4+7)%26=1——》B

L——》(5*11+7)%26=10——》K

P——》(5*15+7)%26=4——》E

M——》(5*12+7)%26=15——》P

E——》(5*4+7)%26=1——》B

代碼實現:

package cn.itcast.util;

import java.util.Scanner;

public class communicate {
    public char []letters={'A','B','C','D','E','F','G','H','I','J','K','L','M',
            'N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};
    public char []input=new char [20];
    public int getNum(char letter){
        for (int i=0;i<letters.length;i++){
            if (letter==letters[i])
                return i;
        }
        return -1;
    }
    public static void main(String[] args) {
        communicate test=new communicate();
        Scanner input=new Scanner(System.in);

        while (true){
            System.out.println("請輸入要加密的字符串");
                int m1=test.getNum(input.next().charAt(0));
                int c=(m1*5+7)%26;
                System.out.println(test.letters[c]);
            }

        }

    }

 

 

7,DES的基本加密步驟是什麼?

 

8,給DES的一個S盒的6bit輸入數據,求出它的4bit輸出數據

如:輸入101010,取出收尾的兩位數字10做爲行標2,中間的4位數字0101作爲列標5,得到座標(2,5)查下表得到結果6

——》0110作爲輸出數據

 

9,IDEA的基本加密過程是什麼?

 

 

10,MA結構

11,分組密碼的兩種結構是什麼?

  • Feistel網絡

  • SP網絡

 

--------------------------------------------------------------------------------

 

12,公鑰密碼體制是什麼?

在公鑰密碼體制中,加密密鑰和解密密鑰是不一樣的,加密密鑰簡稱公鑰,解密密鑰簡稱私鑰,加密密鑰可以公開,解密密鑰必須保密,從加密密鑰計算解密密鑰是難解的。

 

13,瞭解Merkle-Hellman揹包算法(由明文求密文,由密文求明文)

14,瞭解RSA公鑰密碼(中國剩餘定理)

  • 由題目中的p,q,e利用Euclid算法求解密鑰d

 

 

 

  • 由明文M,求密文C(C=M的e次方modN)

利用歐幾里得算法計算解密密鑰d=147

220=3*73+1

3=1*3+0

              a1   

              73  

b    1      73

所以因爲a是1奇數個,所以d=220-73=147

 

 

 

15,EIGamal公鑰密碼體制

證明其解密變換是加密變換的逆變換

 

 

 

16,證明:U屬於Zn,並且U的逆對N的模運算是存在——》god(u,n)=1——》U屬於Z*n

P94,定理5.7的證明

 

17,瞭解Euler定理

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章