<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <updated>2023-06-09T12:22:02Z</updated>
  <generator>https://nostr.ae</generator>

  <title>Nostr notes by Braydon Fuller [ARCHIVE]</title>
  <author>
    <name>Braydon Fuller [ARCHIVE]</name>
  </author>
  <link rel="self" type="application/atom+xml" href="https://nostr.ae/npub1fx2eyw7avet7dut0slazcehwvrrlhjp2u9jc9zd92l7nexpxeahs4xxtaa.rss" />
  <link href="https://nostr.ae/npub1fx2eyw7avet7dut0slazcehwvrrlhjp2u9jc9zd92l7nexpxeahs4xxtaa" />
  <id>https://nostr.ae/npub1fx2eyw7avet7dut0slazcehwvrrlhjp2u9jc9zd92l7nexpxeahs4xxtaa</id>
  <icon></icon>
  <logo></logo>




  <entry>
    <id>https://nostr.ae/nevent1qqsdmq84ftja096c30chzaz3gvefvfvhjch8k8nhtn6v58j45w8elcszypyety3mm4n90eh3d7rl5trxaesv077g9tsktq5f54tl60ycym8k7993hvf</id>
    
      <title type="html">📅 Original date posted:2020-05-08 📝 Original message:On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsdmq84ftja096c30chzaz3gvefvfvhjch8k8nhtn6v58j45w8elcszypyety3mm4n90eh3d7rl5trxaesv077g9tsktq5f54tl60ycym8k7993hvf" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsq20q6j2nd78xzeultgl8xx4v8jchrqt5927a7y5rf48ppz45skrcrvsqrs&#39;&gt;nevent1q…sqrs&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2020-05-08&lt;br/&gt;📝 Original message:On 5/8/20 1:01 PM, Keagan McClelland wrote:&lt;br/&gt;&lt;br/&gt;&amp;gt;&amp;gt; The RPC interface in Bitcoin Core, and others, is not great for this&lt;br/&gt;&amp;gt;&amp;gt; because it exposes a lot of functionality that isn&amp;#39;t necessary and&lt;br/&gt;&amp;gt;&amp;gt; introduces risks.&lt;br/&gt;&amp;gt; This is actually somewhat my point. If the RPC interface was good for this&lt;br/&gt;&amp;gt; and *didn&amp;#39;t* introduce risks, we could just use that and be done with it.&lt;br/&gt;&amp;gt; But I&amp;#39;m finding there are many use cases that you want to have low cost&lt;br/&gt;&amp;gt; ways to serve peer services to people whom you have given explicit&lt;br/&gt;&amp;gt; permission, but they shouldn&amp;#39;t have full ability to administrate the node.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Perhaps I wasn&amp;#39;t explicit in my previous note but what I mean is that there&lt;br/&gt;&amp;gt; seems to be a demand for something *in between* a peer interface, and an&lt;br/&gt;&amp;gt; owner interface. I have little opinion as to whether this belongs in core&lt;br/&gt;&amp;gt; or not, I think there are much more experienced folks who can weight in on&lt;br/&gt;&amp;gt; that, but without something like this, you cannot limit your exposure for&lt;br/&gt;&amp;gt; serving something like bip157 filters without removing your own ability to&lt;br/&gt;&amp;gt; make use of some of those same services.&lt;br/&gt;&lt;br/&gt;An idea I was thinking about was having three ports for a full node:&lt;br/&gt;&lt;br/&gt;1) Consensus bitcoin protocol. This is the existing peer-to-peer&lt;br/&gt;protocol without additional services.&lt;br/&gt;2) Wallet services protocol. Adds additional functionality for wallets.&lt;br/&gt;For example bloom filtering, compact block filters, and potentially&lt;br/&gt;output and address indexes for electrum-like support. It&amp;#39;s nearly&lt;br/&gt;identical to the consensus peer-to-peer protocol, supporting the same&lt;br/&gt;wire format. As it&amp;#39;s on another port, various middleware could be added&lt;br/&gt;to support various authentication and transports.&lt;br/&gt;3) Control interface. This is the existing JSON-RPC interface, without&lt;br/&gt;all wallet related RPC methods.
    </content>
    <updated>2023-06-07T18:24:24Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsv06cagj0ter7gn6lw44k857hweshzvktgf60n2a3t5vtfwnexueczypyety3mm4n90eh3d7rl5trxaesv077g9tsktq5f54tl60ycym8k7few3jr</id>
    
      <title type="html">📅 Original date posted:2020-05-08 📝 Original message:On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsv06cagj0ter7gn6lw44k857hweshzvktgf60n2a3t5vtfwnexueczypyety3mm4n90eh3d7rl5trxaesv077g9tsktq5f54tl60ycym8k7few3jr" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsgfq7a9ycpfp2734wjwyr4lfkkua4l52jmvu92ezl75r3v4zg4zsswwqff3&#39;&gt;nevent1q…qff3&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2020-05-08&lt;br/&gt;📝 Original message:On 5/6/20 9:07 PM, Keagan McClelland wrote:&lt;br/&gt;&lt;br/&gt;&amp;gt; I think that one of the solutions here is to have light clients choose&lt;br/&gt;&amp;gt; their full node tethers explicitly. Even if you think it is unrealistic to&lt;br/&gt;&amp;gt; have everyone run their own node (fwiw, I don’t), there is still a trust&lt;br/&gt;&amp;gt; model where you can pick your trusted source.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; This way you could have many light clients working off of a family node,&lt;br/&gt;&amp;gt; and the peer services could be limited to some sort of “authenticated”&lt;br/&gt;&amp;gt; peers. Perhaps this is better accomplished over the RPC interface in Core,&lt;br/&gt;&amp;gt; but the idea is to have some sort of peer service model between “full&lt;br/&gt;&amp;gt; public” and “owner only”. This limits the amount of costs that can be&lt;br/&gt;&amp;gt; properly externalized, without exposing risk of consensus capture by&lt;br/&gt;&amp;gt; economically weighty institutions.&lt;br/&gt;&lt;br/&gt;The RPC interface in Bitcoin Core, and others, is not great for this&lt;br/&gt;because it exposes a lot of functionality that isn&amp;#39;t necessary and&lt;br/&gt;introduces risks. For example the `gettxoutsetinfo` can start a very&lt;br/&gt;intensive CPU and disk I/O task. There are several others, for example:&lt;br/&gt;`stop`, `addnode`, `clearbanned`, `setban`, and etc. Furthermore reading&lt;br/&gt;full raw blocks isn&amp;#39;t very efficient with JSON. Electrum servers (e.g&lt;br/&gt;electrs) for example read blocks from disk instead and use the RPC&lt;br/&gt;interface to sync headers. Though, Electrum servers also have a risk of&lt;br/&gt;DoS with addresses that have many transactions, see the `--txid-limit`&lt;br/&gt;option [2].&lt;br/&gt;&lt;br/&gt;[1]:&lt;br/&gt;&lt;a href=&#34;https://github.com/bitcoin/bitcoin/blob/5b24f6084ede92d0f493ff416b4726245140b2c1/src/rpc/blockchain.cpp#L954-L956&#34;&gt;https://github.com/bitcoin/bitcoin/blob/5b24f6084ede92d0f493ff416b4726245140b2c1/src/rpc/blockchain.cpp#L954-L956&lt;/a&gt;&lt;br/&gt;[2]:&lt;br/&gt;&lt;a href=&#34;https://github.com/romanz/electrs/blob/f0a7a325af495ecbc152c0866550dc300011779b/src/query.rs#L284-L289&#34;&gt;https://github.com/romanz/electrs/blob/f0a7a325af495ecbc152c0866550dc300011779b/src/query.rs#L284-L289&lt;/a&gt;
    </content>
    <updated>2023-06-07T18:24:24Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqswqdgkddsd0u092m9sl6tg9n7mme5wpfzppus7sysp3t5e3f9q6jgzypyety3mm4n90eh3d7rl5trxaesv077g9tsktq5f54tl60ycym8k76thq9t</id>
    
      <title type="html">📅 Original date posted:2019-10-14 📝 Original message:On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqswqdgkddsd0u092m9sl6tg9n7mme5wpfzppus7sysp3t5e3f9q6jgzypyety3mm4n90eh3d7rl5trxaesv077g9tsktq5f54tl60ycym8k76thq9t" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqszuccalyx4qjjlcn5vfqd9qlmnyyuajjfg2gkxt86qkfx6q2857tcehr409&#39;&gt;nevent1q…r409&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2019-10-14&lt;br/&gt;📝 Original message:On 10/12/19 10:56 AM, Joachim Strömbergson via bitcoin-dev wrote:&lt;br/&gt;&lt;br/&gt;&amp;gt; [...] First you provide proof of your best block height via coinbase [...]&lt;br/&gt;&lt;br/&gt;So I don&amp;#39;t think you can use the height in the coinbase for that&lt;br/&gt;purpose, as it&amp;#39;s not possible to validate it without the previous&lt;br/&gt;headers. That&amp;#39;s common for more than just the height.&lt;br/&gt;&lt;br/&gt;&amp;gt; [...] to generate much longer chain with superslow timestamp increase (~5 blocks in 1 second) without increasing difficulty (i.e. staying at min. diff.). [...]&lt;br/&gt;&lt;br/&gt;In that case, it would take about 7 minutes of block time seconds for&lt;br/&gt;the next retarget period, every 2016 blocks, and the difficulty would&lt;br/&gt;adjust. The difficulty would adjust in that case as if 2 weeks of blocks&lt;br/&gt;had been mined in 7 minutes. For the difficulty to remain the same the&lt;br/&gt;time between blocks needs to be 10 minutes.
    </content>
    <updated>2023-06-07T18:21:03Z</updated>
  </entry>

</feed>