Visual RFC.
ALL RFCs / RFC 3629
Read the RFC ↗
RFC 3629 / MECHANISM GUIDE

Byte-order mark

04

EF BB BF can encode an initial U+FEFF signature, but UTF-8 has no byte-order choice.

Related RFCs and changes

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

DIAGRAM§ 6 ↗
RFC 3629 · § 6EXAMPLE
3 / 3
Byte-order markEF BB BF can encode an initial U+FEFF signature, but UTF-8 has no byte-order choice.Byte-order markEFBBBFInitial U+FEFF signatureAllowed by profile?Forbidden by profile?UTF-8 has no little-endian / big-endian switch
03
Decode remaining content

Do not interpret a signature as a byte-order switch.

Protocol participantThreat or exceptionProtocol controlSimplified drawings · precise section references
KEY POINT

The BOM is not required to determine endianness in UTF-8.

  • The BOM is not required to determine endianness in UTF-8.
  • Protocols should specify whether an initial signature is allowed.
  • Blindly stripping meaningful data can affect signatures or character interpretation.
DETAILS

Examples are illustrative. Consult the linked RFC and its errata for implementation details.

Read the RFC section ↗

Diagrams simplify the RFC. Read the linked sections for complete requirements.

Privacy
All chapters in this RFC
  1. Variable-length encoding
  2. Pack a code point
  3. Validate byte sequences
  4. Byte-order mark
  5. Text comparison and security

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 ↗