diff --git a/diagrams/convert_all.sh b/diagrams/convert_all.sh index 5bbe1d0..b59c153 100755 --- a/diagrams/convert_all.sh +++ b/diagrams/convert_all.sh @@ -1,8 +1,10 @@ #!/bin/bash +FORMAT="svg" + # Convert all diagrams in the diagrams folder to pngs in the mdbook src/png-diagrams folder SOURCE_DIR=$(dirname "$0") -TARGET_DIR=$(realpath "$(dirname "$0")/../src/png-diagrams/") +TARGET_DIR=$(realpath "$(dirname "$0")/../src/diagrams/") OS=$(uname) case "$OS" in @@ -21,6 +23,13 @@ fi pushd "$SOURCE_DIR" >/dev/null for file in *.drawio; do - "$DRAW_IO" -x -f png --scale 2.5 -o "${TARGET_DIR}/${file%.drawio}.png" "$file" + SOURCE="$file" + TARGET="${TARGET_DIR}/${file%.drawio}.${FORMAT}" + # Only convert if the source is more recent than the target + if [[ "$SOURCE" -nt "${TARGET}" ]]; then + "$DRAW_IO" --export --format ${FORMAT} --scale 2.5 -o "${TARGET}" "$SOURCE" + # add styling for dark mode (https://github.com/jgraph/drawio-github/blob/master/DARK-MODE.md) + sed -i -e "s$$$" "${TARGET}" + fi done popd >/dev/null diff --git a/diagrams/overview3.drawio b/diagrams/overview3.drawio index 5bb99a9..d381b36 100644 --- a/diagrams/overview3.drawio +++ b/diagrams/overview3.drawio @@ -51,10 +51,10 @@ - + - + @@ -69,7 +69,7 @@ - + diff --git a/src/diagrams/README.md b/src/diagrams/README.md new file mode 100644 index 0000000..f62a008 --- /dev/null +++ b/src/diagrams/README.md @@ -0,0 +1 @@ +The files in this folders are generated. See `../../diagrams/convert_all.sh` \ No newline at end of file diff --git a/src/diagrams/client-state-diagram.svg b/src/diagrams/client-state-diagram.svg new file mode 100644 index 0000000..1fd6d00 --- /dev/null +++ b/src/diagrams/client-state-diagram.svg @@ -0,0 +1,3 @@ + + +
Initialized
Initialized
ExpectServer
Hello
ExpectServer...
ExpectServer
HelloOrHello
RetryRequest
ExpectServer...
Complete
ServerHello
Handling
Complete...
Expect
Encrypted
Extensions
Expect...
Expect
Certificate
Expect...
Expect
ServerKx
Expect...
Expect
Certificate
StatusOr
ServerKx
Expect...
Expect
Certificate
Status
Expect...
Expect
ServerDone
OrCertReq
Expect...
Expect
Certificate
Request
Expect...
ExpectServer
Done
ExpectServer...
ExpectNew
Ticket
ExpectNew...
ExpectCcs
ExpectCcs
Expect
Finished
Expect...
Expect
Traffic
Expect...
Expect
Finished
Expect...
Expect
Certificate
OrCertReq
Expect...
Expect
Certificate
Expect...
Expect
Certificate
Request
Expect...
Expect
Certificate
Verify
Expect...
Expect
Traffic
Expect...
TLS1.3
TLS1.3
TLS1.2
TLS1.2
Text is not SVG - cannot display
\ No newline at end of file diff --git a/src/diagrams/crate_structure.svg b/src/diagrams/crate_structure.svg new file mode 100644 index 0000000..eb971d5 --- /dev/null +++ b/src/diagrams/crate_structure.svg @@ -0,0 +1,3 @@ + + +
mpc-core
mpc-core
mpc-aio
mpc-aio
tls-aiotls-aio
tls-aio
tls-aio
mpc-circuits
mpc-circuits
utils-aio
utils-aio
prover
prover
notary
notary
core
core
tls-aiotls-aio
tls-client
tls-client
tls-aiotls-aio
tls-core
tls-core
Text is not SVG - cannot display
\ No newline at end of file diff --git a/src/diagrams/data_provenance.svg b/src/diagrams/data_provenance.svg new file mode 100644 index 0000000..68be7ce --- /dev/null +++ b/src/diagrams/data_provenance.svg @@ -0,0 +1,3 @@ + + +
No Data Provenance
No Data Provenance
Status Quo 
Status Quo 
Ultimate solution
Ultimate solution
TLSNotary
TLSNotary
Server
Server
User A
User A
User B
User B
ZKP
ZKP
Improved TLS
Improved TLS
🔐
signed
data
🔐signed...
🔐redacted
signed
data
🔐redacted...
  • Authenticity ✅
  • Integrity ✅
  • Only required info ✅
