RE: Comments on last call

Ø  As has been discussed - repeatedly - you can't programatically separate the algorithms into two (or more) namespaces, because once shipped, you can *never* migrate between them, as such migrations are inherently breaking API changes.
First of all, it’s a one-way path.  Once something becomes broken or weak, it never moves out of that category.

Second, the suggestion is to make second-class citizens, from the very beginning out of those things that we know should be second-class.  Since you are not (yet?) able to provide guidance on what to avoid, then make the names used in the code provide that guidance.  JS has exceptions and when bad crypto is no longer supported as a first-class part of the API, then code that needs to use them can do catch the exception and try the other namespace. Defining that namespace in your base document will increase interoperability in the face of a changing crypto world.

As for a UA asking for additional confirmation, what might that look like?  “The createSignedBlob applet is asking to use AES in CBC mode, which is known to be weak; see http://iacr.org/preprints/.... For details.  Proceed or Cancel.”  Really?

                /r$

--
Principal Security Engineer
Akamai Technologies, Cambridge, MA
IM: rsalz@jabber.me<mailto:rsalz@jabber.me>; Twitter: RichSalz

Received on Monday, 5 May 2014 14:26:35 UTC