主页 > imtoken官方app > C#比特币全节点stratis的实现

C#比特币全节点stratis的实现

imtoken官方app 2023-01-17 08:20:16

stratis 全节点是为 stratis 区块链网络提供动力的引擎。 一种面向未来且环境可持续的共识协议,它使用 PoS 算法,同时提供侧链、智能合约和即插即用的共识算法。

每个完整节点都保存完整 stratis 区块链的最新副本,它们也能够支持比特币区块链网络; 全节点可以自动且权威地验证任一网络上的块和交易。

每个节点都主动维护与网络上其他节点(对等点)的连接,这确保了块和事务在网络中快速传播。 识别并禁止可疑节点,从而确保网络质量。

区块挖矿也是全节点的责任。 此过程涉及使用内存池中的交易填充块模板。 内存池保存尚未添加到区块链的待处理交易记录。 一旦矿工组装了一个新区块,它就会尝试使用 PoS 或 PoW 共识算法(取决于网络)为新区块生成哈希。 如果哈希值达到目标并且新区块满足共识规则目前比特币出块奖励,矿工将获得奖励(和交易费用)并将新区块写入区块链。

C#中比特币的实现

Stratis 在.NET core 平台上用C#语言实现了比特币协议。

该节点可以在比特币和 stratis 网络上运行。

Stratis 比特币基于 NBITCOIN 项目。

对于 Stratis 代币的 POS 支持,节点使用 Nstratis,这是 Nbitcoin 的 POS 实现。

.NET Core 是一个开源跨平台框架,支持在 Windows、MacOS 和 Linux 上开发应用程序和服务。

设计

模块化方法

区块链由许多组件组成目前比特币出块奖励,从验证块的完整节点到跟踪地址的简单钱包。 最终目标是开发一组 Nuget 包,实施者可以从中挑选他们需要的东西。

比特币

Stratis.Bitcoin.Core:运行轻节点的最低要求。

Stratis.Bitcoin.Store:存储块或将块转发给对等方。

Stratis.Bitcoin.MemoryPool:跟踪未决交易。

Stratis.Bitcoin.Wallet:发送和接收代币。

Stratis.Bitcoin.Miner:POS 或 POW

Stratis.Bitcoin.Explorer

以 .NET Core 的编程风格创建区块链:

varnode = newFullNodeBuilder().UseNodeSettings(nodeSettings).UseConsensus().UseBlockStore().UseMempool().AddMining().AddRPC().Build();node.Run();

下一步是什么

我们计划在 Stratis 比特币区块链上添加更多功能:侧链、私有/许可区块链、编译的智能合约、Ntumblebit/Breeze 钱包等等……

运行全节点

我们的全节点目前处于 alpha 阶段。

git 克隆 \srcdotnet 构建

在比特币网络上运行:

cd Stratis.BitcoinDdotnetrun

在 stratis 网络上运行:

cd Stratis.StratisDdotnetrun

免费C++学习资源、视频教程、职业规划、面试详解、学习路线、开发工具见我的主页

每晚8点直播,讲解C++编程技术。