<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
        <title>wiger.eth</title>
        <link>https://paragraph.com/@wiger</link>
        <description>出山, 大杀四方</description>
        <lastBuildDate>Thu, 30 Apr 2026 14:20:54 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>en</language>
        <image>
            <title>wiger.eth</title>
            <url>https://storage.googleapis.com/papyrus_images/1181ed9e826dec8eed13316d8aa55288c5bd32ede8d13b2250af3409af4f046a.png</url>
            <link>https://paragraph.com/@wiger</link>
        </image>
        <copyright>All rights reserved</copyright>
        <item>
            <title><![CDATA[Smooth 模块化区块链系列教程]]></title>
            <link>https://paragraph.com/@wiger/smooth-5</link>
            <guid>2EcHDivYfMTBQLdwA0PI</guid>
            <pubDate>Fri, 14 Oct 2022 18:40:06 GMT</pubDate>
            <description><![CDATA[模块化词汇科普: https://mirror.xyz/wiger.eth/fFhMtl3QqJqpe-mrqGWSFWMw8F-eZU9hbUFskIbsLvw模块化区块链介绍: https://mirror.xyz/wiger.eth/cRxQWhqCmn3DH0v6olleflV886bW63DsbK8eiUUtcFg数据可用性采样: https://mirror.xyz/wiger.eth/sqxu0qWWyS6TmxH89qKlmDGkdjh2g-HseZLygIWBOwQ命名空间默克尔树: https://mirror.xyz/wiger.eth/WkJKoUoqgROOx_orWrCETZSy5vJfb-Fyo-r9uP8bGZYCelestia App: https://mirror.xyz/wiger.eth/tlAFZdpyReMXuEHmI0oKiU_8CI9MNJDQGWDjEoGYurESovereign Rollup: https://mirror.xyz/wiger.eth/Y6LzpgtUaXY9QgjZ-IWocSVeFNjgMdt2BLVAVv...]]></description>
            <content:encoded><![CDATA[<ol><li><p>模块化词汇科普:</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://mirror.xyz/wiger.eth/fFhMtl3QqJqpe-mrqGWSFWMw8F-eZU9hbUFskIbsLvw">https://mirror.xyz/wiger.eth/fFhMtl3QqJqpe-mrqGWSFWMw8F-eZU9hbUFskIbsLvw</a></p></li><li><p>模块化区块链介绍:</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://mirror.xyz/wiger.eth/cRxQWhqCmn3DH0v6olleflV886bW63DsbK8eiUUtcFg">https://mirror.xyz/wiger.eth/cRxQWhqCmn3DH0v6olleflV886bW63DsbK8eiUUtcFg</a></p></li><li><p>数据可用性采样:</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://mirror.xyz/wiger.eth/sqxu0qWWyS6TmxH89qKlmDGkdjh2g-HseZLygIWBOwQ">https://mirror.xyz/wiger.eth/sqxu0qWWyS6TmxH89qKlmDGkdjh2g-HseZLygIWBOwQ</a></p></li><li><p>命名空间默克尔树:</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://mirror.xyz/wiger.eth/WkJKoUoqgROOx_orWrCETZSy5vJfb-Fyo-r9uP8bGZY">https://mirror.xyz/wiger.eth/WkJKoUoqgROOx_orWrCETZSy5vJfb-Fyo-r9uP8bGZY</a></p></li><li><p>Celestia App:</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://mirror.xyz/wiger.eth/tlAFZdpyReMXuEHmI0oKiU_8CI9MNJDQGWDjEoGYurE">https://mirror.xyz/wiger.eth/tlAFZdpyReMXuEHmI0oKiU_8CI9MNJDQGWDjEoGYurE</a></p></li><li><p>Sovereign Rollup:</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://mirror.xyz/wiger.eth/Y6LzpgtUaXY9QgjZ-IWocSVeFNjgMdt2BLVAVvp5PfE">https://mirror.xyz/wiger.eth/Y6LzpgtUaXY9QgjZ-IWocSVeFNjgMdt2BLVAVvp5PfE</a></p></li><li><p>QoS 和 DAG:</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://mirror.xyz/wiger.eth/aw8rRAOrlnHggAs4lgwtdY2q5fTtEhCHA-6UDmVXiV4">https://mirror.xyz/wiger.eth/aw8rRAOrlnHggAs4lgwtdY2q5fTtEhCHA-6UDmVXiV4</a></p></li><li><p>Why Smooth:</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://mirror.xyz/wiger.eth/ra4l9DaDB-RLLDLW8s0UCwumHlvzqYrPDNlgwCN_EDA">https://mirror.xyz/wiger.eth/ra4l9DaDB-RLLDLW8s0UCwumHlvzqYrPDNlgwCN_EDA</a></p></li></ol><div data-type="subscribeButton" class="center-contents"><a class="email-subscribe-button" href="null">Subscribe</a></div>]]></content:encoded>
            <author>wiger@newsletter.paragraph.com (wiger.eth)</author>
            <enclosure url="https://storage.googleapis.com/papyrus_images/40022d66b141fd32cf0361ac9efb09de136018a4bf8aa6880f2b650cfe9344c5.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Smooth 模块化区块链系列教程(八): Why Smooth]]></title>
            <link>https://paragraph.com/@wiger/smooth-why-smooth</link>
            <guid>bPxVdbBHUqOXaIqasLpa</guid>
            <pubDate>Fri, 14 Oct 2022 18:31:10 GMT</pubDate>
            <description><![CDATA[愿景在未来的 10 年里，区块链的用户数目将会达到 50 亿，届时，各个维度的比较，将会推动 Builder 将每一个可以优化的点，都优化到极致。Crypto Users用户数目的增加，会产生 10M 的 dApps，这 10M 的 dApps 中，或许会诞生类似于 Google，Tiktok，这类有趣的现象级应用，而这些应用，需要不同的协议，现阶段最好的理解就是：看视频打游戏，我们希望延迟低；下载文件，我们希望吞吐量大。 不同的需求，就需要不同的服务，QoS 机制的引入，将会为区块链带来革命性的变化。 同时，这些 dApps 的交易，更需要引入并行交易，来进一步提升效率，同时要保证机制的边界性和安全性。 Smooth 是一款基于 Move 的 QoS 并发式模块化公链。 所以，Smooth 应时而生。总结底层 Move 语言，基于用户进行资源管理构建 DA & Consensus Layer提出 Execution Layer 泛式，对交易类型进行 QoS 区分，边界性强采用 DAG 并行交易整体效率提升的同时，牺牲较少计算资源用于保证安全性致谢感谢各位看到了这里，这个系列就是...]]></description>
            <content:encoded><![CDATA[<h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">愿景</h3><p>在未来的 10 年里，区块链的用户数目将会达到 50 亿，届时，各个维度的比较，将会推动 Builder 将每一个可以优化的点，都优化到极致。</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/3d2aa6cf94fa2b05bceb6220bd9a8abae946a6156c6df77cc663e3cec9dd503e.jpg" alt="Crypto Users" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Crypto Users</figcaption></figure><p>用户数目的增加，会产生 10M 的 dApps，这 10M 的 dApps 中，或许会诞生类似于 Google，Tiktok，这类有趣的现象级应用，而这些应用，需要不同的协议，现阶段最好的理解就是：看视频打游戏，我们希望延迟低；下载文件，我们希望吞吐量大。</p><p>不同的需求，就需要不同的服务，QoS 机制的引入，将会为区块链带来革命性的变化。</p><p>同时，这些 dApps 的交易，更需要引入并行交易，来进一步提升效率，同时要保证机制的边界性和安全性。</p><p>Smooth 是一款基于 Move 的 QoS 并发式模块化公链。</p><p>所以，Smooth 应时而生。</p><h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">总结</h3><ol><li><p>底层 Move 语言，基于用户进行资源管理</p></li><li><p>构建 DA &amp; Consensus Layer</p></li><li><p>提出 Execution Layer 泛式，对交易类型进行 QoS 区分，边界性强</p></li><li><p>采用 DAG 并行交易</p></li><li><p>整体效率提升的同时，牺牲较少计算资源用于保证安全性</p></li></ol><h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">致谢</h3><p>感谢各位看到了这里，这个系列就是一段真诚的分享。</p><p>感谢 Celestia，感谢 NGC，感谢 Xinshu，感谢 Lucie。</p>]]></content:encoded>
            <author>wiger@newsletter.paragraph.com (wiger.eth)</author>
            <enclosure url="https://storage.googleapis.com/papyrus_images/40022d66b141fd32cf0361ac9efb09de136018a4bf8aa6880f2b650cfe9344c5.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Smooth 模块化区块链系列教程(七): QoS 和 DAG]]></title>
            <link>https://paragraph.com/@wiger/smooth-qos-dag</link>
            <guid>GbAqYQYBlvMJs48TjMhn</guid>
            <pubDate>Fri, 14 Oct 2022 10:57:20 GMT</pubDate>
            <description><![CDATA[传统的 QoS (Quality of service)在电话通信领域，QoS 由 ITU 于 1994年定义。QoS 涵盖了连接所有方面的要求，例如服务响应时间、损耗、信噪比、回声、中断、频率响应、响度等。其中一个重要的维度，是服务等级(GoS)要求，它包括与网络容量和覆盖范围相关指标，例如可以保证的最大阻塞概率和中断概率。 在计算机网络和其他分组交换网络领域，QoS 是为不同的应用程序、用户或数据流提供不同优先级的能力，或保证数据流具有一定性能的能力。例如，保证所需的比特率、延迟、延迟变化、分组丢失或误码率。QoS 对于实时流媒体应用很重要，例如语音、多人在线游戏，并且在容量有限的网络中尤其重要，例如蜂窝数据通信。QoS区块链的 QoS (Quality of service)QoS 面向的是 dApps 和 app-specific chains, 对于不同类型的 Transaction，不同的 dApps，需求场景是多样化的，且对于交易效率、安全保障、用户体验、交易成本、计算资源消耗，都有着不同的要求，这需要区块链可以为不同的需求，构建对应的执行协议、执行标准、Rollu...]]></description>
            <content:encoded><![CDATA[<h3 id="h-qos-quality-of-service" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">传统的 QoS (Quality of service)</h3><p>在电话通信领域，QoS 由 ITU 于 1994年定义。QoS 涵盖了连接所有方面的要求，例如服务响应时间、损耗、信噪比、回声、中断、频率响应、响度等。其中一个重要的维度，是服务等级(GoS)要求，它包括与网络容量和覆盖范围相关指标，例如可以保证的最大阻塞概率和中断概率。</p><p>在计算机网络和其他分组交换网络领域，QoS 是为不同的应用程序、用户或数据流提供不同优先级的能力，或保证数据流具有一定性能的能力。例如，保证所需的比特率、延迟、延迟变化、分组丢失或误码率。QoS 对于实时流媒体应用很重要，例如语音、多人在线游戏，并且在容量有限的网络中尤其重要，例如蜂窝数据通信。</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/73e2da83f33ae43297f2dc86b6e545642c8aed90373be822d224f9930514bc29.png" alt="QoS" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">QoS</figcaption></figure><h3 id="h-qos-quality-of-service" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">区块链的 QoS (Quality of service)</h3><p>QoS 面向的是 dApps 和 app-specific chains, 对于不同类型的 Transaction，不同的 dApps，需求场景是多样化的，且对于交易效率、安全保障、用户体验、交易成本、计算资源消耗，都有着不同的要求，这需要区块链可以为不同的需求，构建对应的执行协议、执行标准、Rollup 规则等，同时要保证整个系统的安全性。</p><p>因此 Smooth 提出了一种框架，在 Execution 层和 Settlement 层，进行交易排序的优化，面向不同的 dApps，不同的 transaction，不同的 app-specific chains，实现 QoS 机制。Smooth 采用 Move 语言，实现交易的可并行处理和最大程度的安全性，从而达到更优的可扩展性，并且应用模块化区块链的思想，让每一层具有更清晰的边界，构建 Move 语言下 DA 层和共识层的处理层（参考 Celestia）。</p><h3 id="h-dag" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">有向无环图 DAG 结构</h3><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/864a62432e78d733187bf2224168cded30c8ff44e8e48dea1c592d531f79e70d.png" alt="DAG" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">DAG</figcaption></figure><p>Move 语言构建的系统，以用户为基础作为资源管理。</p><p>Smooth 参考了 Sui 的交易流程模型，采用 DAG 模型，会带来以下的优点：</p><ol><li><p>为并行化创造条件：DAG 作为一类数据结构，其与区块链结合，可以解决效率问题。因为链式结构使整个网络只能存在一条链，导致出块无法并发执行，引入 DAG 结构后，网络中可以并行打包多个区块。</p></li><li><p>因果顺序加快共识过程：在 Sui 中，链上事务的因果顺序是很重要的一个特点，也是上图中的每一个节点，它类似于区块中的 Merkle Root，是 DAG 结构的主干，也是共识投票的参考证明。</p></li></ol><h3 id="h-reservation" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">Reservation 交易池定序</h3><p>借助 DAG 的事务执行流程，Smooth 构建出一个独立的 Reservation 交易池，将交易提交、存储、排序、有效性验证，集中执行处理。</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/3a4778afbba3daf027694724ee3775f5c74da13c17e3f8f7e77293c16bae38bb.png" alt="Reservation Tx Pool" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Reservation Tx Pool</figcaption></figure><p>采用这种堆栈式的存储模式，虽然牺牲了一部分的即时性，但可以为不急于在链上立刻成交的用户，提供一种更为人性化的选择，降低用户成本的同时，也减轻了区块链的负担。</p><p>当 Transaction 提交到 Node，此时并不做 validation 和 available 的验证，直接压入 pool，这一步的交易类型，是根据对应 app chain 的 Namespace 标记进行甄别，采用分布式存储，在筛选出交易后，对应的 Pool 负责做中间件，为后续的节点投票 DAG 提供交易列表。</p><h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">引用</h3><blockquote><p>从&quot;Diem”系看下一代公链范式: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://move-china.com/topic/184">https://move-china.com/topic/184</a></p></blockquote><blockquote><p>Quality of service - From Wikipedia, the free encyclopedia: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://en.wikipedia.org/wiki/Quality_of_service">https://en.wikipedia.org/wiki/Quality_of_service</a></p></blockquote>]]></content:encoded>
            <author>wiger@newsletter.paragraph.com (wiger.eth)</author>
            <enclosure url="https://storage.googleapis.com/papyrus_images/40022d66b141fd32cf0361ac9efb09de136018a4bf8aa6880f2b650cfe9344c5.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Smooth 模块化区块链系列教程(六): Sovereign Rollup]]></title>
            <link>https://paragraph.com/@wiger/smooth-sovereign-rollup</link>
            <guid>OB3auDeV8DRs16vNMPaG</guid>
            <pubDate>Thu, 13 Oct 2022 14:51:36 GMT</pubDate>
            <description><![CDATA[传统 RollupEthereum L1 上有 Rollup 对应的智能合约，用于验证交易，然后提交到主链上。 在 Rollup 与 L1 之间，存在一个信任最小化桥梁，保证双方存取款的互相信任。ZK Rollup / OP RollupSovereign RollupSovereign RollupSovereign Rollup 在 Celestia 上没有部署智能合约。 Sovereign Rollup 将其块作为原始数据，直接发布到链上。 Sovereign Rollup 上的节点，负责读取区块，并验证分叉选择规则来确定主链。Sovereign Rollup创建自己的主权Sovereign Rollup 不会自行建立。 传统的 Cosmos 区块链使用 Tendermint 达成共识。但是 Sovereign Rollup 不需要完整的 BFT 共识机制，因为由 Celestia 提供共识。 Celestia 团队开发了 Optimint，基于 Cosmos SDK 开发而成，用于建立 Sovereign Rollup。 Optimint 是 Tendermint 的替代...]]></description>
            <content:encoded><![CDATA[<h3 id="h-rollup" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">传统 Rollup</h3><p>Ethereum L1 上有 Rollup 对应的智能合约，用于验证交易，然后提交到主链上。</p><p>在 Rollup 与 L1 之间，存在一个信任最小化桥梁，保证双方存取款的互相信任。</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/8a9e23e7cd2719ea6580d21e861f59384ac7e75cc5e7ab534a8caef210fe2107.png" alt="ZK Rollup / OP Rollup" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">ZK Rollup / OP Rollup</figcaption></figure><h3 id="h-sovereign-rollup" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">Sovereign Rollup</h3><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/4b085e5b15a05b42dca535ea541097569740ce654866def35f79c685a82abb8c.png" alt="Sovereign Rollup" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Sovereign Rollup</figcaption></figure><p>Sovereign Rollup 在 Celestia 上没有部署智能合约。</p><p>Sovereign Rollup 将其块作为原始数据，直接发布到链上。</p><p>Sovereign Rollup 上的节点，负责读取区块，并验证分叉选择规则来确定主链。</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/d6ae460bd3868444f5828b957b0c208fe4ef9359cfff30082223d19f2a8bba4b.png" alt="Sovereign Rollup" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Sovereign Rollup</figcaption></figure><h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">创建自己的主权</h3><p>Sovereign Rollup 不会自行建立。</p><p>传统的 Cosmos 区块链使用 Tendermint 达成共识。但是 Sovereign Rollup 不需要完整的 BFT 共识机制，因为由 Celestia 提供共识。</p><p>Celestia 团队开发了 Optimint，基于 Cosmos SDK 开发而成，用于建立 Sovereign Rollup。</p><p>Optimint 是 Tendermint 的替代品，它向 Celestia 发布区块，而不是通过 Tendermint 共识的流程。</p><p>这类 Sovereign Rollup 有以下特点：</p><ol><li><p>无需新的共识网络：直接部署，无需配置自己链的共识层。</p></li><li><p>使用 Cosmos SDK 构建：便于调用 Cosmos 的开发工具。</p></li><li><p>可定制的执行环境：由 Optimint 配置出 Sovereign Rollup 的执行环境，可以修改或更换为与 ABCI 兼容的全新环境。</p></li></ol><h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">引用</h3><blockquote><p>Sovereign Rollup: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://blog.celestia.org/introducing-sovereign-rollups-to-developers/">https://blog.celestia.org/introducing-sovereign-rollups-to-developers/</a></p></blockquote>]]></content:encoded>
            <author>wiger@newsletter.paragraph.com (wiger.eth)</author>
            <enclosure url="https://storage.googleapis.com/papyrus_images/40022d66b141fd32cf0361ac9efb09de136018a4bf8aa6880f2b650cfe9344c5.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Smooth 模块化区块链系列教程(五): Celestia App]]></title>
            <link>https://paragraph.com/@wiger/smooth-celestia-app</link>
            <guid>iVkMEmbY3ShM0ulxKFEv</guid>
            <pubDate>Thu, 13 Oct 2022 12:02:47 GMT</pubDate>
            <description><![CDATA[Celestia App: 一个 PoS 链Celestia AppCelestia 本质上由 PoS 区块链组成，这条链被称作 Celestia App，采用 Cosmos SDK 构建。 Celestia App 建立在 Celestia Core 之上，Celestia Core 通过 Tendermint 共识算法的修改得到，修改的地方在前文提到过，同时 Celestia Core 节点仍在使用 Tendermint p2p 网络：采用了 2D R-S 编码方案： https://mirror.xyz/wiger.eth/sqxu0qWWyS6TmxH89qKlmDGkdjh2g-HseZLygIWBOwQ将 Tendermint 中存储数据的常规 Merkle Tree 替换为 Namespaced Merkle Tree： https://mirror.xyz/wiger.eth/WkJKoUoqgROOx_orWrCETZSy5vJfb-Fyo-r9uP8bGZY与 Tendermint 类似，Celestia Core 通过 ABCI 连接到应用层（即状态机），C...]]></description>
            <content:encoded><![CDATA[<h3 id="h-celestia-app-pos" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">Celestia App: 一个 PoS 链</h3><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/921c7c246fd2e4642c07bb23084f6c2ff685cb425e7307638e691ae2137bba0b.png" alt="Celestia App" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Celestia App</figcaption></figure><p>Celestia 本质上由 PoS 区块链组成，这条链被称作 Celestia App，采用 Cosmos SDK 构建。</p><p>Celestia App 建立在 Celestia Core 之上，Celestia Core 通过 Tendermint 共识算法的修改得到，修改的地方在前文提到过，同时 Celestia Core 节点仍在使用 Tendermint p2p 网络：</p><ol><li><p>采用了 2D R-S 编码方案：</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://mirror.xyz/wiger.eth/sqxu0qWWyS6TmxH89qKlmDGkdjh2g-HseZLygIWBOwQ">https://mirror.xyz/wiger.eth/sqxu0qWWyS6TmxH89qKlmDGkdjh2g-HseZLygIWBOwQ</a></p></li><li><p>将 Tendermint 中存储数据的常规 Merkle Tree 替换为 Namespaced Merkle Tree：</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://mirror.xyz/wiger.eth/WkJKoUoqgROOx_orWrCETZSy5vJfb-Fyo-r9uP8bGZY">https://mirror.xyz/wiger.eth/WkJKoUoqgROOx_orWrCETZSy5vJfb-Fyo-r9uP8bGZY</a></p></li></ol><p>与 Tendermint 类似，Celestia Core 通过 ABCI 连接到应用层（即状态机），Celestia App 状态机是执行 PoS 和进行 DA 层治理所必需的。</p><p>但 Celestia App 与数据无关：状态机既不验证也不存储 Celestia App 提供的数据。</p><h3 id="h-celestia-app" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">Celestia App 上交易的生命周期</h3><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/f123f2f23198914b83d4468df74802403e5bb4c5b60aab958fab2ebe81537361.png" alt="The Lifecycle of a Celestia App Transaction" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">The Lifecycle of a Celestia App Transaction</figcaption></figure><ol><li><p>用户通过 PayForData 交易，向 Celestia App (Celestia Core) 请求，使交易数据可用。</p></li><li><p>在 Block Producer 中，Celestia Core 通过 ABCI 将 PayForData 交易传递给状态机。</p></li><li><p>状态机将 PayForData 交易拆分为 2 部分，并传回给 Celestia Core：</p><ol><li><p>Msg 命名空间消息：当中包含了交易数据和 Namespace ID。</p></li><li><p>e-Tx 可执行交易：不包含数据，只有一个 commitment 在之后用于证明数据可用。</p></li></ol></li><li><p>每个出块的节点，将多笔 PayForData 打包在一个块内，块中就包含了上面提到的 Msg 和 e-Tx。</p></li><li><p>然后区块生产者向块头添加块数据的 commitment，不同于 e-Tx 的 commitment，这里的是 2D R-S 编码后 4k 个交易 Merkle Roots 的 Merkle Root。</p></li><li><p>最后出块。</p></li></ol><h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">检验数据可用性</h3><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/f149fd61b961c060c49b66e192a346840893ba7db2b3fef9f3cad320ada72770.png" alt="Checking Data Availability" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Checking Data Availability</figcaption></figure><p>Celestia 采用了一个 DA Network 来为 Consensus Network 处理 DAS 验证，二者通过 RPC 通信。</p><ol><li><p>轻节点向全节点请求通过 2D R-S 编码得到的 4k Merkle Roots 和 DA 原始数据。</p></li><li><p>轻节点在获取数据后进行 DAS 抽样验证，只要有一个查询失败，即没有收到数据块，或 Merkle 证明无效，则轻节点拒绝区块头部并稍后重试。</p></li><li><p>轻节点还可以通过全节点，向 Celestia App 提交 PayForData 交易。</p></li></ol><p>有时候尽管数据不可用，轻节点也可以接受区块头部，即误报。</p><p>通过微调 Celestia 的参数，例如，每个轻节点采样数据块的数量，可以充分降低误报的可能性，从而使区块生产者没有动机扣留区块数据。</p><h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">引用</h3><blockquote><p>Celestia&apos;s Data Availability Layer: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://docs.celestia.org/concepts/how-celestia-works/data-availability-layer">https://docs.celestia.org/concepts/how-celestia-works/data-availability-layer</a></p></blockquote><blockquote><p>The Lifecycle of a Celestia App Transaction: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://docs.celestia.org/concepts/how-celestia-works/transaction-lifecycle">https://docs.celestia.org/concepts/how-celestia-works/transaction-lifecycle</a></p></blockquote>]]></content:encoded>
            <author>wiger@newsletter.paragraph.com (wiger.eth)</author>
            <enclosure url="https://storage.googleapis.com/papyrus_images/40022d66b141fd32cf0361ac9efb09de136018a4bf8aa6880f2b650cfe9344c5.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Smooth 模块化区块链系列教程(四): 命名空间默克尔树]]></title>
            <link>https://paragraph.com/@wiger/smooth-4</link>
            <guid>ykc3nVpAvDIxKlvJ1jkp</guid>
            <pubDate>Thu, 13 Oct 2022 10:48:27 GMT</pubDate>
            <description><![CDATA[概括Celestia 是一个数据可用性层 DA Layer。 Celestia 的 2 个特性是数据可用性采样 (DAS) 和命名空间默克尔树(NMT)。 DAS：轻节点无需下载完整的区块数据，即可验证区块的数据可用性。 NMT：使得 Celestia 上的执行和结算层，只能够下载与它们相关的交易。默克尔树默克尔树每一个节点的值，都由其子节点的值相加，然后求哈希得到。Hash当每一个子节点的数据发生变化，其父节点，父节点的父节点，…… ，一直到最上面的根结点，一整条向上的路径，数值都会发生变化。 因此，当交易数值发生篡改，只需比较最上方的根结点，即可检查出。 同时，根据这条路径，可以快速地找到被篡改的节点。Merkle Trees比如在下图中，希望检查 Tx = hD 的交易，是否被成功写入区块。 只需要将标记为红色的 Tx = hC, Tx = hAB, Tx = hEFGH，三个交易逐层相加，然后得到最上层的 hABCDEFGH。 只需要比较最上层的 hABCDEFGH，就能检查：计算出来的默克尔根，是否与区块头部中的根哈希值一致。 如果成功匹配，就证明交易已经被成功计入了区...]]></description>
            <content:encoded><![CDATA[<h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">概括</h3><p>Celestia 是一个数据可用性层 DA Layer。</p><p>Celestia 的 2 个特性是数据可用性采样 (DAS) 和命名空间默克尔树(NMT)。</p><p>DAS：轻节点无需下载完整的区块数据，即可验证区块的数据可用性。</p><p>NMT：使得 Celestia 上的执行和结算层，只能够下载与它们相关的交易。</p><h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">默克尔树</h3><p>默克尔树每一个节点的值，都由其子节点的值相加，然后求哈希得到。</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/db42a2e17a4390edaebce0666f3b298ace97484f389ee10e48e3e898345e9f11.png" alt="Hash" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Hash</figcaption></figure><p>当每一个子节点的数据发生变化，其父节点，父节点的父节点，…… ，一直到最上面的根结点，一整条向上的路径，数值都会发生变化。</p><p>因此，当交易数值发生篡改，只需比较最上方的根结点，即可检查出。</p><p>同时，根据这条路径，可以快速地找到被篡改的节点。</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/8bbf1ba99f53f24750b7c002c02c9a7b57a24431b0f4b980e0371d56858655aa.png" alt="Merkle Trees" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Merkle Trees</figcaption></figure><p>比如在下图中，希望检查 Tx = hD 的交易，是否被成功写入区块。</p><p>只需要将标记为红色的 Tx = hC, Tx = hAB, Tx = hEFGH，三个交易逐层相加，然后得到最上层的 hABCDEFGH。</p><p>只需要比较最上层的 hABCDEFGH，就能检查：计算出来的默克尔根，是否与区块头部中的根哈希值一致。</p><p>如果成功匹配，就证明交易已经被成功计入了区块。</p><p>这种比较方式下，只需要 3 次，就可以实现验证，但如果没有默克尔证明的话，则需要七次。</p><p>因此在成千上万笔交易组成的区块链中，默克尔树大大提升了计算效率。</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/7be94729dd409f7b3138e148d65769411db3ca6091d244f79c1fafc3b93b418c.png" alt="Merkle Trees Computing" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Merkle Trees Computing</figcaption></figure><h3 id="h-namespaced-merkle-trees" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">命名空间默克尔树 Namespaced Merkle Trees</h3><p>Celestia 将区块中的数据划分为多个命名空间，每个使用 DA 层的 dApp 只使用其中一个命名空间。</p><p>每个 dApp 只需要下载自己的数据，可以忽略其他 dApp 的数据。</p><p>DA 层必须能够证明，其提供的数据是完整的，即证明返回的数据，是当前命名空间下的所有数据。</p><p>因此 Celestia 使用命名空间默克尔树 (NMT)。</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/32c243209448a4b10fbe654b58b8279b7cbe270dc5cb735c7186e884c99f004c.png" alt="Namespaced Merkle Trees" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Namespaced Merkle Trees</figcaption></figure><p>上图是一个高度为 3，含有 8 个数据块的 NMT，数据被划分为三个命名空间。</p><p>当 dApp 需要 Namespace 2 的数据，DA 层需要提供：数据块 D3，D4，D5 和 D6，节点N2，N8 和 N7 进行计算证明，这里默认所有 dApp 都是有 N14 数据的。这样一来，dApp 就能够检查 DA 所提供的数据是否是当前块数据的一部分。</p><p>也可以验证 DA 是否提供了 Namespace 2 的所有数据。比如，如果 DA 层仅提供数据块 D4 和 D5，那么 DA 还必须提供节点 N11 和 N12 的数据来证明。但是，dApp 可以通过检查两个节点的命名空间范围来识别数据不完整，因为 N12 和 N11 都由一部分 Namespace 2 中的交易组合得到。</p><h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">引用</h3><blockquote><p>Celestia&apos;s Data Availability Layer: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://docs.celestia.org/concepts/how-celestia-works/data-availability-layer">https://docs.celestia.org/concepts/how-celestia-works/data-availability-layer</a></p><p>默克尔树与默克尔根详解: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://academy.binance.com/zh/articles/merkle-trees-and-merkle-roots-explained">https://academy.binance.com/zh/articles/merkle-trees-and-merkle-roots-explained</a></p></blockquote>]]></content:encoded>
            <author>wiger@newsletter.paragraph.com (wiger.eth)</author>
            <enclosure url="https://storage.googleapis.com/papyrus_images/40022d66b141fd32cf0361ac9efb09de136018a4bf8aa6880f2b650cfe9344c5.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Smooth 模块化区块链系列教程(三): 数据可用性采样]]></title>
            <link>https://paragraph.com/@wiger/smooth-3</link>
            <guid>quUiZxDAmzSanEGJO7Wl</guid>
            <pubDate>Thu, 13 Oct 2022 10:24:03 GMT</pubDate>
            <description><![CDATA[概括Celestia 是一个数据可用性层 DA Layer。 Celestia 的 2 个特性是数据可用性采样 (DAS) 和命名空间默克尔树(NMT)。 DAS：轻节点无需下载完整的区块数据，即可验证区块的数据可用性。 NMT：使得 Celestia 上的执行和结算层，只能够下载与它们相关的交易。2D Reed-Solomon(RS) EncodingRS 编码定义：在原始数据中取多个点求冗余进行扩充，当接收器收到足够多正确的数据点后，即使数据中存在部分缺失和损坏，也可以恢复原始数据。 RS 编码在 DAS 中的应用：轻节点只下载，包含交易列表默克尔根(commitment)的区块头部，即可验证数据可用性。2D Reed-Solomon(RS) Encoding原始区块数据 Block Data：Header：交易列表的 Merkle root。Data：交易原始数据。对原始区块数据 Block Data 进行二维 R-S 扩展编码：将 Block Data 划分为 k x k 矩阵。保留奇偶校验数据，将 k x k 矩阵，多次通过 R-S 编码，扩展为 2k x 2k 矩阵。...]]></description>
            <content:encoded><![CDATA[<h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">概括</h3><p>Celestia 是一个数据可用性层 DA Layer。</p><p>Celestia 的 2 个特性是数据可用性采样 (DAS) 和命名空间默克尔树(NMT)。</p><p>DAS：轻节点无需下载完整的区块数据，即可验证区块的数据可用性。</p><p>NMT：使得 Celestia 上的执行和结算层，只能够下载与它们相关的交易。</p><h3 id="h-2d-reed-solomonrs-encoding" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">2D Reed-Solomon(RS) Encoding</h3><p>RS 编码定义：在原始数据中取多个点求冗余进行扩充，当接收器收到足够多正确的数据点后，即使数据中存在部分缺失和损坏，也可以恢复原始数据。</p><p>RS 编码在 DAS 中的应用：轻节点只下载，包含交易列表默克尔根(commitment)的区块头部，即可验证数据可用性。</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/f51c14cb8445224608c1ac4962aca67aa4a99cf1351890b896a2e2aa7078b2ac.png" alt="2D Reed-Solomon(RS) Encoding" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">2D Reed-Solomon(RS) Encoding</figcaption></figure><ol><li><p>原始区块数据 Block Data：</p><ol><li><p>Header：交易列表的 Merkle root。</p></li><li><p>Data：交易原始数据。</p></li></ol></li><li><p>对原始区块数据 Block Data 进行二维 R-S 扩展编码：</p><ol><li><p>将 Block Data 划分为 k x k 矩阵。</p></li><li><p>保留奇偶校验数据，将 k x k 矩阵，多次通过 R-S 编码，扩展为 2k x 2k 矩阵。</p></li><li><p>提取 2k 行的 Merkle Roots 和 2k 列 Merkle Roots，合并构成 4k 个单独的 Merkle Roots，并将合并后的 Merkle Roots 称作：Merkle Root of Merkle Roots，这就是扩展后区块头部中的数据承诺 Commitment。</p></li></ol></li></ol><h3 id="h-data-availability-sampling" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">数据可用性采样 Data Availability Sampling</h3><p>Celestia 轻节点对 2k × 2k 的扩展后数据块进行采样：</p><ol><li><p>每个轻节点，在 2k x 2k 的扩展矩阵中随机选择一组坐标。</p></li><li><p>向这些坐标对应的全节点发起请求：请求数据块，和相应的 Merkle Root。</p></li><li><p>如果轻节点的每一个采样请求，都可以接收到有效的响应，则整个区块的数据是大概率可用的。</p></li></ol><p>由于 R-S 编码的特性，只要 Celestia 轻节点采样足够多的数据块，全节点就可以恢复原始的块数据。</p><h3 id="h-scalability" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">可扩展性 Scalability</h3><p>虽然单个轻节点计算资源有限，但也正因此，轻节点的硬件门槛没有那么高，网络中可以有很多的轻节点，每个轻节点只需对块数据的一小部分进行采样。</p><p>所以网络中的轻节点越多，它们可以下载和存储的数据就越多。</p><p>所以网络中的轻节点越多，区块容量也可以更大，即可以包含更多的交易。</p><p>为了验证区块头部，Celestia 轻节点需要下载 4k 个 Merkle Root。所以轻节点的吞吐量，也决定了 Celestia DA 层的吞吐量。</p><h3 id="h-fraud-proofs-of-incorrectly-extended-data" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">不正确扩展数据的错误性证明 Fraud Proofs of Incorrectly Extended Data</h3><p>1D Reed-Solomon(RS) Encoding：将数据分为 k 份，从而进行扩容，扩容后得到 2k 的 Merkle Root，这时轻节点不再需要下载 O(n) 字节来验证块头。</p><p>但 1D 缺点在于，不容易处理恶意生成扩展数据的区块生产者。</p><p>因为 Celestia 不需要大多数诚实来保证数据可用性。 因此，如果扩展数据无效，原始数据可能无法恢复。</p><p>这时，采用 Fraud Proofs 可以拒绝具有无效扩展的区块，Fraud Proof 需要重建编码并验证是否匹配。</p><p>采用 1D R-S 编码的 Fraud Proofs，需要下载完整的原始数据来进行验证，复杂度为 O(n)。</p><p>而采用 2D R-S 编码，无需上述的 Fraud Proofs，只需对扩展矩阵中的一列，或一行进行计算，即可验证，复杂度为 O(n)。</p><p>所以通常采用 2D R-S 编码。</p><h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">引用</h3><blockquote><p>Celestia&apos;s Data Availability Layer: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://docs.celestia.org/concepts/how-celestia-works/data-availability-layer">https://docs.celestia.org/concepts/how-celestia-works/data-availability-layer</a></p></blockquote>]]></content:encoded>
            <author>wiger@newsletter.paragraph.com (wiger.eth)</author>
            <enclosure url="https://storage.googleapis.com/papyrus_images/40022d66b141fd32cf0361ac9efb09de136018a4bf8aa6880f2b650cfe9344c5.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Smooth 模块化区块链系列教程(二): 模块化区块链介绍]]></title>
            <link>https://paragraph.com/@wiger/smooth-2</link>
            <guid>pVgJE9j5oijLglxI7cKH</guid>
            <pubDate>Thu, 13 Oct 2022 07:29:48 GMT</pubDate>
            <description><![CDATA[介绍Celestia 是模块化区块链，目标是构建可扩展的数据可用性层 DA。Celestia 将执行层 Execution，结算层 Settlement，从共识层 Consensus 和数据可用性 层 DA 中分离出来。Celestia 只负责交易的顺序和数据可用性。Celestia 引入了数据可用性采样 DAS，和命名空间默克尔树 NMT。DAS 使轻节点只需要采样少量随机块，就可以验证区块的数据可用性，而不需要下载整个区块。NMT 使每个应用程序只需要下载自己的数据，可以忽略其他应用程序的数据。单片区块链与模块化区块链区块链技术将状态复制机 Replicated State Machines 实例化：分布式网络中无需许可的节点，将一系列确定性交易的有序序列，设置为初始状态，从而产生相同的最终状态。 因此区块链需要以下 4 个层：执行层 Execution：执行正确更新状态的交易。结算层 Settlement：验证证明，解决欺诈纠纷，是 Execution 和 DA 的中间桥梁。共识层 Consensus：确定交易顺序。数据可用性层 Data Availability (DA)...]]></description>
            <content:encoded><![CDATA[<h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">介绍</h3><ol><li><p>Celestia 是模块化区块链，目标是构建可扩展的数据可用性层 DA。</p></li><li><p>Celestia 将执行层 Execution，结算层 Settlement，从共识层 Consensus 和数据可用性 层 DA 中分离出来。Celestia 只负责交易的顺序和数据可用性。</p></li><li><p>Celestia 引入了数据可用性采样 DAS，和命名空间默克尔树 NMT。DAS 使轻节点只需要采样少量随机块，就可以验证区块的数据可用性，而不需要下载整个区块。NMT 使每个应用程序只需要下载自己的数据，可以忽略其他应用程序的数据。</p></li></ol><h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">单片区块链与模块化区块链</h3><p>区块链技术将状态复制机 Replicated State Machines 实例化：分布式网络中无需许可的节点，将一系列确定性交易的有序序列，设置为初始状态，从而产生相同的最终状态。</p><p>因此区块链需要以下 4 个层：</p><ol><li><p>执行层 Execution：执行正确更新状态的交易。</p></li><li><p>结算层 Settlement：验证证明，解决欺诈纠纷，是 Execution 和 DA 的中间桥梁。</p></li><li><p>共识层 Consensus：确定交易顺序。</p></li><li><p>数据可用性层 Data Availability (DA)：保证交易中的数据可以使用，即可以被下载，读取，执行。</p></li></ol><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/316fc67f069ff27debbf4229b0d0ae8044c2ef2a757acb103ba70019cec3f03c.png" alt="单片区块链" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">单片区块链</figcaption></figure><p>单片区块链：在一个 Consensus Layer 中，实现 Execution，Settlement，Consensus，DA 的所有功能。</p><p>缺点：共识层必须执行许多不同的任务，不能针对其中一项功能进行单独优化，从而限制了系统的吞吐量。</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/d27031722fe924efc342422a4142d58451979690ecf56c089bdc1d0830daef85.png" alt="模块化区块链" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">模块化区块链</figcaption></figure><p>模块化区块链：将 4 种功能，分为 3 个层来执行，Consensus 和 DA 仍保持为同一层，即 Celestia 负责的部分。</p><p>优点：</p><ol><li><p>每一层可以单独优化，增加系统的吞吐量。</p></li><li><p>多种不同的 Execution 可以通过同一个 Settlement 进行结算，并通过同一个 DA 形成共识，例如，zk-rollup 和 OP rollup。</p></li></ol><h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">引用</h3><blockquote><p>How Celestia Works: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://docs.celestia.org/category/how-celestia-works">https://docs.celestia.org/category/how-celestia-works</a></p></blockquote>]]></content:encoded>
            <author>wiger@newsletter.paragraph.com (wiger.eth)</author>
            <enclosure url="https://storage.googleapis.com/papyrus_images/40022d66b141fd32cf0361ac9efb09de136018a4bf8aa6880f2b650cfe9344c5.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Smooth 模块化区块链系列教程(一): 模块化词汇科普]]></title>
            <link>https://paragraph.com/@wiger/smooth</link>
            <guid>75QuVBqw93jx4UVWUt3d</guid>
            <pubDate>Wed, 12 Oct 2022 18:55:40 GMT</pubDate>
            <description><![CDATA[模块化词汇Application Blockchain Interface (ABCI)：应用程序和区块链之间的接口。即复制引擎（区块链）和状态机（应用程序）之间的接口。允许用任何编程语言，实现应用程序拜占庭容错复制。Blockchain cluster：区块链集群。一组可以通过信任最小化的方式相互通信的区块链，被称作区块链集群。Block header：区块头部。区块头部通常包含区块相关的元数据，比如：交易的 Merkle Tree Root，前一个块的哈希，块高度和时间戳等。Block producer：负责生成区块的全节点。绝大多数链中，矿工承担者出块的角色。对于 Rollup，块的生成者，也被称作定序器，仅使用交易来构建区块，然后将其发布到单独的链上，从而实现共识和数据可用性。Block space：每个区块的容量。区块的容量决定了它的吞吐量。Canonical chain：规范链。一般可以简单理解为主链，比如 ETH L1。Composability：可组合性。区块链上的应用程序，相互读取和写入状态的能力。Cosmos SDK：Cosmos 提供的开发工具包。在 Ten...]]></description>
            <content:encoded><![CDATA[<h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">模块化词汇</h3><ol><li><p>Application Blockchain Interface (ABCI)：应用程序和区块链之间的接口。即复制引擎（区块链）和状态机（应用程序）之间的接口。允许用任何编程语言，实现应用程序拜占庭容错复制。</p></li><li><p>Blockchain cluster：区块链集群。一组可以通过信任最小化的方式相互通信的区块链，被称作区块链集群。</p></li><li><p>Block header：区块头部。区块头部通常包含区块相关的元数据，比如：交易的 Merkle Tree Root，前一个块的哈希，块高度和时间戳等。</p></li><li><p>Block producer：负责生成区块的全节点。绝大多数链中，矿工承担者出块的角色。对于 Rollup，块的生成者，也被称作定序器，仅使用交易来构建区块，然后将其发布到单独的链上，从而实现共识和数据可用性。</p></li><li><p>Block space：每个区块的容量。区块的容量决定了它的吞吐量。</p></li><li><p>Canonical chain：规范链。一般可以简单理解为主链，比如 ETH L1。</p></li><li><p>Composability：可组合性。区块链上的应用程序，相互读取和写入状态的能力。</p></li><li><p>Cosmos SDK：Cosmos 提供的开发工具包。在 Tendermint 的共识基础上，帮助构建在 PoS L1 上运行的应用程序。</p></li><li><p>Cross-chain interoperability：跨链的交互操作。多条独立的区块链之间，相互通信和交互的能力。</p></li><li><p>Data availability sampling：数据可用性采样。一验证方式，在不用下载整个区块数据的前提下，验证区块的数据是否可以使用。</p></li><li><p>Data availability：数据可用性。指的是在一个区块被提出后，当中的交易数据是否可以被下载。在传统区块链中，全节点需要下载整个区块的数据，来验证数据可用性，这种方法无法扩展。而上文提到的数据可用性采样，允许节点在不下载整个块的情况下验证数据的可用性。</p></li><li><p>Data throughput：数据吞吐量。单位时间内区块链可以处理的数据量。</p></li><li><p>Data withholding attack：数据扣留攻击。当区块生产者发布区块，但不共享用于构建区块的交易数据时，就会发生数据扣留攻击。</p></li><li><p>Dispute resolution：争议的处理和解决。通常用于 Op Rollup 及其欺诈证明机制。Op Rollup 在假设交易是正确的情况下将交易提交到 L1，如果部分节点不同意 Rollup 交易的有效性，他们可以提出争议并生成欺诈证明。</p></li><li><p>Execution environment：执行环境。区块链中处理交易，账户和智能合约的虚拟环境。例如，以太坊虚拟机 EVM 是以太坊的原生执行环境，交易在 EVM 中执行，账户和智能合约也在 EVM 中运行。</p></li><li><p>Fee market：费用市场。区块链中广泛应用的一种市场类型，通常使用拍卖机制，用于防止恶意行为者向网络发送垃圾邮件。</p></li><li><p>Fork：区块链分叉。将一条链分裂为两条链的升级，两条链可能相互兼容，也可能互不兼容。</p></li><li><p>Fork choice rule：分叉选择规则。节点用来正确识别和遵循规范链的算法。BTC 的共识机制中，节点遵循总难度最高的链：挖掘它的工作量最大。在 Cosmos 链使用的共识机制 Tendermint 中，节点遵循具有 ⅔ 权益签名有效区块的链。</p></li><li><p>Full node：区块链全节点。为了完全验证一个块，至少有一个全节点下载该块的数据并检查它是否满足共识。</p></li><li><p>Honest majority assumption：诚实的多数假设。假设绝大多数区块链参与者是诚实的并遵守协议规则。</p></li><li><p>Honest minority assumption：诚实的少数假设。假设只有少数区块链参与者是诚实的并遵守协议规则。</p></li><li><p>Inter-cluster communication：不同集群间的区块链进行通信。集群内通信，采用的是信任最小化桥梁，而集群间通信依赖于诚实的多数假设，以确保资金不会被盗，因此通信不能采用信任最小化桥梁。比如 Ethereum-Polygon 跨链桥，需要 2/3 的委员会成员签署区块。</p></li><li><p>Inter-Blockchain Communication Protocol (IBC)：IBC 是 Cosmos 推出的通用跨链信息传输协议。在保证各个链自治，具有稳定交易处理速度的同时，IBC 让信息和资产跨链更加的去中心化，安全和便捷。</p></li><li><p>Light client：轻客户端。一种仅下载和验证区块头部的节点，依赖于诚实的多数假设，即区块头部包含的状态是有效的。</p></li><li><p>Modular blockchain：模块化区块链。一种仅专注于少数功能而非全部功能的区块链。将 执行层，结算层，数据可用性层和共识层，分离开运行，独立优化的区块链。</p></li><li><p>Optimistic rollup：一种将其区块发布到 L1 的 Rollup 类型，无需任何证明其有效性。L1 收到带有相应签名的区块，并乐观地假设交易是正确的。如果怀疑某个区块无效，则会创建一个争议窗口，在该窗口中可以对该区块进行质疑。</p></li><li><p>Peer to peer network：点对点网络。一种节点相互连接，并且可以直接通信，无需依赖第三方辅助通信的网络。</p></li><li><p>Rollup：一种将区块发布到 L1，来进行共识并确保数据可用性的区块链。</p></li><li><p>Sharding：分片，将区块链从单个链分离为多个链的过程。分片为区块链提供了可扩展性，它允许并行执行事务，节点只需要处理所有交易集合中，其所在子集的交易。</p></li><li><p>Shared security：共享安全。区块链从外部继承的安全性。</p></li><li><p>Slashing：削减。PoS 区块链中采用的一种机制，用于阻止和惩罚恶意行为。</p></li><li><p>Social consensus：社会共识。个人对于更改区块链达成协议的过程。</p></li><li><p>Sovereign application：主权应用。部署在自己的主权区块链上的应用程序。</p></li><li><p>Sovereign blockchain：主权区块链。通过社会共识对链和链上应用进行独立控制的区块链。在模块化的背景下，一个区块链被称之为主权区块链，当且仅当该链有能力在未经其使用的任何底层许可的情况下，通过社会共识进行分叉。</p></li><li><p>Sovereign rollup：主权 Rollup。一种不采用结算层进行有效性验证，且不用结算层来确定规范链的 Rollup。主权 Rollup 的规范链由 Rollup 点对点网络中的节点确定。</p></li><li><p>State transition fraud proof：一种证明状态转换无效的方法。OP Rollup 是一种利用欺诈证明来证明无效状态转换的区块链。由于欺诈证明仅评估是否发生欺诈，因此仅在状态转换存在争议的情况下才需要它们。</p></li><li><p>Synchrony assumption：同步假设。假设网络是同步的，那么当发送消息时，消息将在一定时间内被接收。</p></li><li><p>Throughput：吞吐量，对区块链容量的衡量。吞吐量主要衡量两个要素：数据吞吐量和交易吞吐量。数据吞吐量决定了区块链的数据容量，以 kb/s 或 mb/s 为单位。数据吞吐量与数据可用性层相关，因为它们的主要工作是为数据提供高容量。交易吞吐量衡量区块链的计算能力，通常通过每秒可处理的交易数量 TPS 来计算。</p></li><li><p>The data availability problem：数据可用性问题。一个被提出的块，这个块是否可以被验证，其中的数据是可以被下载读取的。</p></li><li><p>Transaction throughput：交易吞吐量。表示区块链的计算能力，交易吞吐量通常由每秒可处理的事务数 TPS 来表示。</p></li><li><p>Trust-minimized bridge：信任最小化桥梁。两个区块链之间的桥梁，不需要中间人，委员会，或诚实的多数假设来确保资金不会被盗。例如，以太坊和建立在其上的 Rollup 之间的桥梁。</p></li><li><p>Trusted bridge：可信任桥梁。两条区块链之间的桥梁，需要受信任的中介，委员会，或诚实的多数假设，以确保资金不会被盗。可信任桥梁比信任最小化的网桥更容易被利用，因为它为其安全性提供了较弱的保证。例如，BitGo 运营的 WBTC 桥，像 Axelar 这样的基于委员会的桥，或 Osmosis 和 Cosmos Hub 之间的 IBC 桥。</p></li><li><p>Validator：验证器。一个全节点，PoS 链验证器中的一部分。验证器通过对提出的区块进行投票来参与共识，当一个验证器被选为领导者时，他们会向验证器集合，提出并产生区块。</p></li><li><p>Validator set：验证器集合。一组验证者，负责通过投票，产生或提出区块，直接参与区块链的共识。</p></li><li><p>Validity proof：有效性证明。用于证明状态转换的有效性。例如，zk-Rollups 利用有效性证明来证明到 L1 链的有效状态转换，常与 SNARK 和 STARK 等证明系统一起使用。</p></li><li><p>Validium：一种基于零知识证明的 Rollup，将其数据发布到链下而不是其父链。数据发布到的链下环境可以是受信任方委员会或单独的链，例如 Celestia。</p></li><li><p>Volition：一种基于零知识证明的 Rollup，提供链上和链下的数据可用性选项。单笔交易的用户，可以选择将数据发布到链上，父链或链下。链下模式即 Validium，其中数据发布到的单独环境，可能是受信任方委员会，或数据可用性链。</p></li><li><p>zk-Rollup：一种 Rollup 类型，将其块发布到 L1，并带有区块的有效性证明。由于验证了有效性，交易就被认为是最终的，因此不存在质疑 zk-Rollup 块有效性的争议窗口。</p></li></ol><h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">引用</h3><blockquote><p>Celestia Glossary: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://celestia.org/glossary/">https://celestia.org/glossary/</a></p></blockquote>]]></content:encoded>
            <author>wiger@newsletter.paragraph.com (wiger.eth)</author>
            <enclosure url="https://storage.googleapis.com/papyrus_images/40022d66b141fd32cf0361ac9efb09de136018a4bf8aa6880f2b650cfe9344c5.png" length="0" type="image/png"/>
        </item>
    </channel>
</rss>