自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

张童鞋

永远相信更美好的事情将会发生!

  • 博客(36)
  • 资源 (1)
  • 收藏
  • 关注

原创 fabric创建通道过程

创建通道1. Client 处理过程1.1. 发送创建通道的交易1.2. 获取通道的创世区块2. Orderer 处理过程2.1. 处理消息3. 参考资料创建通道的过程#mermaid-svg-8WQmaVrtCm690j6q .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-8WQ

2021-07-05 10:48:03 522

原创 使用 kubeadm 创建 v1.19.0 kubernetes 集群

1. 在所有节点上安装 docker kubelet kubelet kubeadm2. 初始化 master 节点3. 在 master 节点配置集群4. 在 master 节点上安装 pod 网络5. 添加 node 节点6. 参考资料本文所使用机器配置情况:主机名公网 IP内网 IP操作系统硬件配置用途k8s-master47.242.253.25172.31.117.60CentOS 7.7 64位双核/2GB内存/20GB硬盘master.

2021-03-06 16:12:35 398

原创 cron 定时执行脚本

1. 使用方法2. 查看 cron 时间表3. 一个神器cron 程序可以定时执行脚本命令。1. 使用方法具体使用方法是,首先编辑 cron 时间表:$ crontab -e该命令会打开一个文本编辑器,可以在编辑器中添加自定义 cron 时间表项目,修改完成后保存退出即可。cron 时间表使用格式:min hour dayofmonth month dayofweek command常用的定时执行脚本使用方法:15 10 * * * mycommand # 每天 10:1.

2021-01-25 21:28:47 2510

原创 搭建fabric开发环境

1. 准备运行 Fabric 所需工具2. 准备 Fabric 镜像、程序以及测试代码3. 运行一个简单的 byfn 测试网4. 参考资料1. 准备运行 Fabric 所需工具本文所述运行环境均在 centos 系统下进行。搭建开发环境需要安装以下工具:dockerdocker-composegitgolang安装 docker:$ curl -fsSL https://get.docker.com -o get-docker.sh$ sudo sh get-docker..

2021-01-14 20:19:14 1291

原创 fabric 主节点选举过程

1. 静态指定主节点2. 动态选举主节点3. 参考资料每个组织都有一个或多个主节点与排序节点进行连接,但是过多的节点与排序节点进行通讯无疑会占用过多的带宽。为了灵活利用带宽,Fabric 提供两种方式指定主节点:静态指定:系统管理员可以自定义配置一个或多个节点作为该组织的主节点;动态选举:节点可以通过选举选择一个节点作为主节点。这两种方式都可以通过修改 core.yaml 的 useLeaderElection 和 orgLeader 字段值指定主节点选择方式。useLeaderElec.

2021-01-14 17:13:52 688

原创 Fabric向现有组织中添加新节点

1. 生成新节点证书2. 添加新节点配置信息并启动3. 新节点加入通道4. 安装链码5. 参考资料向 fabric 网络中添加新节点是常见的业务需求,基本上需要以下几个步骤:生成新节点证书添加新节点配置信息并启动新节点加入通道安装链码以 fabric-sample 库中 v1.3 版本的 byfn.sh 建立的简单测试网为例进行操作。这个测试网络中包含两个组织,每个组织都有两个节点:org1:peer0.org1.example.compeer1.org1.exampl.

2021-01-14 14:17:14 2620 2

原创 以太坊地址生成过程

文章目录1 以太坊地址生成过程2 以太坊地址生成实例2.1 生成随机数2.2 私钥生成公钥2.3 计算公钥哈希值2.4 得到地址3 参考资料1 以太坊地址生成过程以太坊地址生成过程如下:生成 256 位私钥。将私钥转化为 secp256k1 非压缩格式的公钥,即 512 位的公钥。使用散列算法 Keccak256 计算公钥的哈希值,转化为十六进制字符串。取十六进制字符串的后 40 个...

2019-02-20 20:38:36 13025 11

原创 flask 正确处理布尔类型

文章目录1 flask 正确处理布尔类型2 参考资料1 flask 正确处理布尔类型Python3 将非空字符串统一转换为 True。>>> bool('True')True>>> bool('true')True>>> bool('False')True>&amp

