<!doctype html>
<!--
  trentpower.fr · /integrity/

  static, semantic, self-managed, privacy-first.
  signed manifest, detached signature, public signing key.
  no analytics. no cookies. no external assets.

  every public file is hashed, signed,
  and listed at /integrity.json.
-->
<html lang="fr" dir="ltr">
<head>
  <!-- head · foundations -->
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
  <meta name="format-detection" content="telephone=no">
  <meta name="color-scheme" content="light dark">
  <meta name="theme-color" content="#E9E5DC">

  <!-- head · language bootstrap -->
  <script>(()=>{const e=document.documentElement;e.classList.add('js');try{const m=localStorage.getItem('tp-theme');if(m==='dark'||m==='light')e.dataset.theme=m}catch(_){}})();</script>

  <!-- head · document identity -->
  <title>Intégrité · Trent Power</title>
  <meta name="description"
        content="Éditions publiques signées, manifeste d’intégrité, signature détachée et clé publique">
  <meta name="document-edition" content="2026-05-19">
  <link rel="canonical" href="https://trentpower.fr/fr/integrite/">
  <link rel="alternate" hreflang="en" href="https://trentpower.fr/en/integrity/">
  <link rel="alternate" hreflang="fr" href="https://trentpower.fr/fr/integrite/">
  <link rel="alternate" hreflang="x-default" href="https://trentpower.fr/">

  <!-- head · indexing and discovery -->
  <meta name="robots" content="noindex">
  <meta name="referrer" content="no-referrer">

  <!-- head · authorship and identity -->
  <meta name="author" content="Trent Power">
  <link rel="author" href="/.well-known/attribution.txt">
  <link rel="alternate" type="application/ld+json" href="/.well-known/person.json">
  <link rel="alternate" type="text/plain" href="/llms.txt">
  <link rel="me" href="https://commons.wikimedia.org/wiki/File:Trent_Power_portrait.jpg">
  <link rel="me" href="https://www.linkedin.com/in/trentpower/">
  <link rel="me" href="https://orcid.org/0009-0002-2652-7188">
  <link rel="me" href="https://www.crunchbase.com/person/trent-power-3f52">

  <!-- head · rights and reuse -->
  <link rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/">

  <!-- head · social and sharing -->
  <meta property="og:type" content="website">
  <meta property="og:site_name" content="Trent Power">
  <meta property="og:title" content="Intégrité · Trent Power">
  <meta property="og:description" content="Éditions publiques signées, manifeste d’intégrité, signature détachée et clé publique">
  <meta property="og:url" content="https://trentpower.fr/fr/integrite/">
  <meta property="og:locale" content="fr_FR">
  <meta property="og:locale:alternate" content="en_AU">
  <meta property="og:image" content="https://trentpower.fr/images/og/integrity-og.png">
  <meta property="og:image:width" content="1200">
  <meta property="og:image:height" content="630">
  <meta property="og:image:type" content="image/png">
  <meta property="og:image:alt" content="Integrity · Trent Power">

  <!-- head · application surface -->
  <meta name="application-name" content="Trent Power">
  <meta name="apple-mobile-web-app-title" content="Trent Power">
  <link rel="icon" href="/favicon.ico" sizes="any">
  <link rel="icon" href="/favicon.svg" type="image/svg+xml">
  <link rel="apple-touch-icon" href="/apple-touch-icon.png">
  <link rel="manifest" href="/manifest.webmanifest" type="application/manifest+json">

  <!-- head · rendering and assets -->
  <link rel="stylesheet" href="/styles.css?v=2026-05-19.054a4cde" integrity="sha384-fYEHgB0He+5IuoYhIzz6e2cPIEhWnCCdKeiPffyYNzo1SI5Y3zJ7QgNwLJ2x77i5">
  <link rel="stylesheet" href="/print.css?v=2026-05-19.054a4cde" media="print">

  <!-- head · structured data -->
  <script type="application/ld+json">{"@context":"https://schema.org","@type":"WebPage","@id":"https://trentpower.fr/integrity/#page","url":"https://trentpower.fr/fr/integrite/","name":"Integrity · Trent Power","description":"Signed public releases, integrity manifest, detached signature and public signing key","inLanguage":"fr","isPartOf":{"@id":"https://trentpower.fr/#website"},"about":{"@id":"https://trentpower.fr/#trent-power"},"author":{"@id":"https://trentpower.fr/#trent-power"},"publisher":{"@id":"https://trentpower.fr/#trent-power"},"primaryImageOfPage":{"@type":"ImageObject","url":"https://trentpower.fr/images/og/integrity-og.png","width":1200,"height":630},"datePublished":"2026-02-15T00:00:00+00:00","dateModified":"2026-05-20T00:00:00+00:00"}</script>
