[13188] in cryptography@c2.net mail archive
Re: The Pure Crypto Project's Hash Function
daemon@ATHENA.MIT.EDU (tom st denis)
Sun May 4 10:13:26 2003
X-Original-To: cryptography@metzdowd.com
X-Original-To: cryptography@metzdowd.com
Date: Sun, 4 May 2003 06:59:25 -0700 (PDT)
From: tom st denis <tomstdenis@yahoo.com>
To: cryptography@metzdowd.com
In-Reply-To: <Pine.LNX.4.31.0305040810220.775-100000@safe.senderek.de>
--- Ralf Senderek <ralf@senderek.de> wrote:
> On 3 May 2003, Eric Rescorla wrote:
>
> > Can you explain every single line of the modular exponentiation
> > routine you're using?
>
> Yes, of course I can, otherwise the Pure Crypto Project would lack
> its
> second most important feature, clarity, security being the most
> important.
> Fortunately I have to explain only 10 lines of code:
Um...
>
> def ModExp (Base, Exp, Mod):
> Hash = 1
> X = Exp
> Factor = Base
>
> while X > 0 :
> Remainder = X % 2
> X = X / 2
> if Remainder == 1:
> Hash = Hash * Factor % Mod
> Factor = Factor * Factor % Mod
> return Hash
>
>
> I have explained this sucessfully even to 18 year olds who wanted to
> learn about computer security. I will explain off-list on request.
While thats cute and all real implementations like GMP and LibTomMath
do not use square-multiply since its too slow.
I'm not arguing that modexpt is a hard thing to implement decently fast
[heck I'm only a high school grad] :-)
Apparently though you're understanding of the subject is lacking.
Since the original question of security was whether you understood how
the implemention of modexpt you were using worked [if you use
square-multiply its going to be hella slow!]
Tom
__________________________________
Do you Yahoo!?
The New Yahoo! Search - Faster. Easier. Bingo.
http://search.yahoo.com
---------------------------------------------------------------------
The Cryptography Mailing List
Unsubscribe by sending "unsubscribe cryptography" to majordomo@metzdowd.com