密碼在我們生活中處處可見,它們保護(hù)這我們方方面面的信息安全,但是我們對(duì)它的專業(yè)領(lǐng)域知之甚少。
通過講座我了解到學(xué)是研究編制密碼和破譯密碼的技術(shù)科學(xué)。密碼學(xué)又詳細(xì)分成編碼學(xué)和譯碼學(xué)兩個(gè)方面,其中通過研究密碼變化的客觀規(guī)律,應(yīng)用于編制密碼來保守通信秘密的專業(yè)稱為編碼學(xué);應(yīng)用于破譯密碼以獲取通信情報(bào)的,稱為破譯學(xué)。
抗戰(zhàn)時(shí)期中國著名密碼破譯專家池步洲,因破獲日軍密碼促使“海軍之花”山本五十六被截殺。足以見得密碼保密的重要與破譯的必要。
我曾經(jīng)好奇為什么每當(dāng)我們忘記密碼時(shí),客戶端不是通過一些方法將我們?cè)嫉拿艽a返還給我們,而是讓我們重新設(shè)置一個(gè)新的密碼,經(jīng)過思考我想到密碼被存儲(chǔ)在了某個(gè)網(wǎng)站的某個(gè)數(shù)據(jù)庫里面,那么該網(wǎng)站管理員就可以看到你的密碼。并且如果存放密碼的數(shù)據(jù)庫被駭入,那大量的用戶信息將將會(huì)泄露。所以存儲(chǔ)這種處理方法伴隨著巨大的風(fēng)險(xiǎn)。
通過了解密碼學(xué),我接觸的MD5算法,它能把密碼變成一段無規(guī)律字符串,并且這個(gè)過程是不能逆運(yùn)算的,即無法通過MD5值算出原始密碼。
因此網(wǎng)站選擇僅存儲(chǔ)你的MD5值。當(dāng)用戶登錄時(shí),輸入密碼后網(wǎng)站重新計(jì)算MD5值,通過對(duì)比MD5值判斷密碼是否正確。因此,我們忘記密碼時(shí),網(wǎng)站會(huì)通過直接刪除MD5值來更新數(shù)據(jù),從而通過我們?cè)O(shè)置的新密碼生成新的MD5值,這樣既能保證用戶的信息安全又能確定密碼的準(zhǔn)確。
同樣,我們電腦的開機(jī)密碼也是這樣,我們的開機(jī)密碼的驗(yàn)算MD5值保存在c盤,同樣是可刪除不可修改
在這實(shí)際問題背后,MD5值又設(shè)及名詞“哈希算法”:Hash函數(shù)是雜湊、散列函數(shù)的特殊情況,是單向函數(shù)。y=h(M)通過輸入任意長度的M得到h(M)固定長度,又稱信息摘要,一般至少為128位。給定h和M計(jì)算h(M)很容易,但h(M)不可逆運(yùn)算出M。因此運(yùn)營公司不能通過MD5值得到我們的密碼。
區(qū)塊鏈技術(shù)的應(yīng)用和開發(fā),數(shù)字加密技術(shù)是關(guān)鍵。因此它與密碼學(xué)緊密相關(guān),區(qū)塊鏈技術(shù)作為新興的技術(shù),其中大量利用了現(xiàn)代密碼學(xué)的已有成果,包括哈希、加解密等,在我們生活中,計(jì)算機(jī)啟動(dòng)后,利用TPM和Hash函數(shù)層層度量,保證合法軟件才能啟動(dòng)。