| name | selective-encrypted-transmission-pattern |
| description | Security pattern for encrypting specific data before transmission. Use when only certain data elements need encryption, implementing field-level encryption for transit, or when entities must actively manage encryption decisions. Addresses "Leak action request or data in transit" problem. |
Selective Encrypted Transmission Security Pattern
Entities actively encrypt specific sensitive data elements before transmitting them over uncontrolled channels. Entities directly interact with cryptographic libraries to encrypt only necessary parts.
Problem Addressed
Leak action request or data in transit: Sensitive data exposed while being transmitted over a channel that may be observed by unauthorized parties.
Core Components
| Role | Type | Responsibility |
|---|
| Sender | Entity | Encrypts and transmits data |
| Receiver | Entity | Receives and decrypts data |
| CryptographerS | Cryptographic Primitive | Encryption library for Sender |
| CryptographerR | Cryptographic Primitive | Decryption library for Receiver |
Data Elements
- d: Plaintext data element
- {d}_k: Ciphertext (d encrypted with key k)
- keyInfoS: Key information for encryption
- keyInfoR: Key information for decryption
- configS/configR: Cipher configuration
Pattern Flow
Sender → [encrypt(d, keyInfoS, configS)] → CryptographerS
CryptographerS → [{d}_k] → Sender
Sender → [{d}_k] → Receiver (over channel)
Receiver → [decrypt({d}_k, keyInfoR, configR)] → CryptographerR
CryptographerR → [d] → Receiver