mirror of
https://github.com/NixOS/nix
synced 2025-06-28 22:01:15 +02:00
* Shorten SHA-256 hashes used in store path name generation to 160
bits, then encode them in a radix-32 representation (using digits and letters except e, o, u, and t). This produces store paths like /nix/store/4i0zb0z7f88mwghjirkz702a71dcfivn-aterm-2.3.1. The nice thing about this is that the hash part of the file name is still 32 characters, as before with MD5. (Of course, shortening SHA-256 to 160 bits makes it no better than SHA-160 in theory, but hopefully it's a bit more resistant to attacks; it's certainly a lot slower.)
This commit is contained in:
parent
9530cc3170
commit
d58a11e019
7 changed files with 108 additions and 36 deletions
|
@ -29,8 +29,8 @@ void run(Strings args)
|
|||
else throw UsageError(format("unknown hash type `%1%'") % *i);
|
||||
}
|
||||
else
|
||||
cout << format("%1%\n") % (string)
|
||||
(flat ? hashFile(*i, ht) : hashPath(*i, ht));
|
||||
cout << format("%1%\n") % printHash(
|
||||
(flat ? hashFile(*i, ht) : hashPath(*i, ht)));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue