stv1024
码龄14年
  • 8,872
    被访问
  • 14
    原创
  • 1,816,600
    排名
  • 25
    粉丝
  • 0
    铁粉
关注
提问 私信
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:上海市
  • 加入CSDN时间: 2008-07-11
博客简介:

stv1024的专栏

查看详细资料
个人成就
  • 获得8次点赞
  • 内容获得3次评论
  • 获得11次收藏
创作历程
  • 14篇
    2020年
成就勋章
TA的专栏
  • 比特币哲学
    1篇
  • 和中本聪一起发明比特币
    11篇
  • 开发实战
    2篇
兴趣领域 设置
  • 产品/运营
    产品运营
  • 最近
  • 文章
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

万字长文详解比特币(BSV)和BTC的差别

比特币之所以现在引起这么大的争议,最大的原因就是它的协议被篡改了,逻辑上不再自洽,不再符合2009年时中本聪设计的比特币协议,不再符合白皮书里描述的比特币协议。篡改比特币协议的势力,是从中本聪接班人Gavin Anderson手中夺权的Core开发组,背后是Blockstream公司。这家公司的商业模式完全建立在“只有比特币网络不好使,才有可能赚得到钱”之上,所以,他们一个劲地让比特币又堵又慢又贵,为此还编制了一套“去中心化”的皇帝新衣。比特币原本是什么样子?我从大家最常见的错误认知说起。.
原创
发布博客 2020.10.11 ·
1693 阅读 ·
4 点赞 ·
2 评论

95. 工作量证明的多种真谛

工作量证明是浪费吗?在讲到虚拟币和经济循环时,我们绘制了这幅示意图。注意图中的蓝色和橙色箭头分别构成的循环。但是,我们的客户,他们原本就需要存证服务,在我们的系统上线之前,存证服务的经济循环是怎样的呢?和上一幅图对比,可以发现,我们的全球统一存证系统,其实是要取代传统的存证系统,这才是我们的目标。我们敢于定下这个目标,在于我们的系统将会具有无与伦比的优势,这在第 1 章已经说明。那么,如果客户最终选择了我们的新系统,就说明我们的新系统对客户有好处,如果客户是机..
原创
发布博客 2020.07.04 ·
398 阅读 ·
0 点赞 ·
0 评论

90. 小世界网络:节点和用户之间的连接结构

我们从整体“俯瞰”一下整个系统的结构,那应该如下图所示。由于网络科学中的节点跟我们之前讨论的节点概念略有不同,为了避免误解,把图中数字档案馆的连锁店节点标记为了“存证节点”。存证节点应该长期互相连接,方便它们广播数据和区块。用户的数量非常大,他们应该使用一种客户端,平时自动从存证节点同步区块头。某些用户会向存证节点上传数据进行存证;而某些用户会互相连接客户端传输数据,再连接到存证节点进行验证;用户也可以同时连接多个存证节点,确保网络通畅。这样的网络结构,有一个特点:任意两个客户端之间的.
原创
发布博客 2020.07.02 ·
557 阅读 ·
0 点赞 ·
0 评论

80. 同步区块:多节点如何统一历史数据

这一章,我们简单讲解一下,多节点之间是如何达成历史区块统一的。(如果你觉得这一章难以理解,可以跳过这一章,不影响后续的学习。)首先,系统里的多个节点,它们的行为是基本上相同的,绝大部分时间都在做这几件事:不断接收数据包并将新数据包填充到默克尔树底端,已填充的数据包不重复填充; 不断尝试任意数,努力凑出满足目标值的哈希值; 另外还有一件事,就是把新数据包不断广播给其他节点。下图中,我们拆解了节点 X 的行为,而其他节点也是类似。当节点 X 做出一个有效区块后,它会立即将部分区块信息广播给
原创
发布博客 2020.07.02 ·
416 阅读 ·
0 点赞 ·
0 评论

70. 区块津贴:初始虚拟币从哪里投放

