liveBook · Manning

Rsaes-pkcs1-v1_5

As explained in Hacking Cryptography

PKCS #1 v1.5 is an RSA encoding standard that defines formatting and randomized padding for encryption and related operations.

PKCS #1 v1.5 protects RSA signatures by requiring a rigid, recognizable encoding before the RSA operation. Formatting turns a random RSA result into a useful signature only when every required field is valid. section 9.6.1 section 9.7

A signature’s recovered cleartext follows this structure:

Why validation must be exact

With a small public exponent such as e = 3, an attacker can construct values whose cube resembles a desired cleartext. Weak checks that accept incorrect padding can therefore enable a forged signature; requiring every padding byte to equal FF blocks this failure. section 9.7

Figure 9.9 PKCS#1 v1.5 formatting for input to RSA signatures: The padding area should be filled with FF bytes.
figure

Inspect the byte-level signature layout, including the FF-filled padding area. section 9.6.1

How Hacking Cryptography covers it

How deep it goes
Defines the byte layout and traces cube-root forgery, emphasizing exact FF validation rather than general RSA theory.
Examples
Uses 00 01 headers, FF padding, ASN.1 hash identifiers, e = 3, cube roots, and forged signatures.
What it assumes
Assumes RSA signatures and hash digests, while explaining the required byte formatting and ASN.1 identifiers.
What you can do after
Diagnose/debug RSA signature verifiers by enforcing the complete PKCS #1 v1.5 structure and rejecting malformed padding.
How it connects
Connects RSA signatures with hash functions, ASN.1, public exponents, existential forgery, and Bleichenbacher attacks.

Also explained in

Compare how 3 books explain rsaes-pkcs1-v1_5 →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Hacking Cryptography. The section links point to the parts of the book it draws on.