On 29 Aug 2016, at 17:46, Jon Callas wrote:


On Aug 29, 2016, at 5:44 AM, David McGrew (mcgrew) <mcg...@cisco.com> wrote:

Hi Peter,

You make a bunch of good points. But it is also worth noting that some people feel that current crypto standards, including IETF standards, are suitable for IoT. See for instance slides 8 and 9 of Daniel Shumow's talk at NIST’s LWC workshop last year: http://csrc.nist.gov/groups/ST/lwc-workshop2015/presentations/session4-shumow.pdf Also, CoAP isn’t on his list, but it could be, and it uses DTLS. So while I agree with you that overuse of a 64-bit block cipher is far from the biggest security concern for IoT, the IETF should expect its protocols to be used in some IoT scenarios.

The malleability of the term IoT is causing trouble here. Slide 6 of Daniel’s talk is quite revealing. To my thinking, by definition IoT devices are connected to the Internet in some way.

Definitely. But to quote Shumow's talk on Slide 10 (which has the title "IoT Does Not Need Its Own Crypto Standards"):

• Current cryptographic standards work for IoT
        • Current standards are not a limit on IoT performance.
        • Perspective: Common IoT platforms are approximately as
          powerful as PCs from 15 years ago when AES was standardized.

And on Slide 11:

• Adding new standards can be problematic:
        • New standards, especially with lower key sizes could be
          used in scenarios where they aren’t intended.

        Example: Standardizing ECC over 160bit prime for an RFID
          card and it ends up being used for https; block cipher
          with 80bit key space ends up being used to encrypt hard
          drives.

His conclusion (slide 13) says that we don't need Lightweight Crypto in software, but admits there are some hardware places (like RFID) for it.

And that gets to Peter's basic, good points. While Peter is being brash, his larger point is the same point as Shumow's, that we should just be using our existing toolbox and that even *that* has too many choices. The AllJoyn suite, which is the most stripped down, is brilliantly simple: RSA, ECDSA/ECDHE P256, and AES-CCM. You can quibble with it, but it's to the point. (My quibbles would be to toss RSA and Curve 41417 instead because it has an ARM NEON implementation that's as fast as P-160. But those are quibbles.)

Folding back up to the subject here -- AES is faster than DES. That is one of the reasons it was selected as AES. (So are Twofish and Serpent.) We need to toss all 64-bit block ciphers. They were okay way back in the 1900s. It is no longer then. AES is cheap and getting cheaper. We don't need to patch up any of those old ciphers with meshing or what. We just need to use what's in our toolbox. 3DES needs to go solely because it's a patch on DES that needs to be patched for its small block size. I know it's boring to just use AES, but it meets all the goals.

Yes. To a large extent, the "IoT devices are too puny for real crypto" is a hangover from several years ago. It was once true; for the most part, it isn't today, but people haven't flushed their cache from the old received wisdom.

It pays to look again at David Wagner's slides from 2005, on sensor nets and crypto: https://people.eecs.berkeley.edu/~daw/talks/sens-oak05.pdf


        --Steve Bellovin, https://www.cs.columbia.edu/~smb


_______________________________________________
TLS mailing list
TLS@ietf.org
https://www.ietf.org/mailman/listinfo/tls

Reply via email to