© The McGraw-Hill Companies, Inc., 2007 新一代密碼系統 (Advanced Encryption Standard)

Slides:



Advertisements
Similar presentations
6-1 指標簡介 6-2 指標與陣列 6-3 動態配置記憶體 6-4 本章綜合練習
Advertisements

Chapter 10 馬可夫鏈 緒言 如果讀者仔細觀察日常生活中所發生的 諸多事件,必然會發現有些事件的未來 發展或演變與該事件現階段的狀況全然 無關,這種事件稱為獨立試行過程 (process of independent trials) ;而另一些 事件則會受到該事件現階段的狀況影響。
布林代數的應用--- 全及項(最小項)和全或項(最大項)展開式
第七章 抽樣與抽樣分配 蒐集統計資料最常見的方式是抽查。這 牽涉到兩個問題: 抽出的樣本是否具有代表性?是否能反應出母體的特徵?
學習C++的基本語法 認識關鍵字與識別字的不同 學習程式碼偵錯的流程 學習如何提高程式的可讀性
Section 1.2 Describing Distributions with Numbers 用數字描述分配.
Cryptography and Network Security Chapter 5 Advanced Encryption Standard Fourth Edition by William Stallings Lecture slides by Lawrie Brown.
第二章 太陽能電池的基本原理 及其結構 2-1 太陽能電池的基本原理 2-2 太陽能電池的基本結構 2-3 太陽能電池的製作.
3Com Switch 4500 切VLAN教學.
指導教授:陳淑媛 學生:李宗叡 李卿輔.  利用下列三種方法 (Edge Detection 、 Local Binary Pattern 、 Structured Local Edge Pattern) 來判斷是否為場景變換,以方便使用者來 找出所要的片段。
1.1 線性方程式系統簡介 1.2 高斯消去法與高斯-喬登消去法 1.3 線性方程式系統的應用(-Skip-)
1 Advanced Chemical Engineering Thermodynamics Appendix BK The Generalized van der Waals Partition Function.
: OPENING DOORS ? 題組: Problem Set Archive with Online Judge 題號: 10606: OPENING DOORS 解題者:侯沛彣 解題日期: 2006 年 6 月 11 日 題意: - 某間學校有 N 個學生,每個學生都有自己的衣物櫃.
Chapter 2 聯立線性方程式與矩陣 緒言 線性方程式組 (systems of linear equations) 出現 在多數線性模式 (linear model) 中。根據以往解 題的經驗,讀者們也許已發現方程式的解僅與 該方程式的係數有關,求解的過程也僅與係數 的運算有關,只要係數間的相關位置不改變,
STAT0_sampling Random Sampling  母體: Finite population & Infinity population  由一大小為 N 的有限母體中抽出一樣本數為 n 的樣 本,若每一樣本被抽出的機率是一樣的,這樣本稱 為隨機樣本 (random sample)
: Matrix Decompressing ★★★★☆ 題組: Contest Volumes with Online Judge 題號: 11082: Matrix Decompressing 解題者:蔡權昱、劉洙愷 解題日期: 2008 年 4 月 18 日 題意:假設有一矩陣 R*C,
1. 假設以下的敘述為一未提供 “ 捷徑計算 ” 能力的程式段,試用程 式設計的技巧,使此敘述經此改 寫的動作後,具有與 “ 捷徑計算 ” 之 處理方法相同之處理模式。 if and then E1 else E2 endif.
MATLAB 程式設計 第 11 章 多維陣列 多維陣列的定義 在 MATLAB 的資料型態中,向量可視為 一維陣列,矩陣可視二維陣列,對於維 度 (Dimensions) 超過 1 的陣列則均可視 為「多維陣列」 (Multidimesional Arrays , 簡稱 N-D Arrays)
Section 2.2 Correlation 相關係數. 散佈圖 1 散佈圖 2 散佈圖的盲點 兩座標軸的刻度不同,散佈圖的外觀呈 現的相聯性強度,會有不同的感受。 散佈圖 2 相聯性看起來比散佈圖 1 來得強。 以統計數字相關係數做為客觀標準。
McGraw-Hill/Irwin © 2003 The McGraw-Hill Companies, Inc.,All Rights Reserved. 肆 資料分析與表達.
Chapter 07 低階程式語言.
1 單元三 查詢結果的引用分析 Web of Science 利用指引 查看出版及被引用情況 在查詢結果的清單中,可以瀏覽近 20 年來查詢主題出版和被引用的情況。
© The McGraw-Hill Companies, Inc., 2008 第 6 章 製造流程的選擇與設計.
第 1 章 PC 的基本構造. 本章提要 PC 系統簡介 80x86 系列 CPU 及其暫存器群 記憶體: Memory 80x86 的分節式記憶體管理 80x86 的 I/O 結構 學習組合語言的基本工具.
Introduction to Java Programming Lecture 17 Abstract Classes & Interfaces.
:Problem D: Bit-wise Sequence ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 10232: Problem D: Bit-wise Sequence 解題者:李濟宇 解題日期: 2006 年 4 月 16.
: The largest Clique ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11324: The largest Clique 解題者:李重儀 解題日期: 2008 年 11 月 24 日 題意: 簡單來說,給你一個 directed.
最新計算機概論 第 5 章 系統程式. 5-1 系統程式的類型 作業系統 (OS) : 介於電腦硬體與 應用軟體之間的 程式,除了提供 執行應用軟體的 環境,還負責分 配系統資源。
Chapter 20 塑模動態觀點:狀態圖 Statechart Diagram. 學習目標  說明狀態圖的目的  定義狀態圖的基本記號  展示狀態圖的建構  定義活動、內部事件及遞延事件的狀態 圖記號.
7.1 背景介紹 7.2 多解析度擴展 7.3 一維小波轉換 7.4 快速小波轉換 7.5 二維小波轉換 7.6 小波封包
3.1 矩陣的行列式 3.2 使用基本運算求行列式 3.3 行列式的性質 3.4 特徵值介紹 3.5 行列式的應用
選舉制度、政府結構與政 黨體系 Cox (1997) Electoral institutions, cleavage strucuters, and the number of parties.
1-1 就目前科技而言,現有之 DES 密碼系統所使用之金鑰 長度過短 ( 僅 56 位元 ) ,其安全性已遭受質疑,為提高 其安全性,便有了 Triple-DES 的構想。 隨著電腦技技的發展,可預見未來 Triple-DES 的加密 演算法也勢必淘汰,有鑑於此,美國國家標準技術 局 (NIST)
Fugacity Coefficient and Fugacity
: Multisets and Sequences ★★★★☆ 題組: Problem Set Archive with Online Judge 題號: 11023: Multisets and Sequences 解題者:葉貫中 解題日期: 2007 年 4 月 24 日 題意:在這個題目中,我們要定義.
The application of boundary element evaluation on a silencer in the presence of a linear temperature gradient Boundary Element Method 期末報告 指導老師:陳正宗終身特聘教授.
資料結構實習-一 參數傳遞.
1 Introduction to Java Programming Lecture 2: Basics of Java Programming Spring 2008.
觀測量的權 權的觀念與計算.
Management Abstracts Retrieval System; MARS 檢索操作.
: Beautiful Numbers ★★★★☆ 題組: Problem Set Archive with Online Judge 題號: 11472: Beautiful Numbers 解題者:邱經達 解題日期: 2011 年 5 月 5 日 題意: 若一個 N 進位的數用到該.
Section 4.2 Probability Models 機率模式. 由實驗看機率 實驗前先列出所有可能的實驗結果。 – 擲銅板:正面或反面。 – 擲骰子: 1~6 點。 – 擲骰子兩顆: (1,1),(1,2),(1,3),… 等 36 種。 決定每一個可能的實驗結果發生機率。 – 實驗後所有的實驗結果整理得到。
JAVA 程式設計與資料結構 第二十章 Searching. Sequential Searching Sequential Searching 是最簡單的一種搜尋法,此演 算法可應用在 Array 或是 Linked List 此等資料結構。 Sequential Searching 的 worst-case.
演算法 8-1 最大數及最小數找法 8-2 排序 8-3 二元搜尋法.
Chapter 3 Entropy : An Additional Balance Equation
-Antidifferentiation- Chapter 6 朝陽科技大學 資訊管理系 李麗華 教授.
845: Gas Station Numbers ★★★ 題組: Problem Set Archive with Online Judge 題號: 845: Gas Station Numbers. 解題者:張維珊 解題日期: 2006 年 2 月 題意: 將輸入的數字,經過重新排列組合或旋轉數字,得到比原先的數字大,
Chapter 10 m-way 搜尋樹與B-Tree
本章重點 2-1 有序串列(Ordered List) 2-2 介紹陣列(array) 2-3 矩陣(matrix)的應用
第4章 有限體.
Probability Distribution 機率分配 汪群超 12/12. 目的:產生具均等分配的數值 (Data) ,並以 『直方圖』的功能計算出數值在不同範圍內出現 的頻率,及繪製數值的分配圖,以反應出該 機率分配的特性。
: Help My Brother ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 11033: Help My Brother 解題者: 呂明璁 解題日期: 2007 年 5 月 14 日.
專題成果報告 胺基酸功能預測開發環境 指導教授:歐昱言 邱彥豪 邱顯鈞.
2005/7 Linear system-1 The Linear Equation System and Eliminations.
5 重複迴圈 5.1 增減運算符號 增量運算符號 減量運算符號
連續隨機變數 連續變數:時間、分數、重量、……
Teacher : Ing-Jer Huang TA : Chien-Hung Chen 2015/6/30 Course Embedded Systems : Principles and Implementations Weekly Preview Question CH7.1~CH /12/26.
Cryptography and Network Security Chapter 5 Fifth Edition by William Stallings Lecture slides by Lawrie Brown.
資料結構實習-六.
1 Introduction to Java Programming Lecture 3 Mathematical Operators Spring 2008.
第 5 章 選擇控制項與條件敘述 5-1 結構化程式設計 5-1 結構化程式設計 5-2 關係與邏輯運算子 5-2 關係與邏輯運算子 5-3 簡單的條件敘述 5-3 簡單的條件敘述 5-4 選擇控制項 5-4 選擇控制項 5-5 巢狀條件敘述 5-5 巢狀條件敘述 5-6 多選一條件敘述 5-6 多選一條件敘述.
密碼學與網路安全 第3章 區塊加密法及 資料加密標準
© The McGraw-Hill Companies, Inc., 2007 秘密金鑰密碼系統 (Secret Key Cryptosystems)
Microsoft Excel.
: Finding Paths in Grid ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11486: Finding Paths in Grid 解題者:李重儀 解題日期: 2008 年 10 月 14 日 題意:給一個 7 個 column.
:Problem E.Stone Game ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 10165: Problem E.Stone Game 解題者:李濟宇 解題日期: 2006 年 3 月 26 日 題意: Jack 與 Jim.
1 Introduction to Java Programming Lecture 3 Mathematical Operators Spring 2009.
第 1 章 PC 的基本構造. 本章提要 PC 系統簡介 80x86 系列 CPU 及其暫存器群 記憶體: Memory 80x86 的分節式記憶體管理 80x86 的 I/O 結構 學習組合語言的基本工具.
: How many 0's? ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 11038: How many 0’s? 解題者:楊鵬宇 解題日期: 2007 年 5 月 15 日 題意:寫下題目給的 m 與 n(m
McGraw-Hill/Irwin © 2003 The McGraw-Hill Companies, Inc.,All Rights Reserved. 肆 資料分析與表達.
Presentation transcript:

