[{"data":1,"prerenderedAt":271},["ShallowReactive",2],{"content:zh-TW:sha1-generator":3},{"id":4,"title":5,"body":6,"description":247,"extension":248,"faq":249,"kind":262,"locale":263,"meta":264,"navigation":265,"path":266,"seo":267,"seoTitle":268,"stem":269,"__hash__":270},"pages\u002Fzh-TW\u002Fsha1-generator.md","SHA-1 雜湊產生器",{"type":7,"value":8,"toc":236},"minimark",[9,13,17,20,23,26,37,47,50,83,93,108,112,115,119,122,125,129,132,138,142,198,201,223],[10,11,12],"h2",{"id":12},"本工具計算什麼",[14,15,16],"p",{},"SHA-1 輸出 160 位元摘要，通常表示為 40 個十六進位字元。本頁適用於重現舊系統結果、核對相容性測試或讀取歷史清單。即使看起來都是十六進位，也不能把 SHA-1 與 MD5、SHA-256 直接比較。儲存結果時，請一併記錄演算法名稱。",[14,18,19],{},"重現歷史摘要需要完全相同的位元組，不只是視覺相似的文字。編輯器新增的換行、檔案開頭的位元組順序記號、不同的 Unicode 表示，都可能改變結果。核對已儲存文件時，應選取原始檔案，而非只複製畫面中的文字。",[14,21,22],{},"SHA-1 存在已知碰撞弱點。舊協定使用它，不表示新系統也應採用它。如果需要證明訊息來自持有共享金鑰的一方，應使用適當的 HMAC 等驗證機制；無金鑰摘要不提供這類身分保證。",[10,24,25],{"id":25},"可核對的範例",[14,27,28,32,33,36],{},[29,30,31],"code",{},"UTF-8"," · ",[29,34,35],{},"abc"," · SHA-1",[38,39,45],"pre",{"className":40,"code":42,"language":43,"meta":44},[41],"language-text","a9993e364706816aba3e25717850c26c9cd0d89d\n","text","",[29,46,42],{"__ignoreMap":44},[10,48,49],{"id":49},"如何計算與比較",[51,52,53,69,76],"ol",{},[54,55,56,57,61,62,65,66,68],"li",{},"在",[58,59,60],"strong",{},"輸入文字","中貼上要計算的內容，或按",[58,63,64],{},"範例","載入 ",[29,67,35],{},"。工具以 UTF-8 編碼計算，保留輸入中的空格與換行。",[54,70,71,72,75],{},"單筆文字模式下，不超過 64 KiB 的非空輸入會在停止輸入片刻後自動計算。計算空字串或較大的文字時，請按",[58,73,74],{},"產生雜湊","。修改輸入後，舊結果會立即清除。",[54,77,78,79,82],{},"若要核對已儲存的檔案，請切換至",[58,80,81],{},"檔案校驗","，確認演算法後選取或拖入檔案。檔案模式會讀取原始位元組並自動開始計算。",[14,84,85,86,89,90,92],{},"批次處理時，勾選",[58,87,88],{},"逐行計算","，選擇是否包含空白行，再按",[58,91,74],{},"。逐行模式不會自動計算。CRLF、LF 與 CR 僅用來分隔記錄，不計入各行摘要；重複行保留各自的原始行號。",[14,94,95,96,99,100,103,104,107],{},"將完整的十六進位參考值貼到",[58,97,98],{},"比較預期值（選填）","，再按",[58,101,102],{},"核對","。比對時忽略字母大小寫與頭尾空白，但不接受內部空格或錯誤長度。",[58,105,106],{},"複製","會保留完整結果。TXT、CSV 匯出包含輸入識別碼、演算法與摘要，不包含原始文字或金鑰。",[10,109,111],{"id":110},"限制隱私與下一步","限制、隱私與下一步",[14,113,114],{},"文字上限為 10 MiB；逐行模式最多接受 10,000 筆記錄，以過濾空白行前的數量計算。檔案佇列最多 50 個檔案，每個不超過 1 GiB，依序以 2 MiB 分塊讀取。這些限制用來控制瀏覽器資源占用，不保證每支手機都能快速處理最大輸入；必要時可取消計算。計算在瀏覽器內完成，正常的頁面與資源請求仍會傳送至託管伺服器。",[10,116,118],{"id":117},"sha-1-檔案摘要不等於-git-物件-id","SHA-1 檔案摘要不等於 Git 物件 ID",[14,120,121],{},"本頁計算的是文字或檔案的原始位元組。在採用 SHA-1 的 Git 儲存庫中，物件 ID 不只是可見檔案內容的 SHA-1：Git 會加入物件標頭，建立 blob 時也可能套用篩選規則。因此，與 git hash-object 不同，不能直接證明本頁演算法有誤。",[14,123,124],{},"核對舊系統前，先確認欄位需要的是原始檔案摘要、物件識別碼，還是簽章結構內的摘要。原始 SHA-1 可在這裡重現，Git 物件則應使用 Git 本身的指令。保留協定指定的演算法名稱，不要在未調整協定時直接換成更長的雜湊。",[10,126,128],{"id":127},"原始檔案-sha-1-與-git-blob-sha-1-對照","原始檔案 SHA-1 與 Git blob SHA-1 對照",[14,130,131],{},"對於 abc 這三個位元組，Git 的 SHA-1 blob 表示會先加入 blob 3 與一個零位元組。不要把可見的反斜線加數字零輸入文字框：這是在說明物件表示，本工具沒有 Git 物件計算模式。",[38,133,136],{"className":134,"code":135,"language":43,"meta":44},[41],"SHA-1 \u002F 原始 abc 位元組:\na9993e364706816aba3e25717850c26c9cd0d89d\nSHA-1 \u002F Git blob (62 6c 6f 62 20 33 00 61 62 63):\nf2ba8f84ab5c1bce84a7b441cb1959cfc7093b7f\n",[29,137,135],{"__ignoreMap":44},[10,139,141],{"id":140},"sha-1-相容性問題排查","SHA-1 相容性問題排查",[143,144,145,161],"table",{},[146,147,148],"thead",{},[149,150,151,155,158],"tr",{},[152,153,154],"th",{},"現象",[152,156,157],{},"原因",[152,159,160],{},"處理方式",[162,163,164,176,187],"tbody",{},[149,165,166,170,173],{},[167,168,169],"td",{},"與 Git 物件 ID 不同",[167,171,172],{},"Git 計算的是物件表示，而非單獨檔案內容",[167,174,175],{},"使用 git hash-object，並檢查儲存庫篩選規則。",[149,177,178,181,184],{},[167,179,180],{},"參考值有 64 個十六進位字元",[167,182,183],{},"這不是完整的普通 SHA-1 摘要",[167,185,186],{},"確認系統是否實際要求 SHA-256。",[149,188,189,192,195],{},[167,190,191],{},"舊檔案編輯後無法重現摘要",[167,193,194],{},"儲存可能改變編碼或換行",[167,196,197],{},"優先計算未經編輯的原始檔案。",[10,199,200],{"id":200},"相關工具與指南",[202,203,204,211,217],"ul",{},[54,205,206],{},[207,208,210],"a",{"href":209},"\u002Fzh-TW\u002Ffile-md5","檔案校驗工具",[54,212,213],{},[207,214,216],{"href":215},"\u002Fzh-TW\u002Fsha256-generator","SHA-256",[54,218,219],{},[207,220,222],{"href":221},"\u002Fzh-TW\u002Fguides\u002Fmd5-vs-sha256","MD5 與 SHA-256 的差異",[14,224,225,32,231],{},[207,226,230],{"href":227,"rel":228},"https:\u002F\u002Fcsrc.nist.gov\u002Fpubs\u002Ffips\u002F180-4\u002Fupd1\u002Ffinal",[229],"nofollow","FIPS 180-4",[207,232,235],{"href":233,"rel":234},"https:\u002F\u002Fgit-scm.com\u002Fbook\u002Fen\u002Fv2\u002FGit-Internals-Git-Objects",[229],"Git object format",{"title":44,"searchDepth":237,"depth":237,"links":238},2,[239,240,241,242,243,244,245,246],{"id":12,"depth":237,"text":12},{"id":25,"depth":237,"text":25},{"id":49,"depth":237,"text":49},{"id":110,"depth":237,"text":111},{"id":117,"depth":237,"text":118},{"id":127,"depth":237,"text":128},{"id":140,"depth":237,"text":141},{"id":200,"depth":237,"text":200},"為舊系統相容性工作計算 SHA-1，核對原始位元組並了解其安全限制。","md",[250,253,256,259],{"question":251,"answer":252},"SHA-1 有碰撞弱點，為何仍提供？","用於重現既有格式與舊系統相容性測試，不代表建議在新的安全設計採用 SHA-1。",{"question":254,"answer":255},"為什麼檔案 SHA-1 與 git hash-object 不同？","Git 會在物件內容前加入類型與長度等標頭，也可能套用篩選規則。本頁只計算原始位元組摘要，不產生 Git 物件 ID。",{"question":257,"answer":258},"舊介面中的 SHA-1 能直接改成 SHA-256 嗎？","不能直接替換，除非同步調整協定或資料格式。兩者的摘要長度與演算法識別不同。相容性重現與系統遷移應分別處理。",{"question":260,"answer":261},"SHA-1 相符就能證明舊版軟體來自官方嗎？","單憑相符不能證明。參考值必須來自可信來源，而且 SHA-1 有碰撞弱點。有官方簽章驗證流程時，應依該流程確認來源。","tool","zh-TW",{},true,"\u002Fzh-tw\u002Fsha1-generator",{"title":5,"description":247},"SHA-1 雜湊產生器 — md5hash.net","zh-TW\u002Fsha1-generator","D3MwvESPcFJ3sErqmyQCOluNybuBg3HhleBFnb5Xxyo",1792048884904]