At 01:01 PM 9/2/95 CDT, droelke@rdxsunhost.aud.alcatel.com (Daniel R. Oelke) wrote:
After doing quite a bit of poking around, I am somewhat discouraged in my attempts to find a simple *pure* public key encryption method, without a lot of other stuff wrapped around it.
Pure public-key is usually not very useful, since it's rather slow for encrypting big messages by itself. PKP has the patents to all public- key systems until mid-1997, and for RSA until some time like 2001, and Schnorr for longer. Unfortunately, RSAREF (except for one version where they slipped) requires non-commercial users to limit themselves to the published interface or get explicit permission, and the published interface always throws in DES with a random key for encryption. Since you're talking embedded systems, you're probably commercial and high enough volume that the cost for licensing RSA is probably low enough.
What I need is to encrypt between 45 and 55 bits of information using a public key algorithm in an embedded environment.
45-55 bits may be tough, depending on the constraints of your environment - most public-key systems need 768-1024 bits of key to be reasonably secure, and need to send an output field at least that long to be decodeable. If that's not a problem, you've got some choices. For instance, you could use Diffie-Hellman to create a shared secret, and just XOR that with your material (have the workstation generate a master x, g, and p, and store g**x in your embedded system; choose a random y each time, and send g**y mod p and the first |M| bits of (g**xy mod p) xor M. To do that, you need to store g**x, g, and p, possibly in ROM, and enough code to do modular exponentiation and random number generation; hopefully your system will have some kind of quasi-physical source of randomness. #--- # Thanks; Bill # Bill Stewart, Freelance Information Architect, stewarts@ix.netcom.com # Phone +1-510-247-0664 Pager/Voicemail 1-408-787-1281 #---