Harry

2019-12-30

Web3极客日报 #16

1. 国人的DApp在线IDE https://chainide.com @谢锐 | Frozen:Chain IDE是国内的DApp开发团队纯白矩阵自己研发的一套能够支持多条公链多种开发语言的在线IDE。   2. 预言机服务 https://oraclize.it @谢锐 | Frozen:Oraclize是在以太坊上运行的预言机服务,方便开发者直接使用其提供的SDK构建预言机的内部逻辑,而无需关注预言机实现的机制。目前Oraclize已经改名为https://provable.xyz,同时提供Ethereum,EOS和HyperLedger的预言机服务。   3....

Read More
2019-12-28

Web3极客日报 #14

1. Substrate背后的密码学 http://ec2-13-231-107-232.ap-northeast-1.compute.amazonaws.com/posts/700 @Harry:比较全面的介绍了Substrate中用到的密码学,从哈希函数,椭圆曲线密码,地址格式这几个方面进行了讲解,同时还介绍了哈希函数和椭圆曲线的基础知识,就算你对Substrate不熟悉也值得一读。   2. 《图解密码技术》 https://book.douban.com/subject/26822106/ @Harry:学习密码学最好的书。如果你对区块链是什么还一知半解,那暂时不推荐看这本书,因为你很可能会觉得比较枯燥,并且你不知道这些密码学在区块链中解决了啥问题。   3. 去中心化Youtube https://github.com/dtube/dtube @Harry:Dtube是去中心化版本的Youtube。网站使用meteor框架搭建,内容存储在ipfs上面,如果你想给自己搭建一个去中心化的视频站点,Dtube的代码会是一个不错的参考。不过,你可能需要学习meteor框架,如果你熟悉Javascript的话,会很快入门meteor。

Read More
2019-12-28

Substrate背后的密码学

Substrate中的密码学算法一览 首先我们快速的预览一下Substrate中提供的几种密码学算法: 哈希函数: sha2 keccak blake2 xxhash 椭圆曲线密码: ed25519 sr255519 secp256k1 地址格式: SS58 这些密码学原语的定义在代码中都有定义,可以参考链接: https://github.com/paritytech/substrate/tree/master/primitives/core/src 文档中也有所描述,链接:...

Read More
2019-12-23

Web3极客日报 #9

1. 在线DApp IDE https://buidl.secondstate.io/ @Harry:Buidl是一个在线的DApp IDE,不但支持以太坊DApp合约的创建,编译和部署。它还支持前端代码直接在浏览器中运行,支持单独编辑HTML,CSS和Javascript。 2. 浅谈零知识证明:背景与起源 https://mp.weixin.qq.com/s/SJZ2aTiwrdCh9uTXFBRTKg @Harry:文章从比特币交易链条中带来的问题,引出了增加隐秘性的方法,最后介绍了零知识证明​。是零知识证明的一篇比较好的入门文章​。 3. TokenScript让Token变得更加聪明 https://github.com/AlphaWallet/TokenScript @Harry:TokenScript这个概念是由alphawallet团队提出的,可以让token更好的在不同的应用中使用,不需要在不同的平台上重新实现用户界面和交互逻辑。一个TokenScript文件包含两部分,一个是Javascript代码来定义token的行为,另外是XML数据用来抽象出token的状态和值。

Read More
2019-12-22

Web3极客日报 #8

1. Substrate中使用的地址格式 https://github.com/paritytech/substrate/wiki/External-Address-Format-(SS58) @Harry:Substrate上使用的地址格式叫做SS58,是专门设计给基于Substrate开发的链的。SS58是基于比特币中使用的Base58Check地址格式开发的,设计目标是可以通过账户地址识别出不同的Substrate链。使用的base58encode编码函数和比特币中使用的编码函数是一样的,不同的地方,SS58的前缀是地址类型<address-type>,校验和<checksum>使用的是blake2-256哈希函数。 2.  如何用Solidity设计一个操作系统 https://github.com/aragon/aragonOS @Harry:如果你想了解如何使用Solidity设计一个操作系统,那Aragon的项目是一个不错的参考,DAO在最近也被越来越多的关注,了解Aragon的代码说不准会让你有更好的DAO的想法诞生。 3. Matataki.io的前端开源项目 https://github.com/Matataki-io/Matataki-FE @Harry:Matataki.io是一个永久存储和版权确权的内容平台,作者发布的文章会被存储到IPFS上面,另外还支持token的激励功能。这个项目是一个技术栈比较完整的DApp项目,如果想了解DApp开发的同学,可以参考一下​。前端代码用的是Vue。

Read More
2019-12-20

Web3极客日报 #6