Authenticity ✅Integrity ✅Only...
Server
Server
User A
User A
User B
User B
ZKP
ZKP
🔐
signed
data
🔐signed...
🔐redacted
signed
data
🔐redacted...
  • Authenticity ✅
  • Integrity ✅
  • Only required info ✅
Authenticity ✅Integrity ✅Only...
Notary
Notary
Multi-party TLS
Multi-party...
  • Authenticity ✅
  • Integrity ✅
  • Too much info ⁉️
Authenticity ✅Integrity...
Server
Server
TLS
TLS
User A
User A
User B
User B
grant access
to User B
grant access...
delegate
access control
delegate...
OAuth
Server
OAuth...
  • censoring possible ⁉️
  • sees all requests ⁉️
censoring possible ⁉️sees...
🔐
signed
data
🔐signed...
access token
access token
Server
Server
User A
User A
User B
User B
TLS
TLS
data
⁉️
data...
  • Authenticity ⁉️
  • Integrity ⁉️
  • Too much info ⁉️
Authenticity ⁉️Integrity...
🔐
signed
data
🔐signed...
Text is not SVG - cannot display
\ No newline at end of file diff --git a/src/diagrams/data_provenance_none.svg b/src/diagrams/data_provenance_none.svg new file mode 100644 index 0000000..737ca75 --- /dev/null +++ b/src/diagrams/data_provenance_none.svg @@ -0,0 +1,3 @@ + + +
No Data Provenance
No Data Provenance
Server
Server
User A
User A
User B
User B
TLS
TLS

signed
data
⁉️
signed...
  • Authenticity ⁉️
  • Integrity ⁉️
  • Too much info ⁉️
Authenticity ⁉️Integrity...
🔐
signed
data
🔐signed...
Text is not SVG - cannot display
\ No newline at end of file diff --git a/src/diagrams/data_provenance_oauth.svg b/src/diagrams/data_provenance_oauth.svg new file mode 100644 index 0000000..ae9b511 --- /dev/null +++ b/src/diagrams/data_provenance_oauth.svg @@ -0,0 +1,3 @@ + + +
Status Quo 
Status Quo 
  • Authenticity ✅
  • Integrity ✅
  • Too much info ⁉️
Authenticity ✅Integrity...
Server
Server
TLS
TLS
User A
User A
User B
User B
grant access
to User B
grant access...
delegate
access control
delegate...
OAuth
Server
OAuth...
  • censoring possible ⁉️
  • sees all requests ⁉️
censoring possible ⁉️sees...
🔐
signed
data
🔐signed...
access token
access token
Text is not SVG - cannot display
\ No newline at end of file diff --git a/src/diagrams/data_provenance_tlsn.svg b/src/diagrams/data_provenance_tlsn.svg new file mode 100644 index 0000000..ab708b4 --- /dev/null +++ b/src/diagrams/data_provenance_tlsn.svg @@ -0,0 +1,3 @@ + + +
TLSNotary
TLSNotary
Server
Server
User A
User A
User B
User B
ZKP
ZKP
🔐
signed
data
🔐signed...
🔐redacted
signed
data
🔐redacted...
  • Authenticity ✅
  • Integrity ✅
  • Only required info ✅
