主页 > token.im > 学习如何自己搭建一条比特币私链(一)

学习如何自己搭建一条比特币私链(一)

token.im 2023-08-24 05:11:16

套索工具怎么添加节点_如何添加btc节点_treeview 添加节点

站长小佳的博客

说到区块链,我们自然会想到比特币,那么比特币是如何运作的呢?

作为一个对比特币一无所知的纯新手,这几天查阅了很多资料和文章,可以说是吐了!

头晕是我最大的收获,还好我没有完全倒下。 要说区块链和比特币的知识真是浩瀚无边,我就像一片孤零零的叶子在这片海中漂流。

这份如同经文一般的文件中,充斥着一堆堆复杂的术语和概念。 我费尽心思去理解肤浅的,并结合广泛使用的Bitcoin Core

,也算是初登这高不可攀、令人望而生畏的院墙大门。

如果你和我一样,对比特币不是很了解,只是出于好奇想要一探究竟,那么恭喜你,你找到了一个组织!

接下来,我将通过自己的实际操作,帮助朋友们入门,希望能一窥比特币的全貌。

下载比特币核心程序 比特币核心

要想学东西,就得和真实的东西打交道,否则,就无法建立概念,没有概念谈不上提高。

所以我们一上来就拿出真货:Bitcoin Core

.

这个东西叫比特币核心程序,每个比特币核心

它可以作为服务端,也可以作为客户端,我们所有的相关操作都是通过它来完成的。

当然,还有很多其他程序可以实现同样的功能,但它是使用最多的一个。

下载地址有两个,都是一样的。 心情好就选一个,心情不好就选第二个。

尽量选择最新的22.0

版本,最好在后续测试中统一各个节点的版本。

比特币核心

它支持多个平台。 接下来,我将首先使用Windows

演示一下,毕竟用的人多,再说说Linux

如何安装和操作。

准备好下载了吗?

如何添加btc节点_treeview 添加节点_套索工具怎么添加节点

呃,先别着急安装,先了解一些概念和原理,不然安装了也不知道怎么用是吧?

相关概念还是要讲一下

在这里我只是简单谈谈我个人对比特币需要如何运作的理解。

OK,我们先搞清楚什么是区块链。

区块链必须由多个区块组成,其中包含交易信息等非常丰富的内容。

当这些块串在一起时,就可以称为一个节点,即一个块就是一个节点。

我的理解是区块链是由很多节点组成的(前面提到的Bitcoin Core

可以做一个节点程序),而且每个节点的地位都是平等的,没有人是老大和小弟,所以一定没有人是服务端,也没有人一定是客户端。

所有节点都包含交易信息等内容,某个节点的故障不会导致整个网络出现问题,这就是所谓的去中心化。

节点以块的形式首尾相连,父块的哈希值记录在子块头上。 所有这些节点最终形成了我们看到的区块链。

然后我想在这里强调一下,目前就比特币而言,有多个网络。

可以简单理解为主网mainnet

+ 多个测试网络。

测试网可以简单的分为testnet

,图章

并注册

.

测试网

它与主网基本相同,但仅用于测试。 目前和主网一样。 只有一个这样的网络。 由于种种原因,已经迭代到第三代了。 重装了3次就可以理解了。

图章

用于开发等用途,好像用的不多。

最终注册测试

如何添加btc节点_套索工具怎么添加节点_treeview 添加节点

是本文的重点。 意思是形成一个局域网式的封闭本地区块链,也叫私有链。

我们以后的测试就可以用这个方法,自说自话,想怎么玩就怎么玩,没有任何损失和伤害,重头再来也没什么大不了的。

虽然你也可以加入测试网

但是如何添加btc节点,我们终究是在学习。 先在我们的局域网内熟悉一下,再到外面去,才是上策。

嗯,比特币里面还有很多概念名词,比如比特币交易中UTXO的使用

等等如何添加btc节点,说实话,我还是头晕,所以对不起,但我只能用够了说出来。

接下来我们来实践一下,相信对大家理解这些概念会有帮助。

安装比特币核心程序Bitcoin Core

我们先看看Windows

接下来就是如何安装和使用了,安装基本上就是一路走来的下一步,我就不啰嗦了,看图。

treeview 添加节点_如何添加btc节点_套索工具怎么添加节点

treeview 添加节点_套索工具怎么添加节点_如何添加btc节点

如何添加btc节点_套索工具怎么添加节点_treeview 添加节点

如何添加btc节点_treeview 添加节点_套索工具怎么添加节点

套索工具怎么添加节点_如何添加btc节点_treeview 添加节点

在最后一步,在完成安装之前,一定要删除并运行 Bitcoin Core

滴答声。

原因很简单,第一次启动时,会使用默认配置连接比特币主网mainnet