1. 如何理解Rust中的可变与不可变? https://mp.weixin.qq.com/s/s9Ac0xfpG-KeVgPAFG-fog @洋芋:本文介绍了Rust标准库中的Cell, RefCell,其作为提供内部可变性的容器,弥补了Rust所有权机制在灵活性上和某些场景下的不足。   2. 学习Polkadot的好地方:Polkadot Wiki https://wiki.polkadot.network/docs/en/learn-introduction @Harry:Polkadot Wiki 是一个关于 Polkadot 方方面面的非常全面的网站,无论是想学习,或者搭建自己的项目,还是基于 Polkadot...

Read More
2019-12-19

Web3极客日报 #5

1. Rust 编程小练习 Rustlings https://github.com/rust-lang/rustlings @黑豆腐:在本地环境运行的rust练习题,主要形式是按要求使得程序通过编译。适合刚刷完一遍The Book想要巩固一下基础知识的同学 2. Matrix 去中心化聊天网络 https://matrix.org/ @K.F.: Matrix 是一个开源、实时、端对端加密的去中心化聊天网络,任何人都能将自己的服务器加入 Martix 网络,当你发送一条消息,它会遍历所有连接到网络中的服务器节点,找到参与这个聊天的用户,每个用户都有属于自己交流的权利,不会像中心化网络一样被删除或者因服务器而崩溃,这意味着用户们拥有自己的数据主权!...

Read More
2019-12-18

Web3极客日报 #4

1. 完整的中本聪 https://satoshi.nakamotoinstitute.org/ @Happypeter:从 2012 年开始,中本聪再没有跟我们说过话。不管他是男是女,还是一个团队,其实中本聪从未远离,因为中他本就是他的论文,帖子和 Email 的集合。那么完整的中本聪住在哪里呢?请打开上面的链接。   2. Torus 网关 https://tor.us/ @郑钦文 Enzo:实现用 Google...

Read More
2019-12-17

Web3极客日报 #3

1. 如何构建一个最小化的区块链 原文链接(英文) 中文翻译 @Caos: 文章作者描述了一款最小可用的区块链需要具备什么样的核心模块,其核心思想是通过分层或隔离的方式来提高最小区块链的可维护性,希望这篇文章能够给我们一些启发。   2. Cosmos SDK中支持启用WASM虚拟机 https://mp.weixin.qq.com/s/iVXDO010WD4zP_olunuXFQ @Caos: Rust 即将统治世界,如果你是Rust开发人员,则可以轻松编写智能合约,这些合约可以上传到任何包含CosmWasm模块的基于Cosmos SDK的链。 你只需要极少的Golang知识。 你可以开始在Cosmos...

Read More
2019-12-16

Web3极客日报 #2

1. 基础知识:Metamask中用到的stream讲解 https://zhuanlan.zhihu.com/p/36728655 @Harry: Metamask中代码有很多用到stream(流)的地方,这篇文章很好的介绍了什么是stream,以及通过内存占用优化的实例解释了stream的强大   2. 零知识证明学习资源汇总 https://github.com/sec-bit/learning-zkp/blob/master/zkp-resource-list.md @Shooter: 零知识证明技术是现代密码学三大基础之一,由 S.Goldwasser、S.Micali 及 C.Rackoff 在 20...

Read More
2019-12-02

给区块链爱好者的奥地利经济学课(三)

本文整理自阿剑的分享《给区块链爱好者的奥地利经济学课》的第三部分:商业周期与货币理论。   点击这里回顾第一篇:给区块链爱好者的奥地利经济学课(一) 点击这里回顾第二篇:给区块链爱好者的奥地利经济学课(二)              商业周期最基础的形式是说,我们在资本主义的发展过程中,明确地观察到了会有繁荣会有衰退, 大家都会觉得有生意非常好做的时期还有非常难做的时期,会有失业上升的时期还有失业下降的时期。每个时间周期交替, 就是我们说的商业周期。唯一不符合周期这个说法的性质在于它是不定期发生的。这个时候,很多人试图解释商业周期发生的根源。   货币之作用  ...

Read More
2019-12-01

给区块链爱好者的奥地利经济学课(二)

本文整理自阿剑的分享《给区块链爱好者的奥地利经济学课》的第二部分:奥地利学派方法论简介。 点击这里回顾第一篇:给区块链爱好者的奥地利经济学课(一)                主观价值论   第一个基础是主观价值论,前面也已经讲过了,门格尔的经典说法:水坝只是推高水位,但并不是水出现的原因。   一切估价行为皆来自于个人,价格现象能且只能从主观估价当中得到解释,这就是所谓的主观价值论。另外一个原则是,个人只在边际上做决策,边际价值是递减的。在这方面,罗斯巴德有一个非常美妙的一个等式(参照上图): 三个单位的某个东西的效用给你的价值 >...

