[darcs-devel] [Haskell-cafe] Re: announcing darcs 2.0.0pre3

zooko zooko at zooko.com
Wed Jan 23 17:47:20 EST 2008


> In
> principle it is good to provide a cryptographically secure hash, as  
> this
> allows users to sign their repositories by signing a single file,  
> which
> seems like it's potentially quite a useful feature.

Can you be more specific about this -- who can "sign" a repository?   
How is such a signature checked?  What guarantee can you rely on if  
the check passes?

As far as I know, it is impossible to use a hash value in darcs to  
securely denote a specific patch, because darcs patches do not have a  
canonical form.  In fact, last time I checked the patch *contents*  
didn't even go into the input to SHA-1, just the patch metadata  
(timestamp, author, patch description).

I don't think SHA-1 is necessarily a bad choice if you need a secure  
hash function (although I would like a better argument than "Linus  
chose it."), but I don't understand why we need a secure hash function.

(If you need a secure hash function, Tiger is probably stronger than,  
and is 150% as fast as, SHA-1.)

Regards,

Zooko



More information about the Haskell-Cafe mailing list