支票可以转移虚拟币,但转移不会改变虚拟币的数量,所以我们必须设计一个投放初始虚拟币的方法,否则整个系统里的虚拟币一直是 0。我们要解决如下几个问题:初始的虚拟币投放给谁? 总量是否有限? 按什么速率投放?首先我们要想清楚,初始的虚拟币给谁?在整个系统里,最重要的角色是存证节点。在系统发展的前期,存证服务的使用量很低,存证节点没有足够的收入,很难提升自己的硬件水平和服务质量,所以节点也需要额外的津贴。由于我们要建立一个充分市场竞争的系统,里面任何一方都不能有特权,所以我们自己不能预.
原创
发布博客 2020.07.02 ·
195 阅读 ·
0 点赞 ·
0 评论

60. 币和区块收入:数字档案馆的经济循环

上一章提到,为了长期经营,我们的数字档案馆提供的是收费的存证服务。那么我们这一章要解决的问题是,用户怎么付钱?不同的数据应该有不同的定价,存证超大数据肯定比小型数据要贵很多。很多用户,比如机构,上传数据的频率很高,如果每次上传数据,都走银行、支付宝等渠道付款的话,会非常麻烦,更不用说还要处理各国货币的汇率了。所以,我们很自然地想到充值模式,也叫预付费模式。日常生活中,水电煤、话费、网络游戏、理发卡等等,基本都采用了这种模式。用户想要使用存证服务,先充值购买“虚拟币”,然后每次上传数据的时候,根.
原创
发布博客 2020.07.02 ·
189 阅读 ·
0 点赞 ·
0 评论

50. 市场竞争、经济激励和难度调整

这一章,是本书第一篇里最难的一章,读者需要同时理解 4 个以上的新概念。而我们要解决的问题是:工作量证明的目标值应该怎么定,才能让外界相信我们的数字档案馆已经投入了足够大的成本来制造区块头?根据经济学理论,在一个充分竞争的市场里,企业的利润会趋近于零,而企业本身的规模有可能很大。虽然现实中没有完全竞争的市场,但竞争会不断挤压企业的利润空间,倒逼企业创新。所以,只要把市场竞争和工作量证明相结合,就能解决我们的问题。那么,之前提到的数字档案馆的“连锁店”,也就是“节点”,必须互相竞争,也就是说,
原创
发布博客 2020.07.02 ·
185 阅读 ·
0 点赞 ·
0 评论

45. 工作量证明:让区块链条唯一

上一章,我们已经将区块链条的数据结构大幅优化,验证数据的成本也大幅降低。但是,验证者必须持续同步区块头链。而即使持续同步区块头链,也有可能同步的是一条被专门定制的虚假链。我们的数字档案馆伪造一条虚假链的成本并不高,甚至可以为每个人都精心制造一条虚假链,也可以在一个全新用户加入时临时伪造一条链。如何让任何人一看到区块链条,就相信这个链条是唯一且正确的那个呢?解决思路是,提升制造一条区块链条的成本,并且要让人们相信,我们没有余力制造另一条虚假的链。具体怎么做呢?还是利用哈希函数。哈希函数 SHA25
原创
发布博客 2020.07.02 ·
174 阅读 ·
0 点赞 ·
0 评论

40. 默克尔树:优化区块内部的数据结构

前几章提出了上面的数据结构,但验证时需要下载巨大的数据量,就如下图所示。所以我们必须做一些优化。我们将原始数据放在数据包外面,这样数据包就被瘦身了,暂且称它为“哈希小包”,里面只有上一个哈希小包的哈希值和当前原始数据的哈希值。可以发现,这种优化的哈希链条,和原来的哈希链条,具有相同的防止篡改的能力。任何原始数据的改动,都会导致对应的哈希小包里的哈希值发生变化,继而导致后面一系列的哈希小包都发生变化。哈希小包比上一个方案里的数据大包小了很多。而验证数据的时候,只需要获取这一..
原创
发布博客 2020.07.02 ·
813 阅读 ·
1 点赞 ·
0 评论

