peergos-making-yourself-aud.../build/html/data-in-transit.html
George Lambert 4fcbb9ac95
Some checks are pending
ci / markdown (push) Waiting to run
Rewrite audit-ready briefing: software is not a certificate.
Open with an executive summary that HIPAA, SOC 2, and ISO 27001
are organizational programs. Verae DataCubes supply store,
communicate, timestamp, verify, and audit tools for the technical
portion only. Chapters cover transit (HPKE, visible routing), rest
(IPFS/Peergos hash-verified restore), receipts, EU Peergos
evaluations (Cure53 2019, ROS 2024), cross-blockchain timestamping,
and write-once Iceberg archive. PDF is branded with the Verae logo
top-left and Verae Inc contact in the footer; last chapters are
sourced bios for Garfinkel (FINRA CRD 5052743), Haber, and Lambert.
2026-09-16 00:55:21 -04:00

243 lines
No EOL
13 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="en" data-content_root="./">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>4. Secure communications — data in transit &#8212; Making yourself audit-ready with Verae DataCubes</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=5ecbeea2" />
<link rel="stylesheet" type="text/css" href="_static/basic.css?v=b08954a9" />
<link rel="stylesheet" type="text/css" href="_static/alabaster.css?v=2a97f0c7" />
<link rel="stylesheet" type="text/css" href="_static/verae.css?v=050b9d5b" />
<script src="_static/documentation_options.js?v=250a654d"></script>
<script src="_static/doctools.js?v=fd6eb6e6"></script>
<script src="_static/sphinx_highlight.js?v=6ffebe34"></script>
<link rel="icon" href="_static/VeraeFullLogo.png"/>
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="5. Encryption at rest — IPFS blocks and Peergos" href="data-at-rest.html" />
<link rel="prev" title="3. The Verae DataCube Server Solution" href="datacube-server.html" />
<link rel="stylesheet" href="_static/custom.css" type="text/css" />
</head><body>
<div class="document">
<div class="sphinxsidebar" role="navigation" aria-label="Main">
<div class="sphinxsidebarwrapper">
<p class="logo"><a href="index.html">
<img class="logo" src="_static/VeraeFullLogo.png" alt="Logo of Making yourself audit-ready with Verae DataCubes"/>
</a></p>
<p class="logo">
<a href="index.html">
<img class="logo" src="_static/VeraeFullLogo.png" alt="Logo" />
</a>
</p>
<p class="blurb">Tools for storage, communications, timestamping, verification, and audit — not a certificate.</p>
<search id="searchbox" style="display: none" role="search">
<div class="searchformwrapper">
<form class="search" action="search.html" method="get">
<input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" placeholder="Search"/>
<input type="submit" value="Go" />
</form>
</div>
</search>
<script>document.getElementById('searchbox').style.display = "block"</script><h3>Navigation</h3>
<p class="caption" role="heading"><span class="caption-text">Contents</span></p>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="executive.html">1. Executive summary</a></li>
<li class="toctree-l1"><a class="reference internal" href="what-verae-provides.html">2. What Verae provides — and what it does not</a></li>
<li class="toctree-l1"><a class="reference internal" href="datacube-server.html">3. The Verae DataCube Server Solution</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">4. Secure communications — data in transit</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#the-problem">4.1. The problem</a></li>
<li class="toctree-l2"><a class="reference internal" href="#point-to-point-encryption">4.2. Point-to-point encryption</a></li>
<li class="toctree-l2"><a class="reference internal" href="#visible-routing">4.3. Visible routing</a></li>
<li class="toctree-l2"><a class="reference internal" href="#error-handling-without-leaking-content">4.4. Error handling without leaking content</a></li>
<li class="toctree-l2"><a class="reference internal" href="#the-public-key-directory">4.5. The public-key directory</a></li>
<li class="toctree-l2"><a class="reference internal" href="#what-this-does-and-does-not-satisfy">4.6. What this does, and does not, satisfy</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="data-at-rest.html">5. Encryption at rest — IPFS blocks and Peergos</a></li>
<li class="toctree-l1"><a class="reference internal" href="timestamped-receipts.html">6. Global timestamped receipts</a></li>
<li class="toctree-l1"><a class="reference internal" href="peergos-eu-evaluations.html">7. Peergos security evaluations in Europe</a></li>
<li class="toctree-l1"><a class="reference internal" href="global-timestamping.html">8. Verae global timestamping — a cross-blockchain receipt</a></li>
<li class="toctree-l1"><a class="reference internal" href="iceberg-archive.html">9. Write-once Iceberg archive</a></li>
<li class="toctree-l1"><a class="reference internal" href="architecture.html">10. Architecture for an audit interview</a></li>
<li class="toctree-l1"><a class="reference internal" href="baa-dpa.html">11. BAAs, DPAs, and ciphertext without host keys</a></li>
<li class="toctree-l1"><a class="reference internal" href="checklist.html">12. Audit-ready checklist</a></li>
<li class="toctree-l1"><a class="reference internal" href="howto.html">13. How to use this briefing</a></li>
<li class="toctree-l1"><a class="reference internal" href="bio-james-garfinkel.html">14. James H. Garfinkel</a></li>
<li class="toctree-l1"><a class="reference internal" href="bio-stuart-haber.html">15. Stuart Haber</a></li>
<li class="toctree-l1"><a class="reference internal" href="bio-george-lambert.html">16. George Lambert</a></li>
<li class="toctree-l1"><a class="reference internal" href="contact.html">17. Verae Inc — contact</a></li>
</ul>
<div class="relations">
<h3>Related Topics</h3>
<ul>
<li><a href="index.html">Documentation overview</a><ul>
<li>Previous: <a href="datacube-server.html" title="previous chapter"><span class="section-number">3. </span>The Verae DataCube Server Solution</a></li>
<li>Next: <a href="data-at-rest.html" title="next chapter"><span class="section-number">5. </span>Encryption at rest — IPFS blocks and Peergos</a></li>
</ul></li>
</ul>
</div>
</div>
</div>
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body" role="main">
<section id="secure-communications-data-in-transit">
<h1><span class="section-number">4. </span>Secure communications — data in transit<a class="headerlink" href="#secure-communications-data-in-transit" title="Link to this heading"></a></h1>
<section id="the-problem">
<h2><span class="section-number">4.1. </span>The problem<a class="headerlink" href="#the-problem" title="Link to this heading"></a></h2>
<p>A message that leaves one machine and arrives at another crosses
infrastructure the endpoints do not own: routers, load balancers,
message brokers, TLS terminators, packet-capture appliances, and
people with legitimate operational access to those devices. Any of
those parties can copy bits. The honest design question is not
“will anyone see the packet” — they will — but “<strong>what</strong> will
they see, and <strong>what</strong> will they be able to do with it.”</p>
<p>The Verae DataCube Server Solution answers that question with
<strong>point-to-point encryption of content</strong> and an explicit admission
that <strong>routing must be visible</strong>.</p>
</section>
<section id="point-to-point-encryption">
<h2><span class="section-number">4.2. </span>Point-to-point encryption<a class="headerlink" href="#point-to-point-encryption" title="Link to this heading"></a></h2>
<p>“Best in class” here is not a slogan; it names a concrete choice.
Production content is sealed with <strong>HPKE</strong> (Hybrid Public Key
Encryption, RFC 9180), in the HPKE-Base mode, using a suite such as
X25519-HKDF-SHA256 with ChaCha20-Poly1305. Each endpoint has a
key pair. The sender looks up the recipients <strong>public</strong> key in a
directory that is visible to every E2E service. The sender seals
the body to that public key. Only the holder of the matching
<strong>private</strong> key can open it.</p>
<p>Consequences that matter in an audit interview:</p>
<ul class="simple">
<li><p>The <strong>sender cannot reopen</strong> the ciphertext after it is sealed
unless the sender is also a recipient or has retained plaintext.
A lookup identifier is enough to talk about the message later
without retaining a second copy of the body.</p></li>
<li><p>The <strong>broker cannot open</strong> the body. Possession of the wire
image is possession of ciphertext.</p></li>
<li><p>A <strong>lab XOR</strong> construction, if it exists in a codebase for
experiments, is not a production algorithm. Production
configurations reject it.</p></li>
</ul>
</section>
<section id="visible-routing">
<h2><span class="section-number">4.3. </span>Visible routing<a class="headerlink" href="#visible-routing" title="Link to this heading"></a></h2>
<p>A network that cannot see a destination cannot deliver a message.
The DataCube Server Solution therefore does <strong>not</strong> claim
anonymous, metadata-free messaging. The following remain visible
to the transport, by design:</p>
<ul class="simple">
<li><p>destination (the handle or address the router needs);</p></li>
<li><p>subject or stream name (so the right service receives the
envelope);</p></li>
<li><p>sender handle or lookup identifier, when the protocol carries
them for reply and error handling;</p></li>
<li><p>approximate size and timing (any network sees these).</p></li>
</ul>
<p>This is the <strong>honest-but-curious broker</strong> model. Curiosity is
assumed. Honesty is assumed only in the narrow sense that the
broker forwards what it is given; it is <strong>not</strong> trusted with
content, and it is <strong>not</strong> trusted not to log destinations.</p>
</section>
<section id="error-handling-without-leaking-content">
<h2><span class="section-number">4.4. </span>Error handling without leaking content<a class="headerlink" href="#error-handling-without-leaking-content" title="Link to this heading"></a></h2>
<p>Failures have to be reported. A bounce that includes the original
body would undo the encryption. The design therefore returns
<strong>error metadata</strong>: an error code, a lookup identifier, a
destination class — not the plaintext, and not a replay of the
ciphertext into a log aggregator that is a second, weaker store.</p>
<p>Network Error Bundles can carry a sender-visible ciphertext and a
system-visible ciphertext so that the right party can diagnose
without broadcasting the payload to operators who should never see
it.</p>
</section>
<section id="the-public-key-directory">
<h2><span class="section-number">4.5. </span>The public-key directory<a class="headerlink" href="#the-public-key-directory" title="Link to this heading"></a></h2>
<p>Point-to-point encryption is only as good as the lookup of public
keys. The server solution publishes a <strong>directory of public keys</strong>
so that availability of those keys is visible to all E2E services.
Private keys do not belong in that directory. Private key files
are mode <code class="docutils literal notranslate"><span class="pre">0600</span></code>, held on the endpoint or in an HSM, and are
never returned by the public listing API.</p>
<p>An examiner can be shown the public listing. An examiner should
never be given a private key.</p>
</section>
<section id="what-this-does-and-does-not-satisfy">
<h2><span class="section-number">4.6. </span>What this does, and does not, satisfy<a class="headerlink" href="#what-this-does-and-does-not-satisfy" title="Link to this heading"></a></h2>
<p>For HIPAA Security Rule addressable encryption of ePHI <strong>in
transit</strong>, for SOC 2 CC6 cryptographic transmission, and for
ISO 27001 Annex A transmission security, this design is the
<strong>technical control</strong>: content is encrypted to the recipient, the
path is untrusted, keys are endpoint-held.</p>
<p>It does <strong>not</strong> by itself satisfy:</p>
<ul class="simple">
<li><p>a rule that requires the organization to <strong>inventory</strong> every
channel (personal devices, shadow SaaS, unapproved AI tools);</p></li>
<li><p>a rule that requires <strong>workforce sanctions</strong> when someone
bypasses the channel;</p></li>
<li><p>a rule that requires <strong>agreements</strong> with the broker operator
covering metadata that may still be personal data.</p></li>
</ul>
<p>Those remain policies, procedures, and contracts. The software
makes the approved channel strong. It cannot stop a person from
using a weak channel instead. That is an organizational control,
not a cryptographic one.</p>
</section>
</section>
</div>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="verae-page-footer">
<strong>Verae Inc</strong>
&middot; <a href="https://www.verae.com">https://www.verae.com</a>
&middot; Book a call at <a href="https://www.verae.com">verae.com</a>
&middot; <a href="https://app.verae.com">app.verae.com</a>
</div>
<div class="footer">
&#169;2026, Verae Inc.
</div>
</body>
</html>