</head>
<body data-page="integrity" data-layout="masthead" data-surface="record" data-masthead="brand-only" data-edition="2026-05-19">

<a href="#main" class="skip-link">Skip to content</a>

<!-- body · masthead -->
<header class="site-header" data-component="site-header">
  <div class="nav">
    <div class="nav-inner">
      <a class="nav-mark u-author" href="/fr/" aria-label="Trent Power home"><span>Trent</span> <span>Power</span></a>
    </div>
  </div>
</header>

<!-- body · primary content -->
<main class="site" id="main" tabindex="-1" itemscope itemtype="https://schema.org/WebPage">
  <div class="page">

    <!-- primary · 01 · statement -->
    <p class="page-kicker">Intégrité</p>
    <h1 class="page-title hero-stack measure-tight"><span class="hero-line">Signé.</span><span class="hero-line">Vérifiable.</span><span class="hero-line">Reproductible.</span></h1>
    <div class="page-body">
      <p class="page-lede">Chaque fichier public est haché et listé dans un manifeste, signé par une signature <abbr title="Pretty Good Privacy">PGP</abbr> détachée — chaque version peut donc être vérifiée avec la clé de l’éditeur, en local, sans confiance envers ce serveur. Vous pouvez <a href="/fr/integrite/verifier-localement/" aria-describedby="desc-verify-locally">vérifier localement ici</a>.</p>
      <span class="visually-hidden" id="desc-verify-locally">Lire les instructions pour vérifier la publication localement en ligne de commande</span>

      <!-- primary · 02 · current signed release -->
      <article class="integrity-record-card" aria-labelledby="integrity-record-title">
        <header class="integrity-record-header">
          <h2 class="integrity-record-title" id="integrity-record-title"><time datetime="2026-05">Mai 2026</time></h2>
          <p class="integrity-record-status">Manifeste · Signature · Clé publique</p>
        </header>

        <section class="integrity-record-group" aria-labelledby="integrity-group-verification">
          <p class="integrity-record-group-label" id="integrity-group-verification">Pièces de vérification</p>
          <dl class="integrity-record-dl">
            <div class="integrity-rg">
              <dt class="integrity-rg-label">Manifeste</dt>
              <dd class="integrity-rg-value">
                <a class="integrity-rg-link" href="/integrity.json" aria-describedby="desc-link-manifest"><code>/integrity.json</code></a>
                <span class="visually-hidden" id="desc-link-manifest">Télécharger le manifeste d’intégrité signé (JSON listant chaque fichier public et son SHA-256)</span>
              </dd>
            </div>
            <div class="integrity-rg">
              <dt class="integrity-rg-label">Signature détachée</dt>
              <dd class="integrity-rg-value">
                <a class="integrity-rg-link" href="/integrity.json.sig" aria-describedby="desc-link-signature"><code>/integrity.json.sig</code></a>
                <span class="visually-hidden" id="desc-link-signature">Télécharger la signature PGP détachée du manifeste d’intégrité</span>
              </dd>
            </div>
            <div class="integrity-rg">
              <dt class="integrity-rg-label">Sommes de contrôle</dt>
              <dd class="integrity-rg-value">
                <a class="integrity-rg-link" href="/integrity/releases/2026-05-19/SHA256SUMS" aria-describedby="desc-link-checksums"><code>/SHA256SUMS</code></a>
                <span class="visually-hidden" id="desc-link-checksums">Télécharger les empreintes SHA-256 des archives de publication signées</span>
              </dd>
            </div>
            <div class="integrity-rg">
              <dt class="integrity-rg-label">Clé publique</dt>
              <dd class="integrity-rg-value">
                <a class="integrity-rg-link" href="/.well-known/pgp-key.asc" aria-describedby="desc-link-public-key"><code>/.well-known/pgp-key.asc</code></a>
                <span class="visually-hidden" id="desc-link-public-key">Télécharger la clé PGP publique utilisée pour signer les publications</span>
              </dd>
            </div>
          </dl>
        </section>

        <section class="integrity-record-group" aria-labelledby="integrity-group-archives">
          <p class="integrity-record-group-label" id="integrity-group-archives">Archives source</p>
          <p class="integrity-record-archives">
            <a class="integrity-rg-link" href="/integrity/releases/2026-05-19/trentpower-fr-2026-05-17.zip" title="trentpower-fr-2026-05-17.zip" aria-describedby="desc-link-zip">ZIP</a>
            <span class="visually-hidden" id="desc-link-zip">Télécharger l’archive source au format ZIP</span>
            <span class="integrity-rg-sep" aria-hidden="true">·</span>
            <a class="integrity-rg-link" href="/integrity/releases/2026-05-19/trentpower-fr-2026-05-17.tar.gz" title="trentpower-fr-2026-05-17.tar.gz" aria-describedby="desc-link-targz">TAR.GZ</a>
            <span class="visually-hidden" id="desc-link-targz">Télécharger l’archive source au format TAR.GZ</span>
          </p>
        </section>

        <section class="integrity-record-group integrity-record-group--fingerprint" aria-labelledby="integrity-group-fingerprint">
          <p class="integrity-record-group-label" id="integrity-group-fingerprint">Empreinte de version</p>
          <samp class="fingerprint-grid" id="pgp-fingerprint" tabindex="0" aria-label="Public key fingerprint">
            <span>A729 591B</span>
            <span>450D 3F59</span>
            <span>3694 98BD</span>
            <span>8299 1F25</span>
            <span>04AE 0263</span>
          </samp>
          <button type="button" class="integrity-record-action copy-fingerprint record-inline-action text-action"
                  data-copy-target="pgp-fingerprint"
                  data-copied="Copiée">Copier l’empreinte</button>
        </section>
      </article>

    </div>
  </div>

