Python implementation of the helios protocol node

py-helios-node的Python项目详细描述


Python3.6

这是太阳风结节的β期。目前在 积极开发尚未完成。

安装

py helios节点安装说明:

  1. 确保安装了正确版本的python。这个 版本列在此文档顶部。注意:不要 将系统python从2升级到3,因为这可能会导致 问题。相反,我们建议安装一个新版本的python 使用pyenv。要安装pyenv, 使用找到的安装脚本 here。为了 完整性,我们将在此处总结当前设置步骤:

    1. 安装

      $ curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
      
    2. 编辑.bashrc

      $ vi ~/.bashrc
      

      添加行

      exportPATH="~/.pyenv/bin:$PATH"eval"$(pyenv init -)"eval"$(pyenv virtualenv-init -)"
    3. reload.bashrc

      $ source ~/.bashrc
      
    4. 安装python 3.6

      $ pyenv install 3.6.5
      
  2. 安装git

    $ sudo apt install git
    

    $ sudo yum install git
    
  3. 克隆此回购协议

    $ git clone https://github.com/Helios-Protocol/py-helios-node
    
  4. 设置Python环境

    $ cd py-helios-node
    $ pyenv local3.6.5
    
  5. 安装Helios节点

    $ pip3 install -e .
    
  6. 确保已卸载RLP的慢速版本,并安装 快的那个的新拷贝。这将强制所有外部库 使用RLP切换到快速的那个。

    $ pip3 uninstall rlp
    $ pip3 uninstall rlp-cython
    $ pip3 install rlp-cython
    

配置

helios协议一致性机制部分基于pos。 要求所有节点都与具有 非零桩才能运行。所以此时,您必须配置 节点软件,使用您的钱包作为硬币的来源来赌注。

  1. 创建密钥库文件。这是一个加密文件,用于存储 私钥。你可以用我们的钱包创建这个 被释放。但是现在,你可以用 MyEtherWallet,然后保存钱包 文件。此文件将与Helios协议一起使用。
  2. 将keystore文件放在helios/keystore目录中
  3. 配置节点以使用密钥库文件。复制 helios/helios_config.template.py到helios/helios_config.py。那么 编辑新文件并将密钥库文件的文件名告知 使用。

打开防火墙中的端口

节点软件需要有一个开放的通信路径 网络上的其他节点。如果启用了防火墙软件,则 作为iptables,您可能需要打开一些端口来确保这一点。这个 默认安装的ubuntu和debian可能已经有了 端口打开。其他发行版(如centos)可能关闭了大多数端口 默认情况下。

debian和ubuntu

$ sudo iptables -I INPUT -p tcp -m tcp --dport 30303 -j ACCEPT
$ sudo iptables -I INPUT -p tcp -m tcp --dport 30304 -j ACCEPT
$ sudo iptables-save

CentOS 7

$ sudo firewall-cmd --permanent –zone=public --add-port=30303/tcp
$ sudo firewall-cmd --permanent –zone=public --add-port=30304/tcp
$ sudo firewall-cmd --reload

启动节点

$ helios

然后在提示时输入密钥库密码。这个密码永远不会 保存后,它只用于最初解密密钥库文件。

这份文件还在编写中。更多细节将很快公布。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
升级到windows 10后java Spring应用程序失败   java从研究出版物中提取摘要(.txt)   java JavaFX饼图未显示   java我设置了一个变量的值,但是当我使用get时,参数为null   java E优先级队列的预期操作时间   java MySQL左连接和组连接返回重复和中断数据   java新maven项目   java拆分MetaR/TAF   java随机。nextInt()正在返回相同的数字   BinaryOperator的java标识   java我想在ListView中没有项目时删除选项菜单(显示emptyView)?   java通过Sling通过AEM中的路径管理两个相同的servlet   命名查询中带“CONCAT”的java“SUBSTR”导致异常“SUBSTR”的参数计数无效?   java我正在尝试根据单元格值更改行颜色   java Hibernate在保存对象时生成mysql错误   java XmlSerializer。setProperty引发异常   java字符串和hashsetmembership匹配