Visual RFC.
ALL RFCs / RFC 3676
Read the RFC ↗
RFC 3676 / FLOWED PLAIN TEXT

Keep corruption and cryptographic input separate

05

Changing trailing spaces can change what a flowed reader displays. Cryptographic processing must use the agreed wire representation.

RFC 3676 · § 7.1EXAMPLE
3 / 3
Keep corruption and cryptographic input separateThree separate failure and protection examples. Stripping a trailing SPACE turns a soft line fixed and loses paragraph joining. Adding a trailing SPACE to a hard boundary can create an unintended join in a flowed body. Cryptographic processing takes the agreed wire representation, while reflowed display follows a distinct path; substituting display text for that input is blocked. The drawing makes no claim of a real signature result, encryption, authenticity or a complete cryptographic profile.Keep cryptographic input on the wire pathWire formCrypto inputagreed wire representationreflow for displayMeet at noonsubstitute displayNo signature or verification result claimed␠ = SPACE · ↵ = CRLF
03
Verify the wire form, not the reflowed view.

The protected wire representation follows a separate path to cryptographic processing. The reflowed display is a different representation and is stopped from being substituted as input. No verification result is claimed.

Source for this drawing: RFC 3676 · Read RFC section 7.1 ↗

Protocol participantThreat or exceptionProtocol controlSimplified drawings · precise section references
New to this? Start hereA quick picture + helpful background

The envelope and the letter do different jobs.

Mail transport moves a message between servers. The message format describes its contents. Authentication adds checks; it does not make every message safe.

Helpful first, if these ideas are unfamiliar

These pictures are analogies to help you learn. The linked RFC explains the actual rules.

Related RFCs and changes

“Updates” changes part of an earlier RFC. “Obsoletes” replaces it. This list shows selected related documents.

KEY POINT

The displayed paragraph is not the cryptographic input.

  • Stripping trailing spaces turns flowed lines into fixed lines. Adding trailing spaces can produce malformed display or replies by making hard boundaries look soft.
  • Signing, verification, encryption and decryption need consistent on-the-wire text. Reflowing display text must not silently replace that cryptographic input.
  • Section4.6 strongly discourages the referenced cleartext OpenPGP format with flowed messages and recommends OpenPGP-MIME instead: ignored trailing whitespace can allow changed rendering without detection. This is scoped historical guidance, not a complete current cryptographic profile.
DETAILS

The drawings illustrate transformations and boundaries, not an actual signature, key, encryption operation or successful authentication. Ordinary text/plain security considerations still apply. Section10 cautions that flowed quoting/wrapping may be unsuitable for some right-to-left charsets; fixed text with suitable transfer encoding may fit better. This small guide is not a Unicode line-breaking engine, MIME decoder, mail client or security implementation.

Read the RFC section ↗

All chapters in RFC 3676

Drawing view

Scroll the drawing to see every part. Playback controls stay above it.

RFC 9700 / CHAPTERS

Chapters

For full details, tables, algorithms, and exceptions, read the original RFC.

RFC status and corrections ↗