[comp.compression] public key encryption

schultz@halley.est.3m.com (John C. Schultz) (03/29/91)

I am looking for a technique of implementing a digital signature.
One technique I am aware of is called public key encryption as in 
"A Method for Obtaining Digital Signatures and Public Key Crypto Systems",
Comm. ACM, 21, 2, Feb 1978.

This is a fairly old article however and I am looking for relevant, more
recent work/references. (Source code would be nice too!)  Alternatively, does
anyone know of other, perhaps simpler, techniques for secure digital
signatures. The one drawback that I am aware of with public key encryption is
that the "key" is a very long integer (100 digits?) which makes it rather
difficult to remember.

Thanks.
--
John C. Schultz                    EMAIL: schultz@halley.serc.3m.com
3M Company,  Building 518-01-1     WRK: +1 (612) 733-4047
1865 Woodlane Drive, Dock 4,       Woodbury, MN  55125
   How to include the taste of Glendronach in a multi-media system?

kym@bingvaxu.cc.binghamton.edu (R. Kym Horsell) (03/29/91)

In article <SCHULTZ.91Mar28145545@halley.est.3m.com> schultz@halley.est.3m.com (John C. Schultz) writes:
[looking for refs]
>signatures. The one drawback that I am aware of with public key encryption is
>that the "key" is a very long integer (100 digits?) which makes it rather
                                                     ^^^^^^^^^^^^^^^^^^^^^
>difficult to remember.
^^^^^^^^^^^^^^^^^^^^^^^

Perhaps you should write it down somewhere. :-)

-kym

drenze@umaxc.weeg.uiowa.edu (Douglas Renze) (03/29/91)

In article <SCHULTZ.91Mar28145545@halley.est.3m.com> schultz@halley.est.3m.com (John C. Schultz) writes:
>I am looking for a technique of implementing a digital signature.
>One technique I am aware of is called public key encryption as in 
>"A Method for Obtaining Digital Signatures and Public Key Crypto Systems",
>Comm. ACM, 21, 2, Feb 1978.
>
>This is a fairly old article however and I am looking for relevant, more
>recent work/references. (Source code would be nice too!)  Alternatively, does
>anyone know of other, perhaps simpler, techniques for secure digital
>signatures. The one drawback that I am aware of with public key encryption is
>that the "key" is a very long integer (100 digits?) which makes it rather
>difficult to remember.
>
>Thanks.
>--
>John C. Schultz                    EMAIL: schultz@halley.serc.3m.com
>3M Company,  Building 518-01-1     WRK: +1 (612) 733-4047
>1865 Woodlane Drive, Dock 4,       Woodbury, MN  55125
>   How to include the taste of Glendronach in a multi-media system?

I, too, am interested in this article--I've been trying to get ahold of it
for about a year, but my U's libraries don't have it, and MIT (where it was
supposed to have come from) was no help.
	If somebody can point me to the article (or send me a copy of it if you
have time to scan it in--please???) or some sample source, I'd be much obliged.
	Also I would add to John's description of the algorithm for those who
might be interested.  If my understanding of it is correct, it is based upon a
combination of a unique "trap-door" function and its complementary function, as
well as an extremely long prime number.  My understanding is that it's not
*quite* as secure as the DES encryption algorithm, but when you're talking mere
centuries of CPU time to break it rather than millenia (OK...so maybe that's
an exaggeration ;) I don't quite see that it makes much of a difference.

Thanx in advance for any help you might be able to provide.

Peace and Long Life,

Doug
          internet:  drenze@umaxc.weeg.uiowa.edu
            Delphi:  drenze

nbvs@cl.cam.ac.uk (Nicko van Someren) (04/02/91)

One method of digital signatures using a PKC system I have used runs along
these lines:

In most PKC systems you have a public key K and a private key P (and usually
some modulo number M).  You encrypt the plain text D with some function

f(D, K, M) -> D'

and you get the plain text back from the coded text by either the same of
a very similar function

f(D', P, M) -> D

The idea is that everyone should know all the K values for every one but only
know their own P.  So consider

f( f(D, P1, M1), K2, M2) -> D''

the inverse is

f( f(D'', P2, M2), K1, M1) -> D

If I the sender know P1 (my private key) K1 and K2, and you know P2 (your
private key), K1 and K2 then clearly I can encrypt the data and you can
decrypt it, but if I am the only one who knows P1, which I must be if the
system is at all secure, then I am the only person who could have sent the
data as I an the only person who has the inverse to K1.

In the system I used, based on an artical in Scientific American from Aug. 78
M is the product of two primes X and Y, K is more or less random and P is the
modulo inverse of K wrt (X-1)(Y-1) (K is not true random since it must not
have any factors in common with X-1 or Y-1).  The function f is

f(D, K, M) = (D^K) mod M

I hope this is of some use.

By the way, why is this in comp.compression?  Just asking...

Nicko
+-----------------------------------------------------------------------------+
| Nicko van Someren, nbvs@cl.cam.ac.uk, (44) 223 358707 or (44) 860 498903    |
+-----------------------------------------------------------------------------+