Key usage extensions and extended key usage
2014-02-14 13:24
155 查看
转载自IBM的一篇文章
http://publib.boulder.ibm.com/infocenter/domhelp/v8r0/index.jsp?topic=%2Fcom.ibm.help.domino.admin.doc%2FDOC%2FH_KEY_USAGE_EXTENSIONS_FOR_INTERNET_CERTIFICATES_1521_OVER.html
Key usage extensions and extended key usage
Key usage extensions
Key usage extensions define the purpose of the public key contained in a certificate. You can use them to restrict the public key to as few or as many operations as needed. For example, if you have a keyused only for signing or verifying a signature, enable the digital signature and/or non-repudiation extensions. Alternatively, if a key is used only for key management, enable key encipherment.
The following table describes the key usage extensions available for certificates created using the CA process.
Note The digital signature and data encipherment key usage extensions are enabled by default for all Internet certificates.
Key usage extension | Description |
Digital signature | Use when the public key is used with a digital signature mechanism to support security services other than non-repudiation, certificate signing, or CRL signing. A digital signature is often used for entity authentication and data origin authentication with integrity. |
Non-repudiation | Use when the public key is used to verify digital signatures used to provide a non-repudiation service. Non-repudiation protects against the signing entity falsely denying some action (excluding certificate or CRL signing). |
Key encipherment | Use when a certificate will be used with a protocol that encrypts keys. An example is S/MIME enveloping, where a fast (symmetric) key is encrypted with the public key from the certificate. SSL protocol also performs key encipherment. |
Data encipherment | Use when the public key is used for encrypting user data, other than cryptographic keys. |
Key agreement | Use when the sender and receiver of the public key need to derive the key without using encryption. This key can then can be used to encrypt messages between the sender and receiver. Key agreement is typically used with Diffie-Hellman ciphers. |
Certificate signing | Use when the subject public key is used to verify a signature on certificates. This extension can be used only in CA certificates. |
CRL signing | Use when the subject public key is to verify a signature on revocation information, such as a CRL. |
Encipher only | Use only when key agreement is also enabled. This enables the public key to be used only for enciphering data while performing key agreement. |
Decipher only | Use only when key agreement is also enabled. This enables the public key to be used only for deciphering data while performing key agreement. |
Extended key usage
Extended key usage further refines key usage extensions. An extended key is either critical or non-critical. If the extension is critical, the certificate must be used only for the indicated purposeor purposes. If the certificate is used for another purpose, it is in violation of the CA's policy.
If the extension is non-critical, it indicates the intended purpose or purposes of the key and may be used in finding the correct key/certificate of an entity that has multiple keys/certificates. The extension
is then only an informational field and does not imply that the CA restricts use of the key to the purpose indicated. Nevertheless, applications that use certificates may require that a particular purpose be indicated in order for the certificate to be acceptable.
If a certificate contains both a critical key usage field and a critical extended key usage field, both fields mustbe processed independently, and the certificate be used only for a purpose consistent
with both fields. If there is no purpose consistent with both fields, the certificate must not be used for any purpose.
Extended key | Enable for these key usage extensions |
TLS Web server authentication | Digital signature, key encipherment or key agreement |
TLS Web client authentication | Digital signature and/or key agreement |
Sign (downloadable) executable code | Digital signature |
Email protection | Digital signature, non-repudiation, and/or key encipherment or key agreement |
IPSEC End System (host or router) | Digital signature and/or key encipherment or key agreement |
IPSEC Tunnel | Digital signature and/or key encipherment or key agreement |
IPSEC User | Digital signature and/or key encipherment or key agreement |
Timestamping | Digital signature, non-repudiation. |
Examples of required key usage extensions
Application | Required key usage extensions |
SSL Client | Digital signature |
SSL Server | Key encipherment |
S/MIME Signing | Digital signature |
S/MIME Encryption | Key encipherment |
Certificate Signing | Certificate signing |
Object Signing | Digital signature |
相关文章推荐
- usage of javasigner and keytool
- Primary key and Unique index
- Keystore and keytool information
- Text Edit control - Usage and Demo
- BreakPoint.Hex.Workshop.v6.7.2.5284.Incl.Keyfilemaker.and.Patch-EMBRACE
- 【管理】【OKR】Objectives and Key Results 目标和关键成果
- EIBD installation and usage
- Why Deep Learning Works – Key Insights and Saddle Points
- Control.KeyDown Event and KeyEventArgs
- The app's Info.plist must contain an NSPhotoLibraryUsageDescription key with a string value explaini
- Ant Notes of usage and failures
- Python and Collective Intelligence KeyError: href
- OGRE中级教程二 RaySceneQueries and Basic Mouse Usage
- !!!Obj-C 2.0 -- Chapter 5 Categories and Extensions
- countByValueAndWindow 与countByWindow=reduceByWindow与reduceByKeyAndWindow
- How To Improve Laptop Battery Life And Usage In Linux Using TLP
- SQL SERVER – Introduction to SQL Server Encryption and Symmetric Key Encryption Tutorial with Script
- SSL 错误:Key usage violation in certificate has been detected.
- Usage of AWR And ASH
- PostgreSQL special sql 1 - list all the columns and primary key