自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 跟我一起设计Token协议:1. 历史

比特币,充满魅力的名字。你如何看待它,将决定你的一生,是荣华富贵还是凡夫俗子,是开拓未知的边界还是固守传统的生活。比特币就是“现金”就是“钱”这句话非常重要。如果你认为它是别的东西,比如“数字的黄金”“传销的筹码”“赚钱的捷径”“极客的玩具”,那这篇文章不适合你。这篇文章只讨论比特币作为“现金”作为“钱”时的情形,我们称之为“数字货币”。比特币是“钱”,那Token是什么?Token是用“钱”标价的“凭证”。比如消费积分,股票,彩票,发票,门票,邮票,收据等等。比特币区块链可以同时支持“钱”和“有

2021-04-15 11:06:54 585 3

原创 从NoteSV你还能想到什么用途?

使用区块链笔记[url=https://note.sv]NoteSV[/url]写的笔记可以长期保存。从这里你还能想到什么用途?[url=https://note.sv]NoteSV[/url]自带的是密码保存功能,用来保管网站密码,银行密码安全可靠。微信群总结出下面几个好主意情侣日记,情侣两人各自保留6个单词,合起来创建一个账号。共同写情侣那些事。到老都就是一辈子,都保存在区块链上。谁也改不了。只有情侣双方可以看到。学霸笔记,学霸把自己的学习笔记有偿分享出去,付费难道想要的笔记宠物养成游戏,一

2021-03-09 16:11:58 196 2

原创 打开sCrypt的盒子(6)数据序列化

数据序列化,就是将一个数据结构或者对象,按照某种规则组合成一个输出,可以是字节数组,也可以是一个格式文件或者字符串。序列化的目的是为了对象的网络传输,数据存储。序列化后数据还可以反序列化形成对象。举个例子,表示状态的对象let state = {'counter': 11, 'bytes': '1234', 'flag': true}如果序列化成JSONhttps://www.json.org/格式则为:{"counter":11,"bytes":"1234","flag":true}

2020-10-19 11:53:40 872 8

原创 基于Baton UTXO和默克尔树的Token和Oracle方案

成都程序员zhangweis发表了一篇短文(Merkle tree proof based data storage)提出一种使用比特币智能合约来验证数据状态变化的方法。sCrypt做了总结。题目是BSV智能合约中的可扩展的状态存储(Scalable State Storage in BSV Smart Contracts)。这种技术可以用于制作基于状态变化的Token,以及预言机(Oracle)。数据状态的正确性由比特币网络做验证。之前 sCrypt有提出基于UTXO的Token方案在这个UTP方案

2020-09-30 19:02:42 1132 2

原创 打开sCrypt的盒子(5)第一层Token

sCrypt是比特币合约走出来的第一步。我们看看sCrypt最被人期待的第一层Token所谓第一层,就是比特币机制直接支持的Token。比特币脚本直接保证Token的增加减少分发转移符合规则,不需要其他的“二层网络“,“链下共识“等等画蛇添足技术的补充。一笔比特币交易的构成,如下图所示输入输出输入1,Outpoint1, 解锁脚本1输出1,新锁定脚本1(接收方1),Satoshi输入2,Outpoint2, 解锁脚本2输出2,新锁定脚本 2(接收方2),Satoshi

2020-09-07 12:06:56 1082 1

原创 打开sCrypt的盒子(4)OP_PUSH_TX

sCrypt是比特币合约走出来的第一步。我们看看sCrypt创造的新技术:OP_PUSH_TXOP_PUSH_TX以OP开始,但它不是比特币脚本的操作符,是一个将交易原像放入解锁脚本,从而判断新的输出是否符合规定的技术。假设已经有了一个交易TX1的输出out_1,其中的锁定脚本要求:解锁它的解锁脚本必须拥有一样代码逻辑,变化的只是最后包括的数字。这个TX2应该怎么做呢?TX1的锁定脚本是如何实现的呢?实现的技术就是OP_PUSH_TX, 它要求解锁参数是新交易TX2的原像OP_PUSH_TX的官方

2020-09-05 17:37:13 1994

原创 打开sCrypt的盒子(3)原像PreImage

sCrypt是比特币合约走出来的第一步。我们看看sCrypt用到的基础知识:原像PreImage对数据签名,获取的sig叫签名,生成这个签名的原始数据就叫做:原像PreImage在P2PKH合约中解锁一个锁定脚本的关键是要提供sig和公钥pk,有了pk和sig以及交易本身,比特币节点通过OP_CHECKSIG操作符进行检查,看检查结果是否为True,交易是否有效。在sCrypt中检查原像的合约代码是 public function testPreimageParsing(bytes preimag

2020-09-04 19:50:59 898

原创 打开sCrypt的盒子(2)Demo合约

sCrypt是比特币合约走出来的第一步。我们打开sCrypt最简单的Demo合约的盒子,看看它的有趣之处。合约原文代码Demo 合约原文比较简单,贴在此处 contract Demo { int x; int y; constructor(int x, int y) { this.x = x; this.y = y; } function sum(int a, int b) returns (int) { return a + b; }

2020-09-03 18:31:52 646

原创 打开sCrypt的盒子(1)P2PKH合约

sCrypt是比特币合约走出来的第一步。我们打开sCrypt的P2PKH合约的盒子,看看它是否真的工作。基本操作请参考下面的文章比特币智能合约入门(4)- sCrypt 合约实战篇 - P2PKH 合约化下面分析它生成的脚本是否正确。通过log显示了构造出来的锁定脚本为 'OP_1 40 00 51 b1 b2 OP_NOP $pubKeyHash OP_0 OP_1 OP_PICK OP_1 OP_ROLL OP_DROP OP_NOP OP_8 OP_PICK OP_HASH160 OP_1

2020-09-02 20:44:55 833

翻译 取代BIP编号的BRFC规格

BRFC规格BRFC (Bitcoin SV Request-For-Comments)规格对比特币技术规格文档的发布做了一些非严格的规定,可以取代之前BIP(Bitcoin Improvement Proposals)的编号体制。基于BRFC规格发布的文档描述了整个比特币生态系统的方方面面。它最初用于描述了一系列 bsvalias 协议和 paymail 实现。基于 BRFC 规格发布的文档没有固定的格式。 它们可以作为markdown格式编写,存放在 GitHub 存储库中,发布到公司网站上,嵌入

2020-07-28 12:37:45 516

原创 顺序执行的异步操作:命名,Promise,任务,非队列

针对比特币的交易,涉及到收集UTXO,创建交易,发送交易,获取网络反馈,进入内存池,打包进入区块,等等一系列的异步操作。而每一步都需要等待之前的步骤完成。下面这个刚刚创建的库,可以帮助解决部分异步等待问题https://www.npmjs.com/package/named-promise-task顺序执行的异步操作,“异步任务队列“是一个需要记住的词。可以先看一下async.series要解决的问题async.series([ function(callback) { /

2020-07-26 10:11:30 291

原创 本聰造幣 天雨粟 夜鬼哭

(原文写于 XiaoB微信公众号 2017-09-17)『淮南子』說:昔者倉頡作書,而天雨粟,鬼夜哭;伯益作井,而龍登玄雲,神棲崑崙。能愈多而德愈薄矣。故周鼎著倕,使銜其指,以明大巧之不可為也倉頡是黃帝的右史,他發明象形文字以後,天地造化亦不能隱藏其秘密了,人類洞悉了世界的神秘,那些深藏不露的敬畏被捅破了皮囊。天洩氣,而漏米,靈怪鬼魅無處隱藏遁形,被驚嚇的在夜間大哭。大禹的繼承人伯益發明了挖井技術後,藏在林泉中的龍只好跑到玄雲上去,地下的神明只能跑到崑崙之中去。所以說:能愈多而德愈薄本聰造幣,

2020-07-09 11:24:49 267

原创 影响世界的大事情:2018年11月16日BCH/BSV算力战

2018年11月16日发生了影响世界的大事情:BCH/BSV的算力战。为什么说这是一件影响世界的大事情呢?我们要从比特币区块链的意义说起。2009年1月比特币区块链网络开始运行,中本聪等少数人不计成本地挖了一年多,在“正常人“看来是挺不可思议的。中本聪提出并且实现了一种依托于互联网的“世界货币”,直到2010年5月有人用比特币购买披萨,才渐渐地被世界接受。“世界货币”某种程度上来说,是一个疯狂的想法,它不依赖于某个国家,跨越人种,超越美元,日元,人民币的影响范围而存在。暂不谈比特币用到的经济理论和计

2020-07-09 11:19:12 437

原创 Base16, Base64, Base58, Base32

如果不需要人眼查看,按照字节传递是长度最少的。为了将二进制内容用字符表现出来,方便人类使用,有各种标准规范。最简单的一种叫做HEX,也就是Base16表示法。一个2进制表示称为 bit,就是0或者1。8个bit称为一个byte, 类似 11011001, 一个byte可以表示两个16进制数。上面的数字转换为16进制就是 D9计算机中都使用byte作为基本单位,所有的文件按字节的16进制表示。这就是HEX表示法. 使用字符范围是 0-9A-F,每个字节用两个字符表示,文字数量长度比二进制多一倍。ht

2020-07-05 10:10:32 827

原创 区块链原型

比特币区块链说神秘说复杂,它也是人创造出来。我们用几行代码写一个简单的原型。说明都写在每行代码前面const tracer = require('tracer').colorConsole()const console = tracerconst bitcoin = require('bsv')//挖矿的尝试次数const maxTried = 100000//Number.MAX_VALUE//区块class Block { constructor(data, previous

2020-06-29 10:59:49 859

原创 如何运行一个BSV创世全节点

如何运行一个BSV创世全节点我们有一台ubuntu服务器,4T SSD,16G MEMORY文件下载网页https://bitcoinsv.io/genesis-hard-fork/#downloads可参考的BTC的教程https://www.buildblockchain.tech/blog/btc-node-developers-guide首先下载BSV release包(请下载使用最新版,目前是1.0.3, 以下的演示的版本为1.0.0)$ wgethttps://downloa

2020-06-10 12:30:06 1159 1

空空如也

空空如也

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

TA关注的人

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