OpenSSL "rsautl" Using PKCS#1 v1.5 Padding
What is the PKCS#1 v1.5 padding schema used in OpenSSL "rsautl" command?
PKCS#1 v1.5 padding schema is a padding standard specified in RFC2313 "PKCS #1: RSA Encryption, Version 1.5" proposed by RSA Laboratories in 1998.
PKCS#1 v1.5 padding schema is designed to pad input data to a full encryption block of the same size as the RSA key. The main purpose of PKCS#1 v1.5 padding schema is to improve security level of the RSA algorithm.
PKCS#1 v1.5 padding schema can be summarized as below:
Symbols and abbreviations: D Data (input data to be encrypted) BT Block Type: 0x01 or 0x02 EB Encryption Block k Size (in bytes) of the RSA key PS Padding String of non-0x00 bytes || Binary concatenation operation PKCS#1 v1.5 padding schema: EB = 0x00 || BT || PS || 0x00 || D
Requirements of PKCS#1 v1.5 padding schema:
For example, if you want to use 1024-bit (128-byte) RSA public key to encrypt some input data with PKCS#1 v1.5 padding, a minimum of 11 bytes will be padded in front of the data. So the maximum size of input data is 128 - 11 = 117 bytes.
For more information on PKCS#1 v1.5 padding schema, read RFC2313.
2017-05-12, 3254👍, 0💬
How to view the ASN.1 structure of an DSA public key using the OpenSSL "asn1parse" command? You can ...
Why I am getting the "Your connection is not secure" error screen in Firefox? You will see the "Your...
Certificate Summary: Subject: WWW.ICQ.COM Issuer: VeriSign Class 3 Secure Server CA - G3 Expiration:...
Certificate Summary: Subject: VeriSign Class 1 Public Primary Certification Authority - G3 Issuer: V...
What types of certificate stores do I have on my Windows system? What is "Personal" certificate stor...