2019-01-04 23:17:37 1549

原创 Python3 数据编码方式

文章目录1 Python3 的数据编码1.1 字符串1.2 字节串2 字符串与字节串的相互转化2.1 字符串转化为字节串2.2 字节串转化为字符串3 十六进制字符串3.1 十六进制字符串转化为字节串3.2 字节串转化为十六进制字符串4 参考资料1 Python3 的数据编码Python3 统一了编码方式,字符串就是 str,字节串就是 bytes。字符串 str 其实就是文本,统一使用 Uni...

2019-01-02 20:52:57 2006

原创 使用 Homebrew 发布软件

目录1 相关概念2 创建 Formula3 创建 Tap4 安装创建的软件5 参考资料1 相关概念Keg(酒桶):安装好的脚本、软件等;Cellar(酒窖):所有用 Homebrew 安装在本地的脚本、软件组成的集合;Formula(配方):定义如何下载、编译和安装脚本或软件的 Ruby 脚本;Tap:一个包含若干 Formula 的 GitHub 专案。2 创建 Formula...

2018-11-30 11:27:10 1368

原创 Ed25519算法

目录1 基础参数2 签名算法2.1 生成密钥对2.2 生成签名2.3 签名验证2.4 签名验证原理分析3 参考资料1 基础参数Ed25519采用的曲线方程为 y2=x3+486662x2+xy^2 = x^3 + 486662x^2 + xy2=x3+486662x2+x ,modulo p=2255−19modulo \ p = 2^{255} - 19modulo p=...

2018-11-27 20:50:29 12542

原创 国密SM2算法

目录1 前言2 基础参数3 密钥对生成4 签名算法4.1 预处理14.2 预处理24.3 生成签名4.4 签名验证4.5 签名验证原理5 参考资料1 前言比原链的智能合约支持国密算法的函数。SM2是国密标准的椭圆曲线加密算法,遵循以下SM2国家标准:GB/T 32918.1-2016GB/T 32918.2-2016GB/T 32918.3-2016GB/T 32918.4-2016...

2018-11-27 20:46:39 55374 10

原创 Go 测试函数