© The McGraw-Hill Companies, Inc., 2007 新一代密碼系統 (Advanced Encryption Standard)

新一代密碼系統 © The McGraw-Hill Companies, Inc., 本章內容 6.1 前言 6.2 Rijndael 密碼系統 6.3 Rijndael 密碼系統的數學背景 6.4 回合金鑰的產生 6.5 Rijndael 的加密演算法 6.6 Rijndael 的解密演算法

新一代密碼系統 © The McGraw-Hill Companies, Inc., 前言 就目前科技而言,現有之 DES 密碼系統所使用 之金鑰長度過短 ( 僅 56 位元 ) ,其安全性已遭受 質疑,為提高其安全性,便有了 Triple-DES 的 構想。 隨著電腦技技的發展,可預見未來 Triple-DES 的加密演算法也勢必淘汰,有鑑於此,美國國 家標準技術局 (NIST) 於 1997 年 1 月 2 日開始著手 計劃公開徵求新一代加密標準 ( 簡稱 AES) 。

新一代密碼系統 © The McGraw-Hill Companies, Inc., Rijndael 密碼系統 ◎ Rijndael  反覆運算的加密演算法  資料區塊及金鑰可獨立變動  128, 192, 256 bits State: 運算過程所產生的中間值,用一個以 byte 為單 位的長方型矩陣來表示( 4 列,行數為資料區塊除以 32bits ),成為一個 4*Nb 的矩陣,也就是把資料分 割成 Nb 個區塊。

