User interface design and usability are the deciding factors in attaining a good user experience for most IT deployments, including key management systems (KMS). The most significant constraint to the use of a KMS is the difficulty that some systems present to the non-specialist users.
User interfaces (UIs) that adapt to the expertise of the user can guide a new and less-trained user, while permitting an expert to use efficient shortcuts and to bypass step-by-step guidance.
This article presents high level recommendations on efficient user interface design for a key management system.
Design principles of the User Interface for a KMS
Since most users are not security experts or IT specialists, the KMS should be as transparent as possible. While ease-of-use may be subjective and difficult to evaluate, several design principles for achieving this goal have been established.
NIST publication on ‘A framework for Designing Cryptographic Key Management System’ recommends that ease-of-use design goals should assure that it is intuitive and easy to do the right actions and difficult to do the wrong actions.
Intuitive and easy to do the right thing using the KMS : Smooth User Experience
Different users such as the system administrator, key custodians and key owners should experience simplicity, speed and efficiency when using a key management system. The overall user experience should be intuitive. For example, key management functions should be intuitively named.
The growth of dynamic web applications have improved the user experience and context sensitive navigation. The interface designer should understand the user’s goals and preferences while designing the user interface for a key management system.
The system should also be responsive. The interface should work fast without unwanted waiting for data to load. A laggy and slow interfaces will be frustrating for the user. Seeing things load quickly, or at the very least, an interface that loads quickly improves the user experience.
Responsive also means the interface provides some form of feedback to the user interacting with the tool. The feedback can be a mechanism to indicate that an event has been triggered.
Difficult to do the wrong thing using the system
Clarity is the most important element of user interface design. If users can’t figure out how the key management application works or where to go on the system they’ll get confused and frustrated. Consistent interfaces will help the user in understanding the usage of different tabs, icons, buttons in different contexts. The system should also restrict the user from doing the wrong actions. For example, the KMS should not permit encryption using a signature-only key.
A UI is the vehicle that takes the users to the different functions of the key management system. A good interface should allow the users to perform those functions faster and with less effort. What one really needs to do to make an interface efficient is to figure out what exactly the user is trying to gain, and then design the interface to do exactly that without any trouble. The user interface designer should identify how the KMS application should work, what functions does it need to have, and what are the goals the user is trying to achieve.
Intuitive and easy to recover when a wrong thing is done
This approach reduces the total lifecycle cost by reducing user support costs and leads to a smoother admin experience. For example, the KMS should provide an undo function that reverses the previous function. Introducing undo functionality in a Key management system will save time and avoid manual interventions.
Image: "Desert Road", courtesy of William Warby, Flickr (CC BY 2.0)
Reference and further reading
- 8 Characteristics for Successful Interfaces (2009) by D. Fadeyev
- A framework for Designing Cryptographic Key Management System (2013) by E. Barker, M. Smid, D. Branstad and S. Chokhani