信息安全數學基礎[未完]

0. 課程概述

Mathematical Foundations of Information Security

0.0. 三個數學難題

  • 大整數因數分解問題:
    由兩個質數p,q之乘積n來分解出p,q很難,RSA公開密鑰算法的理論基礎;
  • 離散對數問題:
    已知有限循環群G=< g > {g^n|k = 0, 1, 2,...},及其生成元g和階n = |G|,很難由h=g^x,計算出整數x;
  • 橢圓曲線離散對數問題:
    已知有限域下F_p上的橢圓曲線群E(F_p) = {(x,y)|<-F_p * F_p, y2=x3+ax+b,a,b<-F_p}|_|{O},及點P=(x,y)的階為一個大素數。給定整數a,計算點aP=(x_a,y_a)=Q很容易,給定Q,計算整數x,使得xP=Q很難。

0.1. 課程主要內容

  • 近世代數
    群,子群,交換群,循環群,群上的離散對數;環,子環,交換環,整數環,多項式環;域,子域,有限域,有限域上的多項式。
  • 數論
    整除性,同余性,二次剩余,素數,因子分解,同余式,歐拉定理,擴展的歐幾里得算法和中國剩余定理。
  • 數理邏輯
    命題邏輯,謂詞邏輯,模態邏輯,邏輯與安全。

1. 近世代數基礎之群

1.1. 群的基本概念

集合上的運算

近世代數中的群、環、域的定義都是基于集合的,通過對集合上運算的約束,將集合構造稱具有不同特性的新對象。

集合: 具有共同屬性的事物的總體。