新一代密碼系統 © The McGraw-Hill Companies, Inc., Cipher Key: 加密金鑰,一個 4*Nk 的矩陣,也就 是把金鑰分割成 Nk 個子金鑰。 6.2 Rijndael 密碼系統 ◎ Rijndael Nk=6

新一代密碼系統 © The McGraw-Hill Companies, Inc., Rijndael 密碼系統的數學背景 ◎ GF(2 8 ) 的定義 假設位元組 由組成,將 當作一個 7 次多項式的係數。 例如 : 表示成多項式為:

新一代密碼系統 © The McGraw-Hill Companies, Inc., 數學背景 ◎ 加法 兩個多項式的加法,即係數做 XOR 。 例如 : 表示成多項式為 :

新一代密碼系統 © The McGraw-Hill Companies, Inc., 數學背景(續) ◎ 乘法 多項式相乘之後的結果很容易造成溢位,在 Rijndael 中將其溢位再 modulo 一個固定的多項式 : 例如 :

新一代密碼系統 © The McGraw-Hill Companies, Inc., 回合金鑰的產生 在 Rijndael 的密碼系統中,不管加密或解 密都需要產生各回合所使用的回合金鑰 (Round Key) 或副金鑰 (Subkey) 。 回合金鑰的產生方式可分兩階段,第一 階段為金鑰的擴充,第二階段為回合金 鑰的選擇。

