diff options
author | Joey Hess <joey@kitenet.net> | 2011-11-04 15:21:45 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2011-11-04 15:51:01 -0400 |
commit | ef3457196ace3669ddfa93039f2d3c15baf54713 (patch) | |
tree | 391787de35537c71068cdd8e2fc882109a2c3b79 /Backend/SHA.hs | |
parent | 1089e85d48a0d3c455fc2f4139b82484b94b5bbe (diff) |
use SHA256 by default
To get old behavior, add a .gitattributes containing: * annex.backend=WORM
I feel that SHA256 is a better default for most people, as long as their
systems are fast enough that checksumming their files isn't a problem.
git-annex should default to preserving the integrity of data as well as git
does. Checksum backends also work better with editing files via
unlock/lock.
I considered just using SHA1, but since that hash is believed to be somewhat
near to being broken, and git-annex deals with large files which would be a
perfect exploit medium, I decided to go to a SHA-2 hash.
SHA512 is annoyingly long when displayed, and git-annex displays it in a
few places (and notably it is shown in ls -l), so I picked the shorter
hash. Considered SHA224 as it's even shorter, but feel it's a bit weird.
I expect git-annex will use SHA-3 at some point in the future, but
probably not soon!
Note that systems without a sha256sum (or sha256) program will fall back to
defaulting to SHA1.
Diffstat (limited to 'Backend/SHA.hs')
-rw-r--r-- | Backend/SHA.hs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/Backend/SHA.hs b/Backend/SHA.hs index 3a54a8871..d44982117 100644 --- a/Backend/SHA.hs +++ b/Backend/SHA.hs @@ -16,12 +16,12 @@ import qualified Build.SysConfig as SysConfig type SHASize = Int +-- order is slightly significant; want SHA256 first, and more general +-- sizes earlier sizes :: [Int] -sizes = [1, 256, 512, 224, 384] +sizes = [256, 1, 512, 224, 384] backends :: [Backend Annex] --- order is slightly significant; want sha1 first, and more general --- sizes earlier backends = catMaybes $ map genBackend sizes ++ map genBackendE sizes genBackend :: SHASize -> Maybe (Backend Annex) |