CCA Release 2.54
┌──────────────┐
│Verb Parameter│
└──────┬───────┘
│
┌─────────────┐ ── Plaintext from Application Program ───
│Initialization│ ┌────────────────┐ ┌────────────────┐ ┌────┬─────┬─────┐
│ Vector │ │ Data (1,8) │ │Data (Nᑍ8─7,Nᑍ8)│ │Data│ Pad │Count│
└──────┬───────┘ └───────┬────────┘ └───────┬────────┘ └────┴──┬──┴─────┘
││ │ │
│ ┌──┐ ┌──┐ ┌──┐
└───────────────XOR│ ┌ ─ ───XOR│ ┌──────XOR│
└─┬─┘ └─┬─┘ │ └─┬─┘
│││││
││││
┌──────────┐ │ ┌──────────┐ │ ┌──────────┐
│ Encipher │ │ Encipher │ │ │ Encipher │
└─────┬─────┘ │ └─────┬─────┘ │ └─────┬─────┘
││││
├────── ─ ┘ ├─────────┘ │
│ │ │
┌───────────────┐ ┌───────────────┐ ┌───────────────┐
│ Data (1,8) │ │Data (Nᑍ8─7,Nᑍ8)│ │ Last Block │
└────────────────┘ └────────────────┘ └────────────────┘
─────── Ciphertext to Application Program ────────────
Figure D-5. Enciphering Using the ANSI X9.23 Method
┌──────────────┐
│Verb Parameter│
└──────┬───────┘
│
┌─────────────┐ ──────── Ciphertext from Application Program ─────────
│Initialization│ ┌────────────────┐ ┌────────────────┐ ┌────────────────┐
│ Vector │ │ Data (1,8) │ │Data (Nᑍ8─7,Nᑍ8)│ │ Last Block │
└──────┬───────┘ └───────┬────────┘ └───────┬────────┘ └───────┬────────┘
││ │ │
│ ├────── ─ ┐ ├─────────┐ │
││ │││
│ ┌──────────┐ │ ┌──────────┐ │ ┌──────────┐
│ │ Decipher │ │ Decipher │ │ │ Decipher │
│ └─────┬─────┘ │ └─────┬─────┘ │ └─────┬─────┘
││ │││
│ ┌──┐ │ ┌──┐ │ ┌──┐
└───────────────XOR│ └ ─ ───XOR│ └──────XOR│
└─┬─┘ └─┬─┘ └─┬─┘
│ │ │
┌───────────────┐ ┌───────────────┐ ┌────┬────┬─────┐
│ Data (1,8) │ │Data (Nᑍ8─7,Nᑍ8)│ │Data│ Pad │Count│
└────────────────┘ └────────────────┘ └────┴─────┴─────┘
─── Plaintext to Application Program ────
Figure D-6. Deciphering Using the ANSI X9.23 Method
Appendix D. Algorithms and Processes D-9