ADVERTISEMENT
電腦的使用者一定都會遇到需要使用密碼的情況,比方說登入作業系統或是網路服務所使用的密碼,或是傳送資料前先將檔案以加密方式壓縮等等,但是你知道該怎麼樣選擇安全的密碼,或是如何降低密碼被竊取的風險嗎?這系列文章將深入淺出地提供讀者一些密碼安全守則。
密碼學由機構與金鑰組成
即便密碼學的實作中包含了相當複雜的數學,但是它的概念卻出奇簡單,就和鎖與鑰匙一樣好懂。任何密碼系統都可以粗分為機構與金鑰,機構就像是鎖提供保護措施,而金鑰就像是鑰匙,只要金鑰能與機構匹配,就能將透過機構加密的內容進行解密。
在電腦資訊安全領導,機構通常稱為加密演算法,負責將未加密的明文資料,透過與特定的數學演算,加密為無法解讀的密文。如果想要將密文還原為明文,也是需要以金鑰,配合特定數學演算,才能正常閱讀資料。
ADVERTISEMENT
舉個最簡單的例子,如果我透過將「我愛你」透過金鑰「WAHAHA」進行加密,透過機構演算,得到的結果是「花客優」,這時候得到結果的人無法判讀原始資料,需要將密文以金鑰解密,才能得到原始資料。
▲上圖為對稱加密的例子,將明文透過金鑰加密過後,就可以得到別人無法解讀的密文。
ADVERTISEMENT
▲如果想要解讀密文的話,則需使用金鑰將密文還原成明文。
加密分成對稱與非對稱
基本上加密的方式,可依是否以同樣金鑰進行加、解密,分為對稱式與非對稱式加密技術。對稱式加密技術就是使用相同的金鑰對資料進行加密與解密,就像前段文章中的例子。對稱式加密技術的優點是運算效率較高,但是用於公開場合傳輸(比方說在網路上傳檔案)時,會遇到無法在隱密情況下傳輸資料的情況。
ADVERTISEMENT
非對稱式加密技術就是為了解決這個問題而設計,它的特色是加密與解密使用不同的金鑰,加密時使用加密金鑰,而解密時就使用解密金鑰。雖然這種方式的運算效率比較低,但是要在公開場合傳輸資料時,接收方會先產生1對加密金鑰與解密金鑰,將加密金鑰傳送給對方,並將解密金鑰留在自己電腦中,對方只要以加密金鑰將資料加密後傳送過來,接收方就可以透過解密金鑰進行解密。由於解密金鑰未曾曝光於公開場合,所以除非將加密技術破解,否則從中竊聽者也無法解讀密文。
在我們要探討的密碼安全議題,像是網路服務的登入密碼等應用,主要集中在對稱性加密這部分,下篇文章筆者將分析常見的攻擊與破解方式,並在最後一篇文章中,提供選擇、設計密碼的建議。
ADVERTISEMENT
▲非對稱加密技術具有2個不同的金鑰,使用加密金鑰將明文加密為密文。
▲解密時則使用解密金鑰將密文還原為明文,由於加、解密使用不同金鑰,故稱非對稱加密。
▲由於對稱加密只有1個金鑰,所以只有在傳送金鑰時從中攔截,取得金鑰後就能解讀密文。
▲使用非對稱加密的情況下,由於解密金鑰不經過傳輸,所以不必擔心被攔截。
延伸閱讀:
ADVERTISEMENT