Read More
2019-11-29

给区块链爱好者的奥地利经济学课(一)

本文整理自阿剑的分享《给区块链爱好者的奥地利经济学课》的第一部分:经济学与奥地利学派的起源——经济学和奥地利学派的观念史。 有人说,当前主流的经济学面临非常多的问题,认为奥地利经济学才是唯一的真实的经济学。   其实真相并不是这样的。   奥地利经济学是经济学当中非常重要,我认为它可能是最重要的一部分,但是它并没有垄断经济学为我们提供的所有的洞见。整个经济学发展的过程当中,为我们认识这个世界认识人类社会的协作,提供了非常非常多的见解。这些见解在不同的时间段,有不同的经济学家,不同的学派独立地作出,并且在后续的学术传承的过程当中都流传了下来。这些其实都是经济学留给我们的非常重要的洞见,并不是只有奥地利经济学。   我的分享分成四个部分。第一部分是经济学和奥地利学派的起源。在这一部分,我希望介绍的是经济学以及奥地利学派的观念,这是本次分享最重要的部分,因为它会给大家勾勒一个经济学是如何起源的,给大家一些历史感。这些历史感会帮助大家理解不仅是整个经济学,也包括奥地利学派,会涉及到这个观念演化的过程以及推进的过程。第二部分是奥地利学派的方法论入门。当我们谈到奥地利经济学的时候,大家说的是什么呢?其实我们说的就是一系列的建构经济学理论最基础的方法。奥地利学派跟其他学派相比相对特殊的一点就是它所采取的这些方法,以及用这些方法建构出来的具体的理论。这一整套我们称为奥地利学派的经济学。那么这些部分当中,对于大多数想要理解并且学习这些具体理论的朋友来说的话,如果对奥地利学派的这些方法有一个基本的了解的话,会对你后面的学习有非常多的帮助。第三部分是奥地利学派的商业周期理论和货币理论。这一部分讲的是一个非常具体的奥地利经济学的理论。当然在这个商业周期理论当中,实际上凝聚了奥地利学派在具体理论上的几乎所有的内容,可能是奥地利学派对经济学最重要的贡献。我后面也会在具体的讲述过程当中告诉大家,奥地利学派到底在这方面做了多么重要的工作,以及他们的工作是有怎样的意义的。第四部分对各位来说可能是比较感兴趣的,也就是跟我们这个圈子有关的东西,就是比特币的不同,如何通过不同的经济学的视角去理解比特币。我选取比特币,是因为比特币是目前来看作为工作量证明的货币的最典型的一种,对它的解读,其实可以在大部分情况下适用于其它使用工作量证明构建出来的货币。   (一)亚当·斯密以前   我们首先跟大家先讲一下经济学和奥地利学派的起源。我们会认为亚当斯密是现代经济学的鼻祖,也就是说,我们认为亚当斯密他始创了现代经济学当中的非常重要的一些基础的理念。它可以作为所有亚当斯密之后的这些从事经济学研究的人一个基本的对话的对象。但是经济学的历史如果说有一些起源的话,它不仅仅来自亚当斯密,其实很早以前,就有很多思想家开始讨论跟经济学有关的东西。举几个简单的例子吧,比如说西方的亚里士多德和柏拉图,他们也都讨论过经济学,柏拉图在理想国当中所讨论的最好的秩序就是所有的人都应该各安其位,每个人的职业都应该由哲学王为他安排好。亚里士多德的想法稍微不一样,如果你看哈耶克后面,他在《致命的自负》里面写的话,其实亚里士多德对经济事务的认识还是比较粗浅的,他把语言的讲述和商业的贸易当成是人的本性。但实际上,他对这些理解还是相当简单的,他可能并没有认识到贸易其实是可以创造价值的。在东方的话,在现代的经济学教材里面,会把《管子》理解成一个讨论经济学的。但其实从现代的精确的观点来看,管仲写的这个著作《管子》更像是一种财政学的著作,这里的区别在哪里呢?我们所谓的经济学主要是研究人类事务。换句话说,研究社会当中的各种与经济有关的人跟经济运行有关的这种现象,但是所谓的财政学,更重要的着力点在于如何维持一个政府的正常运行,如何从本身的社会政治经济活动当中汲取收入,然后运用这些收入,投入到应该要花费资源的地方。比如说管仲认为国家的利益一定要保证,最重要的利益是只能由政府来掌控的。所以你会看到在当时的齐国是有盐铁的专营的。也就是说,只有官府给你发放了这个盐铁的许可,你才能从事营业。   在亚当斯密的前一个时代开始,你会看到英国和法国都开始出现大量的学者开始考虑人类的这种物质生产,跟物质生产相关联的一些现象,包括商业上的贸易,包括国家的、社会的和物质上的繁荣,以及国家与国家之间物质繁荣上的区别。我们会讲三个比较有代表性的学者。第一个是坎蒂农,你可以说他是一个经济学家,但其实在现代的教科书里面很少有教科书会提到他,基本上只有经济学思想史会提到这个人,他活在17世纪,死的时候亚当斯密的国富论还没有出版。他本身是一个商人,也从事过银行业,在从事银行业的过程当中,赚了很多钱,也亏了很多钱,他自己写了一本书,叫做《经济理论小集》,就是一个小集子,这本集子基本上很少有人关注,但他其实做了一个非常重要的发现,后来的经济学家称之为坎蒂农效应,说的是货币增值扩张过程是怎么发生的。   坎蒂农注意到,货币的扩张,比如货币数量从一百变到两百的这个过程中,从来不是每个人都均等的获得新增发的货币,而是这些货币有一个流入这个经济体当中的途径。他观察到金银从海外贸易当中流入英国,也是有具体的流入途径的,这个具体的流入途径决定了货币的价值变动不是一瞬间完成的,是在一个连续的瞬间当中逐步的完成的。这个过程也跟整个新增发的货币注入到社会当中的某一个集体,并且由这个集体逐步地向整个社会扩散的这个过程是一致的。那么这是坎蒂农他被后来的经济学家认为是非常重要的一个发现。但这个发现,其实基本上没有在当时产生太大的反响,因为他本身不是一个学者,在当时基本上没有什么人关注,与他同时代的有一个非常重要的作家叫做大卫休默,休默这个人的话,基本上在哲学史当中,他也是一个绕不开的人。不管你是学哲学还是学伦理学,或者是学经济学,偶尔也会提到他。他是所谓的苏格兰启蒙运动当中非常重要的一位作家,启发了相当多的思想家,比如说康德说在遇到大卫休默之前,他感觉他的体系就好像托勒密一样,但是遇到他之后,他终于认识到,原来日心说才是对的,这是康德的一个比喻,意思是说,大卫休默启发了康德在伦理学上的一些非常重要的转变,然后他本身也启发了亚当斯密在经济学上的一些想法。...

