summaryrefslogtreecommitdiffstats
path: root/about.html
diff options
context:
space:
mode:
Diffstat (limited to 'about.html')
-rw-r--r--about.html93
1 files changed, 93 insertions, 0 deletions
diff --git a/about.html b/about.html
new file mode 100644
index 0000000..fd7e52e
--- /dev/null
+++ b/about.html
@@ -0,0 +1,93 @@
+<!doctype html>
+<html lang="en">
+<head>
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+ <meta name="description" content="Architecture, privacy, and operation of the YAMN Web interface.">
+ <title>YAMN Web architecture and operation</title>
+ <style>
+ :root { color-scheme: dark; --bg: #0a0a0a; --panel: #171717; --text: #e0e0e0; --muted: #a0a0a0; --accent: #00ff00; --border: #333; --warning: #ffaa00; }
+ * { box-sizing: border-box; }
+ body { margin: 0; padding: 24px; background: var(--bg); color: var(--text); font: 16px/1.65 system-ui, sans-serif; }
+ main { max-width: 920px; margin: 0 auto; }
+ h1, h2 { color: var(--accent); line-height: 1.2; }
+ h1 { font-family: monospace; letter-spacing: 2px; }
+ h2 { margin-top: 2.2em; }
+ a { color: var(--accent); }
+ .panel { padding: 18px 22px; margin: 18px 0; background: var(--panel); border: 1px solid var(--border); border-radius: 6px; }
+ code, pre { font-family: monospace; }
+ pre { overflow-x: auto; padding: 16px; background: #050505; border: 1px solid var(--border); white-space: pre-wrap; }
+ li { margin: 6px 0; }
+ .warning { border-left: 4px solid var(--warning); }
+ .muted { color: var(--muted); }
+ </style>
+</head>
+<body>
+<main>
+ <p><a href="./">← Back to the interface</a></p>
+ <h1>YAMN Web architecture and operation</h1>
+ <p>YAMN Web is a send-only interface for preparing messages for delivery through the YAMN remailer network. The same composer handles email delivery and Usenet publication. The application is available through HTTPS and the existing Onion service.</p>
+
+ <section class="panel">
+ <h2>Complete route</h2>
+ <pre>Browser
+ ↓ HTTPS or Onion
+PHP YAMN Web
+ ↓ local request, without a temporary message file
+YAMN encoder
+ ↓ encrypted YAMN envelope
+Rust Nym sender
+ ↓ Nym mixnet
+Nym ingress on kvara
+ ↓ Tor, forwards only the envelope to the selected Entry
+Selected YAMN Entry
+ ↓ YAMN packet layers
+Selected YAMN Middle
+ ↓ YAMN packet layers
+Selected YAMN Exit
+ ↓ SMTP delivery
+mail2news@mail2news.tcpreset.net
+ ↓ Mail2News conversion
+news.tcpreset.net → misc.test</pre>
+ <p>The Nym sender does not receive the body, subject, or final recipient as separate parameters. It receives only the encrypted envelope produced by the YAMN encoder.</p>
+ </section>
+
+ <h2>HTTPS and Onion service</h2>
+ <p>The public HTTPS address remains <code>https://yamnweb.virebent.art</code>. The existing Onion address remains <code>http://ai63yqfo2wu2j3ey7nmatyel52jjvcmfg4e4kkxp2y7x3bc6nue6czyd.onion:4343/</code>, including its configured port. This interface neither generates nor changes the Onion address. Both access points serve the same application directory.</p>
+ <p>The HTTPS virtual host does not retain access logs. The application may emit technical PHP or service errors, but it does not intentionally log message contents.</p>
+
+ <h2>The YAMN chain</h2>
+ <p>The chain selected in the form has three roles:</p>
+ <ul>
+ <li><strong>Entry:</strong> receives the YAMN packet from the transport route and removes the first layer.</li>
+ <li><strong>Middle:</strong> processes the intermediate hop and forwards the packet.</li>
+ <li><strong>Exit:</strong> removes the final layer and delivers the message through SMTP. For Usenet articles, the SMTP recipient is the service-configured Mail-to-News gateway.</li>
+ </ul>
+ <p>The <code>*</code> option randomly selects an available remailer from the local list. This is intentional because remailer availability and reliability change over time.</p>
+
+ <h2>Destinations</h2>
+ <p>The composer uses the sender, optional Reply-To address, subject, and body for every message. Enter an email recipient for email delivery. To publish on Usenet, leave the email recipient empty and enter a <strong>Newsgroup</strong>; the application then adds the configured Mail-to-News recipient that converts the message leaving the remailer chain into an NNTP article.</p>
+ <p>Acceptance by the Nym transport confirms only that the route has started. Each remailer holds the packet in a queue for a variable delay, so delivery or Usenet publication may take several hours. This send-only interface does not read the final destination and cannot confirm publication itself.</p>
+ <p><strong>References</strong> is optional and contains one or more Message-IDs used to link a new article to an existing thread. It does not enable reply retrieval or message fetching.</p>
+
+ <h2>What is stored</h2>
+ <ul>
+ <li>The public YAMN keyring and remailer list are stored as technical service data.</li>
+ <li>The Nym client stores only the technical state required for its transport identity.</li>
+ <li>The message text and encrypted envelope are not written to temporary files by the submission route.</li>
+ <li>The web session stores the CSRF token and the minimum state required for the POST flow.</li>
+ <li>The browser may retain cookies or typed data according to its own settings.</li>
+ </ul>
+
+ <section class="panel warning">
+ <h2>Important limitations</h2>
+ <p>YAMN Web provides no inbox, fetch, message viewing, AEC, or reply retrieval. A message is accepted when the Nym sender accepts its transmission, but this is not a final delivery receipt.</p>
+ <p>During maintenance, the Nym ingress may operate in dry-run mode. In that mode it validates received packets without forwarding them to the SMTP remailer.</p>
+ </section>
+
+ <h2>Responsible use</h2>
+ <p>Check the recipient or newsgroup, chain, and References before submission. Do not include passwords, private keys, or information you do not want to transmit through the remailer network. Anonymity also depends on message content, timing, and sender behavior.</p>
+ <p><a href="./">Back to message composition</a></p>
+</main>
+</body>
+</html>