extension point

BUIP039 Upgrade via extension point https://github.com/BitcoinUnlimited/BUIP/blob/master/039.mediawiki 概要 迄今为止,仅有硬分叉和软分叉两种方式来升级比特币网络。两种方式各有缺点,软分叉通过...

2017-12-29 14:44:15

阅读数 633

评论数 0

extension block

extension block https://github.com/tothemoon-org/extension-blocks/blob/master/spec.md 描述:不需要改变任何现存的共识规则,来增大比特币的交易吞吐量。 动机:比特币网络的吞吐量与它重新定向和拒绝服务限制的共识规则相...

2017-12-23 14:28:35

阅读数 294

评论数 0

bitcoin rpc command

bitcoin rpc command创建交易 bitcoin-cli createrawtransaction “[{\”txid\”:\”myid\”,\”vout\”:0}]” “{\”address\”:0.01}” bitcoin-cli createrawtransaction “[{...

2017-12-23 11:20:56

阅读数 6256

评论数 1

C++ typedef typename 作用

C typedef typename 作用vectorsize_type为什么使用typename关键字总结C++ typedef typename 作用* C++的一些语法让人看着费解,其中就有: ``` typedef typename std::vector<T>::size_...

2017-11-25 15:52:34

阅读数 290

评论数 0

C++构造函数、析构函数与抛出异常

请问构造函数后面的throw()含义 : 在构造时,可能会抛出异常 使用时,要注意用try和catch 解释:标准C++中定义构造函数是一个对象构建自己,分配所需资源的地方,一旦构造函数执行完毕,则表明这个对象已经诞生了,有自己的行为和内部的运行状态,之后还有对象的消亡过程(析构函数的执行)。...

2017-11-25 15:30:42

阅读数 222

评论数 0

C++之 lower_bound And upper_bound And insert

1. 代码#include <set> #include <iostream> int main() { std::set<int> c = {1, 2, 3, 4, 5, 6, 7, 8, 9}; auto item = c.lower_b...

2017-10-11 11:24:50

阅读数 159

评论数 0

C++ 之 constexpr And shared_ptr

简介 constexpr : 指定变量或函数的值可以出现在常量表达式中。 解释 constexpr 标识符声明可以在编译时 评估变量或函数的值。然后可以在只允许编译时的常量表达式的地方 使用这样的变量或函数(只要提供适当的函数参数)。一个constexpr说明符在对象声明时使用,暗示该对象为con...

2017-09-22 11:24:46

阅读数 148

评论数 0

Language Mechanics On stacks And Pointers--golang

前言 本节专注于:栈和指针。 介绍 当使用指针不正确时,可能会产生bug或性能问题。特别是当写多线程软件时。所以很多试图从开发者的角度去隐藏指针。然而,如果你想使用go去编程,你没有任何方式可以去避免它。对指针没有很深的理解,你将很难去写出干净,简洁,高效的代码。 框架界限引用 https://w...

2017-09-22 10:44:23

阅读数 206

评论数 0

C++之 volatile

1. 介绍 像const一样,volatile是一个类型修饰符。 volatile修饰的数据,编译器不可对其进行执行期寄存于寄存器的优化。这种特性,是为了满足多线程同步、中断、硬件编程等特殊需要。遇到这个关键字声明的变量,编译器对访问该变量的代码就不再进行优化,从而可以提供对特殊地址的直接访问。 ...

2017-09-21 10:17:45

阅读数 142

评论数 0

Bitcoin Mempool

Bitcoin MempoolMempool 的基本概念: mempool的功能: 节点存储待处理交易的交易池。 一个交易广播到交易网络后,被大部分节点验证通过后;会存入交易池中,等待矿工将它打包到下一个块中; 每个节点由于硬件设施不同,导致各自的交易池互不相同: 1 mempool size ...

2017-09-13 18:24:58

阅读数 1179

评论数 0

C++之 mutable

mutable 关键字 1. 在C++中,mutable是为了突破const的限制而设置的。被mutable修饰的变量,将永远处于可变的状态,即使在一个const函数中,甚至结构体变量或者类对象为const,其mutable成员也可以被修改。struct ST { ...

2017-09-11 23:40:40

阅读数 271

评论数 0

openssl C语言编码实现rsa加密

首先介绍下命令台下openssl工具的简单使用:   1)生成一个密钥:   openssl genrsa -out test.key 1024   这里-out指定生成文件的。需要注意的是这个文件包含了公钥和密钥两部分,也就是说这个文件即可用来加密也可以用来解密。后面的1024是生成密钥的...

2017-09-03 22:32:56

阅读数 3057

评论数 3

精通比特币(读后总结)

精通比特币1. 术语: 内容 区块: 一个区块就是若干交易数据的集合,它会被标记上时间戳和之前一个区块的独特标记。 区块头经过哈希运算后会生成一份工作量证明,从而验证区块中的交易。有效的区块经过全网络的共识后会被追加到主区块链中。 确认: 当一项交易被区块收录时,我们可以说它有一次确认。矿...

2017-09-01 11:39:07

阅读数 4268

评论数 1

比特币白皮书(阅读总结)

比特币白皮书比特币钱包的使用 比特币钱包(Electrum) 1 Electrum 钱包入门使用教程 http://www.8btc.com/bitcoin-electrum-intro 2 你好 简化的支付确认SPV (Simplified Payment Verification): 比特币...

2017-09-01 11:37:13

阅读数 2406

评论数 0

比特币协议杂谈(2)

比特币协议 通用标准: 1 hashes 比特币中的哈希需要被被计算两次。 哈希算法,大多数:SHA-256; ROPEMD-160 在需要较短哈希时被使用(例如: 当创建一个比特币地址),ROPEMD-160: 先计算 sha-256, 再对上一个哈希结果计算 ripemd-160s。 2...

2017-09-01 11:27:30

阅读数 1945

评论数 0

Go TCP网络程序编写

案例: client和server程序编写: 面向长连接的编程 http://files.cnblogs.com/files/yyx1-1/Go_TCP.7z 博客: 自定义TCP的数据包 二进制协议, 将发送的数据包按照二进制的格式进行组包发送, 采用二进制协议的好处在于, 可以进行跨语言 交...

2017-08-01 12:54:17

阅读数 235

评论数 0

Golang gc演进

GC 优化GC 的方向:尽量不要大量创建对象, 不要频繁创建对象. 这个道理在所有带gc的编程语言都通用; 提高对象重用和避免不必要的对象创建; 解决Go语言程序稳定性的问题:内存泄漏(Go语言也提供自我管理内存的方式), 使用memprof来定位; 提高程序的运行性能, 使用cpuprof 来定...

2017-08-01 11:55:37

阅读数 579

评论数 0

panic: reflect: reflect.Value.SetUint using value obtained using unexported field(go语言)

go语言中在用binary.Read(),把二进制映射为结构体时,如果出现panic: reflect: reflect.Value.SetUint using value obtained using unexported field类似的错误,是要映射的结构体成员没有大写造成的,小写是私有,大...

2017-08-01 10:40:35

阅读数 357

评论数 0

C++ RALL机制详解

RAII 是 resource acquisition is initialization 的缩写,意为“资源获取即初始化”。它是 C++ 之父 Bjarne Stroustrup 提出的设计理念,其核心是把资源和对象的生命周期绑定,对象创建获取资源,对象销毁释放资源。在 RAII 的指导下,C+...

2017-07-25 22:29:46

阅读数 1450

评论数 0

OpenSSL AES, RSA 算法加密本地文件

该工作采用OpenSSL库作为底层加密支持; 采用Qt做界面处理; 使用了 AES与RSA加密算法; 版本支持: Linux 64bit; Linux 32bit; 包含功能: 生成公私钥对; 对单文件进行加密,加密后的文件存储在与文件相同的目录下; 对单文件进行解密,解密后的文件存储在与文件相...

2017-07-24 16:17:17

阅读数 596

评论数 0

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