Skip to content

Commit 8eb20ac

Browse files
authored
Update quick start and remove notary.pse.dev references (#44)
The PSE-hosted notary server and WebSocket proxy at notary.pse.dev are being taken offline. Quick start overhaul: - Rewrite browser quick start around interactive tutorial and demo site - Update install instructions to match current extension (correct Chrome Web Store ID, build-from-source instead of old zip download) - Simplify quick start overview page - Remove tlsn-js quick start (pinned to deprecated alpha.12 notary) - Delete old extension screenshots Other documentation updates: - Replace notary_server.md with deprecation stub (unlisted from sidebar) - Delete swagger-ui for deprecated notary server API - Fix broken docs.tlsnotary.org links in FAQ - Remove PSE proxy whitelist references from FAQ - Update redirect for old tlsn-js URL
1 parent c817bb9 commit 8eb20ac

31 files changed

+57
-354
lines changed

docs/faq.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ In a concrete scenario of sending a 1KB HTTP request followed by a 100KB respons
119119

120120
A proxy is required only for the browser extension because browsers do not allow extensions to open TCP connections. Instead, our extension opens a websocket connection to a proxy (local or remote) which opens a TCP connection with the server. Our custom TLS client is then attached to this connection and the proxy only sees encrypted data.
121121

122-
[PSE hosts a WebSocket proxy](https://docs.tlsnotary.org/developers/notary_server.html#websocket-proxy-server) that you can use for development and experimentation. Note that this proxy supports only a limited [whitelist of domains](https://docs.tlsnotary.org/developers/notary_server.html#websocket-proxy-server). For other domains, you can easily run your own local WebSocket by following [these steps](https://docs.tlsnotary.org/quick_start/browser_extension.html#websocket-proxy).
122+
The [Verifier Server](/docs/extension/verifier#built-in-websocket-proxy) includes a built-in WebSocket proxy that handles this automatically.
123123

124124
### Why does my session time out?
125125

@@ -146,7 +146,7 @@ Next, confirm that your request includes the necessary headers:
146146

147147
If the issue persists, [enable extra logging](#faq11) with `RUST_LOG=debug` or `RUST_LOG=trace` for deeper insights into what TLSNotary is doing.
148148

149-
If you are connecting through a WebSocket proxy (e.g., in the browser extension), double-check that the WebSocket proxy connects to the intended domain. Note that PSE's public WebSocket proxy only supports a limited [whitelist](https://docs.tlsnotary.org/developers/notary_server.html#websocket-proxy-server). If you use a local proxy, make sure the domain is correct.
149+
If you are connecting through a WebSocket proxy (e.g., in the browser extension), double-check that the WebSocket proxy connects to the intended domain. If you use a local proxy, make sure the domain is correct. See the [Verifier Server](/docs/extension/verifier#built-in-websocket-proxy) documentation for more details on proxy configuration.
150150

151151
### Does TLSNotary solve the Oracle Problem?
152152

docs/notary_server.md

Lines changed: 11 additions & 99 deletions
Original file line numberDiff line numberDiff line change
@@ -1,115 +1,27 @@
11
---
22
sidebar_position: 4
33
sidebar_label: Notary server
4+
unlisted: true
45
---
56

7+
# Notary Server (Deprecated)
68

79
:::danger
810

9-
In [alpha.13](https://github.com/tlsnotary/tlsn/releases/tag/v0.1.0-alpha.13) the projects scope was narrowed to focus on the core TLSNotary libraries and the upcoming SDK. While the Notary server was designed to be simple and easy to customize, maintaining it became increasingly challenging due to growing feature requests and support needs. By removing the Notary server more resources can be allocated to stabilizing and improving the core protocol.
11+
The Notary server was **removed** from the TLSNotary project in [alpha.13](https://github.com/tlsnotary/tlsn/releases/tag/v0.1.0-alpha.13). The project's scope was narrowed to focus on the core TLSNotary libraries and the upcoming SDK.
1012

11-
Existing users who rely on the Notary server can continue to use it by forking and maintaining their own version. We encourage the community to adapt and extend the server as needed for their use cases.
12-
13-
[More info](https://github.com/tlsnotary/tlsn/releases/tag/v0.1.0-alpha.13)
13+
The `notary.pse.dev` hosted server and its WebSocket proxy have been **shut down**.
1414

1515
:::
1616

17+
## What Should I Use Instead?
1718

18-
# Run a Notary Server
19-
This guide shows you how to run a [notary server](https://github.com/tlsnotary/tlsn/tree/v0.1.0-alpha.12/crates/notary/server) in an Ubuntu server instance.
20-
21-
## Configure Server Setting
22-
Refer to the server's [README.md](https://github.com/tlsnotary/tlsn/tree/v0.1.0-alpha.12/crates/notary/server#configuration) for instructions on how to configure the following settings.
23-
24-
1. The following files are needed before running a notary server.
25-
26-
| File | Purpose | File Type | Compulsory | Sample Command |
27-
| ------------------ | ------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------- | ---------------------------- | --------------------------------------------------------------------------------------------------------------------- |
28-
| TLS private key | The private key used for the notary server's TLS certificate to establish TLS connections with provers | TLS private key in PEM format | Yes unless TLS is turned off | \<Generated when creating CSR for your Certificate Authority, e.g. using [Certbot](https://certbot.eff.org/)> |
29-
| TLS certificate | The notary server's TLS certificate to establish TLS connections with provers | TLS certificate in PEM format | Yes unless TLS is turned off | \<Obtained from your Certificate Authority, e.g. [Let's Encrypt](https://letsencrypt.org/)> |
30-
| Notary signing key | The private key used by the notary server to sign the attestation | A K256 or P256 elliptic curve private key in PKCS#8 PEM format | Yes | `openssl genpkey -algorithm EC -out eckey.pem -pkeyopt ec_paramgen_curve:secp256k1 -pkeyopt ec_param_enc:named_curve` |
31-
2. Expose the notary server port (specified in the config) on your server networking setting.
32-
3. Optionally one can turn on [authorization](https://github.com/tlsnotary/tlsn/tree/v0.1.0-alpha.12/crates/notary/server#authorization), or turn off [TLS](https://github.com/tlsnotary/tlsn/tree/v0.1.0-alpha.12/crates/notary/server#tls) if TLS is handled by an external setup, e.g. reverse proxy, cloud setup.
33-
34-
## Using Cargo
35-
1. Install required system dependencies.
36-
```bash
37-
sudo apt-get update && sudo apt-get upgrade
38-
sudo apt-get install libclang-dev pkg-config build-essential libssl-dev
39-
```
40-
2. Install rust.
41-
```bash
42-
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
43-
source ~/.cargo/env
44-
```
45-
3. Download the notary server source code.
46-
```bash
47-
mkdir ~/src; cd ~/src
48-
git clone https://github.com/tlsnotary/tlsn.git
49-
```
50-
4. Switch to your desired [released version](https://github.com/tlsnotary/tlsn/releases), or stay in the `main` branch to use the latest version (⚠️ only prover of the same version is supported for now).
51-
```bash
52-
git checkout tags/<version>
53-
```
54-
5. To configure the server setting, please refer to the server's [README.md](https://github.com/tlsnotary/tlsn/tree/v0.1.0-alpha.12/crates/notary/server#configuration).
55-
6. Run the server.
56-
```bash
57-
cargo run --release --bin notary-server
58-
```
59-
60-
## Using Docker
61-
1. Install docker following your preferred method [here](https://docs.docker.com/engine/install/ubuntu/).
62-
2. To configure the server setting, please refer to the server's [README.md](https://github.com/tlsnotary/tlsn/tree/v0.1.0-alpha.12/crates/notary/server#configuration).
63-
3. Run the notary server docker image of your desired version (⚠️ only prover of the same version is supported for now).
64-
```bash
65-
docker run --init -p 127.0.0.1:7047:7047 ghcr.io/tlsnotary/tlsn/notary-server:<version>
66-
```
67-
68-
## API Endpoints
69-
Please refer to the list of all HTTP APIs [here](pathname:///swagger-ui/notary_server_api.html), and WebSocket APIs [here](https://github.com/tlsnotary/tlsn/tree/v0.1.0-alpha.12/crates/notary/server#websocket-apis).
70-
71-
## PSE Development Notary Server
72-
73-
> **_⚠️ WARNING:_** `notary.pse.dev` is hosted for development purposes only. You are welcome to use it for exploration and development; however, please refrain from building your business on it. Use it at your own risk.
74-
75-
The TLSNotary team hosts a public notary server for development, experimentation, and demonstration purposes. The server is currently open to everyone, provided that it is used fairly.
76-
77-
We host multiple versions of the notary server: Check https://notary.pse.dev to get a list of the currently hosted versions. The version with a `-sgx` suffix run the notary server software in a Trusted Execution Environment (TEE), Intel SGX on Azure.
78-
You can verify the software attestation by visiting `https://notary.pse.dev/<version>/info`.
79-
80-
To check the status of the notary server, visit the `healthcheck` endpoint at:
81-
`https://notary.pse.dev/<version>/healthcheck`
82-
83-
### WebSocket Proxy Server
84-
85-
Because web browsers don't have the ability to make TCP connections directly, TLSNotary requires a WebSocket proxy to set up TCP connections when it is used in a browser. To facilitate the exploration of TLSNotary and to run the examples easily, the TLSNotary team hosts a public WebSocket proxy server. Note that this proxy only supports a predefined set of domains. You can view the full list of supported domains in the [websockify configuration file](https://github.com/privacy-ethereum/tlsn-infra/blob/main/docker/websockify/websockify_config).
86-
87-
You can utilize this WebSocket proxy with the following syntax:
88-
89-
```
90-
wss://notary.pse.dev/proxy?token=<domain>
91-
```
92-
93-
Replace `<domain>` with the domain you wish to access (for example, `swapi.dev`).
94-
95-
## Running Notary Server on Windows Subsystem for Linux (WSL)
96-
97-
When running the Notary Server and WebSocket Proxy on Windows Subsystem for Linux (WSL), you may encounter networking issues. In older versions of Windows (prior to Windows 11 22H2), WSL uses a virtual Ethernet adapter with its own IP address, which requires additional firewall configuration.
98-
99-
#### For Windows Versions Prior to 11 22H2:
100-
101-
1. **Identify the WSL IP Address**:
102-
Run the following command inside the WSL terminal:
103-
```bash
104-
wsl hostname -I
105-
```
19+
- **Browser extension users:** Use the [Verifier Server](/docs/extension/verifier), which includes a [built-in WebSocket proxy](/docs/extension/verifier#built-in-websocket-proxy).
20+
- **Rust users:** See the [Quick Start](/docs/quick_start/rust) examples for Prover-Verifier workflows that don't require a notary server.
10621

107-
2. **Configure Port Forwarding on the Windows Host**:
108-
To forward traffic from the Windows host to the Notary Server inside WSL, set up port forwarding. Run the following PowerShell command on your Windows host, replacing `connectaddress` with the WSL IP address you retrieved in the previous step:
109-
```powershell
110-
netsh interface portproxy add v4tov4 listenport=7047 listenaddress=0.0.0.0 connectport=7047 connectaddress=192.168.101.100
111-
```
22+
## Legacy Documentation
11223

113-
#### For Windows 11 22H2 and Later:
24+
For users who have forked and maintain their own notary server, the original source code and documentation are available at:
11425

115-
In newer versions of Windows (Windows 11 22H2 and above), networking has been simplified with the introduction of mirrored mode. This mode allows WSL instances to share the host’s network interface, eliminating the need for manual port forwarding configurations. You can enable mirrored mode as recommended by Microsoft [here](https://learn.microsoft.com/en-us/windows/wsl/networking#mirrored-mode-networking).
26+
- [Notary server source code (v0.1.0-alpha.12)](https://github.com/tlsnotary/tlsn/tree/v0.1.0-alpha.12/crates/notary/server)
27+
- [alpha.13 release notes](https://github.com/tlsnotary/tlsn/releases/tag/v0.1.0-alpha.13) explaining the removal

docs/quick_start/README.md

Lines changed: 4 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ This quick start will help you get started with TLSNotary, both in native Rust a
88
## Objectives
99

1010
- Gain a better understanding of what you can do with TLSNotary
11-
- Learn the basics of how to notarize and verify data using TLSNotary
11+
- Learn the basics of how to prove and verify data using TLSNotary
1212

1313
## Rust
1414

@@ -18,26 +18,8 @@ This quick start will help you get started with TLSNotary, both in native Rust a
1818

1919
## Browser
2020

21-
### Hosted demo
21+
The easiest way to get started with TLSNotary in the browser is to try the [interactive tutorial](https://demo.tlsnotary.org/tutorial/). It walks you through the full workflow — from running your first plugin to writing custom handlers.
2222

23-
To get started with TLSNotary in the browser, it is recommended to try the online TLSNotary demo first. This demo shows how TLSNotary can be used to verify private user data in a web app. The demo guides you through the following steps:
24-
25-
1. Installing the browser extension
26-
2. Installing the website plugin into the browser extension
27-
3. Running the plugin to get a TLSNotary attestation
28-
4. Verifying the attestation on the server
29-
30-
Visit [demo.tlsnotary.org](https://demo.tlsnotary.org) to try the different steps.
31-
32-
### Proving and Verifying Data in a React/Typescript App (`tlsn-js`)
33-
34-
Learn how to use TLSNotary in a React/Typescript app with the `tlsn-js` NPM module.
35-
36-
[Proving and Verifying Data in a React/Typescript App](tlsn-js.md#react-ts-webpack)
37-
38-
### Browser Extension
39-
40-
Learn how to prove and verify ownership of a Twitter account using the TLSNotary browser extension.
41-
42-
[Proving and Verifying Ownership of a Twitter Account (Browser)](browser_extension)
23+
You can also visit [demo.tlsnotary.org](https://demo.tlsnotary.org) to try pre-built plugins with no setup required.
4324

25+
For step-by-step installation and setup instructions, see the [Browser Quick Start](browser_extension).

0 commit comments

Comments
 (0)