文章目录1 测试程序模板2 测试单个函数3 测试缓存4 参考资料1 测试程序模板func TestFunction(t *testing.T) { var tests = []struct { // Test table in string out string }{ {“in1”, “exp1”}, {...

2018-11-05 13:07:51 711

原创 FNV hash算法

FNV算法简介FNV算法属于非密码学哈希函数,它最初由Glenn Fowler和Kiem-Phong Vo于1991年在IEEE POSIX P1003.2上首先提出,最后由Landon Curt Noll 完善,故该算法以三人姓的首字母命名。FNV算法目前有三种,分别是FNV-1,FNV-1a和FNV-0,但是FNV-0算法已经被丢弃了。FNV算法的哈希结果有32、64、128、256、

2018-01-10 09:58:23 12569

原创 以太坊开发资源

前言本文主要总结以太坊开发的相关资源。本文所列举的开发资源有的需要翻墙才能正常访问。有些链接可能失效,我会不定期更新本文。

2017-05-16 09:54:58 5385 4

原创 智能合约的安全问题

前言本文主要总结以太坊智能合约的安全漏洞。新加坡国立大学的Loi Luu提出了现在的智能合约存在的几种安全漏洞1。然而,由于智能合约目前还只是初级阶段,相信各种安全问题会不断的发现。智能合约中的安全漏洞交易顺序依赖合约交易顺序依赖就是智能合约的执行随着当前交易处理的顺序不同而产生差异。例如,有两个交易T[i]和T[j],两个区块链状态S[1]和S[2],并且S[1]状态处理完交易T[j]后才能转化为

2016-11-03 16:52:26 8607

原创 Hello World——一个关于智能合约的信仰

前言任何程序员学习一个新的编程语言,一个最重要的仪式就是写出一个能输出Hello World!的程序。完成后,这才算打开一个新世界的大门。本文的步骤说明十分简单(但步骤完整),大家如果想要看详细的步骤说明,请参考智能合约编写实例这篇文章,里面的实例描述更加详细。打开测试网络的控制台输入以下命令:geth --datadir "~/ethdev" --dev console 2>> geth.log这

2016-11-03 09:48:50 3707 1

原创 智能合约编写实例

前言本文主要介绍智能合约的工作原理及其部署过程。合约部署流程一般来说,部署智能合约的步骤为1:启动一个以太坊节点 (例如geth或者testrpc)。使用solc编译智能合约。 => 获得二进制代码。将编译好的合约部署到网络。(这一步会消耗以太币,还需要使用你的节点的默认地址或者指定地址来给合约签名。) => 获得合约的区块链地址和ABI(合约接口的JSON表示,包括变量,事件和可以调用的方法

2016-11-03 09:44:27 42968 10

原创 Ubuntu安装卸载sublime text 3

命令行安装输入以下命令: shell sudo add-apt-repository ppa:webupd8team/sublime-text-3 sudo apt-get update sudo apt-get install sublime-text-installer 输入以下命令卸载: shell sudo apt-get remove sublime-text-install

2016-08-20 09:13:08 11228

原创 Ubuntu系统搭建以太坊开发平台过程

安装git,node,npm如果已经安装了最新版本的git,node,和npm,就跳过这一步。如果没有安装,请输入以下命令安装:sudo apt-get install gitsudo apt-get install nodejs-legacysudo apt-get install npm安装solc输入以下命令安装solc:sudo npm install -g solc安装完后,我们就会发

2016-08-19 23:52:36 27481 7

转载 《c++primer》学习随笔——预处理器变量

第一遍看这本书的时候,稍微扫了一遍这个内容,当时看起来有时生硬,不是很懂,等于跳了过去了。现在再看,感觉很有用,也基本能看明白了。说个题外话,有时候看有些内容,第一次看到的时候,觉得很难理解很难理解,就是反复看好几遍也理解不了。那么不妨就放下这段内容,也许你学过后面的内容的后,有天你再返回来看当初不懂的,就豁然开朗了,学习这本c++primer的过程中,真的有太多的这种体会了。开始正题:

2016-02-21 20:18:39 574

原创 由“error string in namespace std does not name a type”错误引发

今天学习c++时遇到一个诡异的现象:当编译如下代码时编译器显示错误为:error: 'string' in namespace 'std' does not name a type程序如下:struct sales_data{ std::string bookNo; std::string bookName; unsigned int count; double price;

2016-02-21 17:34:45 26127

原创 算法导论习题2.1-4

算法导论2.1-4的问题描述和解答为:Consider the problem of adding two n-bit binary integers, stored in two n-element arrays A and B. The sum of the two integers should be stored in binary form in an (n + 1)-e

2015-10-27 10:07:49 806

原创 解决python源代码中编码问题

python源代码中如果含有中文字节,则有可能在执行过程中出现错误。这个原因是源代码的编码方式不同。解决方法是在源代码开头前两行增加一条语句#-*- coding: UTF-8-*-或者#coding:utf8 PS:这一句代码必须加在源代码前两行!!放在第三行都不行!! 然而,在cmd中显示的中文是gbk编码的,因此,如果程序有中文输出的时候仍然会产生乱码。解

2015-10-19 21:07:42 1554

原创 windows平台上将python源代码打包成exe

以下总结是在windows平台测试的1、准备工作首先需要下载Pyinstaller和pywin32这两个软件。pyinstaller官方地址:http://www.pyinstaller.org/github下载地址:https://github.com/pyinstaller/pyinstaller/releasesPywin32下载地址:http://sou

2015-10-17 17:22:02 1815

原创 更改cmd的默认路径

1、在桌面上建立cmd的快捷方式,右击选择属性。2、在快捷方式选项卡中的起始位置中输入默认路径就行了。如:D:\Python

2015-10-17 10:22:50 760

转载 pythonmode英文说明书

pythonmode是使用vim开发python的重要插件。现将pythonmode的使用说明书英文版全文收录如下:*pymode.txt* *python-mode.txt* *pymode* *python-mode* ____ _ _ ____ _ _ _____ _ _ __ __ _____ ____ __

2015-10-14 12:57:43 2662

转载 vim打开文件时显示行号

本文转载自:http://blog.csdn.net/weilaiqing/article/details/6403366vim打开文件是,默认不提示行号。至于显示行号的用途,因人而异linux下一个主机可能有N个账户。对于配置分为两种:仅配置当前账户,配置所有账户vim配置文件路径(Centos  5.5 final ):   /etc/v

2015-10-07 19:21:15 790

转载 vim配置及插件安装管理(超级详细)

1写在前面 Linux下编程一直被诟病的一点是: 没有一个好用的IDE, 但是听说Linux牛人, 黑客之类的也都不用IDE. 但是对我等从Windows平台转移过来的Coder来说, 一个好用的IDE是何等的重要啊, 估计很多人就是卡在这个门槛上了, "工欲善其事, 必先利其器"嘛, 我想如果有一个很好用的IDE, 那些Linux牛人也会欢迎的. 这都是劳动人民的美好愿望罢了

2015-10-07 17:50:03 690

原创 加快PDF打印输出到OneNote的速度

在使用OneNote将PDF文件输出到笔记中时,如果PDF页码较多就会减慢打印输出的速度。在我的电脑中,打印输出152页的文档需要35分钟!这种速度无疑令人失去使用该功能的欲望。今天,无意中我发现了如何使用加快打印输出速度的方法。        在OneNote中,依次打开文件→选项→高级→打印输出。取消“在多个页面上插入长打印输出”左边的勾选。此时如果打印输出时就会询问在

2015-09-23 22:32:28 10963 1

原创 BT5在虚拟机中无法上网的解决方法

解决此问题的方法与Linux在虚拟机中无法上网的解决方法类似。但是,在选择BT5的网络代理设置(networkproxy)时直接选择direct Internet connection就行了,其它设置与Linux相同。如图:<img width="576" height="513" alt="计算机生成了可选文字:xNetworkProxyPreferencesLOCati

2015-09-23 19:06:28 2248

转载 Linux在虚拟机中无法上网的解决方法

转载自:http://jingyan.baidu.com/article/6c67b1d68facbb2786bb1e7b.html 关于BT5在虚拟机中无法上网的解决方法与此类似,由于BT5使用的是使用Ubuntu作为原型开发的,因此基础设置与此类似。 使用虚拟机安装Linux系统时,需要简单的对虚拟机和Linux系统进行设置才能正确连接主机网络。按照以下步骤进行设置即可

2015-09-23 18:55:20 17376 2

原创 常用的Linux命令

最近刚学习Linux的使用,对照着书上的教程,边学习边实践,目前总结的常用命令如下表所示。命令含义备注ls显示当前目录所有目录和文件目录为蓝色,普通文件为黑色,可执行文件为草绿色,淡蓝色为链接ls -F显示当前目录所有目录和文件(后面加标识符)目录

2015-09-19 21:37:44 563

原创 Linux命令行与图形界面切换方法

1.实时切换 1.1 命令行->图形 startx 1.2 图形->命令行 Ctrl+Alt+F1--F6 2.启动默认 2.1 启动进入命令行 修改/etc/inittab文件 "id:3:initdefault" 2.2 启动进入图形界面 修改/etc/inittab文件 "id:5:initdef

2015-09-17 20:31:39 859

转载 消除VS2010创建C/C++项目时自动生成的臃肿文件的方法

使用VS2010建立C++解决方案时,会生成SolutionName.sdf和一个叫做ipch的文件夹,这两个文件再加上*.pch等文件使得工程变得非常的庞大,一个简单的程序都会占用几十M的硬盘容量,可惜毕竟硬盘还没有廉价到免费的地步。那么,该怎么解决呢?其实可以关闭它。方法:Tools->Options->Text Editor->C/C++->Advanced->Dis

2015-09-16 09:24:04 1415

原创 采用CRC查表法快速生成CRC的函数

//CRC查表法//索引CRC的方式比对报文缓存区的每个新字符都计算新的CRC值得方法更快捷。//声明两个参数//unsigned char *puchMsg; //含有生成CRC所使用的二进制数据的报文缓存区指针。//unsigned short usDataLen; //报文缓存区中的字节数。//CRC生成函数unsigned short CRC16(puchMsg,usDataLen) /*

2014-05-21 10:23:14 3273

算法导论英文第三版(附答案)

算法导论英文第三版,并且附有部分答案。并非扫描版。

2015-10-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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