數據加密與解密
密碼體制
從事數據加密研究的人稱為密碼編碼者(Cryptographer),而從事對密碼解密的專業人士稱為密碼分析者(Cryptanalyst)。如今數據加密技術被廣泛地套用與國民經濟各個領域,特別是政府機關和國防情報部門,此外才是科學研究機關、商業部門、新聞出版、金融證券、交通管制與電力輸送等部門。
公開密鑰密碼體制儘管加密技術被首先使用在軍事通信領域,但是人們或許出於安全的考量,開始逐漸對於商業機密、政府檔案等重要信息實施加密手段。數據加密應運而生。 一個加密的通信模型
一個加密的通信模型
明文(plaintext):作為加密輸入的原始信息,用M表示。 加密算法:變換函式F。 密文(ciphertext):明文變換結果,用C表示。
網路通信的加密過程
網路加密
網際網路作為信息傳輸的載體是不安全的信息媒介,它所遵循的通訊協定(TCP/IP協定)本身具有脆弱性。當初設計該協定的初衷並非出於對通信安全的考慮,而是出於對通信自由的考量。因此,一些基於TCP/IP協定的服務也是極不安全;另一方面,網際網路給眾多的商家帶來了無限的商機,許多網路黑客依照經濟利益或個人愛好,往往專門跟蹤Internet的特殊群體或個別敏感用戶,盜取他們的網路身份或銀行帳戶信息,再冒充合法用戶的身份,進一步侵入信息系統,非法盜取經濟、政治、軍事機密。為了保證網際網路的安全和充分發揮其商業信息交換的價值,人們選擇了數據加密技術,對訪問Internet網路的用戶實施身份認證。
加密技術在網路套用方面概括起來有:數據加密、身份認證、數字簽名和(不可否認性)防止個人否認事實的行為(撒謊)。其次就是對於黑客的非法入侵行為在網路上進行攔截。許多安全防護體系是基於密碼的,密碼一旦泄露出去可以導致很多的安全隱患,甚至導致網路的全面崩潰。當人在網路上進行訪問時必須進入第一道門坎——登錄(Login)。系統要求你鍵入的密碼(Password)以明文的形式被傳輸到用戶伺服器上,系統自動對你的用戶身份進行鑑別,這就是身份認證。確定你的身份後才容許你訪問該網路或進行彼此通訊。
身份認證
身份認證過程
身份認證是基於加密技術的一種網路防範行為,它的作用就是用來確定用戶是否是真實的。簡單的例子就是電子郵件,當用戶收到一封電子郵件時,郵件上面標有發信人的姓名和信箱地址,很多人可能會簡單地認為發信人就是信上說明的那個人,但實際上偽造一封電子郵件對於一個通常人來說是極為容易的事。在這種情況下,用戶需要用電子郵件源身份認證技術來防止電子郵件偽造,這樣就有理由用戶寫信的人就是信頭上說明的人,有些站點提供入站FTP和WWW服務,當然用戶通常接觸的這類服務是匿名服務,用戶的權力要受到限制,但也有的這類服務不是匿名的,如公司為了信息交流提供用戶的合作夥伴非匿名的FTP服務,或開發小組把他們的Web網頁上載到用戶的WWW伺服器上,現在的問題就是,用戶如何確定正在訪問用戶伺服器的人就是合法用戶呢?採用身份認證便可以解決這個問題。
有些時候,用戶可能需要對一些機密檔案進行加密,並不一定因為要在網路間進行傳輸,而是要防止別人竊得計算機密碼而獲得該機密檔案,因此要對數據實行加密,從而實現多重保護。例如,通常使用的VPN系統;又如在UNIX系統中常用的crypt(3)命令對檔案進行加密,儘管這些加密手段已不是那么先進,甚至有被破解的較大可能性,但是最起碼可以保證檔案的完整無誤地傳輸到信息接受方。