新一代密碼系統 © The McGraw-Hill Companies, Inc., a 0, 0 a 0, 1 a 0, 2 a 0, 3 a 1, 0 a 1, 1 a 1, 2 a 1, 3 a 2, 0 a 2, 1 a 2, 2 a 2, 3 a 3, 0 a 3, 1 a 3, 2 a 3, 3 Nb = 4 k 0, 0 k 0, 1 k 0, 2 k 0, 3 k 0, 4 k 0, 5 k 1, 0 k 1, 1 k 1, 2 k 1, 3 k 1, 4 k 1, 5 k 2, 0 k 2, 1 k 2, 2 k 2, 3 k 2, 4 k 2, 5 k 3, 0 k 3, 1 k 3, 2 k 3, 3 k 3, 4 k 3, 5 Nk = 6 4 bytes 決定出回數 如下表 Nr: 回合數,由 Nb 及 Nk 決定出回數。 Rijndael 執行的回合數

新一代密碼系統 © The McGraw-Hill Companies, Inc., Nr ( 回合數 ) ,由 Nb 及 Nk 所決定的,回合的變 動數如表 : NrNb = 4Nb = 6Nb = 8 Nk = Nk = Nk = 814 加密流程

新一代密碼系統 © The McGraw-Hill Companies, Inc., ◎ Cipher key  Expanded key Expanded key 是一個線性的 4byte 矩陣,以 W[Nb*(Nr+1)] 表示,前 Nk 個字組包含了加密金鑰 (Cipher key) ,剩下的字組依不同的 Nk 值,會有不 同的處理如下 : 金鑰的擴充 Example: Nb=4, Nk=6, Nr=12  W[52]=W[0]~W[51]

