home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #31 / NN_1992_31.iso / spool / sci / crypt / 6154 < prev    next >
Encoding:
Text File  |  1992-12-24  |  4.0 KB  |  77 lines

  1. Newsgroups: sci.crypt
  2. Path: sparky!uunet!spool.mu.edu!uwm.edu!linac!att!cbnewse!cbnewsd!att-out!cbnewsh!cbnewsh.cb.att.com!wcs
  3. From: wcs@anchor.ho.att.com (Bill Stewart +1-908-949-0705)
  4. Subject: Re: What algorithm to use in my project...?
  5. Organization: Mutant Bunnies for Peace
  6. Date: Thu, 24 Dec 1992 08:17:03 GMT
  7. Message-ID: <WCS.92Dec24031703@rainier.ATT.COM>
  8. In-Reply-To: rosa@isy.liu.se's message of 23 Dec 92 14:35:21 GMT
  9. References: <rosa.725121321@isy>
  10. Sender: news@cbnewsh.cb.att.com (NetNews Administrator)
  11. Nntp-Posting-Host: rainier.ho.att.com
  12. Lines: 63
  13.  
  14. Ronnie Sahlberg asks advice about what kind of crypto system to use en
  15. an environment that broadcasts lots of 10-15 byte messages to 1-N receivers,
  16. some of which don't always stay on line.  The hard questions are about
  17. - what is the security threat?  NSA or KGB?  competitors?  insiders?
  18.     I will assume DES is good enough.
  19. - what do you want the encryption to do for you?  make the data unreadable?
  20.   make the data unforgeable but reading is ok?  unreadable AND unforgeable
  21.   but you don't mind discarding bad messages?  do you care if somebody
  22.   plays a message back to the receivers more than once?  you mentioned
  23.   a limit on how much time could be spent on encryption - what about
  24.   the amount of memory available?  Can you use DES chips?
  25. - How do you distribute keys to the units?  I will guess the following:
  26.     - secret keys, with the same key for every unit
  27.     - each unit is secure enough that you don't worry about
  28.         somebody taking it apart to find the key
  29.     - if this is NOT true, then broadcasting to more than one unit is hard
  30.         if you can only send each message once.
  31. - Is there just one central station transmitting?  This is easier,
  32.     but the method I'll suggest can be used more generally.
  33.     Does everybody have a clock that stays in sync?
  34.  
  35. Here's one proposed method:
  36. - At the transmitter, generate a message M and a random number R.
  37.     The number R should be generated carefully - 
  38.     - if you are afraid because the NSA is trying to read your messages,
  39.       use DES or similar encryption to generate the numbers.  
  40.     - if you aren't that worried, use a multiplicative random number 
  41.       generator, with a period 2**32 or close.
  42.     - if you are worried about playback attacks, use a timestamp 
  43.       AND a random part R = (t,r), so the units can check.
  44.       (REAL experts will probably point out weaknesses in this approach,
  45.       besides the obvious weakness that a Bad Person can transmit
  46.       a message using the next time stamp which will prevent your
  47.       real message from being accepted.)
  48. - transmit a message containing DES( (R,M), k), where k is the key 
  49.     used in all the units, and DES is encryption using DES in
  50.     Cypher FeedBack Mode, so that the message will be different every time.
  51.     The message may also include the destination unit, if you are willing
  52.     to transmit that information unencrypted.
  53.     The receiver decrypts the message, and ignores R, or checks
  54.     the timestamp part of R to see if it's newer than the last one,
  55.     and does something useful if the time variable overflows.
  56.     This assumes you can program your equipment in a country where
  57.     encryption is legal and exportable.  If you can't, 
  58.     either use a simpler algorithm than DES and get a specific
  59.     license from the US Export Bureaucrats to use it (people have discussed
  60.     RSA's RC-2 and RC-4 here).
  61.  
  62. - If all you need to do is make sure the message came from the real sender,
  63.     and not from a Bad Person, then you can use methods that are exportable.
  64.     - transmit a message containing R, M, CHECKSUM( R,M,Key ),
  65.     where CHECKSUM is a secure enough checksum algorithm.
  66.         If you want real security, it should be something like MD4 or MD5
  67.     (which may be too slow for your application?); 
  68.     otherwise uses a CRC-32 or longer checksum.
  69.     The receiver makes sure the checksum matches, and 
  70.     rejects the message if it doesn't.
  71.  
  72. --
  73. #                Pray for peace;      Bill
  74. # Bill Stewart 908-949-0705 wcs@anchor.att.com AT&T Bell Labs 4M312 Holmdel NJ
  75. # Nov 12 - Anniversary of Indonesian massacre in East Timor, 1991
  76. # Indonesia first invaded in 1975, and about 1/3 of the people have been killed.
  77.