2017年11月25日 星期六

密碼學技術

密碼學基本要素 (資安三要素)


  1. 機密性(confidentiality)
  2. 完整性(integrity)
  3. 可利用性(availability)


∂    加密演算法 + 加密金鑰 + 明文 = 密文
∂    密文 + 解密金鑰 + 解密演算法 = 明文

歷史方法


  1. 凱薩加密  - ROTn
  2. 字元取代加密法


現代方法


區塊加密 - 對稱式


  • XOR運算 
(Feistel)

  • DES (Data Encryption Standard)
  • DES -->  金鑰56 bits,一區塊64 bits,演算法上可調整 1. "金鑰產生子金鑰" 2. "加密回合數(round)"
  • Triple DES (3DES) --> 3組金鑰進行3次DES,流程為(加密(金鑰1) -> 解密(金鑰2) -> 加密(金鑰3)
  • 變形:3DES-EDE2(2把金鑰相同,1把不同)、 3DES-EDE3(3把金鑰皆不同)、三把金鑰皆相同則變成DES
(Rijndael)
  • AES (Advanced encryption standard)  - 密鑰長度(128,192,256-bit),區塊=密鑰長度  -- 加密流程:明文 --> SubBytes(位元組置換) --> ShiftRows(位元組重新排序--> MixColumn(4-byte為單位,做位元運算) --> AddRoundKey (與RoundKey做XOR運算) --> 密文


非對稱式加密 - 公開金鑰系統


  • RSA, 三位發明人的名字開頭  -- 利用因數分解之困難性建構之密碼系統。
    • 明文^E mod N = 密文   <--> 密文^D mod N = 明文  (^為冪次運算)
  • Robin
  • 橢圓曲線加密 - Elliptic curve cryptography, ECC

混合型 - 非對稱金鑰加密對稱金鑰+對稱金鑰加密資料


認證:

訊息壓縮技術 - hash

訊息認證碼(mac)
- 將要傳送的資料加標籤(認證碼) - 確認訊息完整性,認證碼是由對稱金鑰與要傳送的資料經由某演算法得出一個唯一識別碼,方法之一為hash mac(HMAC),傳送方將對稱金鑰與資料經由一演算法與hash運算得到的一個hash code,此code隨資料在加密通道傳送到接收方,接收方將資料與密鑰經由相同演算法計算後得到hash code,比對後若相同則確定資料正確

數位簽章
- 使用非對稱加密系統,用私鑰將資料簽核成數位簽章,讓所有接收者皆可以利用公鑰確認資料正確性。

憑證
- 使用數位簽章將註冊者的公鑰做認證的機制,以便向使用者(憑證的使用者)證明註冊者的公鑰的正確性,使得使用者可以信任由該註冊者以該公(私鑰)發出的資料及數位簽章。
憑證需由一套稱為PKI的架構,發行憑證的CA,來確保憑證的可信度。類似人類社會的“信賴“關係












沒有留言:

張貼留言

2020 Pi錢包三倍券加碼回饋機制決策分析

 Pi錢包說 “ 三倍券 ” 中的 2000 元每次消費的都會獲得 p 幣加碼回饋的抽獎機會 試問消費策略?消費越多次越佳或越少次越佳?