,这有违我们的初衷,还是先按一下吧,等我们修好了再开也不迟。

安装比特币核心

它可以随时运行,当我们需要连接不同的网络时,我们可以在程序末尾添加相应的参数。

比如我们要连接测试网

如何添加btc节点_treeview 添加节点_套索工具怎么添加节点

,就是比特币测试网,那么可以在程序后面加上-testnet

.

treeview 添加节点_如何添加btc节点_套索工具怎么添加节点

而我们的最终目标也很简单,就是想连接到我们自己的regtest

(回归测试),即封闭的私有链。

所以很简单,我们照猫画虎,在程序后面加上-regtest

可以实现在私有链网络中运行的目的。

Linux

下面的安装和使用

实际上比Windows好

安装有点复杂,但没什么大不了的。

官方安装参考链接:

先安装一些依赖。

Fedora/CentOS/洛奇

请参阅下文。

sudo dnf install gcc-c++ libtool make autoconf automake python3
sudo dnf install libevent-devel boost-devel
###sudo dnf install libdb4-devel libdb4-cxx-devel
sudo dnf install sqlite-devel
###sudo dnf install miniupnpc-devel libnatpmp-devel
###sudo dnf install zeromq-devel
sudo dnf install systemtap

Debian/Ubuntu

请参阅下文。

sudo apt-get install build-essential libtool autotools-dev automake pkg-config bsdmainutils python3
sudo apt-get install libevent-dev libboost-dev libboost-system-dev libboost-filesystem-dev libboost-test-dev
sudo apt install libsqlite3-dev
sudo apt-get install libzmq3-dev
sudo apt install systemtap-sdt-dev

需要图形界面? 然后安装Qt5

所需的组件。

Fedora/CentOS/洛奇

如何添加btc节点_套索工具怎么添加节点_treeview 添加节点

请参阅下文。

sudo dnf install qt5-qttools-devel qt5-qtbase-devel
sudo dnf install qt5-qtwayland

Debian/Ubuntu

请参阅下文。

sudo apt-get install libqt5gui5 libqt5core5a libqt5dbus5 qttools5-dev qttools5-dev-tools
sudo apt install qtwayland5
sudo apt-get install libqrencode-dev

下载源码包。

wget https://github.com/bitcoin/bitcoin/archive/refs/tags/v22.0.tar.gz

解压源码包,切换到安装目录。

tar zxvf v22.0.tar.gz
cd bitcoin-22.0

比特币核心

使用伯克利数据库

,官方推荐4.8

版本,所以按照官网操作,进入解压目录,执行以下命令。

./contrib/install_db4.sh `pwd`

参数密码

伯克利数据库

安装到当前目录(/sysadm/bitcoin-22.0/db4

), 所以你也可以用你想要的目标目录替换它。

安装完成后会提示用户记住db4如下

实际执行编译命令时必须指定数据库组件参数路径的安装路径,后面会再提到。

db4 build complete.

When compiling bitcoind, run `./configure` in the following way:

export BDB_PREFIX='/sysadm/bitcoin-22.0/db4'
./configure BDB_LIBS="-L${BDB_PREFIX}/lib -ldb_cxx-4.8" BDB_CFLAGS="-I${BDB_PREFIX}/include" ...

另外执行这个命令可能会报错,因为没有安装补丁

treeview 添加节点_套索工具怎么添加节点_如何添加btc节点

命令。

dnf install patch

后者就简单了,先自动生成编译文件。

./autogen.sh

然后,如前所述,指定db4

配置路径。

export BDB_PREFIX='/sysadm/bitcoin-22.0/db4'
./configure BDB_LIBS="-L${BDB_PREFIX}/lib -ldb_cxx-4.8" BDB_CFLAGS="-I${BDB_PREFIX}/include"

最后编译安装。

make
make install

安装完成后,执行文件放在如下目录。

/usrlocal/bin/bitcoin-cli
/usrlocal/bin/bitcoin-qt
...
/usrlocal/bin/bitcoind

配置文件bitcoin.conf

.bitcoin在用户目录下的路径

在目录中。

/home/user/.bitcoin/bitcoin.conf
~/.bitcoin/bitcoin.conf

下一个

OK,前面说了,初始运行程序缺少自定义配置,如果直接启动bitcoin-core

,然后它可能会要求你配置文件,或者它可能会按 mainnet

主网去连接。

如何添加btc节点_套索工具怎么添加节点_treeview 添加节点

显然,我们必须手动给它一些配置,这样它才能按照我们想要的方向执行。

那么如何自定义配置来实现我们想要的呢?

请看下一篇分解!

原文链接:

treeview 添加节点_套索工具怎么添加节点_如何添加btc节点