『壹』 現代的信息加密方式是怎樣的
首先題主提到的小說里說Enigma採用迴旋加密能夠做到永遠無法暴力破解,這是嚴重錯誤的,因為從密碼學理論上說,不會存在一個絕對安全無法破解的加密演算法。一個真正理想的安全加密方案是一次一密(one-time pad),也就是使用隨機的和明文等長的密鑰進行抑或操作生成密文,密鑰使用一次之後即作廢。這個方案雖然很安全,但是因為在密鑰的生成和分發上存在較大的困難,所以在實際應用中並不是很廣泛。這也就催生了研究密碼學演算法的必要性。現在密碼演算法的設計都遵從了Kerckhoff加密原則,即加密系統的保密性不依賴於對加密體制或演算法的保密,而依賴於密鑰,這一原則現也被普遍承認為傳統密碼與現代密碼的分界線。依據密碼體制的不同原理,分成對稱(單鑰)密碼體制和非對稱(公鑰)密碼體制兩大類。DES(Data Encryption Standard)的產生,是現代密碼的第一個標志,它在1977年被美國政府正式採納為數據加密的標准,密鑰長度為64位,但在1997年的一次破譯挑戰中被人用96天(以1999年超級計算機的計算能力,破解只用22小時)破解之後,逐漸開始被廢棄。代替DES的是AES(Advanced Encryption Standard),其密鑰長度可選擇128位、192位、256位,該標准依舊是對稱密鑰加密中最流行的演算法。非對稱加密的思想非常有趣,它主要依賴了單向函數的計算特性,也就是正向求解很容易而逆向求解卻會非常困難。生活中的例子,比如覆水難收、破鏡難圓都可以看做單向函數,你把鏡子打碎很容易,但是把碎片重新恢復成圓鏡卻不現實;在數學中這樣的函數也有很多,比如大數因子分解(RSA演算法的原理基礎)、橢圓曲線離散對數問題(ECC演算法原理基礎)。相比較對稱加密體制,非對稱加密的主要優點是密鑰的分發比較方便。單鑰密碼體制在進行加密前,要求通信雙方必須擁有相同的密鑰,並且這個密鑰不能被第三方知曉,這就常常需要藉助不可信的網路環境以外的其它方式(如人工方式)進行密鑰傳遞,代價比較大。而非對稱加密體制卻不存在這個問題,通信的接收方可以將其公鑰(PK)在網路上公開,任何一個想和他通信的發送方都可以用他的公鑰將信息加密後發送給他,而不必擔心被他人截獲之後破解,因為只有接收方的私鑰(SK)才能將其解密(其中公鑰和私鑰的選擇是可以對換的,也就是兩個密鑰任何一個做公鑰或私鑰都可以)。既然非對稱密鑰如此方便,是否意味著使用非對稱體制完全代替對稱體制就好了?答案肯定不是,非對稱體制也有自身的缺點,最大的缺點比如加解密的效率非常低,以至於可能會影響正常通信的體驗。所以在加密通信的實踐中,經常使用數字信封技術將二者的優點結合使用,即用非對稱加密傳遞對稱加密的密鑰,然後再在實際的通信過程中使用對稱加密的密鑰加密真正要發送的信息。除此之外,非對稱加密的另一大類應用是數字簽名,所謂簽名,就是要讓人確信這個消息真的是你產生的,而不是別人偽造的,具體操作和加密傳遞會話信息的過程恰好相反,首先消息的產生者用自己的私鑰對要簽名的信息進行加密,然後發送給接收者,接收者用消息產生者的公鑰進行解密,若得到正確的信息,則證明是真實的,因為只有消息產生者私鑰加密的信息才能唯一被消息產生者的公鑰解密。
『貳』 數字簽名一般用什麼演算法實現
應該是非對稱加密演算法。DES是一種對稱加密演算法,不能做為數字簽名的演算法。
對稱加密演算法由於加密和解密都是使用同一個密鑰,所以無法保證密鑰的完全保密(至少加密解密的兩個人知道),也就不能唯一的確定加密者的身份。
『叄』 數字簽名加密演算法
這個問題 如果不是專業人員估計累死你也找不到這樣的文章。
想自學 就必須要有深刻的技術 另外其中用到很多高數問題的。
那些演算法例子不用去看 越看越亂。
學一些 語言:C JAVA 什麼的 還有 數學一定要過關如果數學不好的話 技術會了語言也沒用 因為其中的演算法你沒法編譯那麼就不是一個好的加密程序。
如果能弄會OK了。
『肆』 數字簽名與數字加密
數字簽名主要經過以下幾個過程:
信息發送者使用一單向散列函數(HASH函數)對信息生成信息摘要;
信息發送者使用自己的私鑰簽名信息摘要;
信息發送者把信息本身和已簽名的信息摘要一起發送出去;
信息接收者通過使用與信息發送者使用的同一個單向散列函數(HASH函數)對接收的信息本身生成新的信息摘要,再使用信息發送者的公鑰對信息摘要進行驗證,以確認信息發送者的身份和信息是否被修改過。
數字加密主要經過以下幾個過程:
當信息發送者需要發送信息時,首先生成一個對稱密鑰,用該對稱密鑰加密要發送的報文;
信息發送者用信息接收者的公鑰加密上述對稱密鑰;
信息發送者將第一步和第二步的結果結合在一起傳給信息接收者,稱為數字信封;
信息接收者使用自己的私鑰解密被加密的對稱密鑰,再用此對稱密鑰解密被發送方加密的密文,得到真正的原文。
數字簽名和數字加密的過程雖然都使用公開密鑰體系,但實現的過程正好相反,使用的密鑰對也不同。數字簽名使用的是發送方的密鑰對,發送方用自己的私有密鑰進行加密,接收方用發送方的公開密鑰進行解密,這是一個一對多的關系,任何擁有發送方公開密鑰的人都可以驗證數字簽名的正確性。數字加密則使用的是接收方的密鑰對,這是多對一的關系,任何知道接收方公開密鑰的人都可以向接收方發送加密信息,只有唯一擁有接收方私有密鑰的人才能對信息解密。另外,數字簽名只採用了非對稱密鑰加密演算法,它能保證發送信息的完整性、身份認證和不可否認性,而數字加密採用了對稱密鑰加密演算法和非對稱密鑰加密演算法相結合的方法,它能保證發送信息保密性。
『伍』 簡述數字簽名的原理
數字簽名就是附加在數據單元上的一些數據,或是對數據單元所作的密碼變換。這種數據或變換允許數據單元的接收者用以確認數據單元的來源和數據單元的完整性並保護數據,防止被人(例如接收者)進行偽造。
它是對電子形式的消息進行簽名的一種方法,一個簽名消息能在一個通信網路中傳輸。基於公鑰密碼體制和私鑰密碼體制都可以獲得數字簽名,主要是基於公鑰密碼體制的數字簽名。包括普通數字簽名和特殊數字簽名。
(5)現代的數字簽名使用加密的方法擴展閱讀:
數字簽名有兩種功效:一是能確定消息確實是由發送方簽名並發出來的,因為別人假冒不了發送方的簽名。二是數字簽名能確定消息的完整性。
因為數字簽名的特點是它代表了文件的特徵,文件如果發生改變,數字摘要的值也將發生變化。不同的文件將得到不同的數字摘要。 一次數字簽名涉及到一個哈希函數、發送者的公鑰、發送者的私鑰。」
數字簽名技術是將摘要信息用發送者的私鑰加密,與原文一起傳送給接收者。接收者只有用發送者的公鑰才能解密被加密的摘要信息,然後用HASH函數對收到的原文產生一個摘要信息,與解密的摘要信息對比。如果相同,則說明收到的信息是完整的,在傳輸過程中沒有被修改,否則說明信息被修改過,因此數字簽名能夠驗證信息的完整性。
『陸』 電子簽名的加密技術
目前國內領先的電子簽名平台,其加密技術很先進,甚至獲得了商用密碼產品銷售許可證。其應用具體如下:
1. 多重身份認證程序
個人用戶通過綁定身份證、手機號及銀行卡等相關信息並驗證,確保個人信息真實有效;
企業用戶審核企業信息,綁定授權簽名者身份信息,確保企業主體信息合法有效。
除此之外,面向所有個人及企業用戶提供數字證書驗證服務,用戶使用權威公正的第三方機構(CA),在進行登錄、簽署等操作時進行身份識別、杜絕身份冒充。
2. 三萬年才能破譯的軍用密保強度
採用2048位數字及字母的密碼組合加密存儲用戶敏感信息及合同文件,傳輸過程中,個人隱私及重要商業機密信息將以一堆數字及字母組合呈現,即便被意外截獲,壞人也只能得到一堆讀不懂的亂碼,無法獲取用戶私密信息。
3. 雙重保障文件防止篡改
不可抵賴:採用第三方可信時間戳技術,標注每一份合同簽署時間,確保文件簽署時間的功利性和不被篡改。
防止篡改:電子文件採用ISOPDF格式,採用RSA等演算法進行簽名及驗證,每一份電子合同文件在簽訂後就會生成一個固定的數值,一旦被篡改,數值將會出現變化,經過比對即可有效判斷文件是否被篡改。
4. 9份副本文件輕松應對突發狀況
所有合同均在多重雲平台進行存儲,能夠輕松應對同城、異地、災備等多元化的儲存需求。
『柒』 目前具體的數據加密實現方法有哪兩種
對稱/非對稱密鑰加密演算法
數據加密技術 所謂數據加密(Data Encryption)技術是指將一個信息(或稱明文,plain text)經過加密鑰匙(Encryption key)及加密函數轉換,變成無意義的密文(cipher text),而接收方則將此密文經過解密函數、解密鑰匙(Decryption key)還原成明文。加密技術是網路安全技術的基石。
數據加密技術要求只有在指定的用戶或網路下,才能解除密碼而獲得原來的數據,這就需要給數據發送方和接受方以一些特殊的信息用於加解密,這就是所謂的密鑰。其密鑰的值是從大量的隨機數中選取的。按加密演算法分為專用密鑰和公開密鑰兩種。
專用密鑰,又稱為對稱密鑰或單密鑰,加密和解密時使用同一個密鑰,即同一個演算法。如DES和MIT的Kerberos演算法。單密鑰是最簡單方式,通信雙方必須交換彼此密鑰,當需給對方發信息時,用自己的加密密鑰進行加密,而在接收方收到數據後,用對方所給的密鑰進行解密。當一個文本要加密傳送時,該文本用密鑰加密構成密文,密文在信道上傳送,收到密文後用同一個密鑰將密文解出來,形成普通文體供閱讀。在對稱密鑰中,密鑰的管理極為重要,一旦密鑰丟失,密文將無密可保。這種方式在與多方通信時因為需要保存很多密鑰而變得很復雜,而且密鑰本身的安全就是一個問題。
對稱密鑰是最古老的,一般說「密電碼」採用的就是對稱密鑰。由於對稱密鑰運算量小、速度快、安全強度高,因而目前仍廣泛被採用。
DES是一種數據分組的加密演算法,它將數據分成長度為64位的數據塊,其中8位用作奇偶校驗,剩餘的56位作為密碼的長度。第一步將原文進行置換,得到64位的雜亂無章的數據組;第二步將其分成均等兩段;第三步用加密函數進行變換,並在給定的密鑰參數條件下,進行多次迭代而得到加密密文。
公開密鑰,又稱非對稱密鑰,加密和解密時使用不同的密鑰,即不同的演算法,雖然兩者之間存在一定的關系,但不可能輕易地從一個推導出另一個。有一把公用的加密密鑰,有多把解密密鑰,如RSA演算法。
非對稱密鑰由於兩個密鑰(加密密鑰和解密密鑰)各不相同,因而可以將一個密鑰公開,而將另一個密鑰保密,同樣可以起到加密的作用。
在這種編碼過程中,一個密碼用來加密消息,而另一個密碼用來解密消息。在兩個密鑰中有一種關系,通常是數學關系。公鑰和私鑰都是一組十分長的、數字上相關的素數(是另一個大數字的因數)。有一個密鑰不足以翻譯出消息,因為用一個密鑰加密的消息只能用另一個密鑰才能解密。每個用戶可以得到唯一的一對密鑰,一個是公開的,另一個是保密的。公共密鑰保存在公共區域,可在用戶中傳遞,甚至可印在報紙上面。而私鑰必須存放在安全保密的地方。任何人都可以有你的公鑰,但是只有你一個人能有你的私鑰。它的工作過程是:「你要我聽你的嗎?除非你用我的公鑰加密該消息,我就可以聽你的,因為我知道沒有別人在偷聽。只有我的私鑰(其他人沒有)才能解密該消息,所以我知道沒有人能讀到這個消息。我不必擔心大家都有我的公鑰,因為它不能用來解密該消息。」
公開密鑰的加密機制雖提供了良好的保密性,但難以鑒別發送者,即任何得到公開密鑰的人都可以生成和發送報文。數字簽名機制提供了一種鑒別方法,以解決偽造、抵賴、冒充和篡改等問題。
數字簽名一般採用非對稱加密技術(如RSA),通過對整個明文進行某種變換,得到一個值,作為核實簽名。接收者使用發送者的公開密鑰對簽名進行解密運算,如其結果為明文,則簽名有效,證明對方的身份是真實的。當然,簽名也可以採用多種方式,例如,將簽名附在明文之後。數字簽名普遍用於銀行、電子貿易等。
數字簽名不同於手寫簽字:數字簽名隨文本的變化而變化,手寫簽字反映某個人個性特徵,是不變的;數字簽名與文本信息是不可分割的,而手寫簽字是附加在文本之後的,與文本信息是分離的。
值得注意的是,能否切實有效地發揮加密機制的作用,關鍵的問題在於密鑰的管理,包括密鑰的生存、分發、安裝、保管、使用以及作廢全過程。