集合上的二元運算: 設S為集合,映射
n:{ S * S -> S
{ (x,y) -> z
稱為集合上的運算。

群:
設三元組(G,·,1)中G為集合,·為集G上的二元運算,1為G中的一個元。若(G,·,1)滿足:

  • G1(乘法結合律):a·(b·c)=(a·b)·c,a,b,c <- G;
  • G2(單位元):1·a=a·1=a,a<-G;
  • G3(逆元):對a<-G,有a'<-G使得a·a'=a^'·a=1。

則稱(G,.,1)為,簡稱群G,1稱為群G的單位元,a'稱為a的逆元

若(G,.,1)滿足G4(交換律):a·b=b·a,a,b<-G,則稱G為交換群
若(G,.,1)僅滿足G1,G2,則稱G為有單位元的半群
若(G,.,1)滿足G1,G2,G4,則稱G為有單位元的交換半群

1.2. 群的例子

例1:
設(Z,+,0)中Z為整數集,+為整數的加法,0為整數零,驗證

  • (Z,+,0)中有(a+b)+c=a+(b+c),G1滿足;
  • a+0=0+a=a,G2滿足;
  • a+(-a)=(-a)+a=0,(-a)表示a對應的負整數,G3滿足;
  • a+b=b+a,G4滿足。
    從而(Z,+,0)為交換群。

例2:
設(Q,·,1)中的Q為零以外的所有有理數的集合,·為有理數乘法,1為整數1,則(Q*,·,1)滿足G1,2,3,4為交換群。

例3:
設GL_n(R)為n階實數可逆方陣的集合,.為兩矩陣的乘法,1為單位矩陣,則(GL_n(R),·,1)為群。GL_n(R)稱為實數域R上n階一般線性群。

例4:
在希爾密碼(Hill Cipher)中加密變換為
(y_1y_2...y_m) = (x_1x_2...x_m)Mmod26
這里密鑰M <- GL_m(Z_26),x_i,y_i <- Z_26,Z_26 = {0,1,...,25},x_i為明文,y_i為密文。(式中右邊的行向量(x_1x_2...x_m)與矩陣M乘是先進行通常的實數行向量與實數矩陣乘再對所得行向量的每一分量取模26)

加密過程,字母AB...Z分別對應0,1,...,25,加密前先將明文字母串變換成Z_26上的數字串,然后再按上述表達式對每次m個數字的將明文數字串變換成密文數字串,最后將密文數字串變換成密文字母串。

eg:


加密實例

定理(線性代數),
設A = (A_ij)為一個定義在Z_26上的n · n矩陣,若A在mod26上可逆,則有:
A^-1 = (detA)_-1 A^(mod26)
這里,A^
是A的伴隨矩陣。

1.3. 子群

定義,設定(G,·,1)為群,A為G的子集合。若1 <- A且(A,·,1)構成群,則稱A為G的子群,并記為 A <_ G。

例:
證明nZ={0,+-n,+-2n...}為整數群(Z,+,0)的子群。
證:

  • nZ 包含于Z
  • 0 <- A
  • (nZ,+,0)為群

1.4. 循環群

定義,若群G的每一個元素都能表成一個元素a的方冪,則G稱為由a生成的循環群,記作G=< a >,a稱為循環群G的生成元

根據元素的階的性質,循環群G=< a >共有兩種類型:

  • 當生成a是無限階元素,則G稱為無限階循環群。
  • 如果a的階位n,即a^n=1,那么這時G=< a >=< 1,a,a2,...,a(n-1) >,則G稱為有a所生成的n階循環群,注意此時1,a,a2,...,a(n-1)兩兩不同。

1.5. 對稱群

定義,S={1,2,3,...,n},映射b:S--S是可逆的,則稱b為S上的置換
定義,群體S上的置換所成的集合記為S_n,命1表示恒等置換,在S_n中以b(i)表示i在置換b下的像,定義S_n中的兩元素q與p的乘積為
[b·q](i)=b(q(i))
則(S_n,·,1)成群,群S_n稱為n次對稱群

b為:


b

q為:


q

&為:
&

<-為:


<-

例1:
在置換密碼(Permutation Cipher)中加密變換為
(y_1 y_2 ... y_m) = (b(x_1) b(x_2) ... b(x_m))
這里x_i,y_i <- S={1,2,...,m},x_i為明文,y_i為密文,b <- S_m,S_m為{1,2,...,m}上m次對稱群。加密時按上述表達式每次m個字符的將明文串變換為密文串。
e.g.:


實例

例2
在代換密碼(SUbstitution Cipher)中加密變換為
y=b(x)
這里x,y <- & = {A,B,...,Z},x為明文,y_i為密文,b <- S_(sy&),


b <- S_(sy&)

b <- S_(sy&)為&上的對稱群。加密時按上述表達式逐字符的將明文串變換為密文串。
e.g.:


實例

字符的出現頻率未發生改變,頻率攻擊破解。

1.6. 群上的離散對數

不同代數系統中都有各自的對數(離散對數)問題,有的可以找到快速算法,有的則尚未找到,這一類可以用來構造密碼學算法或協議。

例:Z_n^*素數個素數


2. 近世代數基礎之環1

2.1. 環的定義

定義,設五元組(R,+,·,0,1)中,R為集合,+與·為集合R上的二元運算,0與1為R中的元。若(R,+,·,0,1)滿足:

  • R1(加法交換群):(R,+,0)是交換群
  • R2(乘法半群):(R,·,1)是有單位元的半群
  • R3(乘法對加法的分配律):
    a·(b+c) = a·b+a·c,(b+c)·a=b·a+c·a,a,b,c <- R

則稱(R,+,·,0,1)為,簡稱環R。

環的定義
環的定義
交換環
體,域

2.2. 環的例子

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 1. 關于診斷X線機準直器的作用,錯誤的是()。 (6.0 分) A. 顯示照射野 B. 顯示中心線 C. 屏蔽多...
    我們村我最帥閱讀 10,836評論 0 5
  • sì 支zhī茶chá 對duì 酒jiǔ,賦fù 對duì 詩shī,燕yàn子zi 對duì 鶯yīng 兒é...
    每個人的孟母堂閱讀 1,267評論 0 6
  • 一年級語文上冊生字表 生字表一(共400字) 啊(ā)愛(ài)安(ān)岸(àn)爸(bà)八(bā)巴(bā)...
    meychang閱讀 2,888評論 0 6
  • 1.Xcode證書路徑: ~/Library/MobileDevice/Provisioning Profiles...
    frola_閱讀 1,563評論 0 0
  • 今天一醒來就看到多條關于「紀念日本投降72周年」的媒體報道推送,作為一個長在紅旗下的好青年,在這么個日子里當然是要...
    閑著嘛閱讀 981評論 0 0