Authenticity ✅Integrity ✅Only...
Notary
Notary
Multi-party TLS
Multi-party...
Text is not SVG - cannot display
\ No newline at end of file diff --git a/src/diagrams/data_provenance_ultimate.svg b/src/diagrams/data_provenance_ultimate.svg new file mode 100644 index 0000000..908bfe4 --- /dev/null +++ b/src/diagrams/data_provenance_ultimate.svg @@ -0,0 +1,3 @@ + + +
Ultimate solution
Ultimate solution
Server
Server
User A
User A
User B
User B
ZKP
ZKP
Improved TLS
Improved TLS
🔐
signed
data
🔐signed...
🔐redacted
signed
data
🔐redacted...
  • Authenticity ✅
  • Integrity ✅
  • Only required info ✅
Authenticity ✅Integrity ✅Only...
Text is not SVG - cannot display
\ No newline at end of file diff --git a/src/diagrams/gc-types.svg b/src/diagrams/gc-types.svg new file mode 100644 index 0000000..3d8561a --- /dev/null +++ b/src/diagrams/gc-types.svg @@ -0,0 +1,3 @@ + + +
Input A
Input A
Input B
Input B
WireGroup
WireGroup
0
0
1
1
1
1
0
0
1
1
1
1
0
0
0
0
Value
Value
$$w^{...
$$w^{...
$$w^{...
$$w^{...
WireLabel
WireLabel
Labels<Input, Active>
Labels<Input, Active>
$$w^{...
$$w^{...
$$w^{...
$$w^{...
Labels<Input, Full>
Labels<Input, Full>
$$w^{...
$$w^{...
$$w^{...
$$w^{...
$$w^{...
$$w^{...
$$w^{...
$$w^{...
$$w^{...
$$w^{...
$$w^{...
$$w^{...
$$w^{...
$$w^{...
$$w^{...
$$w^{...
LabelsSet<Input, Full>
LabelsSet<Input, Full>
LabelsSet<Input, Active>
LabelsSet<Input, Active>
WireLabelPair
WireLabelP...
Text is not SVG - cannot display
\ No newline at end of file diff --git a/src/diagrams/intro-diagram.svg b/src/diagrams/intro-diagram.svg new file mode 100644 index 0000000..14d2e9d --- /dev/null +++ b/src/diagrams/intro-diagram.svg @@ -0,0 +1,3 @@ + + +
TLSNotary Protocol Overview
TLSNotary Protocol Overview
Web Server
Web Server
User
User
Notary
Notary
Notary Public Key Share
Notary Public Key Sha...
Combined PK =
User Public Key Share +
Notary Public Key Share
Combined PK =...
Web Server Public Key
Web Server Public Key
Web Server Public Key
Web Server Public Key
Key Exchange
Key Exchange
Point Addition
Point Addition
PMSLabel
Computation
PMSLabel...
Session Key Derivation
Session Key Derivation
Master Key
Master Key
Session Key
Session Key
Encrypt Request
Encrypt Request
Encrypt
Encrypt
Compute MAC
Compute MAC
PMS EC Additive Share
PMS EC Additive Share
Decrypt Response
Decrypt Response
Decrypt
Decrypt
Verify MAC
Verify MAC
PMS EC Additive Share
PMS EC Additive Share
Encoded PMS
Encoded PMS
Encoded PMS
Encoded PMS
Encoded PMS
Encoded PMS
Encoded PMS
Encoded PMS
Encoded Session Keys
Encoded Session Keys
Encoded Session Keys
Encoded Session Keys
Encoded Session Keys
Encoded Session Keys
Encoded Session Keys
Encoded Session Keys
Encrypted Request
Encrypted Request
Request
Request
Encrypted Request
Encrypted Request
Encoded Session Keys
Encoded Session Keys
Response
Response
Encrypted Response
Encrypted Response
Encrypted Response
Encrypted Response
Encoded Session Keys
Encoded Session Keys
Encrypted Request
Encrypted Request
Encrypted Response
Encrypted Response
Sign Transcript
Sign Transcript
Text is not SVG - cannot display
\ No newline at end of file diff --git a/src/diagrams/key_exchange.svg b/src/diagrams/key_exchange.svg new file mode 100644 index 0000000..49f9e7a --- /dev/null +++ b/src/diagrams/key_exchange.svg @@ -0,0 +1,3 @@ + + +
Requester
Requester
Server
Server
Notary
Notary
Server
Public Key
Serv...
Server
Public Key
Serv...
Notary
Public Key
Nota...
Notary
Public Key
Nota...
Requester Public
Key
Requ...
Secure 2PC
Secure 2PC
PMS Key Share
PMS...
PMS Key Share
PMS...
Requester
Private Key
Requ...
Notary
Private Key
Nota...
PMS Key
PMS...
Text is not SVG - cannot display
\ No newline at end of file diff --git a/src/diagrams/overview.svg b/src/diagrams/overview.svg new file mode 100644 index 0000000..cd794e6 --- /dev/null +++ b/src/diagrams/overview.svg @@ -0,0 +1,3 @@ + + +
Selective Disclosure Phase
Selective Disclosure Phase
ZK Proof
ZK Proof
Verifier
Verifier
User
User
Notarized Transcript
Notarized Transcript
Transcript
Transcript
1010101010101
0101
010101010
1010101110101
1010101010101...
Encrypted Data
Encrypted Data
Signature
Signature
Metadata
Metadata
0
0
Server
Server
User
User
Notary
Notary
Notarization Phase
Notarization Phase
Notarized Transcript
Notarized Transcript
Transcript
Transcript
1010101010101
0101010101010
1010101110101
1010101010101...
Encrypted Data
Encrypted Data
Signature
Signature
Metadata
Metadata
Transcript
Transcript
1010101010101
0101010101010
1010101110101
1010101010101...
Encrypted Data
Encrypted Data
Notarize
Notarize
Multi-party request
Multi-party r...
Text is not SVG - cannot display
\ No newline at end of file diff --git a/src/diagrams/overview2.svg b/src/diagrams/overview2.svg new file mode 100644 index 0000000..2ed9092 --- /dev/null +++ b/src/diagrams/overview2.svg @@ -0,0 +1,3 @@ + + +
Server
Server
encrypted data
encrypted...
Notary
Notary
User
User
signed data
signed data
Verifier
Verifier
Text is not SVG - cannot display
\ No newline at end of file diff --git a/src/diagrams/overview3.svg b/src/diagrams/overview3.svg new file mode 100644 index 0000000..412997b --- /dev/null +++ b/src/diagrams/overview3.svg @@ -0,0 +1,3 @@ + + +
User
User
Server
Server
Notary
Notary
blindly
signed
transcript
blindly...
Verifier
Verifier
request
request
notarize
notarize
redacted signed
transcript
redacted...
selective disclosure
selectiv...
Multi party computation
Multi party computati...
1
1
2
2
3
3
4
4
verify
verify
Text is not SVG - cannot display
\ No newline at end of file diff --git a/src/diagrams/overview_notarization.svg b/src/diagrams/overview_notarization.svg new file mode 100644 index 0000000..3f8f3a1 --- /dev/null +++ b/src/diagrams/overview_notarization.svg @@ -0,0 +1,3 @@ + + +
User
User
Server
Server
Notary
Notary
public key
public key
public key
public key
public key
public key
Multi-party
request
Multi-party...
Multi-party
key exchange
Multi-party...
encrypted request
encrypted request
encrypted response
encrypted response
Notarize
Notarize

combined public key

combined public key
Session Key
Se...
Session Key Share
Se...
Session Key Share
Se...
encrypted
response
encrypted...
notarized
transcript
notarized...
request
request
Request
Reque...
Notarize
Notar...
Text is not SVG - cannot display
\ No newline at end of file diff --git a/src/diagrams/protocol.svg b/src/diagrams/protocol.svg new file mode 100644 index 0000000..088083a --- /dev/null +++ b/src/diagrams/protocol.svg @@ -0,0 +1,3 @@ + + +
Server
Server
Requester
Requester
Notary
Notary
Private Key
Private Key
Private Key
Private Key
PMS Share
PMS Share
PMS Share
PMS Share
Secret Share PMS
Secret Share PMS
ClientHello
ClientHello
ServerHello
ServerHello
CF verify_data
CF verify_data
TLS 1.2 - Single-round
TLS 1.2 - Single-round
ClientFinished
ClientFinished
ServerFinished
ServerFinished
ServerCertificate
ServerCertificate
ServerKeyExchange
ServerKeyExchange
ServerHelloDone
ServerHelloDone
Notary Public Key
Notary Public Key
Server Public Key
Server Public Key
ClientKeyExchange
ClientKeyExchange
PMS Share
PMS Share
PMS Share
PMS Share
Key Shares
Key Shares
Key Shares
Key Shares
Secret Share
Session Keys
(PRF)
Secret Share...
Handshake Hash
Handshake Hash
Key Shares
Key Shares
CF verify_data
CF verify_data
Key Shares
Key Shares
Compute
ClientFinished
verify_data
Compute...
Key Shares
Key Shares
Key Shares
Key Shares
ClientFinished
ClientFinished
Encrypt
ClientFinished
Encrypt...
ClientCCS
ClientCCS
ServerCCS
ServerCCS
Key Shares
Key Shares
EncryptedRequest
EncryptedRequest
Requ
Requ
Request
Request
Key Shares
Key Shares
EncryptedRequest
EncryptedRequest
Encrypt
Encrypt
EncryptedRequest
EncryptedRequest
Response
Response
Commitment
Commitment
Generate
Commitment
Generate...
EncryptedResponse
EncryptedResponse
EncryptedResponse
EncryptedResponse
MAC Key share
MAC Key share
Verify
MACs
Verify...
Key Shares
Key Shares
Decrypt
Encrypted
Response
Decrypt...
Commitment
Commitment
ClientCloseNotify
ClientCloseNotify
Verify
ServerFinished
Verify...
Key Shares
Key Shares
Key Shares
Key Shares
SF verify_data
SF verify_data
Handshake Hash
Handshake Hash
Compute
ServerFinished
verify_data
Compute...
Text is not SVG - cannot display
\ No newline at end of file diff --git a/src/diagrams/transcript.svg b/src/diagrams/transcript.svg new file mode 100644 index 0000000..58b5ef9 --- /dev/null +++ b/src/diagrams/transcript.svg @@ -0,0 +1,3 @@ + + +
Transcript
Transc...
Commitments
Commitments
0
0
1
1
2
2
3
3
ServerRandom
ServerRandom
HandshakeData
HandshakeData
ProtocolVersion
ProtocolVersion
CipherSuite
CipherSuite
CommitmentScheme
CommitmentScheme
Header
Header
Timestamp
Timestamp
SessionSecrets
Sessio...
ServerCertificate
ServerCertificate
ApplicationData
ApplicationData
Email
Email
Password
Password
Request: Login
Request: Login
AccessToken
AccessToken
RefreshToken
RefreshToken
Response: Success
Response: Success
UserId
UserId
Request: Get Profile
Request: Get Profile
AccessToken
AccessToken
UserId
UserId
LegalName
LegalName
Address
Address
Response: Profile
Response: Profile
UserId
UserId
ClientRandom
ClientRandom
ServerEphemeralKey
ServerEphemeralKey
NotarizedTranscript
NotarizedTranscript
NotarySignature
NotarySignature
NotaryId
NotaryId
NotaryCertificate
NotaryCertificate
Text is not SVG - cannot display
\ No newline at end of file diff --git a/src/intro.md b/src/intro.md index 4efc5b2..40a6628 100644 --- a/src/intro.md +++ b/src/intro.md @@ -16,7 +16,7 @@ The TLSNotary protocol consists of 4 steps: 3. The `User` **selectively discloses** the data to the `Verifier`. 4. The `Verifier` **verifies** the data. -![](./png-diagrams/overview3.png) +![](./diagrams/overview3.svg) ### ① Multi-party TLS Request diff --git a/src/motivation.md b/src/motivation.md index ce531bb..5a6cf6a 100644 --- a/src/motivation.md +++ b/src/motivation.md @@ -8,7 +8,7 @@ Data provenance will make data truly portable, empowering users to share it with ## Non-repudiation: TLS is not enough -![](png-diagrams/data_provenance_none.png) +![](diagrams/data_provenance_none.svg) Transport Layer Security (TLS) plays a crucial role in digital security. TLS protects communication against eavesdropping and tampering. It ensures that the data received by the `User` indeed originated from the `Server` and was not changed. The `Server`'s identity is verified by the `User` through trusted Certificate Authorities (CAs). Data integrity is maintained by transmitting a cryptographic hash (called Message Authentication Code or MAC in TLS) alongside the data, which safeguards against deliberate alterations. @@ -20,7 +20,7 @@ While the concept seems straightforward, enabling servers to sign data is not a ## Status Quo: delegate access -![](png-diagrams/data_provenance_oauth.png) +![](diagrams/data_provenance_oauth.svg) Currently, when a `User` wants to share data from a `Server` with another party, OAuth can be used to facilitate this if the application supports it. In this way, the other party receives the data directly from the `Server`, ensuring authentic and unchanged data. However, applications often do not provide fine-grained control over which data to share, leading to the other party gaining access to more information than strictly necessary. @@ -30,7 +30,7 @@ It's worth noting that in many instances, OAuth is not even presented as an opti ## TLSNotary: data provenance and privacy with secure multi-party computation -![](png-diagrams/data_provenance_tlsn.png) +![](diagrams/data_provenance_tlsn.svg) TLSNotary operates by introducing a third party, the `Notary`, into the usual TLS connection between the `User` and a `Server`. This `Notary` is **not an intermediary**. Instead, the `Notary` participates in a **secure multi-party computation** (MPC) to jointly manage the TLS connection without ever viewing the data in plain text; the `Notary` only has access to encrypted data. Furthermore, as the `Notary` only possesses the ephemeral keys of the `Server`, it remains unaware of which `Server` the `User` is communicating with. diff --git a/src/mpc/key_exchange.md b/src/mpc/key_exchange.md index 5712a5e..2f03f34 100644 --- a/src/mpc/key_exchange.md +++ b/src/mpc/key_exchange.md @@ -2,7 +2,7 @@ In TLS, the first step towards obtaining TLS session keys is to compute a shared secret between the client and the server by running the [ECDH protocol](https://en.wikipedia.org/wiki/Elliptic-curve_Diffie–Hellman). The resulting shared secret in TLS terms is called the pre-master secret `PMS`. - + Using the notation from Wikipedia, below is the 3-party ECDH protocol between the `Server` the `Requester` and the `Notary`, enabling the `Requester` and the `Notary` to arrive at shares of `PMS`. diff --git a/src/overview.md b/src/overview.md index b8b3c5d..50042cf 100644 --- a/src/overview.md +++ b/src/overview.md @@ -3,4 +3,4 @@ The following diagram is a high-level protocol overview introducing the main components of TLSNotary. -![TLSNotary Overview](./png-diagrams/intro-diagram.png) +![TLSNotary Overview](./diagrams/intro-diagram.svg) diff --git a/src/png-diagrams/client-state-diagram.png b/src/png-diagrams/client-state-diagram.png deleted file mode 100644 index dfe5ee1..0000000 Binary files a/src/png-diagrams/client-state-diagram.png and /dev/null differ diff --git a/src/png-diagrams/crate_structure.png b/src/png-diagrams/crate_structure.png deleted file mode 100644 index 51f0525..0000000 Binary files a/src/png-diagrams/crate_structure.png and /dev/null differ diff --git a/src/png-diagrams/data_provenance.png b/src/png-diagrams/data_provenance.png deleted file mode 100644 index db8e6ad..0000000 Binary files a/src/png-diagrams/data_provenance.png and /dev/null differ diff --git a/src/png-diagrams/data_provenance_none.png b/src/png-diagrams/data_provenance_none.png deleted file mode 100644 index 1e99506..0000000 Binary files a/src/png-diagrams/data_provenance_none.png and /dev/null differ diff --git a/src/png-diagrams/data_provenance_oauth.png b/src/png-diagrams/data_provenance_oauth.png deleted file mode 100644 index 1b98a10..0000000 Binary files a/src/png-diagrams/data_provenance_oauth.png and /dev/null differ diff --git a/src/png-diagrams/data_provenance_tlsn.png b/src/png-diagrams/data_provenance_tlsn.png deleted file mode 100644 index 725f8d5..0000000 Binary files a/src/png-diagrams/data_provenance_tlsn.png and /dev/null differ diff --git a/src/png-diagrams/data_provenance_ultimate.png b/src/png-diagrams/data_provenance_ultimate.png deleted file mode 100644 index 87f3fb9..0000000 Binary files a/src/png-diagrams/data_provenance_ultimate.png and /dev/null differ diff --git a/src/png-diagrams/gc-types.png b/src/png-diagrams/gc-types.png deleted file mode 100644 index b3d0bcc..0000000 Binary files a/src/png-diagrams/gc-types.png and /dev/null differ diff --git a/src/png-diagrams/intro-diagram.png b/src/png-diagrams/intro-diagram.png deleted file mode 100644 index 2121b4c..0000000 Binary files a/src/png-diagrams/intro-diagram.png and /dev/null differ diff --git a/src/png-diagrams/key_exchange.png b/src/png-diagrams/key_exchange.png deleted file mode 100644 index 48db956..0000000 Binary files a/src/png-diagrams/key_exchange.png and /dev/null differ diff --git a/src/png-diagrams/overview.png b/src/png-diagrams/overview.png deleted file mode 100644 index 53da54b..0000000 Binary files a/src/png-diagrams/overview.png and /dev/null differ diff --git a/src/png-diagrams/overview2.png b/src/png-diagrams/overview2.png deleted file mode 100644 index 5e8ebb7..0000000 Binary files a/src/png-diagrams/overview2.png and /dev/null differ diff --git a/src/png-diagrams/overview3.png b/src/png-diagrams/overview3.png deleted file mode 100644 index d2e6f46..0000000 Binary files a/src/png-diagrams/overview3.png and /dev/null differ diff --git a/src/png-diagrams/overview_notarization.png b/src/png-diagrams/overview_notarization.png deleted file mode 100644 index f1ab879..0000000 Binary files a/src/png-diagrams/overview_notarization.png and /dev/null differ diff --git a/src/png-diagrams/protocol.png b/src/png-diagrams/protocol.png deleted file mode 100644 index f6bfd4f..0000000 Binary files a/src/png-diagrams/protocol.png and /dev/null differ diff --git a/src/png-diagrams/tls12-multiround.png b/src/png-diagrams/tls12-multiround.png deleted file mode 100644 index 5bd0457..0000000 Binary files a/src/png-diagrams/tls12-multiround.png and /dev/null differ diff --git a/src/png-diagrams/transcript.png b/src/png-diagrams/transcript.png deleted file mode 100644 index df738b2..0000000 Binary files a/src/png-diagrams/transcript.png and /dev/null differ