← Back to the reading view
Slides · 6 slides
PIN blocks: encrypting a 4-digit number like it's a nuclear launch code
The same use case told visually, ready to present. Speaker notes carry the full explanation.
Payments
PIN blocks
Encrypting a 4-digit number like it's a nuclear launch code
The PIN never exists in the clear outside a hardware boundary
PIN blocks: encrypting a 4-digit number like it's a nuclear launch code · Classical Crypto Today1 / 6
ISO-0 format
Packing PIN 1234 into 8 bytes
PIN blocks: encrypting a 4-digit number like it's a nuclear launch code · Classical Crypto Today2 / 6
Worked example
Binding the block to one card
Same PIN, different card: a completely different block
PIN blocks: encrypting a 4-digit number like it's a nuclear launch code · Classical Crypto Today3 / 6
ISO-3
Random padding beats the guessing oracle
PIN blocks: encrypting a 4-digit number like it's a nuclear launch code · Classical Crypto Today4 / 6
Translation
Decrypt and re-encrypt at every hop
3 hops × (decrypt + encrypt) = 6 operations, all inside HSMs
PIN blocks: encrypting a 4-digit number like it's a nuclear launch code · Classical Crypto Today5 / 6
Verification
Verify without ever storing the PIN
PIN blocks: encrypting a 4-digit number like it's a nuclear launch code · Classical Crypto Today6 / 6
1 / 6
Keys: ← → move, F full screen, G all slides, N notes