区块链
文章平均质量分 82
郑泽洲
IT Veteran
展开
-
变乱时代的定海神针:委内瑞拉超级通货膨胀与加密数字货币
眼下的委内瑞拉正在变成一个大型的货币实验场,过去一年,其法定货币贬值1,000,000%,"朝为工资,暮为手纸"街头巷尾,日常杂货店,超市,小摊贩,人们接受加密数字货币的付款,不过不同于比特币的不稳定价值,人们接受了像USDT泰达币、Reserve等稳定币这些稳定币会锚定美元资产,或者一篮子加密数字货币资产,为陷于通胀黑暗岁月的人民照耀了一束微弱的光。原创 2023-02-25 17:53:02 · 1388 阅读 · 0 评论 -
FinTech创新系列博客
技术驱动金融革命的年代原创 2023-01-29 13:36:21 · 591 阅读 · 0 评论 -
搭建完全去中心化的个人站
我是博客爱好者,6-7年下来已经写了100多篇并发表,但是最近感觉审核的力度在加强,正如这个世界正处在非黑即白的境况,一些敏感的课题整个品类都不可以写了。因为对区块链比较感兴趣,之前还研究过DTube的整个代码,既然视频分享可以完全去中心化,那么博客是不是也可以?原创 2022-10-24 18:00:20 · 2497 阅读 · 0 评论 -
面经:中国人民银行金融科技研究院
一位对数字人民币感兴趣的金融科技从业人员面试中国人民银行金融科技研究院的面经原创 2022-09-03 22:52:36 · 3988 阅读 · 0 评论 -
EOS账户映射及key、account、wallet
EOS是一个去中心化的操作系统。专为高性能去中心化应用而设计。EOS提供了数据库,许可,调度,验证以及应用间通信等功能。本文论述了EOS账户映射及key、account、wallet原创 2022-08-28 22:36:27 · 504 阅读 · 0 评论 -
金融应用如何解决金额精度问题(以Quorum、golang为例)
金额精度问题是每一位金融系统开发者要面临的问题,从笔者入行开始,从银行系统,互联网支付公司系统,一直到区块链金融应用,这个问题无处不在。针对此典型问题典型解法如下。原创 2022-06-10 19:03:52 · 3635 阅读 · 1 评论 -
金融联盟链公网性能测试回顾
金融联盟链走公网,节约了成本,但是是有代价的,性能是要比专线打折,特别是在高并发的场景下,某些情况下甚至引起网络不可用,考虑区块链要承载的业务重要性,业务负载飙升情况下还是要考虑专线方案原创 2022-03-12 18:19:17 · 14091 阅读 · 0 评论 -
2019年区块链热潮退去后的冷思考
前言人的一生会经历无数时刻,但能够留存在记忆中、塑造你的个性的时刻却是屈指可数。2019年初,我就迎来了这样的重要时刻。首先介绍我自己,一个普通的软件工程技术人员。家里人的印象中,大概是我从小是学霸,浙大计算机和金融双学士学位毕业后,去了一家国有银行的技术部门工作,一直工作了近15年,波澜不惊,或者说是表现平平。之前看过字节跳动总裁张一鸣的访谈,他谈到大学毕业后,毕业照上整整齐齐的同学,工作之后却有了分化,张一鸣属于比较有想法的人,其他大部分同学,人生想法是北京N环内买套房(感觉就是在说我啊????原创 2021-12-07 22:33:15 · 9213 阅读 · 0 评论 -
成为以太坊开源项目EthereumJ的维护者
宏愿这篇文章记载的是一件趣事:一个干了十多年的IT老兵,痛下决心想为开源贡献点微薄之力,准备用一年时间达成这个目标,结果第二天就实现了_2019年初,我萌生了一个想法,当时开源软件中国人参与极少,都是拿来主义。参与开源软件,好处很多加深自己的理解,提升自己的技能就业市场上增加影响力作为一个程序员,给世界留下点东西步骤为了实现目标,我制订了一个计划近期目标:首先能修复Ethereumj的bug,就像组里鹏飞兄弟做的那样中期目标:分叉一个自己的,将Ethereumj变为原创 2021-12-05 20:28:33 · 9346 阅读 · 0 评论 -
Ethereum以太坊区块链底层换用国密算法实验报告
区块链技术的基础是计算机密码学,可以说***“没有计算机密码学,就没有区块链技术”***,区块链在如下方面用到了计算机密码学:验证签名,保证交易发起的真实性,用到了ECDSA哈希校验区块完整性,保证不可篡改特性,用到了hash算法(以太坊中具体用到sha2 sha3的hash算法)对区块链通讯报文进行加密,防止传输过程泄密;在北京银行网贷资金存管项目中,我司方案用加密保证私密性和可监管性区块链应用国密算法的重要性为了保障商用密码的安全性,国家商用密码管理办公室制定了一系列密码标准,原创 2021-11-07 19:14:16 · 12988 阅读 · 2 评论 -
重走长征路·geth以太坊源代码再解读
背景geth是以太坊官方的golang版本的客户端,代码简洁,结构精妙,是学习golang的好素材。第一次读geth代码,是2017年,在连连数字研究院时候,带着对go的零基础,带着区块链之热,看得比较支离破碎。而今4年过去,工作地方从杭州、上海,到了南洋新加坡。重读geth,一是了解geth最新进展,二是也加深对golang的理解,因为现在工作正好用到golang。想起来了一首词,可以作为当前心境的一种注解。少年听雨歌楼上,红烛昏罗帐。壮年听雨客舟中,江阔云低,断雁叫西风。而今听雨僧庐下,鬓原创 2021-10-08 18:06:38 · 6243 阅读 · 0 评论 -
Golang学习路线图及go-starter.md
背景为什么要学习golang最早接触golang是因为对区块链感兴趣,因为golang的并发和内置的网络库还有大公司的支持,先天比较适合区块链,很多著名的框架都是golang写,比如geth再后来,到新加坡Shopee工作,技术栈从Java切换成了golang,更要好好学习golang的语言特性了如下是之前列的一个学习路线图1.数据类型(含struct)每个类型占用多少字节最大值 最小值,有无封装;溢出怎么处理内置的map和slice两个特色的数据类型struct结构如何在原创 2021-08-29 10:48:32 · 2522 阅读 · 0 评论 -
基于Solidity的XX项目智能合约架构设计
背景之前在一家FinTech的公司和银行合作,做基于区块链的资金存管系统,从头开始基于Solidity设计项目的智能合约架构。转眼几年时间过去了,2B的热潮退去,但是DeFi的热潮上来了。所以总结一下过去的方案,顺便思考下新形势下的问题。典型交易分析(以投标交易为例):说明:这个交易阶段就是用户已经完成注册了,用户信息在链上了,也经过了验证了;而且账户里面有钱了业务思考问题:用户的定义以及其在链上的数据结构是啥?标的数据结构如何解耦,比如开发人员A和B分别写了一个,如何用creator直原创 2021-08-07 17:36:44 · 703 阅读 · 0 评论 -
数字货币和区块链:能做好什么,不能做好什么
前言最近区块链技术又上了热搜。写传统的mysql和linux没人看,于是又把2年前的笔记拿了出来,好尴尬。。数字货币和区块链的token属性没有比特币,就没有现如今的区块链技术。并不是先有了区块链技术,然后再在这个技术上发展了比特币这个产品。实际上是先有比特币这个现象级的产品,然后硬生生总结出一套区块链技术的。后来为了和币的概念做切割,提出了区块链的token属性,其实token就是币,只不过比币的概念更广泛,可以是某种资产,权利,票据,股份,期权,任何具有权属和稀缺双重属性的经济学物件原创 2021-01-25 21:15:20 · 625 阅读 · 0 评论 -
管中窥豹--通过专利分析DCEP的整体设计概要
背景央行数字货币已经是确定的事情,而且已经在试点,但是其技术方案并没有公布,于是通过研读央行组织下直接参与开发的公司的专利,管中窥豹,分析其技术特点相关专利索引号:CN201911012186-数字货币钱包开通的方法及装置和电子设备CN201911012289-基于数字货币的交易处理方法及装置和电子设备CN201911012908-数字货币交易的执行方法及装置和电子设备CN201911...原创 2020-04-19 11:24:27 · 947 阅读 · 0 评论 -
区块链产业的标准化.md
区块链技术和分布式账本技术是有区别的分布式账本更关注账本及其形式,除了块链式结构,还有DAG等方式区块链技术也有如上所不曾涵盖的,比如不只账本,是种分布式数据库标准化过程区块链全国标准化委员会,为什么有?国外已经纷纷开始,比如iso,但是政府本级的还是中国第一家联盟链SWOT分析联盟链的特点和优点联盟链必然是企业间的互联互通智能合约创造了一个公共的应用部署平台,...原创 2020-03-07 18:01:35 · 387 阅读 · 0 评论 -
千年等一回--通过货币发展变迁史窥探央行数字货币DCEP
前言10月28日,上海首届外滩金融峰会上,中国国际经济交流中心副理事长黄奇帆在会上演讲“数字化重塑金融全球生态”主题中,着重提及了央行推出的数字货币DCEP(Digital Currency Electronic Payment),一种全新的加密电子货币体系。底层的技术据我分析,应该包括互联网技术、移动通讯技术、区块链技术、大数据技术等。货币,或者说钱,是大部分人一生的牵绊。货币到底是什么,D...原创 2019-12-02 09:39:17 · 783 阅读 · 0 评论 -
Facebook的普惠金融数字货币Libra
愿景Libra打出了普惠金融的旗帜。中国民众比较难以想象现代社会还没有银行金融服务的情况,中国国内转账也很方便。不过以我在国外工作学习的经验看,不是所有人都能接触到便捷的金融服务,甚至是发达国家(比如有新到的移民),而且跨国的个人间转账特别不方便。那么这个宏伟的愿景一定要用区块链技术实现吗?答案是在这个场景下,区块链技术确实是比较合适的技术如果只是用传统技术,那就算能做出来也只是下一个西联...原创 2019-10-26 11:20:24 · 849 阅读 · 1 评论 -
智能合约支持C端的兼容设计
C端支持的问题目前市场上所谓的“区块链”项目,绝大部分情况下,最终用户对其账户并无控制权,由B端企业代管。XX项目原先最初稿设计支持C端,但是C端有个用户习惯的问题,在手机sdk,如果要保存密钥文件,那么是否需要加密?如果要加密,那么又要用户多输入一次密码,用户体验不佳,要做额外的市场教育工作,所以被毙了。但考虑到将来的趋势,所以要在智能合约这层做个兼容性的设计。二期项目涉及的4账户图:...原创 2019-01-10 09:56:07 · 184 阅读 · 0 评论 -
《数据流通关键技术》之三:零知识证明.md
未完待续零知识证明的4大技术基础原创 2019-04-07 16:51:43 · 462 阅读 · 0 评论 -
以太坊手续费详细分析
前言以太坊是新兴的区块链技术平台,其目标是成为“永不停机的世界计算机”,人们在其上可以部署各种应用供全世界使用。以太币是以太坊公链这台虚拟世界计算机器运行的“燃油”(以太坊英文名Ethereum词根eum含有燃油的意思),其理念是以太坊平台运行需要消耗资源,比如各节点的CPU、存储、带宽等资源,而这些资源消耗由以太坊平台给以计量和计价,并通过挖矿时对矿工的奖励给予补偿,这种奖励同时也是以太币去...原创 2018-10-17 09:57:12 · 26473 阅读 · 0 评论 -
比特币的表兄弟们
比特币的表兄弟们这段时间比特币的价格变化,和各个“表兄弟”是有直接关系的。IFO,克隆时代前一阵子,IFO(Initial Fork Offering 首次分叉发行)比较热门。如果说ICO是新生产一个数字货币的婴儿,从头开始培养;那么IFO就是将比特币这个带头大哥克隆出一个兄弟来(包含已有的账户以及生态),然后各自分道扬镳,各自独立发展。原创 2017-12-26 13:54:25 · 579 阅读 · 1 评论 -
区块链新一代共识算法:VRF分布式可验证随机函数
# 背景共识分代VRF原理推论共识算法是区块链技术框架中最重要的组织部分。过去区块链的乱象,和初期共识算法的不成熟不完善是直接相关的。POW靠蛮力取胜,中本聪设想的“一cpu一票”的乌托邦并没有到来,他忘记了人类社会的不均衡性,POW形成了一个个中心化的大矿场,利益的集中化导致普罗大众并不关心区块链;矿场主本身也是逐利而来,并不关心生态;资源和利益集中在少部分大矿场和大交易所手里,普罗大...原创 2018-11-21 11:36:14 · 2624 阅读 · 2 评论 -
以太坊的存储层技术分析之四:以太坊瘦身
前面一篇文章(分析之三)中提到了以太坊的数据存储越来越大,有个数据“瘦身”的问题,本文中具体讨论下。以太坊是一个去中心化的区块链系统,数据不是存放在中心服务器上,而是存在客户端的硬盘上。目前以太坊发展遇到一个现实问题:安装过以太坊客户端,挖过矿的同学想必都知道安装完后同步要好几天,数据高达几十G,在个人电脑上安装全客户端已经有点勉强了,更不要说是手机等轻客户端。这种情况发展下去,比如出现中心化...原创 2018-11-03 19:05:40 · 911 阅读 · 0 评论 -
以太坊的存储层技术分析之三:以太坊区块读写LevelDB相关代码分析
写入:以太坊区块生成并写入区块链数据库,分为创世区块和普通区块两种。其写入过程是相同的,区别在于区块生成过程。以生成创世区块为例子,总体流程是从genesis.json读取配置,写入内存的数据结构,再写入磁盘leveldb文件。(注:以上是go语言版本geth的分析, java版本Ethereumj目前没有命令行init的功能,需要自行调用相关类去实现)在core/genesis.go...原创 2018-11-03 18:56:04 · 3008 阅读 · 4 评论 -
智能合约风险:SmartMesh攻击,uint溢出之祸
SmartMesh的理念智能合约又双叒叕出事了。这次是SmartMesh。SmartMesh其理念很好,想网络访问领域的去中心化,将来人们联网,不要路由器和交换机,直接相连,电信运营商都死翘翘,每个人按网络贡献挖矿获得收益,发出网络别人帮忙要给钱SmartMesh遭受的攻击具体攻击交易之一事件描述:d6a09bdb29e1eafa92a30373c44b09e2e2e...原创 2018-05-30 15:59:47 · 917 阅读 · 0 评论 -
智能合约反编译查错经验汇编
问题:为什么需要比较不同版本的solc编译器EVM在不断升级中,有些指令是后来加入的,比如revert,还有returndatasize同样的solidity代码,鹏飞在0.4.22编译出来后,就在未升级过的北京银行项目环境上运行报错,因为没有returndatasize这个指令(推测是同样的函数,后面的编译器版本动作不一样了,比如要先返回到buffer了,间接返回returndatasi...原创 2018-05-30 15:40:42 · 1870 阅读 · 0 评论 -
北京项目EVM升级到拜占庭版本
## 好处总结牵头解决了最新版本编译器编译的代码在北京项目不能运行的问题(见如下鹏飞合约,李也碰到过)可以使用library,解决了多卡数据挤在数据合约的问题,极大简化了代码可以使用revert了,区分了系统异常和业务取消动作(之前的invalid opcode,其他同事都认为需要升级)突破了编译器版本限制,可以使用最新的语法了,提升了编程的表现力(版本可以定在0.4.21;但是实验...原创 2018-05-30 15:35:21 · 324 阅读 · 0 评论 -
石油币,世界第一个主权加密数字货币.md
Sovereign cryptocurrency(主权数字货币,由国家发行的数字货币)如何界定石油币的性质?法定货币: 法币是在黄金等基础上发展起来的,具有无限法偿性; 也就是任何支付场景都可以适用;但是委内瑞拉的石油币,只是规定在某些环节,比如缴税等可以代替严重通货膨胀的委内瑞拉bolivar(更像是其政府发行的主权担保的有价证券)背后的原因像委内瑞拉和俄罗斯等国,均很依赖于石油...原创 2018-02-22 09:55:59 · 1054 阅读 · 1 评论 -
AES-NI加速密码学计算
AES-NI指令集AES-NI是一个x86指令集架构的扩展,用于Intel和AMD微处理器,由Intel在2008年3月提出。[1]该指令集的目的是改进应用程序使用高级加密标准(AES)执行加密和解密的速度。这项技术在从企业级的大数据、区块链到个人用的NAS等都用得上.如何检查cpu是否支持该功能$ cat /proc/cpuinfo | grep aes | wc -l如果...原创 2018-02-10 10:57:07 · 5778 阅读 · 0 评论 -
TheDAO周年祭--攻击事件回顾及区块链固有安全性分析
题记:若干年后,将来的新人类写《新史记》的时候,the DAO事件应该会是一个重要的篇章。由于区块链的不可篡改的特性和存证的特长,the DAO事件的细节被完整地保存了下来,包括攻防双方的在以太坊区块链上的具体动作,如果说这是一场战争的话,那将是有史以来被最真实地记录下来的一场战争。因为the DAO出事了,所以备受关注。但是就算the DAO没有出事,它也照样会被载入史册,因为它出现标志着一种新的原创 2017-11-18 20:22:04 · 13016 阅读 · 0 评论 -
玩客云区块链分析
玩客云,利用闲置宽带和存储为自己挣钱玩客云有可能是中国第一个实际落地的区块链应用(前提是活过初期疯狂的炒币)没抢到玩客云,有点沮丧,看了京东双11战报,这小东西居然销售了11多万套,要知道同类的之前能卖199元就不错了,这次定价是399元。所以这次商业模式的绝佳点有如下:估计迅雷这次通过硬件销售就能够赚钱。另外,以前迅雷要现金奖励贡献带宽者,现在只要给虚拟的数字货币就行了。由此带来的新闻效应对原创 2017-11-11 11:27:41 · 5037 阅读 · 0 评论 -
超级账本Hyperledger fabric的区块结构
> 之前学习比特币和以太坊,必先学习其区块结构,当时在银行做Hyperledger相关项目时,我却对结构很忽略,只关心智能合约,居然也能初步掌握并开始项目相关的开发。这说明超级账本的区块属性其实比较弱,重要的是智能合约的属性。性能也不错。从这个意义上讲Hyperledger用来做存证是大材小用的。问题1:交易是怎么存入区块的? Transactions are collected into bl原创 2017-11-11 10:24:46 · 4159 阅读 · 0 评论 -
超级账本Hyperledger fabric的底层技术:protobuf
超级账本项目用了protobuf序列化技术是用于分布式系统的技术,才涉及网络传输;如果是原来的单机版在一个jvm中,直接通过句柄引用就可以了所有的消息来往都是序列化的,那么序列化和工行dsr协议有什么不同吗?序列化技术其实传输的是活的对象,反序列化技术出来的东西一定是内存中运行的java对象;相反的,工行dsr协议传输的都是死的消息,我们需要事先定义每个dsr协议格式,接收端要根据dsr协议再定义原创 2017-11-11 10:00:52 · 1511 阅读 · 0 评论 -
北京项目链增加Quorum共识提升稳定性
## 北京项目目前的POA共识及存在问题POA共识介绍北京项目是网贷资金存管项目,其业务模式是以XX银行为中心的,为此我们采用了POA共识机制(同时也是限于修改代码的时间因素),其特点是单点出块,中心化方式也是一种共识,叫POA(proof of authurity)许可机制。所有节点的加入和退出都是由中心节点的管理员账户发出的。而且目前这个中心节点是写死的。ethereumj.c...原创 2018-05-30 16:16:26 · 436 阅读 · 0 评论 -
以太坊的存储层技术分析之二:以太坊和LevelDB的接口
LevelDB用户接口非常简单,主要就是Put(k,v),Get(k),Delete(k)。以太坊封装了LevelDB接口,见如下类详细代码:---------------------------------------------------------------------------------------------Go版本以太坊客户端:github.com/ethereum...原创 2018-11-03 18:49:33 · 2554 阅读 · 0 评论 -
以太坊的存储层技术分析之一:存储层及LevelDB
LevelDB数据库技术是以太坊所采用的存储层技术。从架构设计上来说,区块链可以简单的分为三个层次,从上到下分别是应用层、扩展层和协议层。其中,协议层又可以分为网络层和存储层,它们相互独立但又不可分割(图1)。存储层是区块链技术中重要的技术环节,也是最底层的技术环节。区块链节点启动时,需要从保存在磁盘上的数据库中读取以往区块,为区块同步做准备;区块链应用各节点达成共识后,要写入数据库,方能将共...原创 2018-11-03 18:40:39 · 3129 阅读 · 0 评论 -
区块链技术浅析之二:区块链的技术源流
区块链技术最早由比特币采用。随着比特币成为现象级的应用,其采用的防篡改防冒用防抵赖特性的能自动记账的分布式账本也被抽取出来,根据其技术特征和比特币原发明人的论文,命名为“区块链”技术。更往前点,区块链技术其实和更早前兴起的p2p下载(BT,电驴之类)技术有点类似,互联网发展的早期,下载都是通过中心服务器进行,如果中心服务器挂了,就下载不了,同时大家都依赖中心服务器,带宽有限的情况下,下载速度很...原创 2017-06-01 14:09:43 · 806 阅读 · 0 评论 -
区块链技术浅析之一:区块链是什么
区块链是一种自带一致性、不可篡改、不可抵赖特性的,能自动记账的分布式共享账本(DLT distributed ledger technology),技术上保障交易参与各方达成的共识能自动正确地记录到同一本可信账本中,用于解决个人或企业间合作过程中的信息不对称,提升账务处理效率,减少对账成本,减少交易摩擦,减少欺诈风险。 所以区块链是一种分布式账本技术(DLT)。现在金融科技比较热门的技术可...原创 2017-06-01 14:07:28 · 1218 阅读 · 0 评论 -
云服务器上安装Oracle JDK和zookeeper
缘起华为云有活动,免费搞了个集群。先准备试试zookeeper,发现连Java也没有,要自己安装。话说华为云可以在如下方面提升下:云服务器提供模板,比如常用的zk,redis,kafka,选中后一键安装了提供云配置管理。现在无论生产还是测试实验,都是一个集群了,相互之间的服务访问用ip很麻烦,因为云特别是docker,其ip还是动态的。提供一个立马可用的zk云服务,相关配置在买了集群...原创 2018-10-04 10:31:01 · 720 阅读 · 2 评论