Re: [NTLK] Wishlist for dev. (was: Carpman has left the Arena.)

From: Paul Guyot (pguyot_at_kallisys.net)
Date: Mon Aug 27 2001 - 04:00:31 EDT


>Because of the encryption ? Anything to do with that Euro Digital Media
>2000 legislation (may not have my phraseology correct here - late night) ?

I don't think so. DES is a public algorithm.
The problem is the limit between software copy and analysis (reverse
engineering) for interfacing needs.
I haven't copied at all Apple's code, and indeed, at least for key
schedule which I benchmarked, my code is twice faster than Apple's
and besides my code isn't totally compatible :-/
(this may seem a useless goal, but in fact, I also want to crack the
card games easter eggs).

I took the spec I found there for my implementation:
http://www.itl.nist.gov/fipspubs/fip46-2.htm
http://www.itl.nist.gov/fipspubs/fip81.htm

(well, I haven't implemented modes yet, I'm not sure I'll even need
it, hence I only needed FIPS PUB 46 so far).

Now, my problem is that I identified one thing that the
implementation in the Newton doesn't do like the standard, but even
if I do this, I get only 50.2% of identical output - if I don't, I
get 0%.
Both implementations are able to decode properly the encoded data in
100% of the runs. Tests are 10000 runs with random keys with correct
parity and random 64 bits of data.

Maybe there is a bug in my code, but I haven't found any easy to use
DES implementation. I might try to compile & run Eric Young's,
though, to see if we both have identical results. (Eric Young's
implementation is apparently an
under-or-non-commented-pseudo-super-optimized implementation where
the compiler pre-processor does most of the job - it's not under GPL,
though -, and I preferred to write my own implementation since I knew
I had to make changes to it in order to have something compatible
with the Newton's and also because I hate to waste my time fighting
with such code).

Maybe I'll get a higher or a lower result for the dock challenge
(which is basically the only thing I'm interested in for compatibilty
with Newton's DES). I haven't implemented a key generation (from a
Unicode string) compatible with NewtonOS's which is required for this
purpose.

Now, I'm quite tired of analyzing the Newton's DES implementation
(which has been optimized here and there hence the difficulty), so
maybe I'll stick with 50% of success for a while, it's better than
nothing, and with that I'll be able to work on other parts of the
dock protocol.

Paul

-- 
Home page: http://www.kallisys.com/
Newton-powered WebServer: http://newt.dyndns.org:8080/

-- This is the Newtontalk mailinglist - http://www.newtontalk.net To unsubscribe or manage: visit the above link or mailto:newtontalk-request_at_newtontalk.net?Subject=unsubscribe



This archive was generated by hypermail 2.1.2 : Sun Sep 09 2001 - 19:47:48 EDT