</main>


<!-- body · footer -->
<footer class="site-footer" aria-label="Site footer">
  <div class="site-footer__inner">

    <!-- top stratum · identity · nav · language -->
    <div class="site-footer__top">

      <p class="site-footer__identity">
        <span class="year">&copy; <time datetime="2026">2026</time></span>
        <a class="wm" href="/fr/" rel="home" aria-describedby="desc-home-footer">Trent Power</a>
        <span class="visually-hidden" id="desc-home-footer">Retour à l’accueil</span>
      </p>

      <nav class="site-footer__nav" aria-label="Footer">
        <span>Paris, France</span>
        <span class="sep" aria-hidden="true">&middot;</span>
        <a class="site-footer__action" href="/fr/confidentialite/" rel="privacy-policy" aria-describedby="desc-privacy">Confidentialité</a>
        <span class="visually-hidden" id="desc-privacy">Découvrir comment ce site évite les analytiques, cookies, profilage, traceurs et services tiers</span>
        <span class="sep" aria-hidden="true">&middot;</span>
        <button type="button" class="site-footer__action"
                data-cite-open aria-haspopup="dialog"
                aria-describedby="desc-cite">Vérifier</button>
        <span class="visually-hidden" id="desc-cite">Ouvrir les détails de citation et de vérification de cette page</span>
      </nav>

      <ul class="site-footer__language" aria-label="Language">
        <li><a href="/en/integrity/"  aria-describedby="desc-lang-en" lang="en">English</a> <span class="visually-hidden" id="desc-lang-en">Read this site in English</span></li>
        <li aria-hidden="true"><span class="sep">&middot;</span></li>
        <li><a href="/fr/integrite/" aria-describedby="desc-lang-fr" lang="fr" aria-current="page">Français</a> <span class="visually-hidden" id="desc-lang-fr">Lire ce site en français</span></li>
      </ul>

    </div>

    <hr class="site-footer__break" aria-hidden="true">

    <!-- bottom stratum · imprint · theme -->
    <div class="site-footer__bottom">

      <dl class="site-footer__imprint is-loading" id="footerImprint" aria-label="Publication integrity">
        <dt>Édition</dt>
        <dd><span data-proof="edition">&mdash;</span></dd>
        <dt>SHA256</dt>
        <dd><a class="sha-link" href="/fr/integrite/" aria-describedby="desc-integrity"
               data-proof="sha" title="Voir l'entrée de cette page dans le manifeste d'intégrité signé">sha256:&mdash;</a> <span class="visually-hidden" id="desc-integrity">Ouvrir le registre d’intégrité public — empreintes, signatures et vérification des éditions</span></dd>
        <dt>Vérifié</dt>
        <dd><span class="v--fresh" data-proof="verified">&mdash;</span></dd>
      </dl>

      <p class="site-footer__provenance" lang="fr">Traduction automatique de l’édition anglaise originale.</p>

      <ul class="site-footer__theme" aria-label="Appearance">
        <li><button type="button" data-theme="light"  aria-pressed="false" aria-describedby="desc-theme-light">Clair</button> <span class="visually-hidden" id="desc-theme-light">Passer à l’apparence claire</span></li>
        <li aria-hidden="true"><span class="sep">&middot;</span></li>
        <li><button type="button" data-theme="system" aria-pressed="true"  aria-describedby="desc-theme-auto">Auto</button> <span class="visually-hidden" id="desc-theme-auto">Suivre les réglages d’apparence du système</span></li>
        <li aria-hidden="true"><span class="sep">&middot;</span></li>
        <li><button type="button" data-theme="dark"   aria-pressed="false" aria-describedby="desc-theme-dark">Sombre</button> <span class="visually-hidden" id="desc-theme-dark">Passer à l’apparence sombre</span></li>
      </ul>

    </div>

  </div>
