Try to build from the ground up 🧱
No maths 🧮
It's fine to not cover everything ⏱️
Think about if these explanations and analogies work 🤔
This is a work in progress, we will talk about to how improve it in the breakout 🚧
Working Data is unencrypted
Privileged users can access all working data, as plain text
Encrypted enclaves are reserved for confidential working data, each with its own encryption key
Nothing outside of the TEE cannot obtain the key
A privileged user would see TEE data as encrypted text
With a Trusted Execution Environment (TEE), you can use a computer in a way that is private, even from the owner of that computer
TEEs protect data in use rather than in storage or being transferred
Imagine an open plan office
Each worker has a desk, but others are visible
A manager is free to look at every desk
Perhaps an office with locked rooms and key cards
A worker's access is restricted to their room only
A manager cannot enter locked rooms
Securing private data (or communications) against unauthorised readers
A process (algorithm) for encrypting or decrypting
plain text — cipher → encrypted text
plain text ← cipher — encrypted text
abcdefghijklmnopqrstuvwxyz
xgfvwuniepoqdbcrkmzhaytljs
hello world
iwqqc tcmqv
This is a terrible cipher!
Advanced Encryption Standard
Requires a secret for encryption and decryption
hello world
65 01 b1 07 5e 2f bf 13 04 c6 fb 2d 9c aa cc be
2,400,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000 years to break
A type of encryption that uses a pair of keys.
One key is private and must be kept secret by a single person. The other key is public can be used by anyone.
By keeping one key secret, we can
Establishing confidence of identity through the signing of public keys
Therefore, we can indirectly trust identities if they are signed by people we do trust
An approach where a single, authoritative entity signs trusted parties
Browsing the internet securely currently relies on a small set of Certificate Authorities (CAs) who verify websites.
Public keys for these CAs are distributed with operating systems and browsers
Data can exist in different states and the way we protect it must change appropriately
Storing data
Files, records and documents
Locked cabinets or safes
Data written to persistent storage (like hard disk, USB drive)
Storing files encrypted. Anyone without the key cannot see the plain text
Sending messages
Conversations, letters
Whispering, envelopes
Any communication over a network, like loading a website, submitting a form
Use a one-time key to encrypt communications. Only the two parties in the conversation can decrypt messages
Data being processed
Writing
Private rooms
Data in RAM (memory)
TEEs: use enclaves encrypted with unique keys for distinct jobs
Computers are just machines ⚙️
The powerful thing is they are dynamic and reactive, a single computer can be programmed to do many things 🪄
They take inputs and perform instructions to create outputs 🏭