[{"data":1,"prerenderedAt":225},["ShallowReactive",2],{"navigation_docs":3,"-algorithms":148,"-algorithms-surround":220},[4,40],{"title":5,"path":6,"stem":7,"children":8,"icon":39},"Guide","\u002Fguide","1.guide\u002F01.index",[9,11,15,19,23,27,31,35],{"title":10,"path":6,"stem":7},"Getting Started",{"title":12,"path":13,"stem":14},"Hashing","\u002Fguide\u002Fhashing","1.guide\u002F02.hashing",{"title":16,"path":17,"stem":18},"HMAC and verify","\u002Fguide\u002Fverify","1.guide\u002F03.verify",{"title":20,"path":21,"stem":22},"Salted KDFs","\u002Fguide\u002Fkdf","1.guide\u002F04.kdf",{"title":24,"path":25,"stem":26},"CLI","\u002Fguide\u002Fcli","1.guide\u002F05.cli",{"title":28,"path":29,"stem":30},"Agents","\u002Fguide\u002Fagents","1.guide\u002F06.agents",{"title":32,"path":33,"stem":34},"Custom algorithms","\u002Fguide\u002Fcustom","1.guide\u002F07.custom",{"title":36,"path":37,"stem":38},"Playground","\u002Fguide\u002Fplayground","1.guide\u002F08.playground","i-lucide-book-open",{"title":41,"path":42,"stem":43,"children":44,"icon":147},"Algorithms","\u002Falgorithms","2.algorithms\u002F00.index",[45,47,51,55,59,63,67,71,75,79,83,87,91,95,99,103,107,111,115,119,123,127,131,135,139,143],{"title":46,"path":42,"stem":43},"Every algorithm",{"title":48,"path":49,"stem":50},"SHA-256","\u002Falgorithms\u002Fsha256","2.algorithms\u002F01.sha256",{"title":52,"path":53,"stem":54},"SHA-384","\u002Falgorithms\u002Fsha384","2.algorithms\u002F02.sha384",{"title":56,"path":57,"stem":58},"SHA-512","\u002Falgorithms\u002Fsha512","2.algorithms\u002F03.sha512",{"title":60,"path":61,"stem":62},"SHA-512Half","\u002Falgorithms\u002Fsha512-half","2.algorithms\u002F04.sha512-half",{"title":64,"path":65,"stem":66},"SHA3-256","\u002Falgorithms\u002Fsha3-256","2.algorithms\u002F05.sha3-256",{"title":68,"path":69,"stem":70},"SHA3-512","\u002Falgorithms\u002Fsha3-512","2.algorithms\u002F06.sha3-512",{"title":72,"path":73,"stem":74},"Keccak-256","\u002Falgorithms\u002Fkeccak256","2.algorithms\u002F07.keccak256",{"title":76,"path":77,"stem":78},"BLAKE2b","\u002Falgorithms\u002Fblake2b","2.algorithms\u002F08.blake2b",{"title":80,"path":81,"stem":82},"BLAKE2b-256","\u002Falgorithms\u002Fblake2b-256","2.algorithms\u002F09.blake2b-256",{"title":84,"path":85,"stem":86},"BLAKE2b-224","\u002Falgorithms\u002Fblake2b-224","2.algorithms\u002F10.blake2b-224",{"title":88,"path":89,"stem":90},"BLAKE2s","\u002Falgorithms\u002Fblake2s","2.algorithms\u002F11.blake2s",{"title":92,"path":93,"stem":94},"BLAKE3","\u002Falgorithms\u002Fblake3","2.algorithms\u002F12.blake3",{"title":96,"path":97,"stem":98},"BLAKE-256","\u002Falgorithms\u002Fblake256","2.algorithms\u002F13.blake256",{"title":100,"path":101,"stem":102},"RIPEMD-160","\u002Falgorithms\u002Fripemd160","2.algorithms\u002F14.ripemd160",{"title":104,"path":105,"stem":106},"HASH160","\u002Falgorithms\u002Fhash160","2.algorithms\u002F15.hash160",{"title":108,"path":109,"stem":110},"HASH256","\u002Falgorithms\u002Fhash256","2.algorithms\u002F16.hash256",{"title":112,"path":113,"stem":114},"MD5","\u002Falgorithms\u002Fmd5","2.algorithms\u002F17.md5",{"title":116,"path":117,"stem":118},"SHA-1","\u002Falgorithms\u002Fsha1","2.algorithms\u002F18.sha1",{"title":120,"path":121,"stem":122},"SHA-0","\u002Falgorithms\u002Fsha0","2.algorithms\u002F19.sha0",{"title":124,"path":125,"stem":126},"CRC-32","\u002Falgorithms\u002Fcrc32","2.algorithms\u002F20.crc32",{"title":128,"path":129,"stem":130},"CRC-16\u002FXMODEM","\u002Falgorithms\u002Fcrc16-xmodem","2.algorithms\u002F21.crc16-xmodem",{"title":132,"path":133,"stem":134},"xxHash (XXH64)","\u002Falgorithms\u002Fxxhash","2.algorithms\u002F22.xxhash",{"title":136,"path":137,"stem":138},"FNV-1a (64-bit)","\u002Falgorithms\u002Ffnv1a","2.algorithms\u002F23.fnv1a",{"title":140,"path":141,"stem":142},"scrypt","\u002Falgorithms\u002Fscrypt","2.algorithms\u002F24.scrypt",{"title":144,"path":145,"stem":146},"PBKDF2","\u002Falgorithms\u002Fpbkdf2","2.algorithms\u002F25.pbkdf2","i-lucide-library",{"id":149,"title":41,"body":150,"description":213,"extension":214,"links":215,"meta":216,"navigation":217,"path":42,"seo":218,"stem":43,"__hash__":219},"docs\u002F2.algorithms\u002F00.index.md",{"type":151,"value":152,"toc":208},"minimark",[153,156,165,170,173,186,197],[154,155],"algorithm-roster",{},[157,158,159,160,164],"p",{},"Every row is ",[161,162,163],"code",{},"create(name).info()",", computed in your browser from the same registry the CLI and the agent tools read. Sort by digest to see what's 20 bytes and what's 64. The security note behind each row is the library's own, cut to its first clause. Hover it for the rest.",[166,167,169],"h2",{"id":168},"picking-one","Picking one",[157,171,172],{},"For a new design, SHA-256 or BLAKE3 and move on. BLAKE3 when speed matters and you control both ends, SHA-256 when anything else has to agree with you.",[157,174,175,176,179,180,182,183,185],{},"For compatibility, the page of the thing you're matching wins. Ethereum wants ",[177,178,72],"a",{"href":73},", not SHA3-256, and the two differ in one padding byte. A Bitcoin address wants ",[177,181,104],{"href":105}," of the key's bytes, not of its hex. The XRP Ledger wants ",[177,184,60],{"href":61},", which isn't SHA-512\u002F256. Getting any of those almost right gives you a digest that looks exactly like the correct one.",[157,187,188,189,192,193,196],{},"For checksums somebody else published, whatever they published, MD5 included. For your own tables and dedup, ",[177,190,191],{"href":133},"xxHash"," or ",[177,194,195],{"href":137},"FNV-1a",". Never for anything an attacker gets to choose.",[157,198,199,200,192,202,204,205,207],{},"For a password digest you need to reproduce, ",[177,201,140],{"href":141},[177,203,144],{"href":145}," with the exact salt and cost it was made with. ",[177,206,20],{"href":21}," explains why the salt comes back.",{"title":209,"searchDepth":210,"depth":210,"links":211},"",2,[212],{"id":168,"depth":210,"text":169},"Every algorithm the package ships with its digest size and HMAC support and options. Read live from the registry","md",null,{"icon":147},{"title":46},{"title":41,"description":213},"JT8RiohXo1HfSB0G62h3uOfaxdmKh8r2fKBCy5zg4oI",[221,223],{"title":36,"path":37,"stem":38,"description":222,"children":-1},"The page behind hashes.agntn.dev\u002Fplayground runs the library in your browser. What it does and what it won't",{"title":48,"path":49,"stem":50,"description":224,"children":-1},"The SHA-2 hash everything agrees on. 32 bytes with HMAC and the default when nobody told you otherwise",1790683656173]