新一代密碼系統 © The McGraw-Hill Companies, Inc., Nk<=6 if (i % Nk =0) W[i-1] W[i-Nk] W[i] W[i-1] 向左旋轉 1byte SubByte W[i-4] W[i] W[i] 1 W[i] 2 W[i] 3 W[i] … W[i] 1 W[i] 每次迴圈 乘以 x YesNo 金鑰的擴充(續) Nk=6, i=7, 8, …

新一代密碼系統 © The McGraw-Hill Companies, Inc., Example 1 word = 4 byte = 32 bits = 8 個 16 進位 W[i-1]= (006A0000)  ( 向左旋轉 1byte)  (6A000000) (6A000000)  (SubByte)  ( ) W[i-4] = (FA005C00)  ( )  (FA005C00) = (F8633F63) F8 = ( ), RC[i] = ( ) ( )  ( ) = ( ) =FA (F8633F63)  (FA633F63)

新一代密碼系統 © The McGraw-Hill Companies, Inc.,

新一代密碼系統 © The McGraw-Hill Companies, Inc., Nk>6 if (i % Nk =0) W[i-1] W[i-Nk] W[i] W[i-1] 向左旋轉 1byte SubByte W[i-4] W[i] W[i] 1 W[i] 2 W[i] 3 W[i] … W[i] 1 W[i] if (i % Nk =4) Yes No W[i-1] SubByte W[i-4] W[i] Yes

新一代密碼系統 © The McGraw-Hill Companies, Inc., ◎ Expanded key  Round key 子金鑰的選擇是由擴充金鑰中所依序給定的,即第 i 把 回合金鑰由 W[Nb*i] ~ W[Nb*(i+1)-1] W0W1W2W3W4W5W6W7W8W9 W10W11… Round Key 1: W[4]~W[7] Round Key 2: W[8]~W[11] Round Key 3: W[12]~W[15] … 選擇回合金鑰 Round Key 11: W[44]~W[47] Round Key 0: W[0]~W[3] Round Key 12: W[48]~W[51] Initial Round Standard Round Final Round

新一代密碼系統 © The McGraw-Hill Companies, Inc., Plain Text Initial Round Add Round Key Standard Round Byte Sub Shift Row Mix Column Add Round Key Final Round Byte Sub Shift Row Add Round Key Cipher Text Nr-1 Rounds Cipher Key Expansion Expanded Key Selection Round Key 1 Round Key 2 … Round Key 3 Round Key Nr-1 Round Key Nr Round Key Rijndael 的加密演算法

新一代密碼系統 © The McGraw-Hill Companies, Inc., Standard Round Byte Sub Shift Row Mix Column Add Round Key Standard Round Byte Sub Shift Row Mix Column Add Round Key

新一代密碼系統 © The McGraw-Hill Companies, Inc., ◎ Add Round Key(state,Round key) 將狀態值與子金鑰作互斥或運算 回合金鑰的加密函數 W[0]W[1]W[2]W[3] Ex State RK0

新一代密碼系統 © The McGraw-Hill Companies, Inc., a 3, 5 a 3, 4 a 3, 3 a 3, 2 a 3, 1 a 3, 0 a 2, 5 a 2, 4 a 2, 3 a 2, 2 a 2, 1 a 2, 0 a 1, 5 a 1, 4 a 1, 3 a 1, 2 a 1, 1 a 1, 0 a 0, 5 a 0, 4 a 0, 3 a 0, 2 a 0, 1 a 0, 0 S-Box b 3, 5 b 3, 4 b 3, 3 b 3, 2 b 3, 1 b 3, 0 b 2, 5 b 2, 4 b 2, 3 b 2, 2 b 2, 1 b 2, 0 b 1, 5 b 1, 4 b 1, 3 b 1, 2 b 1, 1 b 1, 0 b 0, 5 b 0, 4 b 0, 3 b 0, 2 b 0, 1 b 0, 0 位元取代轉換函數 Byte Sub