</footer>
<!-- body · print edition -->
<div class="print-trust-sheet print-only" data-print-sheet="integrity" hidden aria-hidden="true">
  <header class="print-trust-header">
    <p class="print-trust-kicker">Intégrité</p>
    <p class="print-trust-title">Vérification publique signée</p>
    <p class="print-trust-lede">Les fichiers publiés sont listés dans un manifeste public et signés par une signature <abbr title="Pretty Good Privacy">PGP</abbr> détachée afin que toute mise à jour puisse être vérifiée de manière indépendante.</p>
    <p class="print-trust-meta">Édition 2026-05-19 · trentpower.fr/integrity/</p>
  </header>

  <div class="print-trust-grid">
    <div class="print-trust-card">
      <p class="print-trust-label"><span class="num">01</span> <span>Manifeste</span></p>
      <p class="print-trust-code"><code>/integrity.json</code> - empreintes <abbr title="Secure Hash Algorithm, 256-bit">SHA-256</abbr> de chaque fichier public intentionnel.</p>
    </div>
    <div class="print-trust-card">
      <p class="print-trust-label"><span class="num">02</span> <span>Signature détachée</span></p>
      <p class="print-trust-code">/integrity.json.sig - signature <abbr title="Pretty Good Privacy">PGP</abbr> détachée qui certifie le manifeste.</p>
    </div>
    <div class="print-trust-card">
      <p class="print-trust-label"><span class="num">03</span> <span>Clé publique</span></p>
      <p class="print-trust-code">/.well-known/pgp-key.asc - empreinte A729 591B 450D 3F59 3694 98BD 8299 1F25 04AE 0263.</p>
    </div>
    <div class="print-trust-card">
      <p class="print-trust-label"><span class="num">04</span> <span>Versions figées</span></p>
      <p>/integrity/releases/ - instantanés publics : février 2026 et mai 2026.</p>
    </div>
    <div class="print-trust-card">
      <p class="print-trust-label"><span class="num">05</span> <span>Voie source</span></p>
      <p>/source/ - vue texte publique de fichiers sources sélectionnés. Aucun secret, aucun artefact privé.</p>
    </div>
    <div class="print-trust-card">
      <p class="print-trust-label"><span class="num">06</span> <span>Vérification</span></p>
      <p class="print-trust-code">curl -O trentpower.fr/integrity.json &amp;&amp; curl -O trentpower.fr/integrity.json.sig &amp;&amp; gpg --verify integrity.json.sig integrity.json</p>
    </div>
  </div>

  <footer class="print-trust-footer">
    <div class="print-trust-footer-text">
      <p class="print-proof">Privé · Statique · Signé · Sans suivi</p>
      <p>Édition 2026-05-19 · trentpower.fr/integrity/</p>
    </div>
    <div class="print-qr-block" aria-hidden="true">
      <img class="print-qr-image" src="/images/qr/qr-integrity.svg" width="144" height="144" loading="lazy" decoding="async" alt="">
      <p class="print-qr-url">trentpower.fr/integrity/</p>
    </div>
  </footer>
</div>

<!-- body · behaviour -->
<script src="/app.js?v=2026-05-19.054a4cde" integrity="sha384-0/d1GAleQvM4g3v1B1J2lZMV/tet5ROHlQ2MStFHV6elnL4HXZrGmuIjSlmZ02q4" defer></script>
<script src="/app-enhance.js?v=2026-05-19.054a4cde" integrity="sha384-nyFedKd06EN9LqTUpl41Ln9bJvrfivawSLNQXsWeHNV0GoZBdeVoZByRtUkUbQVR" defer></script>
<script src="/verify/verification-data.2026-05-19.f67fa860.js" integrity="sha384-/adA47A4jqcxm/Z29/ThNoY+wB/FcA3MU6cCOy6u11gsICzk4bcwwujyx+YXKvLG" defer></script>
<script src="/cite.js?v=2026-05-19.054a4cde" integrity="sha384-/UcbEl8xuRxvlwOOzFG3xYoqbPIzNPhv8o5HsASzLoHTo7cCVbGad1JqWH+GxGdl" defer></script>

</body>
</html>
