Aloha!又是我少女人妻 Uerica!今天老公特地帶我出門去餐廳吃飯,享受我們的兩人時光,在老公開車到一半我突然回神大叫 : 疑! 我的狗狗呢!? 喔喔..原來我們根本沒帶她出門 Q__Q。
從資料儲存到網路上傳輸再到對方收到資料,這一連串的過程都可能碰到資料被偷竊、竄改、冒用等,所以安全性技術也是很重要的一環節,而為了解決這些問題,可以使用加密、訊息鑑別碼、數位簽章等相關的演算法來處理。
CIA三要素
小時候在玩交換日記,都會買有鎖頭的日記本,而鑰匙只有自己跟要一起寫日記的朋友各有一副,所以中間不管是放在家被爸媽看到,或在學校請同學傳遞,都不怕被偷看或串改內容,因為日記本需要唯一的那把鑰匙才能打開。加密的概念也是如此。只是加密是直接將資料轉換成電腦無法讀懂的數據,而加密過後的資料稱為密文 (cipher text) ,而將密文還原則稱為解密 (decryption)。
簡單來說,加密是只要拿到解密的鑰匙就能將密文逆推回去,而加密又分為對稱式與非對稱式,對稱式加密常見演算法有 : DES 、 3DES 、 AES,而非對稱式加密 Asymmetric Encryption 常見的演算法有 : RSA 、 DSA 、 ECC。
前面有提到經由雜湊函數產生的雜湊值是不可逆的,就像我們在網站上創使用者與密碼時,存在網站資料庫的密碼其實都是經由雜湊函數產生的雜湊值,所以當使用者輸入密碼時,會將密碼放入一樣的雜湊函數,並產生一串雜湊值,再跟資料庫中的雜湊值做比對,若驗證正確就可成功登入,這麼做可以維持安全性,當資料庫被駭才不會都光光大家的密碼,所以若按忘記密碼時,回傳的是原本的密碼(沒有雜湊過的值稱為明碼) ,而並非雜湊值,那就代表該網站的安全性存在很大的疑慮。
雜湊值通常為了防止被攻擊破解,會再加入一組亂數 (可能是當下時間為底的亂數),來多一層保護。常見的雜湊演算法有 : MD5 (已證實不安全)SHA-1 (已證實不安全)、 SHA-256
延伸閱讀 Day 12 資料結構:雜湊表 Hash Table
參考資料 :
[第十一週] 資訊安全 - 雜湊密碼:hash
為什麼密碼要經過雜湊?
好的~今天就到這邊啦,感謝閱讀!我要去遛狗狗了~掰掰明天見啦!