Path: blob/main/frontier/07-pairings/connect/boneh-franklin-ibe.ipynb
483 views
Connect: Boneh-Franklin Identity-Based Encryption
Module 07 | Real-World Connections
Show how pairings enable encryption where any string (email address) serves as a public key.
Introduction
In traditional public-key encryption, Alice needs Bob's public key certificate before she can encrypt a message to him. This requires a Public Key Infrastructure (PKI) -- certificate authorities, revocation lists, key servers.
Identity-Based Encryption (IBE) eliminates this overhead: Alice encrypts directly to Bob's identity string (email address, phone number, employee ID). No certificate needed.
The Boneh-Franklin scheme (2001) was the first practical IBE construction. It uses bilinear pairings as its core building block, the same pairings from Module 07.
The key insight: a trusted authority (the Private Key Generator, or PKG) holds a master secret and can derive any user's private key from their identity. This is a feature, not a bug, the PKG replaces the entire certificate authority infrastructure.
The Boneh-Franklin Scheme
Four algorithms:
| Algorithm | Who Runs It | What It Does |
|---|---|---|
| Setup | PKG (trusted authority) | Generate master secret , publish params |
| Extract | PKG | Derive user's private key |
| Encrypt | Anyone (sender) | Encrypt to identity string using only public params |
| Decrypt | User (recipient) | Decrypt using private key obtained from PKG |
The pairing enables decryption: the recipient can reconstruct the same mask that the sender used, even though they hold different secrets.
Step 2: Extract. PKG Derives Bob's Private Key
When Bob registers with the PKG (after authenticating his identity), the PKG computes:
This is Bob's private key, a curve point that only the PKG can compute (because only the PKG knows ). The PKG sends to Bob over a secure channel.
Note: the PKG knows everyone's private key. This is the key escrow property of IBE. It is appropriate for enterprise settings where the organization should be able to recover encrypted data.
Step 3: Encrypt. Alice Sends a Message to Bob's Identity
Alice wants to encrypt message (an integer mod in our toy version) to Bob. She only needs:
Bob's identity string:
"[email protected]"The public parameters: and
She does not need Bob's public key certificate!
Encryption:
Compute
Pick random
Compute ciphertext:
The mask is the key: it depends on the pairing of Bob's identity-derived point with the master public key.
Step 4: Decrypt. Bob Uses His Private Key
Bob receives ciphertext and decrypts using his private key :
Why does this work? The key identity is:
And Alice's mask was:
Both compute . Alice using and , Bob using and . Bilinearity is the magic that makes these two paths meet.
Concept Map: Module 07 to Boneh-Franklin IBE
| Module 07 Concept | IBE Application |
|---|---|
| Bilinear map | Decryption works: |
| Hash-to-curve | Map identity string to curve point |
| Pairing computation | Both encryption mask and decryption mask |
| Pairing-friendly curve | Required for efficient pairing computation |
| DLP hardness in | Security: cannot recover from |
| Non-degeneracy | Different identities produce different pairing values |
IBE is the canonical example of pairings enabling something impossible without them: no non-pairing-based IBE scheme existed before Boneh-Franklin.
Summary
| Concept | Key idea |
|---|---|
| Setup | PKG publishes and keeps secret |
| Extract | PKG computes for each user |
| Encrypt | Sender computes mask using only public params |
| Decrypt | Recipient computes the same mask via |
| Bilinear "meeting point" | Alice knows and , Bob knows and , and both reach |
| Key escrow | The PKG can derive any user's private key, replacing PKI certificates entirely |
IBE eliminates the need for PKI certificates. Anyone can encrypt to an email address without first obtaining the recipient's public key. The trade-off is key escrow: the PKG can derive any user's private key.
Back to Module 07: Bilinear Pairings