當前位置:成語大全網 - 書法字典 - 哈希碼值是多少?哈希碼是什麽?請告訴我。

哈希碼值是多少?哈希碼是什麽?請告訴我。

哈希碼值是多少?什麽是哈希碼到哈希碼的值?這是什麽?哈希碼?哈希值、私鑰加密和公鑰加密1。哈希值哈希算法將任意長度的二進制值映射為較小的固定長度的二進制值,稱為哈希值。哈希值是壹段數據的唯壹且極其緊湊的數字表示。如果明文被散列,甚至段落中的壹個字母被改變,隨後的散列將產生不同的值。在計算上不可能找到散列值相同的兩個不同輸入。消息認證碼(MAC)哈希函數通常用於與數字簽名壹起簽署數據,而消息檢測碼(MDC)哈希函數用於數據完整性。小紅和小明可以通過以下方式使用哈希函數來確保數據完整性。如果小紅給小明寫了壹條消息並創建了該消息的哈希,小明可以稍後對該消息進行哈希處理,並將他的哈希與原始哈希進行比較。如果兩個哈希值相同,則消息未被更改;但是,如果值不同,則消息在小紅編寫後已被更改。為了使這個系統工作,小紅必須對除小明之外的所有人保密原始哈希值。的。NET Framework提供了以下類來實現數字簽名算法:hmac sha 1 MAC triple des MD5 crypto service provider sha 1托管sha256托管sha384托管sha512托管隨機數生成是許多加密操作不可分割的壹部分。例如,加密密鑰需要盡可能隨機,以使生成的密鑰難以復制。加密隨機數生成器必須生成無法通過計算計算的輸出(概率低於p . 05);也就是說,任何估計下壹個輸出位的方法的成功概率都不能高於隨機猜測。中的類。NET Framework使用隨機數生成器來生成加密密鑰。RNGCryptoServiceProvider是隨機數生成器算法的實現。2.私鑰加密私鑰加密算法使用單個私鑰來加密和解密數據。由於擁有密鑰的任何壹方都可以使用它來解密數據,因此有必要保護密鑰免受未授權代理的攻擊。私鑰加密也稱為對稱加密,因為加密和解密使用相同的密鑰。私鑰加密算法非常快(與公鑰算法相比),特別適合對大型數據流執行加密轉換。通常,私鑰算法(稱為塊密碼)用於壹次加密壹個數據塊。塊密碼(如RC2、DES、特裏普德斯和Rijndael)通過加密將n字節的輸入塊轉換為加密字節的輸出塊。如果妳想加密或解密壹個字節序列,妳必須逐塊進行。因為n的大小非常小(對於RC2、DES和TripleDES,n=8字節;N=16【默認值】;n = 24對於Rijndael,n=32),因此大於n字節的值必須壹次加密壹個塊。基本類庫中提供的塊密碼類使用稱為密碼區塊鏈(CBC)的鏈模式,該模式使用密鑰和初始化向量(IV)對數據執行加密轉換。對於給定的私鑰K,沒有初始化向量的簡單分組密碼將把相同的明文輸入塊加密成相同的密文輸出塊。如果明文流中有重復塊,密文流中也會有重復塊。如果未經授權的用戶知道有關明文塊結構的所有信息,他們可以使用這些信息來解密已知的密文塊,並可能獲得您的密鑰。為了克服這個問題,可以將前壹個塊中的信息混合到加密下壹個塊的過程中。這樣,兩個相同的明文塊的輸出將是不同的。因為該技術使用前壹個塊來加密下壹個塊,所以它使用IV來加密第壹個數據塊。使用該系統,未授權用戶可能知道的公共消息頭將不會被用於對密鑰進行反向工程。破壞用這種密碼加密的數據的壹種方法是對每個可能的密鑰進行徹底搜索。根據用於執行加密的密鑰大小,即使使用最快的計算機來執行這樣的搜索也非常耗時,因此難以實現。使用更大的密鑰大小將使解密更加困難。雖然從理論上講,加密不會使對手無法檢索加密數據,但它確實大大增加了這樣做的成本。如果要花三個月的時間進行徹底搜索以檢索僅在幾天內有意義的數據,那麽窮盡搜索的方法是不實用的。私鑰加密的缺點是,它假設雙方已經就密鑰和IV達成了協議,並向對方傳達了密鑰和IV的值。此外,密鑰必須對未授權用戶保密。由於這些問題,私鑰加密通常與公鑰加密壹起使用,以秘密傳遞key和IV的值。假設小紅和小明是希望在不安全的信道上通信的雙方,他們可能使用私鑰加密,如下所示。小紅和小明都同意使用具有特定密鑰和IV的特定算法(如Rijndael)。小紅編寫了壹條消息並創建了壹個用於發送該消息的網絡流。接下來,她使用密鑰和IV加密文本並通過互聯網發送。她沒有把鑰匙和靜脈註射液寄給小明。小明收到加密文本,並使用預先約定的密鑰和IV對其進行解密。如果傳輸被攔截,攔截器將無法恢復原始消息,因為攔截器不知道密鑰或IV。在這個方案中,密鑰必須保密,但IV不需要保密。在實際方案中,小紅或小明將生成私鑰並使用公鑰(非對稱)加密將私鑰(對稱)傳輸給另壹方。有關更多信息,請參見“公鑰加密”。的。NET Framework提供以下類來實現私鑰加密算法:descryptoserviceprovider RC2 Cryptosyserviceprovider Rijndael managed triplescryproposerviceprovider 3。公鑰加密使用必須對未授權用戶保密的私鑰和可以對任何人公開的公鑰。公鑰和私鑰在數學上都是相關的;用公鑰加密的數據只能用私鑰解密,而用私鑰簽名的數據只能用公鑰驗證。公鑰可以被任何人使用;該密鑰用於加密要發送給私鑰持有者的數據。兩個密鑰對於通信會話都是唯壹的。公鑰加密算法也稱為非對稱算法,因為加密數據需要壹個密鑰,解密數據需要另壹個密鑰。公鑰加密算法使用固定的緩沖區大小,而私鑰加密算法使用可變長度的緩沖區。公鑰算法不能像私鑰算法那樣將數據鏈接到流中,因為它只能加密少量數據。因此,非對稱操作不使用與對稱操作相同的流模型。雙方(小紅和小明)可以通過以下方式使用公鑰加密。首先,小紅生成壹個公鑰/私鑰對。如果小明想給小紅發送加密消息,他會向她索要公鑰。小紅通過不安全的網絡將她的公鑰發送給小明,然後小明使用該密鑰對消息進行加密。如果小明在不安全的渠道(如公共網絡)上收到小紅的密鑰,小明必須向小紅驗證他是否擁有小紅公鑰的正確副本。小明將加密的消息發送給小紅,小紅用她的私鑰解密該消息。但是,在小紅的公鑰傳輸期間,未經授權的代理可能會截獲該密鑰。此外,同壹代理可能會攔截來自小明的加密消息。但是,代理無法用公鑰解密消息。該消息只能用小紅的私鑰解密,該私鑰尚未傳輸。小紅不使用她的私鑰加密給小明的回復消息,因為任何擁有公鑰的人都可以解密該消息。如果小紅想將消息發送回小明,她會向小明索要他的公鑰並用它來加密她的消息。然後,小明使用與他相關聯的私鑰來解密該消息。在壹個實際的方案中,小紅和小明使用公鑰(非對稱)加密來傳輸私鑰,並在他們對話的其余部分使用私鑰加密。公鑰加密具有更大的密鑰空間(或密鑰的可能值範圍),因此不太容易受到嘗試每個可能密鑰的窮舉攻擊。因為不需要保護公鑰,所以易於分發。公鑰算法可用於創建數字簽名來驗證數據發送者的身份。但是,公鑰算法非常慢(與私鑰算法相比),並且不適合加密大量數據。公鑰算法只對傳輸少量數據有用。