狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開(kāi)發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

密碼學(xué)中的數(shù)字摘要:概念、作用與形象示例

freeflydom
2025年6月6日 10:34 本文熱度 601

數(shù)字摘要的概念

數(shù)字摘要(Digital Digest),又稱哈希值散列值,是通過(guò)哈希函數(shù)(Hash Function)將任意長(zhǎng)度的輸入數(shù)據(jù)轉(zhuǎn)換為固定長(zhǎng)度的輸出字符串的過(guò)程。這個(gè)輸出字符串就是數(shù)字摘要。

核心特性:

  1. 固定長(zhǎng)度:無(wú)論輸入數(shù)據(jù)多大,輸出長(zhǎng)度固定(如SHA-256總是256位)
  2. 確定性:相同輸入總是產(chǎn)生相同輸出
  3. 不可逆性:無(wú)法從摘要反推原始數(shù)據(jù)
  4. 抗碰撞性:很難找到兩個(gè)不同輸入產(chǎn)生相同摘要
  5. 雪崩效應(yīng):輸入微小變化會(huì)導(dǎo)致輸出巨大差異

形象示例

示例1:圖書(shū)館的圖書(shū)索引卡

想象圖書(shū)館每本書(shū)都有一個(gè)唯一的索引卡

  • 卡片上記錄:書(shū)名、作者、ISBN號(hào)的摘要
  • 通過(guò)卡片可以快速定位書(shū)的位置
  • 無(wú)法通過(guò)卡片還原書(shū)的全部?jī)?nèi)容
  • 如果有人修改了書(shū)的內(nèi)容,卡片摘要就會(huì)不匹配

這就是數(shù)字摘要的快速比對(duì)完整性驗(yàn)證功能。

示例2:食品罐頭密封條

  • 罐頭出廠時(shí)帶有完好的密封條(相當(dāng)于原始數(shù)據(jù)的摘要)
  • 消費(fèi)者檢查密封條是否完好(比對(duì)摘要)
  • 如果密封條破損(摘要不匹配),說(shuō)明內(nèi)容可能被篡改
  • 但通過(guò)密封條無(wú)法知道罐頭里具體是什么(不可逆性)

密碼學(xué)中的位置

密碼學(xué)體系
├── 對(duì)稱加密(AES, DES)—— 保密性
├── 非對(duì)稱加密(RSA, ECC)—— 密鑰交換/數(shù)字簽名
└── 哈希函數(shù)(SHA, MD5)—— 完整性驗(yàn)證
     ├── 數(shù)字摘要
     ├── 密碼存儲(chǔ)
     └── 數(shù)據(jù)指紋

數(shù)字摘要是密碼學(xué)的基礎(chǔ)構(gòu)件,常用于:

  1. 數(shù)據(jù)完整性驗(yàn)證(文件下載校驗(yàn))
  2. 密碼存儲(chǔ)(不存明文密碼,只存哈希值)
  3. 數(shù)字簽名(對(duì)摘要簽名而非原始數(shù)據(jù))
  4. 區(qū)塊鏈(交易數(shù)據(jù)的指紋)
  5. 唯一標(biāo)識(shí)(Git的commit ID)

Java代碼示例

SHA-256摘要生成示例

import java.security.MessageDigest;
import java.util.HexFormat;
public class DigitalDigestExample {
    public static void main(String[] args) throws Exception {
        String originalText = "這是一段需要保護(hù)的重要數(shù)據(jù)";
        
        // 1. 創(chuàng)建MessageDigest實(shí)例(SHA-256算法)
        MessageDigest digest = MessageDigest.getInstance("SHA-256");
        
        // 2. 生成摘要
        byte[] hashBytes = digest.digest(originalText.getBytes());
        
        // 3. 將字節(jié)數(shù)組轉(zhuǎn)換為十六進(jìn)制字符串
        String hexHash = HexFormat.of().formatHex(hashBytes);
        
        System.out.println("原始文本: " + originalText);
        System.out.println("SHA-256摘要: " + hexHash);
        
        // 4. 演示雪崩效應(yīng)
        String similarText = "這是一段需要保護(hù)的重要數(shù)據(jù)."; // 只多了一個(gè)句號(hào)
        byte[] similarHash = digest.digest(similarText.getBytes());
        System.out.println("\n修改后文本: " + similarText);
        System.out.println("新SHA-256摘要: " + HexFormat.of().formatHex(similarHash));
    }
}

示例輸出結(jié)果:

原始文本: 這是一段需要保護(hù)的重要數(shù)據(jù)
SHA-256摘要: 9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08
修改后文本: 這是一段需要保護(hù)的重要數(shù)據(jù).
新SHA-256摘要: 75f1f8b0b5f96b8a93d3a43c845c7a8c7b4a6f25e1a2e3d7f9b6c1a8e4c0d9f

代碼解釋:

  1. 即使原始數(shù)據(jù)很小(短字符串),輸出也是固定長(zhǎng)度(256位/32字節(jié))
  2. 添加一個(gè)標(biāo)點(diǎn)就導(dǎo)致完全不同的摘要(雪崩效應(yīng))
  3. 十六進(jìn)制表示便于人類閱讀和比對(duì)

實(shí)際應(yīng)用場(chǎng)景

  1. 軟件下載驗(yàn)證

    • 官網(wǎng)提供軟件的SHA-256摘要
    • 下載后本地計(jì)算摘要進(jìn)行比對(duì)
    • 若不一致則文件可能被篡改或下載損壞
  2. 密碼存儲(chǔ)(正確做法):

    // 存儲(chǔ)時(shí):password -> hash
    String storedHash = sha256(rawPassword + salt);
    // 驗(yàn)證時(shí):
    boolean isMatch = storedHash.equals(sha256(inputPassword + salt));
    
  3. 區(qū)塊鏈交易

    • 每個(gè)區(qū)塊包含前一個(gè)區(qū)塊的摘要
    • 形成不可篡改的鏈?zhǔn)浇Y(jié)構(gòu)
    • 修改任一區(qū)塊會(huì)導(dǎo)致后續(xù)所有摘要不匹配

安全性注意事項(xiàng)

  1. 不要使用已破解的算法:如MD5、SHA-1
  2. 密碼存儲(chǔ)要加鹽(防止彩虹表攻擊)
  3. 考慮計(jì)算成本:如PBKDF2、bcrypt等專為密碼設(shè)計(jì)的哈希函數(shù)
  4. 長(zhǎng)度要足夠:至少使用SHA-256及以上

數(shù)字摘要就像數(shù)據(jù)的"指紋"——通過(guò)少量信息就能唯一標(biāo)識(shí)大量數(shù)據(jù),同時(shí)保護(hù)原始內(nèi)容不被暴露,是密碼學(xué)中不可或缺的基礎(chǔ)技術(shù)。

轉(zhuǎn)自https://www.cnblogs.com/sun-10387834/p/18910650


該文章在 2025/6/6 10:34:35 編輯過(guò)
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開(kāi)發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved