Show
What is Encryption Key Management?Encryption key management is administering the full lifecycle of cryptographic keys. This includes: generating, using, storing, archiving, and deleting of keys. Protection of the encryption keys includes limiting access to the keys physically, logically, and through user/role access. Shortcuts^Back to Top Introduction“The proper management of cryptographic keys is essential to the effective use of cryptography for security. Keys are analogous to the combination of a safe. If a safe combination is known to an adversary, the strongest safe provides no security against penetration. Similarly, poor key management may easily compromise strong algorithms.”
Let’s get started with a brief overview of the types of encryption keys.
^Back to Top Types of Encryption KeysSymmetric Keys: Data-at-RestIn symmetric key cryptography, the same encryption key is used to both encrypt and decrypt the data. This means of encryption is used primarily to protect data at rest. An example would be to encrypt sensitive data into ciphertext while it is stored in a database and decrypt it to plaintext when it is accessed by an authorized user, and vice versa. Asymmetric Keys: Data-in-MotionAsymmetric keys, on the other hand, are a pair of keys for the encryption and decryption of the data. Both keys are related to each other and created at the same time. They are referred to as a public and a private key:
^Back to Top How Encryption Key Systems WorkSymmetric Key SystemsFirst, let’s establish a few definitions:
This is an interactive graphic, click on the numbers above to learn more about each step Now that we have the definitions in place, below is a step by step example of how an authorized user accesses encrypted data:
Asymmetric Key Systems
^Back to Top The Full Life-Cycle of KeysThe encryption key life-cycle, defined by NIST as having a pre-operational, operational, post-operational, and deletion stages, requires that, among other things, a operational crypto period be defined for each key. A crypto period is the "time span during which a specific key is authorized for use" and in Section 5.3 of NIST's Guide, the crypto period is determined (for example, with a symmetric key) by combining the estimated time during which encryption will be applied to data (the Originator Usage Period (OUP)) and the time when it will be decrypted for use (the Recipient Usage Period (RUP)).
But, since an organization may reasonably want to encrypt and decrypt the same data for years on end, other factors may come into play to when factoring the crypto period: You may want to limit the:
This can be boiled down to a few key questions:
The general rule: as the sensitivity of data being secured increases, the lifetime of an encryption key decreases. Given this, your encryption key may have an active life shorter than an authorized user's access to the data. This means that you will need to archive de-activated keys and use them only for decryption. Once the data has been decrypted by the old key, it will be encrypted by the new key, and over time the old key will no longer be used to encrypt/decrypt data and can be deleted. (see graphic below) See below for a more thorough understanding of a keys full life-cycle. Key Creation (Generation & Pre-Activation)The encryption key is created and stored on the key management server. The key manager creates the encryption key through the use of a cryptographically secure random bit generator and stores the key, along with all it’s attributes, into the key storage database. The attributes stored with the key include its name, activation date, size, instance, the ability for the key to be deleted, as well as its rollover, mirroring, key access, and other attributes. The key can be activated upon its creation or set to be activated automatically or manually at a later time. The encryption key manager should track current and past instances (or versions) of the encryption key. You need to be able to choose whether or not the key can be deleted, mirrored to a failover unit, and by which users or groups it can be accessed. Your key manager should allow the administrator to change many of the key’s attributes at any time. Key Use and Rollover (Activation through Post-Activation)
Key RevocationAn administrator should be able to use the key manager to revoke a key so that it is no longer used for encryption and decryption requests. A revoked key can, if needed, be reactivated by an administrator so that, In certain cases the key can be used to decrypt data previously encrypted with it, like old backups. But even that can be restricted. Back Up (Escrow)NIST (Section 8.3.1) requires that an archive should be kept for deactivated keys. The archive should “protect the archived material from unauthorized [disclosure,] modification, deletion, and insertion.” The encryption keys need “to be recoverable … after the end of its cryptoperiod” and “the system shall be designed to allow reconstruction” of the keys should they need to be reactivated for use in decrypting the data that it once encrypted. Key Deletion (Destruction)If a key is no longer in use or if it has somehow been compromised, an administrator can choose to delete the key entirely from the key storage database of the encryption key manager. The key manager will remove it and all its instances, or just certain instances, completely and make the recovery of that key impossible (other than through a restore from a backup image). This should be available as an option if sensitive data is compromised in its encrypted state. If the key is deleted, the compromised data will be completely secure and unrecoverable since it would be impossible to recreate the encryption key for that data.
^Back to Top Segregated Roles in Key ManagementSeparation of DutiesIn “Recommendation for Key Management – Part 2” NIST defines Separation of Duties as: A security principle that divides critical functions among different staff members in an attempt to ensure that no one individual has enough information or access privilege to perpetrate damaging fraud. The practice of Separation of Duties reduces the potential for fraud or malfeasance by dividing related responsibilities for critical tasks between different individuals in an organization. It is common in the financial and accounting procedures of most organizations. For example, the person who prints the checks at a company would not be the person who signs the checks. Similarly, the individual who signs checks would not reconcile the bank statements. A company would ensure that business critical duties are categorized into four types of functions: authorization, custody, record keeping, and reconciliation. In a perfect system, no one person should handle more than one type of function. Regarding information security practices, the implementation of Separation of Duties is critical in the area of encryption key management. To prevent unwanted access to protected data, it is important that the person who manages encryption keys not have the ability to access protected data, and vice versa. This is no more difficult to accomplish in an information technology context than in a financial context, but is often overlooked or misunderstood in complex computer systems. Dual ControlAgain,
NIST, in Recommendation for Key Management – Part 2, defines Dual Control: While Separation of Duties involves distributing different parts of a process to different people, Dual Control requires that at least two or more individuals control a single process. In data security practice it is common to find requirements for Dual Control of encryption key management functions. Because a key management system may be storing encryption keys for multiple applications and business entities, the protection of encryption keys is critically important. Split KnowledgeThe concept of Split Knowledge applies to any access or handling of unprotected cryptographic material like encryption keys or passphrases used to create encryption keys, and requires that no one person know the complete value of an encryption key. If passphrases are used to create encryption keys, no one person should know the entire passphrase. Rather, two or more people should each know only a part of the pass phrase, and all of them would have to be present to create or recreate an encryption key.
^Back to Top The Domains to Secure Encryption KeysPhysical SecurityMany, when talking about securing a key manager, will naturally turn to securing the key manager itself with a hardware security module (HSM). While that is a necessary topic (and we will discuss it), we should first talk about securing the physical environment in which your key manager is housed. In NIST’s Special Publication 800-14, they offer this definition of physical security: “Physical and environmental security controls” should be “implemented to protect the facility housing system resources, the system resources themselves, and the facilities used to support their operation.” An organization's physical security plan need to include things like:
Now comes securing the cryptographic module itself. The Federal Information Processing Standards (FIPS) has identified four levels of increasing security in FIPS 140-2 that can be applied to the module, each corresponding to the commensurate threat level:
How an Encryption Key Manager is Validated Every data security product available makes claims as to superior functionality or data protection. But when protecting sensitive data, organizations need to have assurance that a product's stated security claim is valid. This is certainly true when it comes to an encryption key manager. To address this, NIST has devised a system to validate cryptographic modules and ensure that they comply with FIPS 140-2 standards. Here are the steps an encryption key manager vendor must to take to show full compliance:
Logical Access SecurityThe next arena in which you can protect your encryption keys is by logically separating the different cryptographic components housing the keys from the rest of the larger network. There are three main items to consider:
User/Role AccessOnce Physical Security and Logical Security are addressed, the final component is user roles and privileges. The core concept promulgated by NIST is the concept of least privilege: where you restrict “the access privileges of authorized personnel (e.g., program execution privileges, file modification privileges) to the minimum necessary to perform their jobs.” NIST gives guidance, in Sections 5.3.5 of Recommendation for Key Management – Part 2, on the access controls and privileges necessary to properly manage user access to the key management system.
Beyond limiting access to the key management server, you should also limit access to the keys themselves based on user and group. The users and group access can be defined on a system level, or at the level of each key. When you create a key you can define the restrictions on user and group access. As an example: There is an AES encryption key available on the key management server used to protect an employee's personal data. It is restricted so that only members of the Human Resources group can use that key. So any individual with "Human Resources" defined as their individual or group role can successfully request that key, all others are turned away. High Availability and Business ContinuityOnce you have physical security, logical security, and user roles in place, you must also consider business continuity. If an intruder does comprise your data or your production server(s) are taken offline for a variety of reasons, you must be able to bounce back in a relatively short time with pre-prescribed steps. Here are a couple definitions to start us off: Business Continuity: As defined by ISO 22301:2012 (Section 3.3), it is the “capability of the organization to continue delivery of products or services at acceptable” levels after a “disruptive incident.” Hot failover: In a network environment, a hot failover is switching to a backup server that is regularly updated from the production server and is ready, at any time, should the production server no longer be able to function normally for any length of time. In the case of key management, each production key management server should be mirrored with a high availability server in a geographically separate location in case the production server is compromised and taken offline for any length of time. As an abbreviated list, here are some features to look for in key management solutions or what you will want to address if you build your own:
^Back to Top Platforms for Housing the Key ManagerHSMThe hardware security module (HSM) has been discussed already in “Physical Security” mostly referred to as the “cryptographic module.” But, to summarize, a HSM is typically a server with different levels of security protection or “hardening” that prevents tampering or loss. These can be summarized as:
Hosted HSMWith many organizations moving some or all of their operations to the cloud, the need for moving their security has also arisen. The good news, many key management providers have partnered with cloud hosting providers to rack up traditional HSMs in cloud environments. The same levels of “hardening” would still apply, as it is a traditional HSM in an offsite environment. VirtualVirtual instances of an encryption key manager offer a great deal more flexibility than their HSM counterparts. In many cases, a virtual key manager can be downloaded from a vendor in a matter of minutes and deployed in a virtual environment. An HSM, on the other hand, can take days or weeks being shipped to the site and then requires a physical installation. Further, virtual instances can be installed anywhere that supports the virtual platform that the key manager runs in, VMware, as an example. The downside, of course, is that by it’s nature of being virtual with no set physical components, a virtual key manager’s software can only be FIPS 140-2 compliant, but not validated. So, if your business need(s) or compliance regulation(s) require FIPS 140-2 validation, then a HSM is your only option. That being said, the logical security that FIPS 140-2 compliant virtual key managers provide is normally more than enough for most organizational needs. AWS, Microsoft Azure, and More: Dedicated or “as a Service”Cloud providers, such as Amazon Web Services (AWS), Microsoft Azure (Azure), and more have marketplace offerings for encryption key management as well as their own key management as a service (KMaaS). AWS and Azure’s KMaaS is typically multi-tenant, meaning more than one user’s key(s) are present on the same key management instance. This can raise concerns for organizations that need dedicated services to mitigate security concerns of other users accessing the same key data stores. To combat this issue, most cloud providers will also offer dedicated services. In their marketplaces, there are also independent vendors that provide dedicated services that typically come in two forms: Pay-Per-Usage and “bring your own license.” Townsend Security provides for both platforms and for both licensing models: Alliance Key Manager for AWS and Alliance Key Manager for Azure. Both the AWS and the Azure instances are dedicated key managers in an IaaS virtual instance and also enjoy the flexibility of being the same key manager that is deployed as an HSM, Cloud HSM, and VMware instance so that your environment can scale past AWS and Azure, if needed. This is useful for organizations with existing (or future) physical data center(s), because having the same technology secure your data everywhere reduces complexity for your IT staff as they use and maintain it.
^Back to Top Communication ProtocolsPKIPublic key infrastructure (PKI): NIST defines PKI as an infrastructure that “binds public keys to entities, enables other entities to verify public key bindings, and provides the services needed for ongoing management of keys in a distributed system.” Put another way, it is a cryptographic infrastructure consisting of the software, hardware, roles, procedures, and policies needed to properly manage and distribute public keys (such as a digital certificate) and private keys.A very simple internal PKI installation (as shown in the graphic would flow like this:
As defined by NIST in, “Introduction to Public Key Technology and the Federal PKI Infrastructure”, the PKI environment consists of:
KMIPKey Management Interoperability Protocol (KMIP): As defined by OASIS, KMIP is a communication “protocol used for the communication between clients and servers to perform certain management operations on objects stored and maintained by a key management system.” This protocol is a standardized way of managing encryption keys throughout the lifecycle of the key and is designed to facilitate “symmetric and asymmetric cryptographic keys, digital certificates, and templates used to simplify the creation of objects and control their use.”Below is a curated list of what OASIS further defines in Section 4 as what the key management client can request of the key management server:
For further reading on KMIP, try the KMIP Usage Guide Version 1.2, Edited by Indra Fitzgerald and Judith Furlong.
^Back to Top Encryption Key Management in Meeting CompliancePCI DSSPayment card industry Data Security Standard (PCI DSS) is a widely accepted set of regulations intended to secure credit, debit and cash card transactions and cardholder data. PCI DSS requires that merchants protect sensitive cardholder information from loss and use good security practices to detect and protect against security breaches.In Section 3.5 of PCI DSS, organizations that process, store, or transmit cardholder data should, “document and implement procedures to protect keys used to secure stored cardholder data against disclosure and misuse.” This includes:
Likewise, Section 3.6 requires that you “fully document and implement all key management processes and procedures for cryptographic keys used for encryption of cardholder data.” This includes securely:
HIPAA HITECHThe Health Insurance Portability and Accountability Act (HIPAA) and the Health Information Technology for Economic and Clinical Health (HITECH) Act both seek greater adoption and meaningful use of health information technology. Both also lay out guidelines and regulations for proper data security around Electronic Protected Health Information (ePHI). Compliance with the HIPAA Security Rules and HIPAA Privacy Rules for ePHI requires the use of security technologies and best practices to demonstrate strong efforts towards complying with this federal regulation.SOXThe Sarbanes-Oxley (SOX) Act was passed to protect investors from the possibility of fraudulent accounting activities by corporations. The Sarbanes-Oxley Act (SOX) mandated strict reforms to improve financial disclosures from corporations and prevent accounting fraud. Sections 302, 304, and 404 of the Sarbanes-Oxley Act mandate that organizations build, maintain, and annually report on the data security and internal controls used safeguard their sensitive data from misuse and fraud.Cloud Security AllianceWhile the Cloud Security Alliance is not a governmental agency able to levy fines for non-compliance of their standards, it is an not-for-profit organization of cloud vendors, users, and security experts whose mission is “To promote the use of best practices for providing security assurance within Cloud Computing, and provide education on the uses of Cloud Computing to help secure all other forms of computing.” They currently have over 80,000 members and growing. So conforming to their standards is in the best interest of many companies worldwide. As a part of this mission the organization has published a document, “Security Guidance For Critical Areas of Focus In Cloud Computing,” to help vendors and customers achieve more secure applications in cloud environments. The published guidance is now in its third edition and is available from the organization’s web site. The guidance provides recommendations for encryption key management in the section “Domain 11 – Encryption and Key Management”. Domain 11 - Encryption & Key ManagementHere are the three main points that the CSA stresses for encryption key management:
Here also is a curated list of their requirements for encryption and key management:
EU GDPRThe new European Union General Data Protection Regulation (EU GDPR) has now passed both the EU Council and Parliament and replaces the earlier Data Protection Directive (Directive 94/46/EC). In Provision 83 it states:In order to maintain security and to prevent processing in infringement of this Regulation, the controller or processor should evaluate the risks inherent in the processing and implement measures to mitigate those risks, such as encryption. Article 32 also calls for “the pseudonymisation and encryption of personal data.” If an organization does so, Article 34 states that the strict data breach disclosure laws of Article 33 will not be enforced if, the controller has implemented appropriate technical and organisational protection measures, and those measures were applied to the personal data affected by the personal data breach, in particular those that render the personal data unintelligible to any person who is not authorised to access it, such as encryption. The GDPR places a high priority on protecting data at rest with encryption. Since encryption key management is part of an overall encryption strategy, it should be considered part in parcel with complying with EU law. CAP 486Hong Kong’s CAP 486 Personal Data (Privacy) Ordinance requires that all practical steps will be taken to ensure that personally identifiable information, held by a data user, are protected against unauthorized or accidental access. Such considerations should be the kind of data stored and the harm that could result if any of those things should occur; the physical location where the data is stored; and any security measures incorporated into any equipment in which the data is stored.APPIJapan’s Act on the Protection of Personal Information contains policies that are guidelines, but not laws, governing the protection of personal information. It requires that businesses handling personal information should take all necessary and proper measures for the prevention of leakage, loss, or damage.PA 1988 & PA 2000Australia’s Privacy Act of 1988 and the Privacy Amendment Act of 2000 govern data security for the Down Under. In it, businesses must take all reasonable steps to protect personally identifiable information in its databases from abuse or theft. An organization must also destroy or permanently de‑identify personal information if it is no longer needed.
^Back to Top Bonus ContentA Brief History - the Need for Encryption Key ManagementEncryption has been around for millenniums. Some of the earliest mentions of it come from the Arthashastra, a treatise on Imperial Indian governance written c2nd century BCE. In it, it describes giving messages to state spies in "secret writing”. Later, and in arguably the most famous form of ancient encryption, Julius Caesar sent messages to his battle front generals in code. Known as the Caesar Cipher, it is a: “substitution cipher in which each letter in the plaintext is 'shifted' a certain number of places down the alphabet. For example, with a shift of 1, A would be replaced by B, B would become C, and so on.” Unfortunately for Caesar, and fortunately for his opponents, once the cipher is known, all messages can be easily read. Thus rendering the cipher useless. There needed to be a better way. Fast forward to the electronic age. In the 1921 Edward Hebern patented the Hebern Electric Super Code Cipher Machine. It was the first to code the message with a secret key embedded in a detachable rotor. In recently declassified documents, the NSA showed that the machine enciphered the message by having the operator type the message in and the ciphertext would appear in a light-board, one letter at a time. But since the encryption key was limited by the use of one rotor, consisting of 26 circuit points, it was ultimately broken by cryptanalysis, specifically letter frequencies. The real leap forward was the Enigma Machine of World War II, developed by the Germans in the 1920s. It used three rotors and was thought unbreakable since the Germans, during the war, changed the rotors once a day, “giving 159 million million million possible settings to choose from,” estimates Bletchley Park. But, the Enigma machine was compromised by the Poles in 1932 using mathematical techniques. Later, this early work was used to read encrypted messages during World War II by, among others, Alan Turing (at Bletchley Park) and the use of the then latest data crunching computers. Sending messages securely had come a long way from simple substitution ciphers. Keys were now being used - but they could be cracked using the brute force of the latest computers. Enter: Data Encryption Standard. First published as the FIPS 46 standard in 1977, in 1987 the US Government, under the Computer Security Act, mandated that the National Institute of Standards and Technology (NIST) issue the Data Encryption Standard (DES) in which it “specifies two FIPS approved cryptographic algorithms.” It also mandated that the “DES key consists of 64 binary digits ("0"s or "1"s) of which 56 bits are randomly generated and used directly by the algorithm. The other 8 bits, which are not used by the algorithm, may be used for error detection.” DES was considered very secure at the time. But in little more than a decade, and as computers became exponentially faster, DES keys quickly became vulnerable to brute force attacks. Two options were proposed to address the issue around the same time. The first, introduced in 1997, was Triple Data Encryption Algorithm (TDEA) or as it is more commonly know: Triple Data Encryption Standard (3DES). As NIST describes the cryptographic technique: [3DES] encrypts each block three times with the DES algorithm, using either two or three different 56-bit keys. This approach yields effective key lengths of 112 or 168 bits But 3DES, when using only 112 bits, is still vulnerable to attacks such as chosen-plaintext attacks. Also, since 3DES is a multi-step encryption process using two or three encryption keys, a stronger, more efficient method was needed. In 1997 NIST started a process to identify a replacement for DES. NIST invited cryptography and data security specialists from around the world to participate in the discussion and selection process. Five encryption algorithms were adopted for study. Through a process of consensus the encryption algorithm proposed by the Belgian cryptographers Joan Daeman and Vincent Rijmen was selected. Prior to selection Daeman and Rijmen used the name Rijndael (derived from their names) for the algorithm. After adoption the encryption algorithm was given the name Advanced Encryption Standard (AES) which is in common use today. In 2000 NIST formally adopted the AES encryption algorithm and published it as a federal standard under the designation FIPS-197. AES encryption uses a single key as a part of the encryption process. The key can be 128 bits (16 bytes), 192 bits (24 bytes), or 256 bits (32 bytes) in length. Given that the fastest computer would take billions of years to run through every permutation of a 256-bit key, AES is considered an extremely secure encryption standard. This brings us to today. AES is a very sophisticated encryption standard with an encryption key and can withstand the onslaught of the fastest computers. It’s only vulnerability? The encryption keys falling into the wrong hands. That is why, after you have deployed your encryption, your best line of defense is a robust encryption key management strategy. What is a cryptographic key and what is it used for?In cryptography, a key is a string of characters used within an encryption algorithm for altering data so that it appears random. Like a physical key, it locks (encrypts) data so that only someone with the right key can unlock (decrypt) it.
What are different types of keys used in cryptography?The properties of the associated key (e.g. type, length, crypto-period) will depend on its intended function.. Data Encryption Key. ... . Authentication Key. ... . Digital Signature Key. ... . Key Encryption Key (aka Key Wrapping Key or Key Transport Key) ... . Master Key.. What are the 3 types of encryption keys?They are symmetric, asymmetric, public, and private.
Which cryptography type uses more than one key?Public key cryptography is a method of encrypting or signing data with two different keys and making one of the keys, the public key, available for anyone to use. The other key is known as the private key. Data encrypted with the public key can only be decrypted with the private key.
|