新一代密碼系統 © The McGraw-Hill Companies, Inc., Byte Sub 位元組取代轉換 a 0, 0 b 0, 0 轉換矩陣 乘法反元素

新一代密碼系統 © The McGraw-Hill Companies, Inc., Byte Sub 例子

新一代密碼系統 © The McGraw-Hill Companies, Inc., Byte Sub 查表 a 0, 0 b 0, 0 查表

新一代密碼系統 © The McGraw-Hill Companies, Inc., Byte Sub 反運算 a 0, 0 b 0, 0 反轉換矩陣乘法反元素

新一代密碼系統 © The McGraw-Hill Companies, Inc., Byte Sub 反運算例子 的乘法反元素為

新一代密碼系統 © The McGraw-Hill Companies, Inc., Byte Sub 反運算查表 a 0, 0 b 0, 0 查表

新一代密碼系統 © The McGraw-Hill Companies, Inc., Byte Sub 查表 EX

新一代密碼系統 © The McGraw-Hill Companies, Inc., 每一個 State 的第一列不變,後三列被循環轉換 (cyclically shift) 不同的大小,且依 Nb 的大小也會有 所不同,如下 : Nb 第二列 C1 第三列 C2 第四列 C 移列轉換函數 ShiftRow

新一代密碼系統 © The McGraw-Hill Companies, Inc., Shift Row 例子

新一代密碼系統 © The McGraw-Hill Companies, Inc., 移列轉換的反運算 對第二第三及第四列作 Nb-C1, Nb-C2, Nb-C3 個位元組的右循環即可。 Shift Row 反運算

新一代密碼系統 © The McGraw-Hill Companies, Inc., MixColumn 混行轉換函數

新一代密碼系統 © The McGraw-Hill Companies, Inc., MixColumn 混行轉換函數(續)

新一代密碼系統 © The McGraw-Hill Companies, Inc., d(x) a 3, 5 a 3, 4 a 3, 3 a 3, 2 a 3, 1 a 3, 0 a 2, 5 a 2, 4 a 2, 3 a 2, 2 a 2, 1 a 2, 0 a 1, 5 a 1, 4 a 1, 3 a 1, 2 a 1, 1 a 1, 0 a 0, 5 a 0, 4 a 0, 3 a 0, 2 a 0, 1 a 0, 0 b 3, 5 b 3, 4 b 3, 3 b 3, 2 b 3, 1 b 3, 0 b 2, 5 b 2, 4 b 2, 3 b 2, 2 b 2, 1 b 2, 0 b 1, 5 b 1, 4 b 1, 3 b 1, 2 b 1, 1 b 1, 0 b 0, 5 b 0, 4 b 0, 3 b 0, 2 b 0, 1 b 0, 0 Mix Column 反運算

新一代密碼系統 © The McGraw-Hill Companies, Inc., 單位矩陣: Mix Column 反運算(續)

新一代密碼系統 © The McGraw-Hill Companies, Inc., Final Round Byte Sub Shift Row Add Round Key Final Round Byte Sub Shift Row Add Round Key

新一代密碼系統 © The McGraw-Hill Companies, Inc., Rijndael 的解密演算法 Cipher Text Initial Round Add Round Key Inv Standard Round Inv Byte Sub Inv Shift Row Inv Mix Column Add Round Key Final Round Inv Byte Sub Inv Shift Row Add Round Key Plain Text Nr-1 Rounds Cipher Key Expansion Expanded Key Selection Round Key 1 Round Key 2 … Round Key 3 Round Key Nr-1 Round Key Nr Round Key 0