Read More
2019-10-09

可信执行环境TEE介绍及在区块链领域的应用

随着移动设备的发展,移动设备的功能越来越强大,移动设备会存储用户的资产,处理支付等操作。目前移动端的系统运行环境叫做REE(Rich Execution Environment),在其中运行的系统叫做Rich OS(Operating System),包含Android、IOS和Linux,Rich OS的特点是功能强大,开放和扩展性好,可以给上层应用提供设备的所有功能,比如摄像头,触摸屏等,这样才有了我们现在看到的各种各样的应用。 但Rich OS存在很多的安全隐患,比如经常会发现bug,OS可以获得应用所有的数据,很难验证OS是否被篡改,还会受到各种各样的攻击(如上图),这些对于用户资产有很大的安全隐患,那如何解决这些问题呢? 这时候就需要TEE帮忙了。 TEE是什么 TEE的全称trusted execution environment,即可信执行环境,它是CPU上的一块区域。这块区域的作用是给数据和代码的执行提供一个更安全的空间,并保证它们的机密性和完整性。 为啥说TEE更安全可信呢? 因为TEE提供了一个与REE隔离的环境保存用户的敏感信息,TEE可以直接获取REE的信息,而REE不能获取TEE的信息。当用户付款时,通过TEE提供的接口来进行验证,以保证支付信息不会被篡改,密码不会被劫持,指纹信息不会被盗用。 在TEE上运行的应用叫做可信应用(Trusted...

Read More
2019-09-22

Weekend Hacking: Rebase战队获得Substrate开发者大赛最开脑洞奖

在2019年9月21-22日杭州举办的Substrate开发者大赛中,Rebase战队的参赛项目《Merged mining with Substrate》(利用Substrate进行联合挖矿)获得了最开脑洞奖,并获得了5000元奖金。 获奖证书实拍图,看看哪个签名最好看? 此次比赛的队员由Rebase社区的4个小伙伴Harry,周洋,Shooter,River组合而成,在比赛前一周确定了比赛题目,然后在现场进行了紧张的开发完成了一个可以基于CPU算力进行联合挖矿的demo。 Rebase希望联合更多的社区伙伴一起,探索利用最新科技的各种可能性。 比赛现场: Harry在现场演示: 获奖者合影: Rebase战队和Gavin Wood合影: 比赛期间我们遇到了来自世界各地的开发者,包括新西兰,新加坡和中国其它的各个城市,他们积极的参赛态度让人印象深刻。 我们希望更多的社区伙伴积极参与这样的活动,与全球开发者一起协作,完成一次体力+脑力迸发的创作!

Read More