Bitguai.com

区块链技术丨改变世界
做高价值的区块链资讯媒体
比特币源码分析:txdb模块(三)

比特币源码分析:txdb模块(三)

阅读(4497) 评论()

前一篇文章主要介绍了,txdb 的一个整体逻辑,本文将详细描述 txdb 模块与 leveldb 的交互,以及对 leveldb 的封装。上一篇文章提到,在 dbwrapper.h 的 CDBWrapper 是对 lev...

txdb 源码分析系列(二)

txdb 源码分析系列(二)

阅读(3708) 评论()

本文主要从整体逻辑方面,抽象 txdb 模块的代码构建逻辑。首先 txdb 模块主要是用来实现 block 和 utxo 两个模块的落盘逻辑,所以我们将分为两个大的部分,来对其逻辑一一梳理。原始数据块首先,我们通过网络接...

比特币源码分析:txdb模块(一)

比特币源码分析:txdb模块(一)

阅读(5481) 评论()

本小节主要介绍 txdb 以及其所引用到的代码中一些常量所表示的含义。在 txdb.cpp中,我们能够看到其定义了很多 char 类型的常量:static const char DB_COIN = 'C';static ...

BIP125:交易信号的添加

BIP125:交易信号的添加

阅读(4360) 评论()

概述现在的许多节点不会用另一个花费相同输入的交易来代替其流量的任何交易,使得花费者难以调整其先前发送的交易以处理意外的确认延迟或执行其他有用的替换。此处所述的 opt-in full Replace-by-Fee (op...

比特币改进协议BIP 9 简述

比特币改进协议BIP 9 简述

阅读(3162) 评论()

首先明白:软分叉升级主要是在原有的主链上增加共识规则。软分叉的目的是为了让老版本的客户端能够兼容。我们人为设定一个开始时间和结束时间,表示在这个范围内,我们进行软分叉升级,我们规定每到 2016 的整数倍作为一个升级的周...

BIP16 P2SH交易脚本

BIP16 P2SH交易脚本

阅读(8820) 评论()

摘要这个BIP描述了比特币脚本系统中一个新的标准交易类型,定义了额外的验证规则,但是只能适用于新的交易。动机pay-to-script-hash脚本类型的目的是将构建交易的成本从发送交易方转嫁到赎回方。它的好处是允许交易...

Bitcoin UTXO代码分析(三):与其它模块的交互

Bitcoin UTXO代码分析(三):与其它模块的交互

阅读(6134) 评论()

前两篇介绍了 UXTO 表示以及 CCoinViewCache的使用: Bitcoin UTXO代码分析(一):UTXO的相关表示 和 Bitcoin UTXO代码分析(二):CCoinsViewCache,这篇文章主要...

Bitcoin UTXO代码分析(二):CCoinsViewCache

Bitcoin UTXO代码分析(二):CCoinsViewCache

阅读(5718) 评论()

在上一篇[Bitcoin UTXO代码分析(一):UTXO的相关表示]中,简要说明了 UTXO 在 Bitcoin是使用那些类表示的,这篇文章继续分析下 UTXO 的标记和花费。CCoinsViewCache类有几个重要...

物联网超流体架构导论之一:嵌套股份授权证明机制(NDPoS)

物联网超流体架构导论之一:嵌套股份授权证明机制(NDPoS)

阅读(9125) 评论()

摘要:物联网区块链的超流体架构,主要包含几大特性:一、NDPOS共识算法;二、非对称账本结构;三、点对点加密通讯。其中,NDPoS主要解决在多链架构中,如何在区块链体系中保证跨链原子交易操作的实时性与可靠性;非对称账本结...

不可篡改的区块链之可更新的智能合约怎么玩?

不可篡改的区块链之可更新的智能合约怎么玩?

阅读(16962) 评论()

如果你很熟悉以太坊(或者区块链),也许你听过这个词“不可篡改”。当我们想到区块链的时候,我们大多会将区块链和账本和系统的功能状态不能改变或删除相联系。特别是想到智能合约的时候,我会把这个定义和“不可改变对象”相比较。在面...

比特币源码分析:任务调度器的使用

比特币源码分析:任务调度器的使用

阅读(13390) 评论()

任务调度器Bitcoin 进程启动后,有一个专门的线程做任务调度, 这些任务根据指定的时刻,执行对应的函数:bool AppInitMain() { ....... // Start the lightweight ta...

比特币源码分析:多线程检查脚本

比特币源码分析:多线程检查脚本

阅读(11148) 评论()

多线程脚本检查启动多线程脚本检查启动代码:bool AppInitMain(Config &config, boost::thread_group &threadGroup, CScheduler &scheduler)...

比特币源码分析-网络(一)

比特币源码分析-网络(一)

阅读(17121) 评论()

在梳理代码逻辑之前,首先介绍几个比较重要的结构:CMessageHeader消息头包含的内容:class CMessageHeader { public: enum { MESSAGE_START_SIZE = 4, /...

golang-event 在以太坊中的使用

golang-event 在以太坊中的使用

阅读(12362) 评论()

go-ethereum中go-event库的使用github.com/ethereum/go-ethereum/event 包实现了一个事件发布订阅的库,使用接口主要是 event.Feed 类型,以前还有 event....

block header概念解析

block header概念解析

阅读(8610) 评论()

block headers 以 80字节的格式进行序列化,然后作为比特币工作量验证算法的一部分进行哈希处理,使序列化头部格式成为共识规则的一部分。哈希按内部字节顺序排列; 其他值都是小端顺序。block header的消...

bip-0199:hash时间锁定合约交易

bip-0199:hash时间锁定合约交易

阅读(7477) 评论()

摘要该BIP主要描述了广义的 off-chain 合约谈判的脚本。总结hash 时间锁定合约(HTLC)是一种脚本,允许指定方(“卖方”)通过公开 hash 的原始信息来花费资金。 在退款情况下,它还允许第二方(“买方”...

如何使用超级账本创建一条区块链

如何使用超级账本创建一条区块链

阅读(32718) 评论()

我们在这篇文章中将讲述如何使用超级账本Composer创建一个数字银行。这个数字银行会有用户和账户,并且在最后,你还将能够在区块链上转移资金和记录所有交易。我们同时还将公开一个RESTful API,从而即使一个不知道什...

比特币源码分析-boost::signal 的使用

比特币源码分析-boost::signal 的使用

阅读(6572) 评论()

bitcoin 代码中大量使用 boost::signal, boost::signal 实现了信号与槽的事件通知机制,或者说是一种消息的发布与订阅机制, signal 类型是一个可调用类型,slot 就是callbac...

Solidity概述及基本代码展示

Solidity概述及基本代码展示

阅读(3284) 评论()

Solidity是实施智能合约的契约导向的高级语言。它受到C ++,Python和JavaScript的影响,旨在针对以太坊虚拟机(EVM)。Solidity是静态类型的,支持继承,库和复杂的用户定义类型等功能。您将会看...

BCH源码学习笔记 | 第一步:搭建BCH的源码学习环境

BCH源码学习笔记 | 第一步:搭建BCH的源码学习环境

阅读(4528) 评论()

【关于《BCH源码学习笔记》】作者按:BCH是BTC的硬分叉币,代码来源于BTC,但是结合BCH的发展目标,很多细节的地方做了调整,比如说BCH的钱包地址编码,挖矿的POW难度调整算法,以及对隔离见证等新特性的支持等等,...

以太坊源码之POA区块生成机制

以太坊源码之POA区块生成机制

阅读(4656) 评论()

作者:HPB芯链团队名词介绍POA区块数据结构新区块生成周期新区块生成优先级1 名词介绍节点:普通的以太坊节点,没有区块生成的权利。矿工:具有区块生成权利的以太坊节点委员会:所有矿工的集合2 POA区块数据结构POA共识...

以太坊Go、Java、Python、Ruby、JS客户端介绍

以太坊Go、Java、Python、Ruby、JS客户端介绍

阅读(4134) 评论()

#### Go-ethereum 简介go-ethereum客户端通常被称为geth,它是个命令行界面,执行在Go上实现的完整以太坊节点。通过安装和运行geth,可以参与到以太坊前台实时网络并进行以下操作挖掘真的以太币在...

商务合作(QQ):755847138
媒体合作:Market@bitguai.com
底部导航

本站除标明"本站原创"外所有信息均整理转载自互联网,版权归原作者所有。如有不妥,请联系我们修改或删除。

CopyRight 2017-2018 Bitguai.com All Rights Reserved丨粤ICP备18155354号-1 百度地图 谷歌地图 RSS订阅


比特怪成立于2017年,秉承做高价值的区块链技术和应用为核心的区块链资讯媒体。网站内容主要涵盖区块链技术、游戏、应用场景和区块链项目落地等。让区块链技术应用服务于各个行业。