From: John Howard <jhoward@sky.net>
To: David Downie <cs323389@student.uq.edu.au>
Subject: Re: Ada & Encryption / Compression
Date: 1997/03/05
Date: 1997-03-05T00:00:00+00:00 [thread overview]
Message-ID: <Pine.GSO.3.93.970305115055.7933B-100000@sky.net> (raw)
In-Reply-To: 5fikh7$ras$1@nargun.cc.uq.edu.au
On 5 Mar 1997, David Downie wrote:
> I am thinking about writing an RSA encryption (or some other encryption)
> package. I would like to do it in Ada (rather than the suggested C), but
> am not an Ada expert and do not know if I would just be making things
> difficult for myself.
>
> Has anyone had any similar (bit level) experience and can comment or
> perhaps point me somewhere?
Forget about doing your own RSA encryption.
1) RSA is patented. You'd have to wait for the patent to expire.
2) RSA can't be implemented unless you know the two large prime numbers
it uses (which are a secret). As of a year ago, RSA was still not
reported as cracked to reveal the two primes. Presumably many skilled
researchers have tried to crack RSA.
Forget about doing your own LZW compression.
1) Lempel-Ziv Welch is not public domain. LZW is used in GIF, TIFF, and
Adobe PDF formats.
2) Lempel-Ziv Huffman (LZH) is public domain.
3) Run Length Encoding (RLE) is public domain.
See:
Digital Cash (Commerce on the Net), by Peter Wayner. Publ. by Academic
Press, 1996. PP. 271, Softcover, ISBN 0-12-738763-3. [List: $34.95]
One chapter explains RSA and DES and other schemes. More an
introductory overview but with enough details for implementation by a
programmer who is equiped from elsewhere with large primes.
Differential Cryptanalysis of the Data Encryption Standard, by E. Biham &
A. Shamir. Publ. by Springer-Verlag, 1993. PP. 188, Hardcover, ISBN
0-387-97930-1. [List: $42.95, (North America only) sale price: $34.50 ends
March 14; www.springer-ny.com]
Tells how to crack some DES variants. Useful to anyone implementing a
sophisticated encryption scheme.
Alternatively, you can locate and download the Turbo Pascal sources from
SWAG (source ware archive group). It has a few simple encryption and
compression examples. You could recode these as filters for Ada 95
streams. (SWAG IS SEVERAL MEGABYTES UNCOMPRESSED)
Lastly there is stream specific source code in Turbo Pascal (not related
to SWAG). Filename: streams13.zip or higher. Streams implements about a
dozen filters and a few perform simple encryption or compression.
Translating a couple Turbo Pascal filters into Ada 95 filters is feasible
for an intermediate-level programmer.
[For simple encryption use a filter employing XOR operation and a linear
congruential "random" number generator based upon the position within the
stream and the direction state. This allows for encryption while moving
backward or forward within the stream.
For sophisticated encryption use a DES variant as a filter.
For loss-less compression use LZH and RLE as filters.]
-- John Howard <jhoward@sky.net> -- Team Ada Team OS/2 --
next prev parent reply other threads:[~1997-03-05 0:00 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
1997-03-05 0:00 Ada & Encryption / Compression David Downie
1997-03-05 0:00 ` John Howard [this message]
1997-03-06 0:00 ` Larry Kilgallen
1997-03-05 0:00 ` Bob Klungle
1997-03-05 0:00 ` Laurent Pautet
1997-03-05 0:00 ` Norman H. Cohen
1997-03-06 0:00 ` David L Brown
1997-03-06 0:00 ` Larry Kilgallen
1997-03-06 0:00 ` William W Pritchett
1997-03-06 0:00 ` BSAFE Bindings for Ada (was: Ada & Encryption / Compression) Larry Kilgallen
1997-03-07 0:00 ` Ada & Encryption / Compression John Howard
1997-03-08 0:00 ` Larry Kilgallen
1997-03-08 0:00 ` Robert Dewar
1997-03-09 0:00 ` Larry Kilgallen
1997-03-08 0:00 ` Robert Dewar
1997-03-09 0:00 ` Larry Kilgallen
1997-03-09 0:00 ` Robert Dewar
1997-03-06 0:00 ` Laurent Pautet
1997-03-06 0:00 ` Ronald Cole
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox