创建一个简单的 P2P 网络

Creating a simple P2P network

我正在尝试通过在 P2P 网络中使用区块链来创建我自己的加密货币版本。我希望用户访问我的网站,然后下载一个可执行文件,允许他们加入网络并挖掘货币。我还希望我的网站 (c#) 显示区块链的更新分类帐。我做了很多研究,但收效甚微,试图了解如何构建 P2P 网络。

构造此可执行文件的推荐语言是什么?是否有任何建议的教程或示例?另外,我的网站如何访问通用账本?让我的网站服务器也加入P2P网络是否可行,或者P2P网络是否应该不断将账本发送到我的服务器?

我认为这与语言无关。可以在不同平台上构建的任何语言。实际上,我在 python 看到一本关于区块链实现的书。但也有关于 Java 的课程。

区块链是一项理解起来非常复杂的技术,更不用说用 C# 语言发明类似的东西了。

我可能想从使用 solidityEthereum 开始 类似于 JavaScript 的语言。

如果您想使用 C#,您可能需要查看 Nethereum (以太坊的 .Net 集成库)

正如 Dmitry 所提到的,这是与语言无关的。

关于 C#:我们在 .NET 中有 Bitcoin and Stratis full node implementations,这可能是您最好的参考。正如 Win 所说,这是一项复杂的技术,因此假设您是一个人做的话,那么期待多年的发展,直到您可以推出有缺陷的 alpha 版本。

你可能还想先获得一些经验,为此,看看这本书:Programming the Blockchain in C#

然后根据上述参考实现尝试构建您的产品。

What would be the recommended language to construct this executable?

历史上懒惰的山寨币开发者只是克隆了莱特币并更改了一些参数,因此 C++ 是大多数山寨币的编写语言,但同样:它与语言无关。

In addition, how would my website access the universal ledger?

这是你最小的问题。如果你成功地推出了一个替代品,那么到时候你就会知道了。

语言的选择取决于网络要求和验证要求。

对于完全去中心化的用例,需要更快的密码验证,因此机器本地语言提供速度优势(如 c++、golang)。

如果有任何中心化元素,如私有区块链、许可区块链、预挖、资产支持令牌、虚拟机区块链(如 evm、彩色硬币等),那么访问控制和开发要求将超过无许可和安全要求,因此语言应选择具有可用人力资源的 c#、java 等