RSA Key Pair Generation
An RSA (Rivest Shamir Adleman) key pair consists of an RSA private key, which is utilized to calculate a digital signature, and an RSA public key, which is utilized to verify a digital signature. An RSA key pair utilized for digital signatures shall only be used for digital signatures, not for other intentions (for instance, key establishment).
An RSA public key consists of a modulus n, which is the product of two positive prime integers p and q (i.e., n = pq), and a public key exponent e. Thus, the RSA public key is the pair of values (n, e) and is utilized to verify digital signatures. The size of an RSA key pair is typically considered to be the length of the modulus n in bits (nlen).
The matching RSA private key consists of the same modulus n and a private key exponent d that depends on n and the public key exponent e. Thus, the RSA private key is the pair of values (n, d) and is utilized to generate digital signatures. Observe that an alternate technique for representing (n, d) using the Chinese Remainder Theorem (CRT) is permitted as specified in Public Key Cryptography Standard.
In order to offer security for the digital signature process, the two integers p and q, and the private key exponent d shall be kept secret. The modulus n and the public key exponent e can be made known to anyone.
The security strength of the hash function utilized shall conform or exceed the security strength associated with the bit length of the modulus n.
It’s advisable that the security strength of the modulus and the hash function be the equal unless an accord has been made between participating entities to utilize a stronger hash function; a hash function that offers a lower security strength than the modulus shall not be utilized.
A Certification Authority should use a modulus whose length nlen is equal to or greater than the moduli utilized by its subscribers. For instance, if the subscribers are utilizing an nlen = 2048, then the Certification Authority should use nlen ? 2048
Potential exclusions to this rule include cross certification between Certification Authorities, certifying keys for intents other than digital signatures and transitioning from one key size or algorithm to another.
RSA keys shall be generated with regard to a security strength S. When RSA parameters are randomly generated (id est., the primes p and q, and optionally, the
public key exponent e), they shall be generated using an approved random or pseudorandomnumber generator.
The resulting (pseudo) random numbers shall be utilized as seeds for generating RSA parameters (i.e., the (pseudo) random number is used as a prime number generation seed). Prime number generation seeds shall be kept secret or destroyed when the modulus n is computed.
If the prime number generation seeds are retained, they shall only be utilized as certify that the generated values (id est., p, q or e) were determined in an arbitrary manner and shall be protected in a manner that is (leastwise) equivalent to the protection necessitated for the private key.
10 Responses to “RSA Key Pair Generation”
What is the difference between digital signature and digital certificate ?
Digital certificates are electronic files that are used to uniquely identify people and resources over networks such as the Internet.
It establishes your credentials when doing business or other transactions on the Web.
You can see it like a passport in the digital world.It is issued by a trusted third party called Certification Authority (CA).
What information a digital certificate typically includes ?
The name of the holder and other identification information
The holder’s public key
The name of the Certification
A serial number.
The validity period of the certificate.
Who are distributed the digital certificates keys ?
The public key can be freely distributed without compromising the private key, which must be kept secret by its owner. These keys only work as a pair.
What are WEB SERVER CERTIFICATES ?
A Web server certificate is a certificate that authenticates the identity of a
Web site to visiting browsers. When a browser user wants to send confidential information to a Web server, the browser will access the server’s digital certificate.
What are the CA CERTIFICATES ?
A CA certificate is a certificate that identifies a Certification Authority. CA
certificates are just like other digital certificates except that they are selfsigned.
interesting post
a very good article about RSA Key Pair Generation