NODE 12aa3253Re: "S1" encryption system
Hal <hfinney@shell.portal.com>Wed, 9 Aug 95 16:11:36 PDT
Correction, I just noticed that the four F functions have 4 bit output
not 8 as I wrote. Realize that all this is based on a very cursory
examination of the code.
BTW I just was starting to look at the key scheduling and I noticed that
fullkey is indexed in its 2nd slot by i*2 where i goes from 0 to 31, but
is only declared as being 32 in size in that slot. So I think this is
another typo, probably the index should be i. This kind of thing does
not inspire confidence...
Hal
NODE b8775f42Re: "S1" encryption system
Bill Sommerfeld <sommerfeld@orchard.medford.ma.us>Wed, 9 Aug 95 21:48:01 PDT
-----BEGIN PGP SIGNED MESSAGE-----
BTW, I compiled it and confirmed that decryption is the inverse of
encryption for at least one (key, plaintext) pair..
> BTW I just was starting to look at the key scheduling and I noticed that
> fullkey is indexed in its 2nd slot by i*2 where i goes from 0 to 31, but
> is only declared as being 32 in size in that slot. So I think this is
> another typo, probably the index should be i. This kind of thing does
> not inspire confidence...
It looks very much like the sort of typo you would get from a
mistranslation from assembly language if the target architecture had a
*4-bit* processor. (This is also consistant with the "<<4"'s which
show up in several places in the code).
The typo is consistant -- it shows up every time the key schedule is
referenced; it looks like a semi-mechanical translation was done..
- Bill
-----BEGIN PGP SIGNATURE-----
Version: 2.6.1
iQCVAwUBMCmOdbT+rHlVUGpxAQFdNQP+I5lvR0itV0l2ypGF7EGGKrYcTnSNa0Fn
UqD7IIQ/BqViSeoXFHWzWJ5KUj9+y9RuKmwnMGGrlxRunZSDUya4VX0PZOX0bP4K
rbtu2j2H33cIrDPA+POvVYNAXBj3Sw1paIVf/07937oDZfdsqrn8c4rgXEeMgk4U
aoH4lpMfxY8=
=dd0O
-----END PGP SIGNATURE-----
NODE a8636545Re: "S1" encryption system
Andy Brown <asb@nexor.co.uk>Thu, 10 Aug 95 03:15:19 PDT
On Thu, 10 Aug 1995, Bill Sommerfeld wrote:
> It looks very much like the sort of typo you would get from a
> mistranslation from assembly language if the target architecture had a
> *4-bit* processor. (This is also consistant with the "<<4"'s which
> show up in several places in the code).
I'll back up the disassembly theory. I've done it myself once when I
lost some of my own source code from years previous and had to get out
the dissassembler. Very painful work which resulted in a first set of
source much like the "S1" sample posted here. Only difference was that I
went back over the "first draft" after verifying it and cleaned it up
somewhat.
The poster either does not know 'C' or thinks that a cleanup will reveal
his/her style.
- Andy
+-------------------------------------------------------------------------+
| Andrew Brown Internet <asb@nexor.co.uk> Telephone +44 115 952 0585 |
| PGP (2048/9611055D): 69 AA EF 72 80 7A 63 3A C0 1F 9F 66 64 02 4C 88 |
+-------------------------------------------------------------------------+