Lecturer:Lamuyang

Date:Mar. 28th, 2021

Place:MD461

Encryption And Hash
加密

雜湊

Outline

  • 什麼是Encryption
  • 那Hash又是什麼?
  • 來雜湊看看
  • 所以,這可以拿來幹嘛?

加密

雜湊

簡單來說就是

什麼是 Encryption?

加密

明文變成難以讀取的密文內容
Plain Text
Cipher Text

優點:

  1. 有金鑰(Key),資料相對不易被破解
  2. 可加密大量的資料
  3. 因為都是簡單的位移、替換、XOR,
    對CPU來說是簡單的任務,因此速度快。

邏輯互斥

  • 金鑰很重要。
  • 金鑰損毀,就會跟整個資料say good bye。

缺點:

Encryption

加密

DES加密法

sirla
c2lybGE=

輔仁大學學校財團法人輔仁大學

6LyU5LuB5aSn5a245a245qCh6LKh5ZyY5rOV5Lq66LyU5LuB5aSn5a24

key = 1234

(此為示意圖,資料參考就好)

雙向連結!

只要有金鑰就可以

什麼是 Hash

雜湊

太難說了,我們直接進例子、優缺點

將不定長度訊息的輸入,

演算成固定長度雜湊值的輸出

常見的Hash演算法

優點:

  1. 無論原文的內容長短,透過雜湊演算法運算完的輸出都會是固定的長度。
  2. 無法將雜湊演算法的輸出解回原本的輸入,雜湊是單向的。
  3. 兩個輸入的內容即便只差一個字,雜湊演算法產生的兩個輸出內容卻會差非常多,可以明顯區別。
  4. 非常難以破解

非常難破解(?

缺點:

Samples

sirla​

SHA256

dee24eeb46ca0d40a6755af1b46989660990b3c12e9ad166e939c8ead97db92d
sirla!

SHA256

084084c4d1648103d25e15160df4390d829bebe1e3d2af2716b19a8ee8a4bdcc
sirla​s

SHA256

7f43bf1f424abeceaf4961e59a93ad92769d9a280fab69e77337c6785e8adf58
Sirla

SHA256

7f43bf1f424abeceaf4961e59a93ad92769d9a280fab69e77337c6785e8adf58

長度一致

雜湊看看!

import hashlib
 
def sha256_generator(str):
    m = hashlib.sha256()
    m.update(str.encode())
    return m.hexdigest()
str = input("輸入文字:")
print(sha256_generator(str))

所以,Hash可以拿來幹嘛?

  • 檔案校驗碼
  • 存不需要知道明碼的東西
Reference
  1. 加密和雜湊有什麼不一樣? | Just for noting. (2021). Retrieved 27 March 2021, from https://blog.m157q.tw/posts/2017/12/25/differences-between-encryption-and-hashing/
  2. Wagner, L. (2021). (Very) Basic Intro to Hash Functions (SHA-256, MD5, etc) - Qvault. Retrieved 27 March 2021, from https://qvault.io/2020/01/01/very-basic-intro-to-hash-functions-sha-256-md-5-etc/
  3. SHA-2 - 维基百科,自由的百科全书. (2021). Retrieved 27 March 2021, from https://zh.wikipedia.org/wiki/SHA-2

Encryption And Hash

By Lamuyang

Encryption And Hash

  • 78