排序:
默认
按更新时间
按访问量

Solidity智能合约案例——投票存在的问题

通过对Solidity官方文档的学习,发现投票案例代码有些不够严谨,简要做以下说明。 1. 调用者问题 在vote函数中,如果是一个没有投票权的地址(假设A地址)调用了vote 函数,代码也能顺利执行。 首先,A地址虽然没有被chairperson 赋予投票权,但是代码也能正常获取Voter...

2018-08-12 17:16:28

阅读数:12

评论数:0

比特币中的Base58和Base58Check编码

为了更简洁方便地表示长串的数字,使用更少的符号,计算机系统会使用一种以数字和字母组成的大于十进制的表示法,比如十六进制,一个同样的数字,它的十六进制表示就会比十进制表示更加简洁。Base64使用了26个小写字母、26个大写字母、10个数字以及两个符号(“+”和“/”),用于在电子邮件这样的基于文本...

2018-07-23 15:19:46

阅读数:136

评论数:0

公钥私钥以及比特币地址的产生过程

一个比特币钱包包含一系列的密钥对,每个密钥对都有一个公钥(PublicKey)和私钥(PrivateKey)。私钥是由一个随机产生的数字串经过哈希的十六进制字符串,通过椭圆加密算法可以用私钥产生公钥,然后就可以通过公钥产生比特币地址。从私钥到公钥再到比特币地址是一个单向产生的过程,也就是说不能反向...

2018-07-23 14:00:03

阅读数:85

评论数:0

Ubuntu实现全局代理

本教程旨在实现Ubuntu系统终端翻墙,在此不再赘述浏览器的翻墙方法,无论你是使用的是终端命令还是GUI的Shadowsocks - QT5,都需要先启动Shadowsocks。 安装配置proxychains 全局翻墙通过proxychains实现,即将任何程序和ss的proxy建立链接,原...

2018-07-04 15:42:32

阅读数:131

评论数:2

Ubuntu命令卸载软件

