<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <updated>2026-04-26T09:28:35Z</updated>
  <generator>https://yabu.me</generator>

  <title>Nostr notes by </title>
  <author>
    <name></name>
  </author>
  <link rel="self" type="application/atom+xml" href="https://yabu.me/npub1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqzqujme.rss" />
  <link href="https://yabu.me/npub1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqzqujme" />
  <id>https://yabu.me/npub1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqzqujme</id>
  <icon></icon>
  <logo></logo>


  <title>Nostr notes on relay.towardsliberty.com</title>
  <link href="https://yabu.me/r/relay.towardsliberty.com" />
  <link rel="self" type="application/atom+xml" href="https://yabu.me/r/relay.towardsliberty.com.rss" />
  <id>https://yabu.me/r/relay.towardsliberty.com</id>
  <icon>https://relay.towardsliberty.com/e5e6b7fec63839b7559cd7665c17f01768e48371d1e9b49d266f584c70abea48.jpg</icon>
  <logo>https://relay.towardsliberty.com/e5e6b7fec63839b7559cd7665c17f01768e48371d1e9b49d266f584c70abea48.jpg</logo>



  <entry>
    <id>https://yabu.me/nevent1qqsdys6hgwhpgywppx9exrwwzqrg6rj7kcp6t8k96yutj5wsdsn38ccpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu380mk9</id>
    
      <title type="html">Anyone interested in a serious review of v3 of my book The ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsdys6hgwhpgywppx9exrwwzqrg6rj7kcp6t8k96yutj5wsdsn38ccpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu380mk9" />
    <content type="html">
      Anyone interested in a serious review of v3 of my book The Praxeology of Privacy before it goes to print?
    </content>
    <updated>2026-04-26T09:28:35Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsp30u9k0hn0ydgjlfdzul2ceqsvpz4thau49qz0yxquw9fs9gsfjqpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuxt0nm6</id>
    
      <title type="html">It would indirectly kyc your main chain coin.</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsp30u9k0hn0ydgjlfdzul2ceqsvpz4thau49qz0yxquw9fs9gsfjqpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuxt0nm6" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs2xnvwteaa98dg4e92df572qut8uthlsz06avhhyje8mulq26trwcpzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtcyyrcmt&#39;&gt;nevent1q…rcmt&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;It would indirectly kyc your main chain coin.
    </content>
    <updated>2026-04-26T08:08:06Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsfchm898v0hx5drj4ktpe8mk20qctg5jlqx04wfcvwmpcyrrhc8gspremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuf8a7sh</id>
    
      <title type="html">lol, when I initially wrote steamroller I started to get confused ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsfchm898v0hx5drj4ktpe8mk20qctg5jlqx04wfcvwmpcyrrhc8gspremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuf8a7sh" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsr73664yqt573k7ccwtsavelzxa4mvvu78qpjarp3xk25h02k69cqpzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtca2g0sm&#39;&gt;nevent1q…g0sm&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;lol, when I initially wrote steamroller I started to get confused with wtf that even is
    </content>
    <updated>2026-04-25T18:56:21Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqs2glnm9pwl34p2h2yruf80ygv7vjxrpvwxyrwygr7yfzzl3htd0rgpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhudc0wgm</id>
    
      <title type="html">Yes, at least similar, cross fork decoy selection doesnt seem ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqs2glnm9pwl34p2h2yruf80ygv7vjxrpvwxyrwygr7yfzzl3htd0rgpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhudc0wgm" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs0qetnesc5lh5q7dher2hj3298rmqalsml2upayfs3dry8kw35x8cpzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtcjnkce7&#39;&gt;nevent1q…kce7&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Yes, at least similar, cross fork decoy selection doesnt seem trivial at all.
    </content>
    <updated>2026-04-25T18:55:35Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsxcrnql30dwmyfmu2prj4k9jw4fvt5hre2anmh8s8fma37crqxe3cpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuc2xg7q</id>
    
      <title type="html">Thanks! Oh and individual audio tracks for each participant is ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsxcrnql30dwmyfmu2prj4k9jw4fvt5hre2anmh8s8fma37crqxe3cpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuc2xg7q" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsyvmuyxjvnnj46uvnsptjw3mgln62nvtpv8hdahzhuhrktlssy8ncppemhxue69uhkummn9ekx7mp0xwhd75&#39;&gt;nevent1q…hd75&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Thanks!&lt;br/&gt;Oh and individual audio tracks for each participant is important.
    </content>
    <updated>2026-04-25T18:36:43Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqs09alvs8jaec42tqm3esxydrsl4v4arp3vznf4tuy52r3anteu7tqpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuxc4q4e</id>
    
      <title type="html">So good, thanks for doing this!</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqs09alvs8jaec42tqm3esxydrsl4v4arp3vznf4tuy52r3anteu7tqpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuxc4q4e" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs94jnkqwdwjr22p8eynx7y0a7jnnht8vpyrpgz2nr49lthgwg58acppemhxue69uhkummn9ekx7mp099h3qu&#39;&gt;nevent1q…h3qu&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;So good, thanks for doing this!
    </content>
    <updated>2026-04-25T17:00:56Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsz5ag9ukxy90ckkfacylqnxtdd8l5vjr5wqydaye6sl4jpc63nsrgpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu7adueu</id>
    
      <title type="html">Massive improvement, try it out! The best way to anonymously ship ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsz5ag9ukxy90ckkfacylqnxtdd8l5vjr5wqydaye6sl4jpc63nsrgpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu7adueu" />
    <content type="html">
      Massive improvement, try it out!&lt;br/&gt;The best way to anonymously ship your vibed apps.&lt;blockquote class=&#34;border-l-05rem border-l-strongpink border-solid&#34;&gt;&lt;div class=&#34;-ml-4 bg-gradient-to-r from-gray-100 dark:from-zinc-800 to-transparent mr-0 mt-0 mb-4 pl-4 pr-2 py-2&#34;&gt;quoting &lt;br/&gt;&lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Article&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/nevent1qqs94jnkqwdwjr22p8eynx7y0a7jnnht8vpyrpgz2nr49lthgwg58acppemhxue69uhkummn9ekx7mp0qgs2qzx779ted7af5rt04vzw3l2hpzfgtk0a2pw6t2plaz4d2734vngrqsqqqqqp4g3jwd&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;nevent1q…3jwd&lt;/a&gt;&lt;/span&gt; &lt;/div&gt; &lt;a href=&#34;https://gitworkshop.dev&#34;&gt;https://gitworkshop.dev&lt;/a&gt; rewrite shipped. Is there a better time to try git nostr? protocols &gt; platforms &lt;/blockquote&gt;
    </content>
    <updated>2026-04-25T17:00:36Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsfql58ra80uqpjjuv3qn3f04hlx0capqhxgsqll8jkxnc64ntg2dspremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuxqnsrh</id>
    
      <title type="html">Yes, same issue with consolidation.</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsfql58ra80uqpjjuv3qn3f04hlx0capqhxgsqll8jkxnc64ntg2dspremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuxqnsrh" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsdtyhml6d2673d3mf8rtzeu5sc343c8lz0yn2qxfxq7vk0g4u5vzqppemhxue69uhkummn9ekx7mp0ugjpht&#39;&gt;nevent1q…jpht&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Yes, same issue with consolidation.
    </content>
    <updated>2026-04-25T16:39:21Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqswnp08jjmv6jqkj8lt3ltnegcecqvu6gu2qd6yrmatkjmn8eqyw5gpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu7dthdl</id>
    
      <title type="html">Send them one by one with multiple days in between for reduced ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqswnp08jjmv6jqkj8lt3ltnegcecqvu6gu2qd6yrmatkjmn8eqyw5gpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu7dthdl" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs2a94syqds9a8fpj068a56rraptlq7xl5l64y8py5yjp90r68g25qpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhsm78xck&#39;&gt;nevent1q…8xck&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Send them one by one with multiple days in between for reduced timing attacks.
    </content>
    <updated>2026-04-25T15:39:27Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsfdwkapjmd8rcttnnklmdqy34lmsafyhm7msy5k0rz8tye543kgwcpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhumtwjxr</id>
    
      <title type="html">Let&amp;#39;s say you use @nprofile…gldk and have 10 private utxos ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsfdwkapjmd8rcttnnklmdqy34lmsafyhm7msy5k0rz8tye543kgwcpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhumtwjxr" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs8v9s22lj0rc5d5sg26knpvlu9w9lwtgpgphge4eanw6pxmuvhyccpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhseqdz22&#39;&gt;nevent1q…dz22&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Let&amp;#39;s say you use &lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Person&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/nprofile1qqsf80gvdu7vhtj88z9srtrvuzevqyc3fh9yczxkufcj6nlhzsz68scppemhxue69uhkummn9ekx7mp0qythwumn8ghj7un9d3shjtnwdaehgu3wvfskuep0qyg8wumn8ghj7um0d3hkxmewdekz7q6gldk&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;&lt;span&gt;WasabiWallet&lt;/span&gt; (&lt;span class=&#34;italic&#34;&gt;nprofile…gldk&lt;/span&gt;)&lt;/a&gt;&lt;/span&gt; and have 10 private utxos nobody knows they are yours.&lt;br/&gt;&lt;br/&gt;Now you go to the forked chain and send all 10 coins to the exchange in a single transaction, now everyone knows that the 10 unspent coins on bitcoin belong to the same person. Wasabi can&amp;#39;t even know this and still assumes these coins are private when they actually are not.
    </content>
    <updated>2026-04-25T15:39:01Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsrjzsy8rfx9y9h3p776jzg6sh7dv7gpja4zgqdalwwv8pcyqy9yzqpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu3zaynr</id>
    
      <title type="html">Remember, when you move utxos on a forked chain you link common ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsrjzsy8rfx9y9h3p776jzg6sh7dv7gpja4zgqdalwwv8pcyqy9yzqpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu3zaynr" />
    <content type="html">
      Remember, when you move utxos on a forked chain you link common coin ownership on the parent chain.&lt;br/&gt;Don&amp;#39;t fuck up your privacy for picking up pennies in front of the train.
    </content>
    <updated>2026-04-25T15:18:49Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqswngzwjrhyaefxkpj4ntc28kt9432u60fzttf89e2nzczmfm8gwuspremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu6mj4jv</id>
    
      <title type="html">It does. Not historically, but for the last update.</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqswngzwjrhyaefxkpj4ntc28kt9432u60fzttf89e2nzczmfm8gwuspremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu6mj4jv" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs8d2el8847g5wqe96wups4fwe83yrgaa842avanyhgrt535jx9rfqppemhxue69uhkummn9ekx7mp0ax6a6u&#39;&gt;nevent1q…6a6u&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;It does. Not historically, but for the last update.
    </content>
    <updated>2026-04-25T12:09:00Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsxk8yrrz3gcxkjhc3t7rtz5ahf7q6r7g2dewxve2sj7dw588q4xkqpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu96uur3</id>
    
      <title type="html">Big mute button, raise hand, seeing who is in the call, no google ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsxk8yrrz3gcxkjhc3t7rtz5ahf7q6r7g2dewxve2sj7dw588q4xkqpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu96uur3" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsvfetdvcwrmvasg45n42t8qg9wx0puur2hlqwfsd445ym8japkqzsppemhxue69uhkummn9ekx7mp0a7h87x&#39;&gt;nevent1q…h87x&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Big mute button, raise hand, seeing who is in the call, no google play services, great recording quality.&lt;br/&gt;Stability is more important than other features.&lt;br/&gt;Fat zap if you make it work!
    </content>
    <updated>2026-04-25T07:27:18Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsvheukfumjkgaf4g0szf0qcnk2k9q2vgr9quyxg22d0c9etvv8z2qpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhun7uegm</id>
    
      <title type="html">I&amp;#39;m a simple man. I see a fridge full of meat, I follow the ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsvheukfumjkgaf4g0szf0qcnk2k9q2vgr9quyxg22d0c9etvv8z2qpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhun7uegm" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsfsv37ch6sktzf7fg3ydsyvy4e4608f0ap4pe7zsx9kvkes9ynarspzpmhxue69uhkummnw3ezumt0d5hs9d60d2&#39;&gt;nevent1q…60d2&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;I&amp;#39;m a simple man.&lt;br/&gt;I see a fridge full of meat, I follow the npub.
    </content>
    <updated>2026-04-24T16:20:12Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqspm8aaz9343tf3v60ee2fc4xgp79pxmwkqfd2cvvujtvxeffsfrxqpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuyksmpy</id>
    
      <title type="html">Can someone please make riverside obsolete? Nostr login, MOQ ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqspm8aaz9343tf3v60ee2fc4xgp79pxmwkqfd2cvvujtvxeffsfrxqpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuyksmpy" />
    <content type="html">
      Can someone please make riverside obsolete?&lt;br/&gt;&lt;br/&gt;Nostr login, MOQ audio/video calls, local recording and streamed to a blossom server for each participant.
    </content>
    <updated>2026-04-24T16:18:34Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsw4mn9kk9hwj6jqj544ng989jnzr6v65gh05ynv6dzg4harn387cgpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu5xg2l5</id>
    
      <title type="html">Sending text mainly.</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsw4mn9kk9hwj6jqj544ng989jnzr6v65gh05ynv6dzg4harn387cgpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu5xg2l5" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsvnsfkl3rnjydc6v8ghdz9v5qamfz68s04d6yjlwkqf4wc4wjmencpz4mhxue69uhkzmn5d9c8y6tdv9kzumn9wshsw8sp45&#39;&gt;nevent1q…sp45&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Sending text mainly.
    </content>
    <updated>2026-04-24T16:16:07Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqstssmq8tmyu7a36f8zuacdm9t7c2mzukg0zpj2w0vmyw0r32ql0vqpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhulu4awm</id>
    
      <title type="html">To quote @nprofile…6htm: &amp;#34;though technically true, this ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqstssmq8tmyu7a36f8zuacdm9t7c2mzukg0zpj2w0vmyw0r32ql0vqpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhulu4awm" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsyj0zklnx3prwkyn5he26839xu5l3mrxfwxs0czzhs70g5kqyskgcppemhxue69uhkummn9ekx7mp0ujremr&#39;&gt;nevent1q…remr&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;To quote &lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Person&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/nprofile1qqsthdwa5rs42euhnuz5xsrmmssr84hshwes7uj392vpeldj7z0zw3cppemhxue69uhkummn9ekx7mp0qyghwumn8ghj7mn0wd68ytnhd9hx2tcpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhscs6htm&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;&lt;span&gt;Arjen&lt;/span&gt; (&lt;span class=&#34;italic&#34;&gt;nprofile…6htm&lt;/span&gt;)&lt;/a&gt;&lt;/span&gt;:&lt;br/&gt;&amp;#34;though technically true, this only applies to the ipv6 shim, which forces a 1280 minimum MTU &#43; FIPS overhead.&lt;br/&gt;When using the FIPS native API, that number will be much lower.&amp;#34;
    </content>
    <updated>2026-04-24T16:14:27Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsp99sc3adtkl05z3d9uxtvvurg6wx6gjq7c7qpvpnc6ypjc8knwhgpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuyz4n3j</id>
    
      <title type="html">Tell that to @nprofile…2lxp, lol</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsp99sc3adtkl05z3d9uxtvvurg6wx6gjq7c7qpvpnc6ypjc8knwhgpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuyz4n3j" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqswv7wjrj52xj8dt6dlq57rkw3ynclp3g7x7jwd3puwg6m0e6php7cpzpmhxue69uhkummnw3ezumt0d5hsulr32f&#39;&gt;nevent1q…r32f&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Tell that to &lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Person&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/nprofile1qqsyvrp9u6p0mfur9dfdru3d853tx9mdjuhkphxuxgfwmryja7zsvhqpz9mhxue69uhkummnw3ezuamfdejj7qghwaehxw309amxjar0wghxummnw3erztnrdakj7qgswaehxw309ahx7um5wghx6mmd9ud62lxp&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;&lt;span&gt;VitorPamplona&lt;/span&gt; (&lt;span class=&#34;italic&#34;&gt;nprofile…2lxp&lt;/span&gt;)&lt;/a&gt;&lt;/span&gt;, lol
    </content>
    <updated>2026-04-24T16:13:09Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsrqxrpc0qh4cn93u5yg7nnh05xpkfa9hky62vq54hywjkquueu3cgpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu2und94</id>
    
      <title type="html">Two projects aim at the same goal of unstoppable networks for ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsrqxrpc0qh4cn93u5yg7nnh05xpkfa9hky62vq54hywjkquueu3cgpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu2und94" />
    <content type="html">
      Two projects aim at the same goal of unstoppable networks for human beings, and they arrive at radically different solutions. Reticulum strips addressing and ports from the protocol entirely and optimizes for radio links so slow that five bits per second counts as usable bandwidth, then builds its own parallel universe of applications on top. &lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Person&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/npub1y0gja7r4re0wyelmvdqa03qmjs62rwvcd8szzt4nf4t2hd43969qj000ly&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;&lt;span&gt;fips&lt;/span&gt; (&lt;span class=&#34;italic&#34;&gt;npub1y0g…00ly&lt;/span&gt;)&lt;/a&gt;&lt;/span&gt; takes the opposite bet, keeping IPv6 semantics alive through a TUN adapter so that unmodified SSH and curl can cross a mesh of Nostr identities. This post walks both stacks from the wire up, then shows where their design choices force different tradeoffs. &lt;blockquote class=&#34;border-l-05rem border-l-strongpink border-solid&#34;&gt;&lt;div class=&#34;-ml-4 bg-gradient-to-r from-gray-100 dark:from-zinc-800 to-transparent mr-0 mt-0 mb-4 pl-4 pr-2 py-2&#34;&gt;quoting &lt;br/&gt;&lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Article&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/naddr1qqgrvdtpxycr2dpevsurzc3kxgersq3qklkk3vrzme455yh9rl2jshq7rc8dpegj3ndf82c3ks2sk40dxt7qxpqqqp65wmrgwgh&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;naddr1qq…gwgh&lt;/a&gt;&lt;/span&gt; &lt;/div&gt; &lt;p&gt;Both projects begin from the same observation: the network that carries civilization&amp;#39;s communication runs on a substrate of centralized coordination. ISPs allocate addresses, registrars gate domain names, certificate authorities vouch for identity, and DNS servers arbitrate reachability. Each of these functions imposes a dependency, and every dependency is a chokepoint that can be taxed, surveilled, or switched off.&lt;/p&gt;

&lt;p&gt;Reticulum and FIPS respond by building mesh networks that require none of the above. A new node joins by connecting to any existing peer. Once connected, it generates its own address from a cryptographic keypair and starts routing over whatever physical medium is available to it. No one grants permission for any of it.&lt;/p&gt;

&lt;p&gt;That shared premise is where the similarity ends. The two stacks make almost opposite engineering bets beneath the shared framing. Reticulum treats IP as something to route around entirely and optimizes for radio links so slow that five bits per second counts as usable bandwidth. FIPS treats IP as the interface legacy applications still expect and builds a mesh underneath that looks like IPv6 from the outside. Understanding why each choice follows from the other accounts for most of what separates these protocols in practice.&lt;/p&gt;

&lt;h2 id=&#34;the-physical-layer-agnostic-by-design-2&#34;&gt;The Physical Layer: Agnostic by Design&lt;/h2&gt;

&lt;p&gt;Both protocols refuse to specify a transport. Whatever can move a datagram between two points is usable. Reticulum ships drivers for LoRa radios, serial links, packet radio over VHF, TCP and UDP tunnels, Ethernet, and I2P, with a minimum viable throughput of five bits per second and a physical MTU of 500 bytes. FIPS runs over WiFi, Ethernet, Bluetooth, UDP overlays, Tor circuits, serial lines, and satellite uplinks, and its IPv6 compatibility path needs at least 1357 bytes of transport MTU to carry an IPv6 minimum packet.&lt;/p&gt;

&lt;p&gt;A word on MTU before moving up the stack. Every physical medium caps how many bytes can ride in a single packet, and that cap is the Maximum Transmission Unit. Ethernet and WiFi carry about 1500 bytes, a standard UDP-over-IP path lands near 1472, a Tor circuit sits a bit lower, and a LoRa radio running conservative parameters might permit only 256. Anything larger either gets fragmented by the link layer or dropped outright. Reticulum and FIPS both refuse to fragment at their own layers, so every packet they emit must fit inside whatever MTU the current hop provides, and that single packet has to carry protocol overhead, encryption envelopes, routing metadata, and application payload all together. Overhead eats directly into the payload budget, and the smaller the MTU, the more painful each byte of protocol framing becomes.&lt;/p&gt;

&lt;p&gt;This 857-byte gap in minimum MTU is the first visible consequence of the different design targets. Reticulum expects its deployments to include hobbyist LoRa modules speaking across dozens of kilometers at bitrates too low to stream an email attachment in an afternoon. FIPS expects its deployments to include IPv6-capable transports that can carry a reasonable TCP segment without fragmentation. Both are valid environments, and they demand different overhead budgets and different fallback strategies when the medium misbehaves.&lt;/p&gt;

&lt;p&gt;Below the drivers, neither protocol assumes trust at the physical layer. A WiFi access point is treated with the same suspicion as a radio broadcasting over open spectrum. Every link carries authenticated, encrypted frames, and every mesh-level operation survives transport-level tampering. The transport is a pipe for ciphertext, nothing more.&lt;/p&gt;

&lt;h2 id=&#34;identity-as-address-2&#34;&gt;Identity as Address&lt;/h2&gt;

&lt;p&gt;In the classical Internet, your address is assigned and your identity is asserted, and the two are held together by a certificate issued by a third party. Both protocols collapse this into a single cryptographic operation.&lt;/p&gt;

&lt;p&gt;Reticulum calls its identity primitive an Identity: an Ed25519 signing keypair combined with an X25519 encryption keypair. From an Identity you construct destinations, each of which appears on the wire as a 16-byte truncation of a SHA-256 hash over a dotted naming hierarchy. A destination name looks like &lt;code&gt;lxmf.delivery&lt;/code&gt; or &lt;code&gt;environmentlogger.remotesensor.temperature&lt;/code&gt;, and the hash of that name, combined with the destination&amp;#39;s public key for private types, becomes a 128-bit address. One Identity can publish any number of destinations for different purposes.&lt;/p&gt;

&lt;p&gt;FIPS uses secp256k1. Bitcoin and Nostr use the same curve, which means a FIPS node can derive its identity from an existing Nostr nsec without generating anything new. A node&amp;#39;s public key, encoded in bech32 as an &lt;code&gt;npub&lt;/code&gt;, is its application identity. From the raw x-only pubkey, FIPS derives a 16-byte &lt;code&gt;node_addr&lt;/code&gt; by truncating SHA-256, and from that derives an fd00::/8 IPv6 address by prepending 0xfd. The three identifiers serve different layers: &lt;code&gt;npub&lt;/code&gt; for users, &lt;code&gt;node_addr&lt;/code&gt; for routing, IPv6 for legacy applications.&lt;/p&gt;

&lt;p&gt;Two consequences follow from these choices. First, Reticulum&amp;#39;s destinations are application-scoped while FIPS identities are node-scoped. A Reticulum Identity publishes a distinct destination hash for each application, giving every app its own routable endpoint, though every destination&amp;#39;s announce still carries the Identity&amp;#39;s public key and an observer correlating announces can recover the shared Identity. A FIPS node exposes every application through a single npub and dispatches to them using port numbers above FSP. Reticulum is more fine-grained in addressing; FIPS is simpler to reason about.&lt;/p&gt;

&lt;p&gt;Second, the choice of elliptic curve has practical downstream effects. secp256k1 lets FIPS inherit Nostr identities directly, so any user with an nsec already holds a usable FIPS identity. Ed25519 and X25519 give Reticulum access to faster, batch-verifiable signatures and a well-audited lineage of NaCl-style constructions, at the cost of sitting outside the cryptographic world that Bitcoin and Nostr occupy.&lt;/p&gt;

&lt;h2 id=&#34;how-the-mesh-finds-itself-2&#34;&gt;How the Mesh Finds Itself&lt;/h2&gt;

&lt;p&gt;Addressing is cheap; finding the holder of an address is where mesh protocols get expensive. Reticulum and FIPS answer that question in opposite ways.&lt;/p&gt;

&lt;p&gt;Reticulum uses an announce mechanism. When a destination wants to become reachable, it broadcasts a signed packet containing its destination hash, its public key, and optional application metadata. Transport nodes receive this announce and forward it, recording which direction it came from and how many hops it took. Announces propagate with randomized delay, bandwidth limits configurable per interface, and priority weighted inversely by hop count, so that slow segments stay responsive to local traffic while still gradually learning about distant destinations. Every transport node ends up holding a lookup table that says &amp;#34;to reach destination X, forward to peer Y,&amp;#34; where each entry encodes only the next hop toward the destination and no node has the full path in memory.&lt;/p&gt;

&lt;p&gt;FIPS builds a spanning tree. Every node picks the peer that offers the best measured path to a deterministic root, chosen as the node with the lexicographically smallest &lt;code&gt;node_addr&lt;/code&gt;, and the resulting parent-child relationships form a tree over the mesh. Each node&amp;#39;s position in the tree becomes its coordinate: the sequence of &lt;code&gt;node_addr&lt;/code&gt; values from itself back to the root. To route a packet, a node finds the peer whose coordinate is closest to the destination&amp;#39;s coordinate by tree distance. For destinations not known through the tree, nodes exchange bloom filters advertising reachability, and consult those filters when tree routing alone would drop a packet.&lt;/p&gt;

&lt;p&gt;The tradeoffs here are subtle but real. Reticulum&amp;#39;s announce model is simple and resilient. It converges quickly on networks with reasonable bandwidth, handles topology changes through the same gossip channel that propagated the initial announces, and requires no coordination between nodes beyond the signed announce format. The cost is memory: every transport node holds a routing entry for every destination it has ever heard an announce for, and bandwidth spent on announce floods grows with the number of announced destinations.&lt;/p&gt;

&lt;p&gt;FIPS&amp;#39;s spanning tree is tighter. Coordinates are computed from local information, forwarding decisions iterate only the direct peer list to find the closest coordinate to the destination, and bloom filters compress reachability information at the cost of occasional false positives. When the network partitions, each segment independently re-elects a root and reconverges in O(diameter) rounds. The cost is complexity: spanning tree construction, MMP link measurement, bloom filter gossip with split-horizon rules, and a coordinate cache that must be consulted before every forwarding decision.&lt;/p&gt;

&lt;p&gt;Both approaches handle partition healing automatically, and that property is load-bearing for a mesh designed to survive adversity. Neither needs human intervention when a link goes down. The difference is that Reticulum will route your packet through whatever path an announce has carved out recently, while FIPS will route your packet along the spanning tree&amp;#39;s idea of the shortest path right now.&lt;/p&gt;

&lt;p&gt;A subtler architectural choice shows up in the packets themselves. Reticulum omits source addresses entirely; a forwarded packet carries only the destination hash and the payload, and transit nodes track return paths through the link identifier they remembered when the link was established. FIPS includes both source and destination &lt;code&gt;node_addr&lt;/code&gt; values in the FMP routing envelope, because the spanning tree forwarding logic needs to know where to send responses and because the two-layer encryption model treats the envelope as cleartext to transit routers by design. The trade is concrete: Reticulum gets a stronger anonymity story at the cost of a more constrained forwarding model, while FIPS gets simpler routing at the cost of revealing source and destination hashes to every hop.&lt;/p&gt;

&lt;h2 id=&#34;the-cryptographic-core-2&#34;&gt;The Cryptographic Core&lt;/h2&gt;

&lt;p&gt;Reticulum and FIPS both encrypt everything by default, and both refuse to carry unencrypted traffic on multi-hop paths. Beyond that shared commitment, their cryptographic layers look like they come from different decades.&lt;/p&gt;

&lt;p&gt;Reticulum&amp;#39;s primitive list reads as a conservative choice from the mid-2010s: Ed25519 for signatures, X25519 for ECDH, HKDF for key derivation, AES-256 in CBC mode for bulk encryption, HMAC-SHA256 for message authentication, and SHA-256 plus SHA-512 for hashing. Every packet to a single destination gets a freshly generated ephemeral X25519 keypair, which performs ECDH against the destination&amp;#39;s public key to derive a per-packet symmetric key. No handshake is needed because the sender already knows the destination&amp;#39;s public key from a previous announce. Encrypt-then-MAC via AES-CBC and HMAC-SHA256 provides authenticated encryption in the older composition style that predates AEAD constructions like ChaCha20-Poly1305. A destination can optionally enable a ratchet, so that per-packet ECDH uses successive ratchet keys instead of the long-term public key, giving forward secrecy to link-less traffic.&lt;/p&gt;

&lt;p&gt;FIPS uses the Noise Protocol Framework with ChaCha20-Poly1305 as the AEAD. Every link between adjacent peers runs a Noise IK handshake, which completes mutual authentication in one round-trip because the initiator already knows the responder&amp;#39;s static public key. Every end-to-end session runs a Noise XK handshake, which hides the initiator&amp;#39;s static key until the third handshake message, so transit routers cannot learn the initiator&amp;#39;s npub from observing the handshake. Both Noise instances produce AEAD keys used with ChaCha20-Poly1305 for the rest of the session.&lt;/p&gt;

&lt;p&gt;The architectural difference runs deeper than primitive choice. Reticulum applies encryption per-destination-type: single destinations get ECDH-derived per-packet encryption, group destinations use a preshared AES-256 key, plain destinations are cleartext, and link destinations establish an ephemeral X25519 tunnel with forward secrecy. Which encryption you get depends on how you addressed the packet.&lt;/p&gt;

&lt;p&gt;FIPS applies encryption in two independent layers, always. The lower layer, called FMP, encrypts every hop under its own Noise IK session, so a node forwarding a packet decrypts under the incoming link key and re-encrypts under the outgoing link key. The upper layer, called FSP, encrypts the end-to-end payload under a Noise XK session and remains opaque to every intermediate hop. The construction resembles Tor&amp;#39;s onion model at a smaller scale, without the anonymity guarantees that Tor&amp;#39;s three-hop circuits and large shared user base provide.&lt;/p&gt;

&lt;p&gt;The two-layer construction gives FIPS a cleaner story about what each observer can see. A transit router sees FMP-decrypted packets containing opaque FSP payloads and routing envelope data: source and destination node_addrs, TTL, path MTU. It can tell that a particular pair of node_addrs is exchanging traffic and watch the volume and timing of that exchange, but the FSP payload stays sealed and the npubs behind those hashes stay out of reach. Reticulum approaches the same threat model through its claim of initiator anonymity: the sender&amp;#39;s identity is never revealed on the wire for packet-style communication, and for link-style communication the initiator can choose to authenticate only after the link has come up and been verified.&lt;/p&gt;

&lt;h2 id=&#34;sessions-and-the-shape-of-a-conversation-2&#34;&gt;Sessions and the Shape of a Conversation&lt;/h2&gt;

&lt;p&gt;For single-shot datagrams, both protocols offer simple encrypted delivery. For extended conversations, the abstractions diverge again.&lt;/p&gt;

&lt;p&gt;Reticulum&amp;#39;s Link is a first-class construct. Establishing a link costs three packets totaling 297 bytes, during which both sides contribute fresh X25519 keypairs to an ECDH exchange that derives an ephemeral symmetric key. The link carries its own identifier, a hash of the link request packet, and every transport node along the path remembers this identifier so that subsequent traffic can address the link directly instead of re-resolving the destination. The link provides forward secrecy, receipt proofs via Ed25519 signatures, and bidirectional addressing. Keeping a link open costs roughly 0.45 bits per second, which means a 1200 bps packet radio channel can host a hundred concurrent links with ninety-six percent of its capacity still available for actual data.&lt;/p&gt;

&lt;p&gt;FIPS&amp;#39;s FSP session is less explicit. Every end-to-end exchange runs a Noise XK session, which provides forward secrecy and bidirectional AEAD encryption from the first message. There is no separate link-establishment phase visible to the application; the session is the delivery mechanism. Reliability is handled above FSP, either by the native API contract or by TCP running inside the IPv6 adapter, because FSP delivers datagrams only and leaves stream semantics to the layer above.&lt;/p&gt;

&lt;p&gt;The practical consequence is that Reticulum applications tend to be written against the Link API for anything larger than a notification, and the Resource abstraction on top of Link handles chunking, compression, and reassembly of arbitrarily large transfers. FIPS applications tend to be written against the native datagram API when they can be, or against the IPv6 adapter when they need to speak to unmodified software, and they inherit whatever reliability layer lives in the application protocol.&lt;/p&gt;

&lt;h2 id=&#34;the-rest-of-the-world-2&#34;&gt;The Rest of the World&lt;/h2&gt;

&lt;p&gt;At some point both protocols have to answer the question of what happens when an application written for the normal Internet wants to talk to a peer on the mesh. The two answers point in opposite directions.&lt;/p&gt;

&lt;p&gt;Reticulum&amp;#39;s answer is to write new applications. The project ships Nomad Network, LXMF for messaging, Sideband for mobile use, and a handful of other tools that speak Reticulum natively. No compatibility shim for SSH or curl exists. If you want to run a service on a Reticulum network, you link against RNS and implement your protocol against destinations and links. The design bet is that applications meant to survive adversarial environments should be built for those environments from the start, and that dragging along the assumptions of a TCP/IP application stack into a five-bit-per-second LoRa link is a category error.&lt;/p&gt;

&lt;p&gt;FIPS&amp;#39;s answer is a TUN adapter. The daemon creates a virtual interface, assigns itself an fd00::/8 address derived from its node_addr, and asks the kernel to route the entire fd00::/8 block through the interface. When an application opens an IPv6 socket to a fips0 peer, the adapter receives the packet, looks up the destination&amp;#39;s pubkey in a DNS-primed identity cache, and hands the packet to FSP. TCP MSS clamping keeps segments within the effective 1395-byte MTU. ICMPv6 Packet Too Big messages fall back to path MTU discovery for applications that bypass the MSS clamp. A separate &lt;code&gt;fips-gateway&lt;/code&gt; sidecar extends this trick to LAN clients that do not run FIPS themselves, allocating virtual IPs from fd01::/112 and installing nftables rules that NAT traffic between the LAN and the mesh.&lt;/p&gt;

&lt;p&gt;Reticulum is a parallel network stack that competes with IP at the application layer, while FIPS is a mesh substrate that preserves IP at the application layer. Applications running over Reticulum stay inside the universe Reticulum defines, with no substrate for DNS, TLS, or HTTP conventions to attach to below them. Applications running over FIPS keep their existing codebase but inherit every IPv6 behavior the operating system already implements, including the ones that can surprise you inside a mesh.&lt;/p&gt;

&lt;p&gt;Each approach fits a different problem. An off-grid community deploying LoRa radios gains the most from Reticulum&amp;#39;s willingness to throw away the old assumptions; a self-hosted user routing SSH and Syncthing across a censored border gains the most from FIPS&amp;#39;s willingness to preserve them.&lt;/p&gt;

&lt;h2 id=&#34;what-each-threat-model-promises-2&#34;&gt;What Each Threat Model Promises&lt;/h2&gt;

&lt;p&gt;Reticulum claims initiator anonymity. Packets sent to single destinations carry no identifying information about the sender, and links can be established and used without the initiator ever authenticating to the destination. The destination learns that a link was established; the initiator&amp;#39;s identity stays hidden until the initiator chooses to authenticate inside the encrypted channel. Once authenticated, the identity is visible only to the verified destination. This property is load-bearing for applications like anonymous messaging or whistleblowing tools.&lt;/p&gt;

&lt;p&gt;FIPS declines to claim anonymity. Direct peers learn each other&amp;#39;s npub through the Noise IK handshake, and there is no mixing layer, cover traffic, or tunnel rotation. A direct peer always knows who you are. What FIPS does claim is that transit routers, meaning peers who are not direct neighbors but are forwarding your session, see only opaque routing hashes and cannot correlate traffic to npubs. The claim is weaker than Reticulum&amp;#39;s by design: FIPS assumes you know your direct peers, and the protocol optimizes for privacy against adversaries further away.&lt;/p&gt;

&lt;p&gt;Both projects are explicit that a global passive observer with vantage points across multiple transports can perform traffic analysis against them. Neither pads packets, batches traffic, or rotates through decoy paths the way a mix network would. Payloads stay confidential; the occurrence of a conversation remains visible to anyone with enough observation points. Mix networks solve a different problem and impose padding and cover-traffic overheads that these stacks are built to avoid.&lt;/p&gt;

&lt;p&gt;On eclipse resistance, both rely on topological diversity. Cryptographic signatures on tree announces or on routing packets cannot save a node whose every direct peer is hostile, because the hostile peers hold valid identities too. The defense in both protocols is the same: peer across independent operators and independent transports, so that any single compromise leaves the target with other views of the network.&lt;/p&gt;

&lt;h2 id=&#34;where-each-one-wins-2&#34;&gt;Where Each One Wins&lt;/h2&gt;

&lt;p&gt;For a LoRa mesh across a valley, where the medium is a 300 bps radio channel and the nodes are Raspberry Pis with RNodes, Reticulum is the protocol. FIPS&amp;#39;s IPv6 compatibility path requires transport MTUs that LoRa cannot sustain, its spanning tree would reconverge constantly in a mesh where links come and go with weather, and its application story assumes you have applications that can be recompiled to run over it. Reticulum was designed for exactly this environment, and its Link API, Resource abstraction, and announce-based path discovery all pay off in the low-bandwidth regime.&lt;/p&gt;

&lt;p&gt;For a Nostr-native mesh where users want to SSH into their home servers over a Tor-transported overlay without standing up Cloudflare tunnels or tailnets, FIPS is the protocol. Its npub-as-identity model inherits the social graph users already have on Nostr, and its IPv6 adapter lets most existing tools work without modification. Noise-based two-layer encryption matches the trust structure of deployments where direct peers know you and distant peers should not, and the spanning tree performs well on the transport MTUs a Tor circuit or WiFi LAN provides.&lt;/p&gt;

&lt;p&gt;Coexistence between the two is possible in principle. A FIPS gateway running on a node that also participates in a Reticulum mesh could bridge traffic between them, and both projects are sufficiently medium-agnostic that nothing in their design prevents nesting one inside the other. In practice the communities and tooling sit apart, and the cryptographic curves never meet.&lt;/p&gt;

&lt;h2 id=&#34;a-note-on-age-and-maturity-2&#34;&gt;A Note on Age and Maturity&lt;/h2&gt;

&lt;p&gt;Reticulum was dedicated to the public domain in 2016 and has a shipping 1.x reference implementation in Python, a thorough manual, the RNode open-source LoRa hardware platform, and a growing catalog of applications including Nomad Network, Sideband, LXMF, and MeshChat. It has not been externally audited, which the project is explicit about, but its primitives are conservative and its design has had close to a decade to settle.&lt;/p&gt;

&lt;p&gt;FIPS was built during SEC-07 at Sovereign Engineering and is, at the time of writing, young software. Specs are public, the reference implementation lives on GitHub, and a learning site walks through every layer with interactive simulations. It inherits cryptographic primitives from the Noise Framework and from Nostr tooling, which mitigates some of the risk that comes with new protocol work, but the network-level behavior has not seen years of deployment stress yet. Anyone planning a production deployment should weigh that accordingly.&lt;/p&gt;

&lt;h2 id=&#34;the-convergent-insight-2&#34;&gt;The Convergent Insight&lt;/h2&gt;

&lt;p&gt;Despite their different answers, Reticulum and FIPS share the same deep claim: a network can function without central coordinators, identity and addressing follow from cryptographic keypairs held by the participants themselves, and every link in such a network should be encrypted by default because there is no reliable way to know which links are hostile.&lt;/p&gt;

&lt;p&gt;Two implementations of the same claim, making different bets about which tradeoffs to prioritize. Both worth running. Both worth understanding on their own terms before picking one.&lt;/p&gt;
 &lt;/blockquote&gt;
    </content>
    <updated>2026-04-24T09:24:34Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsqdnnq2agelzwr0v8rlug27uwnsw99h4msfj7cr0m6aa6hvmrwaggpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu43dqvs</id>
    
      <title type="html">Thats a good idea actually @nprofile…ympz</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsqdnnq2agelzwr0v8rlug27uwnsw99h4msfj7cr0m6aa6hvmrwaggpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu43dqvs" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqspja60ghckjy2t73w8dmnqhjs9ws3ke669qtzz2xynqg8v39js8gcpzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtcrxhy0t&#39;&gt;nevent1q…hy0t&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Thats a good idea actually &lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Person&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/nprofile1qqs8y6s7ycwvv36xwn5zsh3e2xemkyumaxnh85dv7jwus6xmscdpcygpz9mhxue69uhkummnw3ezumrpdejz76jympz&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;&lt;span&gt;franzap&lt;/span&gt; (&lt;span class=&#34;italic&#34;&gt;nprofile…ympz&lt;/span&gt;)&lt;/a&gt;&lt;/span&gt; 
    </content>
    <updated>2026-04-23T12:29:46Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsw3s39n8079untlqgd5lajcgym39mqhaht4860yesaglx2kgw8y5cpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu66zyyg</id>
    
      <title type="html">Yeah, but who&amp;#39;s gonna trust GitHub for app distribution...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsw3s39n8079untlqgd5lajcgym39mqhaht4860yesaglx2kgw8y5cpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu66zyyg" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs0yrp8n574yyeujyjn3rnf4udtavuc9y7zmh9lerd40qvhtd7pwtqppemhxue69uhkummn9ekx7mp0vgmn35&#39;&gt;nevent1q…mn35&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Yeah, but who&amp;#39;s gonna trust GitHub for app distribution...
    </content>
    <updated>2026-04-23T11:02:19Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsr47psrzz72el847az7tphquf9dkm24lrra4c4nskxtmkh4w9pxwcpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhumvr3a8</id>
    
      <title type="html">Awesome!</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsr47psrzz72el847az7tphquf9dkm24lrra4c4nskxtmkh4w9pxwcpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhumvr3a8" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqspfkh3eh0vhz564u37jwud4hargpjmuv95ty7uda34zfaaeknwwjcpremhxue69uhkummnw3ez6ur4vgh8wetvd3hhyer9wghxuet59un0xkjc&#39;&gt;nevent1q…xkjc&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Awesome!
    </content>
    <updated>2026-04-23T11:00:54Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsqk6e79a86cwttwx6npjq3ayldx2r0kurj4cxlxg4n9mdnltjeh0qpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu04xd3x</id>
    
      <title type="html">Woah, why?</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsqk6e79a86cwttwx6npjq3ayldx2r0kurj4cxlxg4n9mdnltjeh0qpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu04xd3x" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsq927yqxwpej3wawr4s8dsj59zlhunw2txp4clr68egke7wuw0awcpz4mhxue69uhkummnw3ezummcw3ezuer9wchsw260av&#39;&gt;nevent1q…60av&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Woah, why?
    </content>
    <updated>2026-04-23T10:14:25Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsygws55pscpj93nyhytckhe7ghh2nrfmepv89v3x9vvvx3f3axwmgpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhutznhze</id>
    
      <title type="html">The reminder worked...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsygws55pscpj93nyhytckhe7ghh2nrfmepv89v3x9vvvx3f3axwmgpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhutznhze" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsg2lmgkpvcev5mpllzeay7fjmfa6sk9sffmma7p5jlcp84nyqhxlqpz4mhxue69uhhyetvv9ujummjd3ujuer9wchs4jcqjg&#39;&gt;nevent1q…cqjg&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;The reminder worked...
    </content>
    <updated>2026-04-23T10:13:13Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsr30eh38h045jzy8gusz7xpf9u5urre32zgzc2qlg5uclw6j2kpzqpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhur38kf6</id>
    
      <title type="html">I&amp;#39;m curious, how did you find @nprofile…gsu4? Were you a ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsr30eh38h045jzy8gusz7xpf9u5urre32zgzc2qlg5uclw6j2kpzqpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhur38kf6" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsxwuj8jhcmkmnqts5jghaauuhcxqnfuclj6u8evfmqaygc43nnrlcpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhs2np7zs&#39;&gt;nevent1q…p7zs&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;I&amp;#39;m curious, how did you find &lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Person&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/nprofile1qqs83nn04fezvsu89p8xg7axjwye2u67errat3dx2um725fs7qnrqlgpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhsz9mhwden5te0wfjkccte9ec8y6tdv9kzumn9wshszrnhwden5te0dehhxtnvdakz7adgsu4&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;&lt;span&gt;Zapstore&lt;/span&gt; (&lt;span class=&#34;italic&#34;&gt;nprofile…gsu4&lt;/span&gt;)&lt;/a&gt;&lt;/span&gt;?&lt;br/&gt;Were you a nostrich before already, or are you new to the space?
    </content>
    <updated>2026-04-23T06:28:58Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqs2e8zsxf6d84jnzmyjn7fggqewzza8678kfw54edh0kuqruq9x29qpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuhcv7ss</id>
    
      <title type="html">Honestly, it&amp;#39;s the only app store that just works, especially ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqs2e8zsxf6d84jnzmyjn7fggqewzza8678kfw54edh0kuqruq9x29qpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuhcv7ss" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsfglaksfwxm09yga6adv7a52hqqjtjxgkx6fz4krudepk8zjdxy9cpr4mhxue69uhkummnw3ezucmewp5x2unsw4hxktn5dajxz7f0zkvpkl&#39;&gt;nevent1q…vpkl&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Honestly, it&amp;#39;s the only app store that just works, especially for devs.
    </content>
    <updated>2026-04-23T06:26:19Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqs98t508m4jjyzxtcqum8am7d7xlfenwn5g2zray3gl6hpl84he8dqpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu78c2q3</id>
    
      <title type="html">I see more and more non-nostr apps publishing on ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqs98t508m4jjyzxtcqum8am7d7xlfenwn5g2zray3gl6hpl84he8dqpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu78c2q3" />
    <content type="html">
      I see more and more non-nostr apps publishing on &lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Person&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/nprofile1qqs83nn04fezvsu89p8xg7axjwye2u67errat3dx2um725fs7qnrqlgpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhsz9mhwden5te0wfjkccte9ec8y6tdv9kzumn9wshszrnhwden5te0dehhxtnvdakz7adgsu4&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;&lt;span&gt;Zapstore&lt;/span&gt; (&lt;span class=&#34;italic&#34;&gt;nprofile…gsu4&lt;/span&gt;)&lt;/a&gt;&lt;/span&gt;!&lt;br/&gt;Like &lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Person&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/nprofile1qqswwksctsqe6zgyn40ukr3f5txfhlgpdmq0dkyjljv0dllqrqdysrgpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhsz9nhwden5te0wfjkccte9ejxjar5duh8qatz9uq3uamnwvaz7tmwdaehgu3dwp6kytnhv4kxcmmjv3jhytnwv46z7s88teg&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;&lt;span&gt;nprofile1qqswwksctsqe6zgyn40ukr3f5txfhlgpdmq0dkyjljv0dllqrqdysrgpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhsz9nhwden5te0wfjkccte9ejxjar5duh8qatz9uq3uamnwvaz7tmwdaehgu3dwp6kytnhv4kxcmmjv3jhytnwv46z7s88teg&lt;/span&gt; (&lt;span class=&#34;italic&#34;&gt;nprofile…8teg&lt;/span&gt;)&lt;/a&gt;&lt;/span&gt;, a climbing app, which recommends zapstore as best place to get the app, and use nostr DMs for feedback.&lt;br/&gt;&lt;a href=&#34;https://zapstore.dev/apps/naddr1qq2kxmmd9e3hyatcvdhkzcmg9eskuerjda5kgqgcwaehxw309aex2mrp0yh85ctswd6x7un99ejx2aszyrn45xzuqxwsjpyatl9su2dzejdl6qtwcrmd3yhunrm0lcqcrfyq6qcyqqq8uzch789f5&#34;&gt;https://zapstore.dev/apps/naddr1qq2kxmmd9e3hyatcvdhkzcmg9eskuerjda5kgqgcwaehxw309aex2mrp0yh85ctswd6x7un99ejx2aszyrn45xzuqxwsjpyatl9su2dzejdl6qtwcrmd3yhunrm0lcqcrfyq6qcyqqq8uzch789f5&lt;/a&gt;
    </content>
    <updated>2026-04-23T05:55:33Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqs0hwaeracftr69dzcv8jrykmka6qah6hsy84pt8qecj8yf4r8z6hspremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhupcsf6e</id>
    
      <title type="html">Basically, a group of people create a public key, such that only ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqs0hwaeracftr69dzcv8jrykmka6qah6hsy84pt8qecj8yf4r8z6hspremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhupcsf6e" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqspav4krgf3cff4c448ucrsx2hpx3sp56tavjawthfj57rf5d0js0qpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhstck80h&#39;&gt;nevent1q…k80h&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Basically, a group of people create a public key, such that only if a complex program returns valid does someone get the private key.&lt;br/&gt;It&amp;#39;s really a powerful building block.
    </content>
    <updated>2026-04-23T05:45:00Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsxj2ardsjs8l9gmznwfk4yjpwuuv08h3r07sr327gepe47leh3k0cpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuzal92c</id>
    
      <title type="html">It&amp;#39;s edible... Once...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsxj2ardsjs8l9gmznwfk4yjpwuuv08h3r07sr327gepe47leh3k0cpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuzal92c" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs8qlxy2tt8aktxml985dgj97se5755xlt4ra07uy68wsatdsa5h3cpzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtcn92ue3&#39;&gt;nevent1q…2ue3&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;It&amp;#39;s edible... Once...
    </content>
    <updated>2026-04-22T18:31:38Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqstqketv92nae9nu469p4fdp4lu7xmcwl3293njr6xqlvj0q933cycpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuvvl8cj</id>
    
      <title type="html">I see that makes sense, thanks for working on this!</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqstqketv92nae9nu469p4fdp4lu7xmcwl3293njr6xqlvj0q933cycpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuvvl8cj" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs2l2z9ks2p0r2nn4ql8cuptycpvptvv9qxw87svc9sqcs4z6ehnzqpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhsqy05jk&#39;&gt;nevent1q…05jk&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;I see that makes sense, thanks for working on this!
    </content>
    <updated>2026-04-22T16:15:34Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsw9l8dw4znxs5xsph2u7ja2cfjcz9d0v3phfdlzfj2zr22yg5allspremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuq47k6r</id>
    
      <title type="html">Honestly, LLMs are shockingly good at rewriting in a different ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsw9l8dw4znxs5xsph2u7ja2cfjcz9d0v3phfdlzfj2zr22yg5allspremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuq47k6r" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs02pk3r8m5ryu7asjhqqp47603w3zvhszj2urq7w3gjfgf39a5k8qpz9mhxue69uhkummnw3ezuamfdejj7r68vr9&#39;&gt;nevent1q…8vr9&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Honestly, LLMs are shockingly good at rewriting in a different language, especially when there is good test coverage.&lt;br/&gt;&lt;br/&gt;Oh, and does Jam work ontop of the new implementation?
    </content>
    <updated>2026-04-22T14:13:44Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsvhz6r0mvxeuyhthfnl6nn4svg9fl0eyfwe4vcqwt0h7dy9ucy9tcpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu20suux</id>
    
      <title type="html">Theft.</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsvhz6r0mvxeuyhthfnl6nn4svg9fl0eyfwe4vcqwt0h7dy9ucy9tcpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu20suux" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsgj4r9sq47g3xxqg3f3mmwgx5c06kxfucze6ks4kpjq86km92v43gpzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtcv0cva2&#39;&gt;nevent1q…cva2&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Theft.
    </content>
    <updated>2026-04-22T10:39:44Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqs2k6tdyrefud9w9jjgjr3ucnk56l7dsmp5ulzafc7rqse4sclz0qgpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhugq54qe</id>
    
      <title type="html">btw, zaps to you are failing.</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqs2k6tdyrefud9w9jjgjr3ucnk56l7dsmp5ulzafc7rqse4sclz0qgpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhugq54qe" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqswlfhz804mf9r09hfq7tz4v5ptf4rzpak50lmz0x0hld7r4wdwkwspz9mhxue69uhkummnw3ezuamfdejj7ldlx4z&#39;&gt;nevent1q…lx4z&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;btw, zaps to you are failing.
    </content>
    <updated>2026-04-22T10:14:55Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqs9w7cdf2lq9qc3pc0lmq3vgxepn6meemumg5t5ga0q93rqx6l20ecpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuzvls57</id>
    
      <title type="html">Thank you for your service sir! Joinmarket was pioneering in so ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqs9w7cdf2lq9qc3pc0lmq3vgxepn6meemumg5t5ga0q93rqx6l20ecpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuzvls57" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqswlfhz804mf9r09hfq7tz4v5ptf4rzpak50lmz0x0hld7r4wdwkwspz9mhxue69uhkummnw3ezuamfdejj7ldlx4z&#39;&gt;nevent1q…lx4z&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Thank you for your service sir!&lt;br/&gt;Joinmarket was pioneering in so many ways, you are an inspiration, and I learned so much from you!&lt;br/&gt;I hope the project continues to be maintained and used.&lt;br/&gt;Curious tho, why is it written in Python again?
    </content>
    <updated>2026-04-22T10:11:28Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsg0zrmj9mk3fa4lqlkuhy0nsd52d9sdkszsvh8h9a4jfe0rzljwlqpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuf9gv89</id>
    
      <title type="html">We might add it. But aren&amp;#39;t you promoting your investment ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsg0zrmj9mk3fa4lqlkuhy0nsd52d9sdkszsvh8h9a4jfe0rzljwlqpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuf9gv89" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqswa4umxyze5vy72l6aw5ntmg9gnrlm7hpqrnwru63euxft5r9vckgpy3mhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5hkjmnzdauqpy8egn&#39;&gt;nevent1q…8egn&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;We might add it.&lt;br/&gt;But aren&amp;#39;t you promoting your investment right now? 🙃
    </content>
    <updated>2026-04-22T09:58:29Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsxsmekn3gr7uwp39g0w8leuhu8m82f64nnz2f8s6y6t06sfl3cv2spremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu9dlc34</id>
    
      <title type="html">Your relay list is messed up btw.</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsxsmekn3gr7uwp39g0w8leuhu8m82f64nnz2f8s6y6t06sfl3cv2spremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu9dlc34" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs8grxz6dhz6whnvpg6udsyysf79vx3x3em977ekztjkngwtk36u5spz4mhxue69uhhyetvv9ujuerpd46hxtnfduhsuazyhp&#39;&gt;nevent1q…zyhp&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Your relay list is messed up btw.
    </content>
    <updated>2026-04-22T08:26:12Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsvkztmpdp7rwlw5zmd0d4ejtdt5nyadusfej32u6c47sp43l4d5uspremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuzumf9m</id>
    
      <title type="html">That&amp;#39;s a cool idea.</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsvkztmpdp7rwlw5zmd0d4ejtdt5nyadusfej32u6c47sp43l4d5uspremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuzumf9m" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs8grxz6dhz6whnvpg6udsyysf79vx3x3em977ekztjkngwtk36u5spz4mhxue69uhhyetvv9ujuerpd46hxtnfduhsuazyhp&#39;&gt;nevent1q…zyhp&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;That&amp;#39;s a cool idea.
    </content>
    <updated>2026-04-22T08:22:54Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsrdecj29ktav7aeyy8nqlcgplfxglyqg0qqk6f5vzgajassl2fpmgpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu07wyy2</id>
    
      <title type="html">Lightning sender privacy is great, and just use Wasabi for ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsrdecj29ktav7aeyy8nqlcgplfxglyqg0qqk6f5vzgajassl2fpmgpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhu07wyy2" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs0ypadu9pvvwykj7va4w0ewzwm59ljrd8stldnjx40w565xanx02gpzemhxue69uhhyetvv9ujuerfw36x7tnsw43z73dc2gz&#39;&gt;nevent1q…c2gz&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Lightning sender privacy is great, and just use Wasabi for onchain payments.
    </content>
    <updated>2026-04-22T08:17:34Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqs9xhjsrahs7xdg8jzzzytswkxu3k7qcxw5gxx765utsvgxpwt2dcqpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuaqugxe</id>
    
      <title type="html">By the way, Appendix A in this edition is my favorite history of ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqs9xhjsrahs7xdg8jzzzytswkxu3k7qcxw5gxx765utsvgxpwt2dcqpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuaqugxe" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqszk9klvmljhudshjg9x4tmwgh3e3up6c52awr4nhup6keu2u2jv7gpzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtcwk2rwy&#39;&gt;nevent1q…2rwy&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;By the way, Appendix A in this edition is my favorite history of religion, very interesting framing.
    </content>
    <updated>2026-04-21T12:50:56Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsw62zavcwxf03xu0qsd8u0dc7nesn93ex5rzfr8f4ejjjmerfm3zqpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhudws0zl</id>
    
      <title type="html">The usual covenant debate on Bitcoin starts with Script and soft ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsw62zavcwxf03xu0qsd8u0dc7nesn93ex5rzfr8f4ejjjmerfm3zqpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhudws0zl" />
    <content type="html">
      The usual covenant debate on Bitcoin starts with Script and soft forks. PIPEs v2 starts somewhere stranger: it asks whether a spend condition can be enforced by making the signing key itself unavailable until a proof exists. That move shifts the burden away from on-chain verification and into witness encryption, committee setup, a huge off-chain artifact, and the engineering needed to bind them together. &lt;br/&gt;The result is one of the most interesting proposals in current Bitcoin research because it enlarges the design space without asking Bitcoin consensus to change. &lt;blockquote class=&#34;border-l-05rem border-l-strongpink border-solid&#34;&gt;&lt;div class=&#34;-ml-4 bg-gradient-to-r from-gray-100 dark:from-zinc-800 to-transparent mr-0 mt-0 mb-4 pl-4 pr-2 py-2&#34;&gt;quoting &lt;br/&gt;&lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Article&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/naddr1qqgrzdfex3jnverpxajnvenyv93nzq3qklkk3vrzme455yh9rl2jshq7rc8dpegj3ndf82c3ks2sk40dxt7qxpqqqp65w73ce4x&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;naddr1qq…ce4x&lt;/a&gt;&lt;/span&gt; &lt;/div&gt; &lt;p&gt;Bitcoin can already enforce whatever its existing Script system can express, and the covenant debate persists because many of the conditions people want to impose concern future spending behavior or off-chain facts that Bitcoin does not natively know how to check. If you want an output that can move only after a proof verifies or a recovery condition is satisfied, today&amp;#39;s options usually fall into one of two camps. You can push for new opcodes that let Script say more, or you can wrap the existing chain in an optimistic protocol that relies on challengers and time windows spread across multiple transactions. PIPEs v2 proposes a third route, and its central move is easy to state even if the machinery behind it is not: do not teach Bitcoin to verify the condition, make it impossible to produce the required signature until the condition holds.&lt;/p&gt;

&lt;p&gt;In an ordinary Bitcoin output, the private key already exists and the whole security question is who controls it. In PIPEs v2, the usable signing secret is hidden behind a witness-encrypting ciphertext bound to some statement. The chain still sees an ordinary public key. Spending still looks like an ordinary Schnorr signature. The novelty lies in the claim that the private key cannot be recovered by anyone unless they know a witness for the chosen condition. A successful spend therefore signals that the condition was satisfied, even though the chain never checked the condition itself.&lt;/p&gt;

&lt;p&gt;The paper frames this idea through what it calls a witness signature. The phrase sounds exotic, yet the intuition is direct. Take a statement that has the form, &amp;#34;there exists some witness w such that verification accepts.&amp;#34; That witness might be a zero-knowledge proof for a published instance or a recovery secret satisfying a hash relation. More generally, it can be any object whose validity can be checked quickly once presented. Witness encryption lets you publish a ciphertext that any observer can see but only someone holding a valid witness can decrypt. PIPEs v2 uses that primitive in the most literal possible way: the plaintext inside the ciphertext is the signing material for the Bitcoin output, or an equivalent secret that reveals it.&lt;/p&gt;

&lt;p&gt;Schnorr stays simple in this design. Bitcoin is not learning a new rule. Bitcoin is doing what it already does under BIP 340: it checks that a Schnorr signature verifies under a public key. PIPEs v2 leaves that part untouched. The burden of enforcement shifts off-chain, where the cryptography governing key recovery decides whether a valid signature can ever come into existence. The proposal therefore buys expressive authorization conditions while paying with a very different kind of complexity.&lt;/p&gt;

&lt;h2 id=&#34;the-cryptographic-machinery-2&#34;&gt;The Cryptographic Machinery&lt;/h2&gt;

&lt;p&gt;Witness encryption is the decisive primitive because it turns a hard relation into a decryption gate. In the current PIPEs v2 discussion, the construction comes from the recent AADP line of witness encryption. The internal details involve structured matrices and determinant computations produced by nontrivial reductions that are far removed from ordinary Bitcoin engineering. For the architectural argument, only one property matters: if you know a valid witness, decryption is possible; without one, the ciphertext should reveal nothing useful, so the witness never persuades Bitcoin directly and only reveals the secret that can.&lt;/p&gt;

&lt;p&gt;If one operator generated the signing key in the usual way, that operator could spend immediately and the whole scheme would collapse. PIPEs v2 therefore leans on distributed setup. A committee jointly generates the Schnorr keypair so that the public key can be published on-chain while the secret key stays unavailable to any single participant during setup. The witness-encrypted ciphertext is then created and bound to the exact public key and statement instance. These schemes rely on committee honesty properties and correct setup behavior. The trust surface sits at setup.&lt;/p&gt;

&lt;p&gt;Hashes and commitments do quieter but equally necessary work. They bind the ciphertext to the exact statement and public key so the encrypted secret authorizes only this spend. Without those bindings, an attacker could try to transplant ciphertext material between contexts or exploit ambiguity in what the encrypted secret actually authorizes. Much of the protocol engineering lives in these bindings, because the high-level idea is elegant and the low-level implementation is where thefts happen.&lt;/p&gt;

&lt;h2 id=&#34;how-the-flow-works-2&#34;&gt;How the Flow Works&lt;/h2&gt;

&lt;p&gt;The protocol begins off-chain. A committee runs distributed key generation and obtains a Bitcoin Schnorr public key together with secret signing material that no one party should know outright. The application designer also fixes the relation to be enforced and the concrete instance for this output. If the use case is proof-gated release, the instance might be a verification key, public inputs, and a commitment to the proof system being checked. If the use case is a recovery path, the instance might be a recovery relation encoded as a circuit.&lt;/p&gt;

&lt;p&gt;Next comes the expensive step. The protocol produces a witness-encrypting ciphertext tied to that instance and containing the signing material. The corresponding public key is placed in a normal Bitcoin output. On-chain, nothing reveals that the output is special. It looks like a standard key spend waiting for a standard Schnorr signature.&lt;/p&gt;

&lt;p&gt;Unlocking happens entirely off-chain until the last moment. Whoever learns a valid witness for the chosen relation runs the witness-decryption procedure on the ciphertext. If the witness is valid, the ciphertext yields the hidden signing secret. That party can then construct an ordinary Bitcoin spending transaction and sign it under the public key already committed on-chain. Once the transaction reaches Bitcoin, validation is immediate because Bitcoin only checks the Schnorr signature. There is no extra opcode and no proof verification inside Script. The challenge game never reaches the spend itself.&lt;/p&gt;

&lt;p&gt;Many Bitcoin constructions achieve expressive behavior by spreading the logic across multiple transactions with delays and monitoring requirements. PIPEs v2 compresses the authorization boundary into one binary fact: either the signing secret becomes available and the spend can happen, or it never does.&lt;/p&gt;

&lt;h2 id=&#34;what-security-depends-on-2&#34;&gt;What Security Depends On&lt;/h2&gt;

&lt;p&gt;&amp;#34;No soft fork required&amp;#34; hides the cost. The trust and security burden moves off-chain. The first assumption is witness encryption itself. If the AADP construction or its concrete encoding leaks the secret without a real witness, the scheme fails at once. Witness encryption is the sharpest edge in the design because it remains far more exotic than signatures and hashes, and stranger to most Bitcoin engineers than the proof systems they already discuss today.&lt;/p&gt;

&lt;p&gt;The second assumption is setup integrity. Distributed key generation has to ensure that no participant can walk away with the signing secret before the witness condition is met. Descriptions of PIPEs v2 often phrase this as a one-of-n committee honesty assumption, meaning at least one participant must follow the setup correctly. Committee honesty remains a meaningful trust assumption, and anyone comparing PIPEs v2 with native covenant opcodes should keep it in view.&lt;/p&gt;

&lt;p&gt;The third assumption is ordinary signature security, which is the least controversial part of the picture. If Schnorr itself becomes forgeable, every Taproot key spend has bigger problems than PIPEs. More interesting are the binding assumptions around commitments and statement encoding. A ciphertext must authorize this exact output under this exact condition. A loose binding can turn a clever construction into an expensive theft vector.&lt;/p&gt;

&lt;p&gt;Then there is the liveness assumption hidden inside performance. A condition that is theoretically decryptable but economically or operationally impossible to recover in time may still be useless. The current published estimates are best read with caution. Primary sources around PIPEs v2 discuss ciphertext sizes around 330 terabytes, determinant computations spread across roughly fifty large machines, and cloud costs around one to two hundred dollars for a single execution, all coming from author estimates without independent benchmarks. Discussions of future reductions toward roughly 100 gigabytes exist, but those numbers are aspirational in the material currently available. The basic on-chain cost is tiny. The off-chain bill is enormous.&lt;/p&gt;

&lt;h2 id=&#34;what-pipes-v2-can-actually-enforce-2&#34;&gt;What PIPEs v2 Can Actually Enforce&lt;/h2&gt;

&lt;p&gt;The term covenant carries more baggage than the construction can bear. PIPEs v2 enforces a binary authorization condition. Funds become spendable if the witness exists and remain unspendable if it does not. Proof-gated release fits that model well, yet the construction is narrower than the richer covenant proposals that directly constrain transaction structure.&lt;/p&gt;

&lt;p&gt;Once the secret key is recovered, the spender holds ordinary signing power over the output. Bitcoin sees an ordinary key spend. The construction therefore does not, by itself, force the post-recovery transaction to send coins to a prescribed script, maintain a fee rule, preserve a template, or obey some recursively constrained tree of descendants. Anyone calling PIPEs v2 a full covenant system is stretching the phrase beyond its useful meaning. Binary covenant is the more accurate description.&lt;/p&gt;

&lt;p&gt;The limitation follows directly from the design choice. PIPEs v2 relocates enforcement to key availability, and key availability answers one question only: may a valid signature exist?&lt;/p&gt;

&lt;h2 id=&#34;where-it-fits-2&#34;&gt;Where It Fits&lt;/h2&gt;

&lt;p&gt;The narrow scope still leaves room for serious applications. A vault can use PIPEs v2 for an escape path that activates only when a recovery witness is available. A bridge or rollup design can use it to gate finalization on a proof verifying for a published instance. An optimistic protocol can compress part of its dispute logic into a condition on key release, so the final on-chain effect becomes one ordinary spend whose existence tells observers that the off-chain condition was met.&lt;/p&gt;

&lt;p&gt;BitVM is the natural comparison. It keeps Bitcoin verification inside an optimistic game: a prover makes a claim and watchers challenge bad behavior as the protocol moves through its dispute path. PIPEs v2 aims at a different compression. The watcher logic moves off the spend path, and the decisive event becomes witness discovery plus key recovery. If that works, the chain sees only the ending.&lt;/p&gt;

&lt;p&gt;PIPEs v2 also fits zero-knowledge gated releases. Bitcoin never has to verify the proof system used elsewhere. The off-chain world only needs a relation whose witness can be encoded into the witness-encryption instance. That opens the door to proof systems or application logic that Bitcoin Script could never hope to express directly.&lt;/p&gt;

&lt;h2 id=&#34;comparison-to-other-paths-2&#34;&gt;Comparison to Other Paths&lt;/h2&gt;

&lt;p&gt;Compared with native covenant proposals such as CTV, TXHASH-style ideas, CSFS, or OP_VAULT, PIPEs v2 is economically inverted. Opcode-based covenants would put the complexity into consensus design and soft fork politics, then let every node enforce compact rules with cheap validation. PIPEs v2 avoids consensus change and pays for that avoidance with setup assumptions plus huge off-chain cryptographic state. If the goal is broad, cheap, expressive covenant functionality across everyday transactions, native opcodes still look like the cleaner engineering path.&lt;/p&gt;

&lt;p&gt;Compared with BitVM fraud proofs and garbled-circuit systems, PIPEs v2 exchanges interactivity for cryptographic heaviness. BitVM asks participants to stay online and push disputes through challenge windows. PIPEs v2 offers a more final-looking spend path because the chain only sees the ordinary signature. The price is a witness-encryption artifact that currently lives at absurd scale. BitVM&amp;#39;s burden is procedural. PIPEs v2&amp;#39;s burden is computational.&lt;/p&gt;

&lt;p&gt;Compared with pre-signed transaction trees, which already power practical vault ideas and channel constructions, PIPEs v2 is less rigid at the authorization boundary and weaker at output control. Pre-signing works with familiar assumptions and small artifacts, but every branch has to be prepared in advance and policy changes can become operationally awkward. PIPEs v2 can wait for a witness discovered later in time, which is a real gain. After key recovery, it stops constraining the transaction in the way a pre-signed tree can.&lt;/p&gt;

&lt;p&gt;The simplest alternative is trusted humans holding a threshold key and deciding when to sign. In many deployments that option remains more practical today. PIPEs v2 replaces committee discretion with a cryptographic gate. That trade looks best in applications that need cryptographic gating badly enough to justify the cost and the remaining faith placed in witness encryption.&lt;/p&gt;

&lt;h2 id=&#34;why-pipes-v2-matters-2&#34;&gt;Why PIPEs v2 Matters&lt;/h2&gt;

&lt;p&gt;PIPEs v2 enlarges Bitcoin&amp;#39;s design vocabulary because it shows that spending conditions need not live entirely inside Script. They can live upstream of Script, inside the question of whether a usable signing key can ever be obtained. The proposal&amp;#39;s real achievement is conceptual. Native opcodes remain the direct answer for cheap, expressive covenants. Optimistic systems remain the answer for many constructions available under today&amp;#39;s assumptions. PIPEs v2 occupies a narrower territory where single-transaction proof-gated authorization is valuable enough to justify a mountain of off-chain cryptography.&lt;/p&gt;

&lt;p&gt;The future of witness encryption will decide whether that territory grows. If the primitive gets smaller and better understood, PIPEs v2 could become a practical tool for a narrow class of high-value contracts. If it does not, the proposal will still have done something useful. It showed that control over spendability can be pushed one layer deeper than most Bitcoin discussions assume, into the problem of key availability itself.&lt;/p&gt;
 &lt;/blockquote&gt;
    </content>
    <updated>2026-04-21T12:31:47Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsr5z0m3yflw7nvj238r97mqs550d263jsxhh03gjlqn9vezmnndhcpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuqk26yk</id>
    
      <title type="html">Wise words</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsr5z0m3yflw7nvj238r97mqs550d263jsxhh03gjlqn9vezmnndhcpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuqk26yk" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqst7uyn3vssesxexraqj8anqpfdhauah29w02n5jyhekvm6xmar8qcpzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtcneckqn&#39;&gt;nevent1q…ckqn&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Wise words
    </content>
    <updated>2026-04-21T06:35:47Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqs06w76q45gclqkr9uvc4337zz3fefjqyylhhphn6j5ce6f4z88fkgpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuaq43pe</id>
    
      <title type="html">Yes that one goes even further, wild.</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqs06w76q45gclqkr9uvc4337zz3fefjqyylhhphn6j5ce6f4z88fkgpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuaq43pe" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsxnxu3hw9jyu99qgt2meqptped8ap4vw2dajz2jm762rlrcvj44gspzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtc92nnpk&#39;&gt;nevent1q…nnpk&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Yes that one goes even further, wild.
    </content>
    <updated>2026-04-20T14:09:14Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsvprk97fcmwv0e8fqcw20vukzvxn2fghqgrg7axqar0u3f0lq5jzgpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuctu37k</id>
    
      <title type="html">We&amp;#39;re building a little something... #nevent1q…kfz3</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsvprk97fcmwv0e8fqcw20vukzvxn2fghqgrg7axqar0u3f0lq5jzgpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuctu37k" />
    <content type="html">
      We&amp;#39;re building a little something...&lt;blockquote class=&#34;border-l-05rem border-l-strongpink border-solid&#34;&gt;&lt;div class=&#34;-ml-4 bg-gradient-to-r from-gray-100 dark:from-zinc-800 to-transparent mr-0 mt-0 mb-4 pl-4 pr-2 py-2&#34;&gt;quoting &lt;br/&gt;&lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Article&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/nevent1qqsdsd3eu0232pe5cp4gjpn8a3vx3drlv4u3hzhvws4wls09564c8pcpzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtczyzdvwdvydnquq3j5re5wvz2nlc56s0an6f4dutns2nkz2apfx0rlgqcyqqqqqqg0zkfz3&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;nevent1q…kfz3&lt;/a&gt;&lt;/span&gt; &lt;/div&gt; Introducing internet privacy foundation.&lt;br/&gt;&lt;br/&gt;We build the infrastructure that protects privacy online: open protocols and permissionless tools.&lt;br/&gt;&lt;br/&gt;We&#39;re a 501(c)(3) nonprofit. Donations are tax-deductible for US donors.&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;https://ipf.dev&#34;&gt;https://ipf.dev&lt;/a&gt;&lt;br/&gt;&lt;br/&gt; &lt;img src=&#34;https://blossom.primal.net/cdfc05464933bab8a654d1a390e9e215c6e2a700774d765e54282076c3b11219.png&#34;&gt;  &lt;/blockquote&gt;
    </content>
    <updated>2026-04-20T14:08:52Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqs227svwyv4gmn79mhsj3knxwkgw695n3y8dazzhpkpal06y2utg5cpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhue452ac</id>
    
      <title type="html">Excited to get this launched!</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqs227svwyv4gmn79mhsj3knxwkgw695n3y8dazzhpkpal06y2utg5cpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhue452ac" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsdsd3eu0232pe5cp4gjpn8a3vx3drlv4u3hzhvws4wls09564c8pcpzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtc9r7unc&#39;&gt;nevent1q…7unc&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Excited to get this launched!
    </content>
    <updated>2026-04-20T14:08:29Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqszjnnjaeuyp9893mhdsffkkccpd2wjk067c45fyc5a9fqa6lsxr5gpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhur2tatq</id>
    
      <title type="html">Yes, use TEEs for AI inference for now.</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqszjnnjaeuyp9893mhdsffkkccpd2wjk067c45fyc5a9fqa6lsxr5gpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhur2tatq" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs85w5t3hpn3420hzf35sx7ugd7ta3wetyqxrzntdxea0v9dy2vh9spzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtcpvqzwz&#39;&gt;nevent1q…qzwz&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Yes, use TEEs for AI inference for now.
    </content>
    <updated>2026-04-20T13:01:16Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsdwln0n5zl7l4fuufn5v8cnkdsgxyzxhw2udgj7c3uj27085a25agpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuk3smfa</id>
    
      <title type="html">Yes. Might be my #1 book recommendation for cypherpunks.</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsdwln0n5zl7l4fuufn5v8cnkdsgxyzxhw2udgj7c3uj27085a25agpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuk3smfa" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsx4u548llg9h32uye86uzptf3ksw737eps3ph3scefmmu5xhk47sqpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhs5cqkcd&#39;&gt;nevent1q…qkcd&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Yes.&lt;br/&gt;Might be my #1 book recommendation for cypherpunks.
    </content>
    <updated>2026-04-20T13:00:45Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsqwjdksjpp858736e3wxfqf35y3t69tuxzz85r9u29kw4ff5dgv9gpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuucf3vk</id>
    
      <title type="html">Awesome, a rare find! That looks to be the very first print ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsqwjdksjpp858736e3wxfqf35y3t69tuxzz85r9u29kw4ff5dgv9gpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuucf3vk" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs0h7qumnvg0n04rut9cux5s3vjmswxwqhylpne44c7zpjnkkwl8pqpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhs0t9sfc&#39;&gt;nevent1q…9sfc&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Awesome, a rare find!&lt;br/&gt;That looks to be the very first print edition, check if its the same text as this initial online edition. &lt;a href=&#34;https://anarplex.sirion.io/hosted/files/A_Lodging_of_Wayfaring_Men.pdf&#34;&gt;https://anarplex.sirion.io/hosted/files/A_Lodging_of_Wayfaring_Men.pdf&lt;/a&gt;
    </content>
    <updated>2026-04-20T13:00:04Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqswpgmnp8nx48r60x9je9e4vnyqp0d70wgn8yls0l8w8q82fashftcpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhucx8s54</id>
    
      <title type="html">Yeah, we&amp;#39;re fat from running llms through homomorphic ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqswpgmnp8nx48r60x9je9e4vnyqp0d70wgn8yls0l8w8q82fashftcpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhucx8s54" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs85w5t3hpn3420hzf35sx7ugd7ta3wetyqxrzntdxea0v9dy2vh9spzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtcpvqzwz&#39;&gt;nevent1q…qzwz&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Yeah, we&amp;#39;re fat from running llms through homomorphic encryption.&lt;br/&gt;You can now do wallet queries which is already impressive. Eventually I&amp;#39;d love to use it for nostr event queries, but that&amp;#39;s also still far away.
    </content>
    <updated>2026-04-20T05:21:25Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqsyhujqyp4w0hxceknk9mdfvnq9teynafjte0sh3ttp2fkh88q3jycpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuft9u88</id>
    
      <title type="html">Three architectural families have broken an assumption that was ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqsyhujqyp4w0hxceknk9mdfvnq9teynafjte0sh3ttp2fkh88q3jycpremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhuft9u88" />
    <content type="html">
      Three architectural families have broken an assumption that was treated as a law of cloud architecture for two decades: that the machine running a computation must see the data the computation runs on. Homomorphic encryption operates on ciphertexts, secure multi-party computation distributes the work across non-colluding participants, and trusted execution environments isolate the work inside a hardware enclave opaque to the machine&amp;#39;s owner. The privacy architecture of the next decade will be built on their compositions. &lt;blockquote class=&#34;border-l-05rem border-l-strongpink border-solid&#34;&gt;&lt;div class=&#34;-ml-4 bg-gradient-to-r from-gray-100 dark:from-zinc-800 to-transparent mr-0 mt-0 mb-4 pl-4 pr-2 py-2&#34;&gt;quoting &lt;br/&gt;&lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Article&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/naddr1qqgrscn9xpsk2vtyvdjrzdfnv4jxxq3qklkk3vrzme455yh9rl2jshq7rc8dpegj3ndf82c3ks2sk40dxt7qxpqqqp65wa4wja5&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;naddr1qq…wja5&lt;/a&gt;&lt;/span&gt; &lt;/div&gt; 
&lt;h2 id=&#34;verification-vs-execution-2&#34;&gt;Verification vs Execution&lt;/h2&gt;

&lt;p&gt;Zero-knowledge proofs operate on a result that already exists. Some machine has performed the computation on inputs that were visible to some party. A zero-knowledge proof certifies the correctness of what was computed and says nothing about who saw the inputs along the way. Zero-knowledge is the verification primitive.&lt;/p&gt;

&lt;p&gt;Computing on secrets is the execution primitive. It answers a different question: can a computation be performed when no single party is permitted to see the inputs? The answer is yes, and it has only become practical within the last decade. Fully homomorphic encryption performs arithmetic directly on ciphertexts. Secure multi-party computation splits a computation across participants so that no participant sees the whole input. Trusted execution environments run computation inside a hardware enclave opaque to the operating system and to the machine&amp;#39;s owner.&lt;/p&gt;

&lt;p&gt;The two primitives compose naturally. A pipeline that protects privacy end to end typically uses computing on secrets to operate on private data and zero-knowledge to prove the result was produced honestly. Verification and execution are complementary halves of the same problem.&lt;/p&gt;

&lt;p&gt;Consider a voting system in which each voter&amp;#39;s choice must remain private and the tallied result must be publicly verifiable. The inputs (individual ballots) must stay secret. The output (the tally) must be computable and verifiable. Plain encryption handles secrecy at rest and leaves secrecy in use untouched. If ballots are encrypted and sent to a counting service, the counting service must decrypt them to count them, which means at least one party has access to every individual ballot. The architecture has moved the problem from transport to a processing node, and left it there.&lt;/p&gt;

&lt;p&gt;Zero-knowledge proofs handle verifiability of the output while leaving the privacy of the inputs to some other mechanism. A zk-proof can certify that a tally was computed correctly from some set of ballots. The proof ensures only that the tally corresponds to them, leaving open the question of who saw the ballots along the way. Privacy of inputs is a separate requirement. Computing on secrets handles it directly. Homomorphic addition lets the counting service sum ballots in ciphertext form without decrypting any individual ballot; the final tally ciphertext is decrypted once by a distributed threshold of key holders. Multi-party computation distributes the counting across nodes so that no single node sees any voter&amp;#39;s choice. A trusted execution environment runs the count inside an enclave that refuses to disclose its memory to any external party, and provides an attestation that the canonical counting software ran on the expected inputs. Ballots stay private through computing on secrets; the tally is publicly verifiable through zero-knowledge. Neither family alone solves the problem. Their combination does.&lt;/p&gt;

&lt;h2 id=&#34;homomorphic-encryption-arithmetic-on-ciphertext-2&#34;&gt;Homomorphic Encryption: Arithmetic on Ciphertext&lt;/h2&gt;

&lt;p&gt;Homomorphic encryption permits operations on ciphertexts that correspond to operations on the underlying plaintexts. If Enc(a) is the encryption of plaintext a, and Enc(b) is the encryption of b, then a homomorphic addition produces a ciphertext whose decryption equals a &#43; b, without any party learning either value in plaintext form. Stated plainly the construction sounds close to impossible, and it is achievable only under specific mathematical assumptions.&lt;/p&gt;

&lt;p&gt;Early schemes supported one operation only. RSA supports homomorphic multiplication as a side effect its designers did not advertise. The Paillier cryptosystem supports homomorphic addition. Partially homomorphic schemes have been used for narrow applications for decades, including e-voting and private information retrieval.&lt;/p&gt;

&lt;p&gt;Craig Gentry&amp;#39;s 2009 dissertation gave the first construction of a scheme capable of both addition and multiplication on arbitrary circuits. The original construction was roughly a billion times slower than the equivalent plaintext computation, which ruled it out for any serious application. What mattered was the proof of existence itself. Fifteen years of engineering since have cut the overhead by roughly four orders of magnitude, moving narrow applications into feasibility while keeping general-purpose computation out of reach.&lt;/p&gt;

&lt;p&gt;Present deployments fall into categories whose common property is that narrow usefulness beats broad slowness. Encrypted machine-learning inference lets a client send an encrypted input to a service and receive an encrypted output without the service seeing the input; the applications include encrypted medical diagnosis and financial-risk scoring. Private information retrieval lets a client query a database without revealing which record it wants. Encrypted databases let a service host encrypted customer data and answer queries over it without decrypting. Homomorphic encryption still falls short of fully general-purpose computation at acceptable speed. The overhead remains large enough that applications are chosen for their tolerance for latency and their limited complexity.&lt;/p&gt;

&lt;p&gt;The structural claim underneath any specific application is simpler. Homomorphic encryption breaks the assumption that the service running a computation must see the data on which the computation runs. That assumption had been treated as a law of cloud architecture for two decades. Homomorphic encryption denies it. The service and the user become parties to an exchange in which the service performs a function and the user retains epistemic ownership of the inputs. The contract structure that was previously infeasible is now infeasible only at certain workload sizes, and the set of feasible workloads expands each year.&lt;/p&gt;

&lt;h2 id=&#34;secure-multi-party-computation-2&#34;&gt;Secure Multi-Party Computation&lt;/h2&gt;

&lt;p&gt;Multi-party computation (MPC) addresses a different problem with a different architecture. Multiple parties each hold private inputs; they wish to jointly compute a function of those inputs and to learn only the output. No party learns any other party&amp;#39;s input beyond what the output itself reveals.&lt;/p&gt;

&lt;p&gt;The classical constructions rely on a small family of cryptographic primitives. Secret sharing, studied by Shamir in the 1970s, splits a secret into shares such that any threshold number of shares reconstructs it and any smaller subset reveals nothing. Garbled circuits, introduced by Yao, let two parties evaluate a Boolean circuit where one party encrypts the circuit and the other evaluates the encryption; each gate&amp;#39;s behavior is correct while its intermediate values stay hidden. Oblivious transfer lets a party receive one of several values chosen by another party without the sender learning which value was chosen.&lt;/p&gt;

&lt;p&gt;The single most successful MPC deployment is threshold signing, and it has reached institutional scale. A threshold signature scheme distributes the private key across multiple parties such that signing requires a threshold of them to cooperate; no subset below the threshold can produce a valid signature. No party ever holds the full private key, so a breach of any individual party does not compromise the system. Fireblocks, the largest institutional custody provider, operates threshold-signed wallets for roughly two thousand customers including major banks and payment processors. The architecture is the basis on which several regulated institutions extended credit into the crypto-asset space at all, because the alternative of a single-party custodian required levels of counterparty trust they were not prepared to extend.&lt;/p&gt;

&lt;p&gt;Two Schnorr-based constructions have made threshold signing directly visible on Bitcoin. MuSig2, specified in BIP 327, aggregates an arbitrary number of signers into a single public key and a single signature indistinguishable from a normal single-party Schnorr signature. FROST extends the same approach to t-of-n threshold signing, so any t of the n key shareholders suffice to produce a signature and the protocol tolerates up to n minus t shares going offline or hostile without losing liveness. Both became usable on Bitcoin with Taproot activation in November 2021. Chain analysis cannot distinguish a ten-of-ten MuSig2 transaction from a single-key transaction, nor a three-of-five FROST spend from either. The architecture delivers the distributed-trust guarantee of MPC and the base-layer privacy of Bitcoin in one construction.&lt;/p&gt;

&lt;p&gt;MPC distributes trust across parties who do not trust one another, and the distributed trust produces a cryptographic guarantee that no single party can violate. This is a different guarantee from what homomorphic encryption provides. Homomorphic encryption lets one party execute a computation on another party&amp;#39;s private input. Multi-party computation lets several parties execute a computation on their own private inputs, with no party learning any other party&amp;#39;s input. The two primitives solve complementary problems, and many real systems combine them. The cryptographic guarantee replaces a coordination cost that was previously priced into every cooperative computation: the cost of establishing enough trust to share the inputs. When that cost falls, cooperation expands to cases that were previously uneconomic.&lt;/p&gt;

&lt;h2 id=&#34;trusted-execution-environments-2&#34;&gt;Trusted Execution Environments&lt;/h2&gt;

&lt;p&gt;Trusted execution environments (TEEs) take a different architectural path. Where cryptographic means prevent the computing party from seeing the inputs, a TEE achieves the same outcome through hardware isolation. A region of memory inside the processor is marked as an enclave; code running inside the enclave decrypts inputs and produces outputs, while any code running outside the enclave (the operating system included, and every other process on the host alongside it) cannot observe enclave memory. An attestation mechanism lets a remote party verify that a specific piece of software is running inside an authentic enclave on an authentic processor.&lt;/p&gt;

&lt;p&gt;TEE deployment at consumer scale breaks into two patterns. The first is the device-local enclave. ARM TrustZone on Android phones and Apple&amp;#39;s Secure Enclave on iOS devices, together with the TPM 2.0 specification that ships on every modern PC, place a hardened execution environment inside hundreds of millions of consumer devices, where it holds biometric templates, payment-credential keys, disk-encryption keys, and attestation material. The device-local enclave is the oldest and most widely deployed consumer TEE pattern, and it is the least controversial because the user and the enclave live in the same physical device under the same owner.&lt;/p&gt;

&lt;p&gt;The second pattern is the remote attested enclave. A consumer device sends a request to a cloud-operated server whose hardware and software can be cryptographically attested and whose code is published for inspection. Each server&amp;#39;s software is cryptographically measured. The measurement is published, and the client device refuses to send a request to any server whose measurement does not match a published image. The servers are built to hold no persistent state beyond the request&amp;#39;s lifetime, so that even a full compromise of a server at a later time yields no earlier request&amp;#39;s inputs. Signal&amp;#39;s Private Contact Discovery was an early instance of this pattern. Apple Private Cloud Compute, introduced in June 2024 to handle Apple Intelligence workloads exceeding on-device capacity, is the most consumer-visible deployment to date and has been published in the most architectural detail.&lt;/p&gt;

&lt;p&gt;The promise of the architecture is that a cloud service can be operated in a way that the service itself cannot observe user inputs, which is the same structural claim as homomorphic encryption achieved through different means. The limit is that the guarantee depends on the provider&amp;#39;s honest publication of server images and on the assumption that no side-channel attack breaks the enclave&amp;#39;s hardware isolation. Trust is reduced to a narrower surface, and still required on that surface. The user has traded trust in a provider&amp;#39;s operational practices for trust in its hardware-software supply chain and attestation discipline. Whether the new trust assumption is preferable depends on the user&amp;#39;s model of the provider&amp;#39;s incentives.&lt;/p&gt;

&lt;p&gt;TEE-based privacy scales the most easily today. Homomorphic encryption remains expensive for general computation. Multi-party computation requires at least two non-colluding parties, and organizing them is a social problem as much as a technical one. TEEs run at plaintext speeds on general-purpose workloads, and the cryptographic overhead is limited to attestation and to the isolation boundary. The primitive fits the cloud-service business model almost exactly. Its history of side-channel attacks against SGX, however, shows that the hardware-integrity assumption remains actively contested. The Spectre and Meltdown families, along with the successor vulnerabilities published every year since, show that the contested boundary extends across the entire processor design. A TEE-based privacy claim must be evaluated against the specific hardware vendor&amp;#39;s track record, the specific attestation architecture it uses, the specific software image published for verification, and the specific side-channel posture of the CPU on which the enclave runs. TEEs are useful when the alternative is no privacy guarantee at all, and they are inferior when the alternative is a cryptographic primitive that does not require trusting hardware.&lt;/p&gt;

&lt;h2 id=&#34;the-edges-pir-and-differential-privacy-2&#34;&gt;The Edges: PIR and Differential Privacy&lt;/h2&gt;

&lt;p&gt;Two further primitives complete the picture at the edges of the design space.&lt;/p&gt;

&lt;p&gt;Private Information Retrieval lets a client retrieve an item from a server&amp;#39;s database without the server learning which item was retrieved. The query index is the private input; the item is the output. The server performs a computation over its entire database that depends cryptographically on the query but preserves no observable trace of which element the query selected. Information-theoretic PIR replicates the database across multiple non-colluding servers; computational PIR operates with a single server and relies on additively homomorphic or fully homomorphic encryption. The cost is that every query must touch every record in the database, which is why computational PIR took two decades of engineering to become practical. The applications that matter are the ones in which the query is itself the information. Bitcoin light clients are the clearest case: BIP 37 bloom filters leak which addresses a wallet cares about, and BIP 158 compact block filters leak less but still allow traffic analysis. A PIR-based light client would let a wallet fetch block filters and transaction data without telling the serving node which addresses or transactions it is watching.&lt;/p&gt;

&lt;p&gt;Differential privacy is a statistical guarantee about aggregated data releases. It operates on the privacy of individuals whose records contribute to a released aggregate, a different concern from protecting individual records during a live computation. The mechanism is randomization: a differentially private release looks essentially the same whether any specific individual&amp;#39;s record was included. An adversary who sees the output cannot tell whether any particular record was present, up to a multiplicative factor parametrized by epsilon. Small epsilon gives strong privacy at the cost of accuracy. The U.S. Census Bureau applied this to the 2020 redistricting release through the TopDown Algorithm. Apple uses local differential privacy for aggregate telemetry on iOS. Differential privacy composes across queries: two releases at epsilon₁ and epsilon₂ reveal information at combined level epsilon₁ plus epsilon₂, which means the privacy budget is a scarce resource that real deployments must allocate. The guarantee operates on the individual&amp;#39;s contribution to an inference and leaves the inference itself visible; a DP-released statistic will still reveal that everyone in a group buys a product, and any individual known to be in that group will be implicated by the population-level pattern.&lt;/p&gt;

&lt;h2 id=&#34;resistance-at-the-compute-layer-2&#34;&gt;Resistance at the Compute Layer&lt;/h2&gt;

&lt;p&gt;A system&amp;#39;s security is measured by the cost required to compromise it. Computing on secrets extends that measurement to the compute layer of the stack, which had previously been free to observe.&lt;/p&gt;

&lt;p&gt;Homomorphic encryption&amp;#39;s resistance surface is the set of cryptographic assumptions underlying the specific scheme in use. The assumption set is the same one underlying the post-quantum standards: learning-with-errors for lattice schemes, the hardness of decoding random linear codes for code-based schemes. A break in a specific scheme would affect the applications using that scheme; it would not break the family, because alternative schemes under different assumptions exist.&lt;/p&gt;

&lt;p&gt;Multi-party computation&amp;#39;s resistance surface is the threshold model. The guarantee holds if and only if fewer than the threshold number of participants collude. A threshold must be chosen large enough that collusion is infeasible, and the participants must be chosen to have diverse incentives. The construction binds together through the social structure of the participant set as much as through the cryptographic math.&lt;/p&gt;

&lt;p&gt;Trusted execution environments have the largest resistance surface. Hardware vendor integrity, attestation mechanism correctness, side-channel resistance, and software-image verification are each separate assumptions, and the composed guarantee is the conjunction of all of them. A break in any single assumption compromises the whole. The empirical track record includes multiple documented side-channel attacks, and the architectural response has been to rebuild the hardware where software patching was insufficient. History shows both that the primitive is contestable and that the contesting process is active.&lt;/p&gt;

&lt;p&gt;Compositions inherit this logic. An attacker must compromise each primitive in the composition, and the compromise cost compounds. The defender&amp;#39;s architectural choice is the selection of primitives whose compositions raise the compromise cost above the adversary&amp;#39;s willingness to pay. Computing on secrets promises something narrower than invulnerability and more useful than cryptographic folklore: the cost curve of observation now bends upward at the execution layer, which is the layer the adversary had previously assumed was free. That bending is the principal achievement of the last decade of cryptographic and hardware-security engineering, and it is the architectural basis on which the privacy-preserving applications of the next decade will be built.&lt;/p&gt;
 &lt;/blockquote&gt;
    </content>
    <updated>2026-04-19T14:25:53Z</updated>
  </entry>

  <entry>
    <id>https://yabu.me/nevent1qqs8n74v4vpnjtywnfclsq2kscj6h6tdxdte7nfe7npsprcep5weuespremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhumsgtxu</id>
    
      <title type="html">In theory yes, but in practice the code is all mangled with nostr ...</title>
    
    <link rel="alternate" href="https://yabu.me/nevent1qqs8n74v4vpnjtywnfclsq2kscj6h6tdxdte7nfe7npsprcep5weuespremhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5pzpdlddzcx9hntfgfw28749pwpu8sw6rj39rx6jw43rdq4pd276vhumsgtxu" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsqqqr97xs596s4wgnn80ht0mrh4jxarwjfslshmrtzx5pvun7grmcpy3mhxue69uhhyetvv9ujuar0washyernd35kyetjw3ujucm0d5hkjmnzdauqfafk8k&#39;&gt;nevent1q…fk8k&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;In theory yes, but in practice the code is all mangled with nostr deeply, specifically would be great to also support FIPS.&lt;br/&gt;&lt;br/&gt;Here&amp;#39;s some thoughts on the new architecture. &lt;br/&gt;&lt;a href=&#34;https://github.com/marmot-protocol/whitenoise-meta/blob/c387af9d1ad0d543112a9569ab04cac5fa188358/Engineering/marmot-architecture/target-architecture.md&#34;&gt;https://github.com/marmot-protocol/whitenoise-meta/blob/c387af9d1ad0d543112a9569ab04cac5fa188358/Engineering/marmot-architecture/target-architecture.md&lt;/a&gt;
    </content>
    <updated>2026-04-17T06:39:39Z</updated>
  </entry>

</feed>