This is a belated report on the Cryptographic
Key Management Workshop that was held by NIST on September 10-11.
Karen Lewison and I went to Washington DC for the workshop, where we
presented a talk on techniques for addressing the key management
challenges of derived credentials.
Cryptographic key management may seem to be a dry topic, but the workshop
was quite interesting, especially the second day, which looked at the
future. It was attended by about 50 cryptographers, and was webcast.
It began with a fascinating keynote address by Whitfield Diffie on the
history of cryptographic key management. His presentation
is online, but slides cannot do justice to the wealth of stories and
anecdotes that he narrated.
A Framework for Designing Cryptographic Key Management Systems
The main purpose of the workshop was to discuss the current drafts of
NIST
Special Publication 800-130, and NIST
Special Publication 800-152 and solicit comments on them.
(Instructions for sending comments on draft NIST publications can be
found at http://csrc.nist.gov/publications/PubsDrafts.html.)
SP 800-130 is a comprehensive framework of topics that should be
considered by anybody who has to specify a Cryptographic Key Management
System (CKMS); since key management is an essential aspect of
cryptography, the framework should be invaluable to anybody designing
a system that incorporates cryptographic functionality. SP 800-152
profiles the framework for cryptographic key management systems that
will be used in US Federal agencies, but goes beyond the systems
themselves to cover their procurement, installation, management, and
operation.
The two publications were discussed during the first day of the
workshop. I cannot possibly go over the very detailed discussions
that took place, so I will limit myself to repeating one comment I
made regarding Section 4.7 of SP 800-130, "Anonymity, Unlinkability
and Unobservability", and expanding upon it.
Anonymity, unlinkability and unobservability are privacy features
that may not be directly relevant to the authentication of Federal
employees in the course of their work, but they are very relevant to
the authentication of both consumers on the Web at large, and citizens
who access Federal information systems. Traditional authentication by
username and password provides these three privacy features; but
passwords have well-known security and usability drawbacks, one of
them being the difficulty of remembering many different passwords.
One way of reducing the number of passwords to be remembered is to
rely on a third-party identity provider (IdP), so that one password
(presented to the IdP) can be used to authenticate to any number of
relying parties. The Federal Government allows citizens to access
government web sites through redirection to several Approved
Identity Providers.
But third party login has privacy drawbacks. In usual
implementations, anonymity is lost because the relying party learns
the user's identity at the IdP, unlinkability is lost by the use of
that identity at multiple relying parties, and unobservability is lost
because the IdP is informed of the user's logins. Profiles
of third-party login protocols approved for citizen login to
government sites mitigate some of these drawbacks by asking the
identity provider to provide different identities for the same user to
different relying parties. This mitigates the loss of anonymity, and
the loss of unlinkability to a certain extent. (Relying parties by
themselves cannot track the user, but they can track the user in
collusion with the IdP.) But the loss of unobservability is not
mitigated, because the IdP is still informed of the user's activities.
I believe that the Government should work to develop and promote
authentication methods that eliminate passwords while preserving
anonymity, unlinkability and unobservability. Cryptographic
authentication with a key pair, using different key pairs for
different relying parties, can be a basis for such methods.
A Look at the Future
The second day of the workshop featured presentations on capabilities
of future cryptographic key management systems, ranging from
innovative to futuristic. (Both days' presentations can be found in
the
workshop
web page.)
Tim Polk, manager of the Cryptographic Technology Group at NIST,
motivated
the talks that followed by going over challenges identified during
the development of the CKMS framework, related to interoperability
across security domains, algorithmic agility, constrained devices,
privacy, and scalability. He also stressed the need to develop CKMSs
that are resilient to quantum computing attacks before it is too late.
Dennis Branstad of NIST discussed security
policies, stating as a goal their automated specification,
negotiation and enforcement.
Anna Lysyanskaya of Brown University discussed her
work on anonymous credentials. She mentioned a new technique for
revocation of anonymous credentials that was presented at Crypto 2012
by Libert, Peters and Yung, and said she thought it deserved the best
paper award. I believe a full version of the conference paper can be
found at http://eprint.iacr.org/2012/442.
I haven't read the paper yet. Revocation of privacy-enhancing
credentials is practically difficult; I have discussed the topic in
several earlier posts.
Paul Lambert of Marvell Semiconductors discussed authentication
and privilege management for devices connected by wireless area
networks. I was glad to hear him propose the use of a raw key
pair as a credential. I later proposed the same thing in the talk on
derived credentials.
Lily Chen of NIST discussed the difficult key management problem of handing
over a secure link as a smart phone travels from one network to
another, when the networks use technologies that may be as different
as UMTS and WiFi.
Sarbari Gupta of Electrosoft discussed key
management in a cloud environment. She argued that the Federal
Risk and Authorization Management Program (FedRAMP) does not have
sufficient requirements for secure key management, and advocated the
establishment of a Federal Profile for Cloud Key Management.
Elaine Barker of NIST went over the intricacies and subtleties of random
bit generation, and solicited comments on Draft
Special Publication 800-90B (entropy sources) and
Draft Special Publication 800-90C (RBG Constructions, DRBGs and
NRBGs). Comments are due December 3rd.
Rene Struik discussed a method of secure
key storage and true random number generation using physical
unclonable functions (PUFs). The idea is to use accidental properties
of a device to generate a unique key when the device is turned on.
(So I would say that his technique is closer to key generation than
key storage.) Error correction is used to remove minor differences in
subsequent key generations. As an additional benefit, those
differences are used for random number generation. This very interesting
work is related in multiple ways to our own work on mobile
authentication and derived credentials; I plan to discuss it in more
detail in the next blog post.
Mary Theofanos of NIST went over two case studies of usability
of key management procedures: a PKI deployment, and a PIV pilot.
My personal getaways: the designer of a key management system must
know the users and their mental models of security; must provide
multiple authentication methods, e.g. by retaining username-password
as a backup for a cryptographic credential; and must not require
frequent PIN changes.
The usability talk was followed by a panel that presented three
use cases of cross-domain interactions. Bob Griffin of RSA
discussed key management in the cloud. Saikat Saha of SafeNet
discussed virtualized hardware security modules. John Leiseboer of
Quintessencelabs discussed quantum key distribution; this was the
first presentation I've attended related to quantum cryptography, and
it motivated me to find out more about this futuristic topic.
Derived Credentials
Finally, I gave a presentation on mobile
authentication and derived credentials, co-authored with Karen
Lewison. Even though this was the last presentation at the end of a
long day of talks, I was gratified that, as far as I know, nobody
snuck out early to the Dogfish Head brewery across the street from the
NIST campus 🙂 . Derived credentials is a NIST
concept referring to credentials that, in the future, will be
installed in a mobile device after the user of the device
authenticates with a PIV card. Our presentation went over three
techniques for implementing derived credentials that we proposed
earlier in a blog
post and a white
paper, viz. public key cryptography without certificates, key pair
regeneration as an alternative to tamper resistance, and encapsulation
of cryptographic and biometric processing in a "prover black box" and
a "verifier black box" to insulate app developers from the
complexities of cryptography and biometrics.
But we also went beyond derived credentials, in response to a request
made by Elaine Barker on behalf of Dennis Branstad before the
workshop. We discussed extensions of our techniques, for
authentication across security domains, for social login without
passwords, and for data protection at rest without tamper resistance.
Since then we have put online a whitepaper on
the data protection work. We have not yet written whitepapers on
authentication across security domain or social login without
passwords.
Wrap-up
Tim Polk wrapped up the workshop by encouraging everybody to send
comments. Although there is an official comment period for each draft
publication, NIST welcomes comments at any time.
Like the workshop on privacy-enhancing technology I attended last
year, this workshop was both enjoyable and very useful. I'm glad to
be on the email distribution list, and I'm looking forward to the next
cryptography workshop at NIST.