1.打开一个终端,输入dpkg --list ,按下Enter键,终端输出以下内容,显示的是你电脑上安装的所有软件。 2.在终端中找到你需要卸载的软件的名称,列表是按照首字母排序的。 3.在终端上输入命令sudo apt-get --purge remove 包名(--purge是可选...

2018-07-01 20:31:06

阅读数:105

评论数:0

HyperLedger Fabric - 超级账本(10)简单的资产链码(chaincode)

应用程序是一个基本样本链代码,用于在分类账上创建资产 安装Go及Docker, Docker-compose, 并配置Go相应的环境变量 创建目录 为chaincode应用程序创建一个目录作为其子目录 $ mkdir -p $GOPATH/src/test $ cd $GOPATH/...

2018-06-26 12:46:25

阅读数:159

评论数:0

HyperLedger Fabric - 超级账本(9)区块链应用开发

简介 数字货币曾是区块链技术的唯一应用场景 对智能合约的支持突破了场景限制, 丰富了区块链应用的适用范围, 可以支持多行业、大规模的商业应用 区块链应用 区块链应用: 一般由若干部署在区块链网络中的智能合约, 以及调用这些智能合约的应用程序组成 用户专注于与业务本身相关的应用程序 ...

2018-06-26 11:45:52

阅读数:89

评论数:0

HyperLedger Fabric - 超级账本(8)Node测试

node测试 关闭网络 $ sudo ./byfn.sh -m down 进入到fabric-samples/fabcar目录中 $ cd ../fabcar/ $ ls 如果是完整的环境,目录中应该包含如下文件: enrollAdmin.js invoke...

2018-06-26 11:42:27

阅读数:79

评论数:0

HyperLedger Fabric - 超级账本(7)Fabric CA 应用与配置

简介 Fabric CA项目是超级账本Fabric内的MemberService组件, 对网络内各个实体的身份证书的管理, 主要实现: 负责Fabric网络内所有实体(Identity)的身份管理, 包括身份的注册、注销等 负责证书管理, 包括ECerts(身份证书)、TCerts(交易证书...

2018-06-25 16:13:17

阅读数:166

评论数:0

HyperLedger Fabric - 超级账本(6)转换配置&添加组织到channel

configtxlator转换配置/添加Org组织到channel 设置环境 进入到fabric-samples/first-network目录中, 执行.byfn.sh -m down关闭网络,清理之前的任何环境 $ cd $HOME/hyfa/fabric-samples/fir...

2018-06-25 08:39:54

阅读数:140

评论数:0

HyperLedger Fabric - 超级账本(5)使用多通道

使用多通道 $ cd ~/hyfa/fabric-samples/chaincode-docker-devmode $ sudo docker-compose -f docker-compose-simple.yaml down $ cd ../first-network 创...

2018-06-22 11:29:07

阅读数:203

评论数:0

HyperLedger Fabric - 超级账本(4)链码的概念与使用

概念: Chaincode: 链上代码, 简称链码, 一般是指用户编写的应用代码 链码被部署在Fabric网络节点上, ​ Peer 节点 ​ – 背书节点 ​ – commit节点 ​ – Leader节点 ​ – 锚节点 运...

2018-06-22 11:26:11

阅读数:214

评论数:0

HyperLedger Fabric - 超级账本(3)测试链码

测试链码 确定进入CLI容器中 $ sudo docker exec -it cli bash Peer加入应用通道后, 可以执行链码相关操作,进行测试 链码在调用之前, 必须先经过安装和实例化两个步骤, 部署到Peer节点上. 检查环境变量是否正确设置 echo $CHANN...

2018-06-22 11:13:03

阅读数:206

评论数:0

HyperLedger Fabric - 超级账本(2.2)启动网络 - 手动

启动网络手动实现 实现步骤 生成组织关系和身份证书 确定是在 fabric-samples/first-network 路径下 $ cd hyfa/fabric-samples/first-network/ 为fabric网络生成指定拓扑结构的组织关系和身份证书 $...

2018-06-20 17:11:47

阅读数:72

评论数:0

HyperLedger Fabric - 超级账本(2.1)启动网络 - 自动

进入对应目录 $ cd fabric-samples/first-network 在first-network目录下有两个自动化脚本byfn.sh和eyfn.sh, 这两个脚本的启动顺序是先执行byfn.sh再执行eyfn.sh(eyfn.sh不是必须的,eyfn.sh的作用稍后介绍) 查看...

2018-06-20 11:16:31

阅读数:105

评论数:0

HyperLedger Fabric - 超级账本(1)环境搭建

环境搭建 快速入门: http://hyperledger-fabric.readthedocs.io/en/release-1.1/getting_started.html 前提 安装git $ sudo apt update $ sudo apt install git ...

2018-06-19 11:19:56

阅读数:123

评论数:0

以太坊源码解析 - 以太坊P2P协议

创建P2P server func (n *Node) Start() error { ... // Initialize the p2p server. This creates the node key and // discovery databases. ...

2018-06-18 22:14:14

阅读数:368

评论数:0

公钥基础设施( PKI )

什么是证书 要开车得先考驾照,驾照上面记有本人的照片、姓名、出生日期等个人信息,以及有效期、准驾车辆的类型等信息,并由公安局在上面盖章。我们只要看到驾照,就可以知道公安局认定此人具有驾驶车辆的资格。 公钥证书( Public-Key Certificate, PKC )其实和驾照很相似,里面记...

2018-06-03 15:34:57

阅读数:88

评论数:0

椭圆曲线加密算法

椭圆曲线加密算法,即:Elliptic Curve Cryptography,简称ECC,是基于椭圆曲线数学理论实现的一种非对称加密算法。相比RSA,ECC优势是可以使用更短的密钥,来实现与RSA相当或更高的安全。据研究,160位ECC加密安全性相当于1024位RSA加密,210位ECC加密安全性...

2018-06-03 15:34:36

阅读数:156

评论数:0

实现数字签名

数字签名算法(DSA) 数字签名算法(DSA,Digital Signature Algorithm),是一种公开密钥算法,不能用于加密,只能用于数字签名。主要用作为接收者验证数字的完整性和数据发送者的身份,DSA算法的安全性基于解离散对数的困难性。 package main impor...

2018-06-03 15:34:03

阅读数:51

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