30. 多节点和区块的链:让存证系统永远在线

这一章,我们尝试解决这样的问题:万一我们的数字档案馆断网了,倒闭了,被灾难摧毁了,怎么办?玩过游戏的都知道,防止老家被一波摧毁的策略就是开分基地。在这里,我们拿加盟连锁店来类比。我们的数字档案馆必须有很多个“连锁店”。它们都有独立经营的能力,当其中一部分连锁店关闭时,剩下的连锁店可以正常工作,随后新的连锁店又可以随时加盟。只要不是同时瘫痪,我们的存证服务就可以一直运行。为了让全球各地都能享受到高效服务,最好各地都有连锁店。需要注意的是,我们不能有“总部”,有总部就会有弱点!用户在使用的时候,
原创
发布博客 2020.07.02 ·
185 阅读 ·
0 点赞 ·
0 评论

20. 哈希链条和数字档案馆

这一章,我们试图解决一个问题:在对方没有保留初始哈希值的情况下,如何让对方相信一条数据没有被篡改?我们的最终产品的目标,是存证海量的数据,服务全球人。我们需要存储大量的数据,有巨大的网络吞吐量,所以,我们应该是一个比较专业的机构,一家数字档案馆。https://commons.wikimedia.org/wiki/File:A_view_of_the_server_room_at_The_National_Archives.jpg我们该如何存储这些数据呢?我们创造这样一种数据结构,如下图所示
原创
发布博客 2020.07.02 ·
200 阅读 ·
0 点赞 ·
0 评论

10. 哈希函数:实现不可篡改的第一步

理解比特币其实并不需要了解太多的技术概念,只需要知道两个技术:哈希函数、非对称加密。其他概念都可以通过逻辑推导得出,所以非技术出身的读者也能完全理解。这一章来讲解一个极为重要的技术概念——哈希函数。理解起来非常简单。计算机语言中的函数,和数学上的函数类似,就是输入一个数据,然后输出一个结果。哈希函数是一类函数,它们的效果是,输入任意数据(可以是文件),输出一个长度固定的,但非常长的,看上去像乱码的整数,一般把输出值称为哈希值(甚至简称为“哈希”)。这时,哪怕只对输入的原始数据做很小的改动,哈
原创
发布博客 2020.07.02 ·
615 阅读 ·
0 点赞 ·
0 评论

用node.js生成比特币靓号地址

为了耍酷,我们偶尔需要一些含有特殊字母组合的靓号地址,例如1CSWCQP3tJWpjT1pmydWopVc8fFM8t7VLb就以我们尊敬的CSW所需开头。那么如何获得我们自己的靓号地址,同时又确保私钥安全呢?当然是自己做一个靓号地址生成器!新建空文件夹。在命令行用npm install bsv安装bsv库。bsv库(https://docs.moneybutton.com/docs/bsv-overview.html)是用于比特币BSV的数据结构操作方法的库。..
原创
发布博客 2020.06.30 ·
1121 阅读 ·
0 点赞 ·
0 评论

用bsv.js和MatterCloud实现可以收发比特币BSV的极简钱包

这篇文章教大家如何自己编写一个极简的BSV钱包,可以生成私钥、地址,并发送交易。准备工作语言:JavaScript环境:Node.js操作系统:Win、Mac、Linux推荐IDE:VSCode首先,确保计算机上安装了Node.js并配置了环境变量,如果没有安装Node.js,可以到官网(https://nodejs.org/zh-cn/)下载安装。新建一个工程文件夹,名字任意,例如SimplestWallet。用命令行打开这个文件夹。依次输入如下命令安...
原创
发布博客 2020.06.29 ·
1549 阅读 ·
3 点赞 ·
0 评论

Python基础教程(第2版)

发布资源 2012.07.23 ·
pdf

计算机图形学

发布资源 2012.07.21 ·
zip

仙林工作室C#程序编码规范

发布资源 2012.07.21 ·
doc
加载更多