[{"data":1,"prerenderedAt":275},["ShallowReactive",2],{"content:en:sha1-generator":3},{"id":4,"title":5,"body":6,"description":251,"extension":252,"faq":253,"kind":266,"locale":267,"meta":268,"navigation":269,"path":270,"seo":271,"seoTitle":272,"stem":273,"__hash__":274},"pages\u002Fen\u002Fsha1-generator.md","SHA-1 Hash Generator",{"type":7,"value":8,"toc":240},"minimark",[9,14,18,21,24,28,39,49,53,86,96,111,115,118,122,125,128,132,135,141,145,201,205,227],[10,11,13],"h2",{"id":12},"what-this-tool-calculates","What this tool calculates",[15,16,17],"p",{},"SHA-1 produces 160 bits, written as 40 hexadecimal characters. This page is intended for checking existing systems that still request SHA-1, such as older manifests and compatibility fixtures. A SHA-1 result cannot be compared directly with an MD5 value or a SHA-256 value, regardless of letter case.",[15,19,20],{},"Reproducing a historical digest requires the historical bytes, not just text that looks the same. A copied newline, an editor's byte-order mark, or a different Unicode representation can change the answer. Use file mode for the actual saved artifact rather than copying the document body into the text box.",[15,22,23],{},"SHA-1 has known collision weaknesses. Its presence in an older protocol is not an endorsement for a new design. Prefer a modern algorithm where you control the format, and use a keyed authentication construction when the task requires proof of a shared secret rather than a plain fingerprint.",[10,25,27],{"id":26},"worked-example","Worked example",[15,29,30,34,35,38],{},[31,32,33],"code",{},"UTF-8"," · ",[31,36,37],{},"abc"," · SHA-1",[40,41,47],"pre",{"className":42,"code":44,"language":45,"meta":46},[43],"language-text","a9993e364706816aba3e25717850c26c9cd0d89d\n","text","",[31,48,44],{"__ignoreMap":46},[10,50,52],{"id":51},"how-to-calculate-and-compare","How to calculate and compare",[54,55,56,72,79],"ol",{},[57,58,59,60,64,65,68,69,71],"li",{},"Enter the exact text in ",[61,62,63],"strong",{},"Input text",", or choose ",[61,66,67],{},"Example"," to load ",[31,70,37],{},". Text is encoded as UTF-8; spaces and line endings are preserved.",[57,73,74,75,78],{},"In single-text mode, non-empty input up to 64 KiB updates after a short pause. Click ",[61,76,77],{},"Generate hash"," for empty input or larger text. Changing the input clears the previous result.",[57,80,81,82,85],{},"To check a saved file instead, open ",[61,83,84],{},"File checksum",", confirm the algorithm, and choose or drop the file. File mode reads its original bytes and starts automatically.",[15,87,88,89,92,93,95],{},"For line-by-line results, enable ",[61,90,91],{},"One hash per line",", choose whether to include empty lines, then click ",[61,94,77],{},". Line mode does not calculate automatically. CRLF, LF and CR separate records and are not included in each line's digest. Duplicate lines retain their original line numbers.",[15,97,98,99,102,103,106,107,110],{},"Paste only the complete hexadecimal reference into ",[61,100,101],{},"Compare expected value (optional)"," and click ",[61,104,105],{},"Check",". Letter case and surrounding pasted whitespace are ignored; internal spaces and the wrong length are rejected. ",[61,108,109],{},"Copy"," retains the full result. TXT and CSV exports include identifiers, algorithm names and digests, not source text or secret keys.",[10,112,114],{"id":113},"limits-privacy-and-next-steps","Limits, privacy and next steps",[15,116,117],{},"Text is limited to 10 MiB and line mode to 10,000 records, including empty records before filtering. Files are limited to 50 queue entries and 1 GiB each, read sequentially in 2 MiB chunks. These limits protect browser resources; they do not guarantee fast processing on every phone. Cancel if needed. Calculation takes place in the browser, while normal page and asset requests still reach the hosting service.",[10,119,121],{"id":120},"reproducing-sha-1-without-confusing-it-with-a-git-object-id","Reproducing SHA-1 without confusing it with a Git object ID",[15,123,124],{},"This page hashes the exact text or file bytes. In a SHA-1 Git repository, an object ID is not simply SHA-1 of the visible file contents: Git includes an object header, and filters can also affect the bytes used for a blob. A difference from git hash-object therefore does not by itself indicate a faulty SHA-1 implementation.",[15,126,127],{},"For a legacy integration, first establish whether its field expects a raw file digest, an object identifier or a digest inside a larger signed structure. Reproduce raw SHA-1 values here; use Git's own object commands for repository IDs. Keep the protocol's algorithm name with the result rather than silently replacing SHA-1 with a longer hash.",[10,129,131],{"id":130},"raw-file-sha-1-and-git-blob-sha-1","Raw file SHA-1 and Git blob SHA-1",[15,133,134],{},"For the three bytes abc, Git's SHA-1 blob representation starts with the bytes blob 3 followed by a zero byte. Do not type a visible backslash-zero into the editor: this example explains the object representation, not a Git mode in this tool.",[40,136,139],{"className":137,"code":138,"language":45,"meta":46},[43],"SHA-1 \u002F raw abc:\na9993e364706816aba3e25717850c26c9cd0d89d\nSHA-1 \u002F Git blob (62 6c 6f 62 20 33 00 61 62 63):\nf2ba8f84ab5c1bce84a7b441cb1959cfc7093b7f\n",[31,140,138],{"__ignoreMap":46},[10,142,144],{"id":143},"common-sha-1-compatibility-traps","Common SHA-1 compatibility traps",[146,147,148,164],"table",{},[149,150,151],"thead",{},[152,153,154,158,161],"tr",{},[155,156,157],"th",{},"Observed problem",[155,159,160],{},"Why it happens",[155,162,163],{},"What to do",[165,166,167,179,190],"tbody",{},[152,168,169,173,176],{},[170,171,172],"td",{},"A Git object ID does not match",[170,174,175],{},"Git hashes an object representation, not just raw file contents",[170,177,178],{},"Use git hash-object and the repository's filter rules.",[152,180,181,184,187],{},[170,182,183],{},"The reference is 64 hex characters",[170,185,186],{},"It is not a full plain SHA-1 digest",[170,188,189],{},"Check whether the system specifies SHA-256.",[152,191,192,195,198],{},[170,193,194],{},"A legacy file fails after editing",[170,196,197],{},"Saving may change newlines or encoding",[170,199,200],{},"Hash the original artifact before changing it.",[10,202,204],{"id":203},"related-tools-and-guides","Related tools and guides",[206,207,208,215,221],"ul",{},[57,209,210],{},[211,212,214],"a",{"href":213},"\u002Ffile-md5","File checksum calculator",[57,216,217],{},[211,218,220],{"href":219},"\u002Fsha256-generator","SHA-256",[57,222,223],{},[211,224,226],{"href":225},"\u002Fguides\u002Fmd5-vs-sha256","MD5 vs SHA-256",[15,228,229,34,235],{},[211,230,234],{"href":231,"rel":232},"https:\u002F\u002Fcsrc.nist.gov\u002Fpubs\u002Ffips\u002F180-4\u002Fupd1\u002Ffinal",[233],"nofollow","FIPS 180-4",[211,236,239],{"href":237,"rel":238},"https:\u002F\u002Fgit-scm.com\u002Fbook\u002Fen\u002Fv2\u002FGit-Internals-Git-Objects",[233],"Git object format",{"title":46,"searchDepth":241,"depth":241,"links":242},2,[243,244,245,246,247,248,249,250],{"id":12,"depth":241,"text":13},{"id":26,"depth":241,"text":27},{"id":51,"depth":241,"text":52},{"id":113,"depth":241,"text":114},{"id":120,"depth":241,"text":121},{"id":130,"depth":241,"text":131},{"id":143,"depth":241,"text":144},{"id":203,"depth":241,"text":204},"Generate a SHA-1 digest for legacy compatibility checks. Compare exact input without confusing SHA-1 with secure authentication.","md",[254,257,260,263],{"question":255,"answer":256},"Why is SHA-1 still available if it is not collision-resistant?","It is provided for reproducing legacy formats and compatibility fixtures, not as a recommendation for new security designs.",{"question":258,"answer":259},"Why does SHA-1 of my file differ from git hash-object?","A Git object includes a type-and-length header before its content. Filters may also apply. Use Git commands to reproduce object IDs; this page calculates a raw digest.",{"question":261,"answer":262},"Can I replace a legacy SHA-1 field with SHA-256?","Not without changing the surrounding format or protocol. The lengths and algorithm identifiers differ. Reproduce SHA-1 for compatibility, and plan migration separately.",{"question":264,"answer":265},"Does a matching SHA-1 authenticate an old release?","Not by itself. The expected value must come from a trusted source, and SHA-1 has collision weaknesses. Follow a trusted signature-verification process when available.","tool","en",{},true,"\u002Fen\u002Fsha1-generator",{"title":5,"description":251},"SHA-1 Hash Generator — md5hash.net","en\u002Fsha1-generator","daL4FCmYBQrbSCnxadl4tVpNgX3bdpSVm1Ccm3eJ7oY",1792048883696]