摘要:
1. iocgo简介 习惯于Java或者C#开发的人应该对控制反转与依赖注入应该再熟悉不过了。在Java平台有鼎鼎大名的Spring框架,在C#平台有Autofac,Unity,Windsor等,我当年C#开发时用的最多的就是Windsor。使用IoC容器是面向对象开发中非常方便的解耦模块之间的依赖 阅读全文
摘要:
1.合约简介 Uniswap是以太坊上最火爆的去中心化交易所DApp,其操作简单,原理也很容易理解,安全而且费用低,所以被广泛使用。由于Fabric是基于KeyValue世界状态的特点,没有原生Token,没有Gas手续费,所以所有自定义的Token都是在状态中存储的,而我们可以参考ERC20合约标 阅读全文
摘要:
由于区块链技术众所周知的不可篡改的特性,很多人就将区块链作为一个数据库来使用,在传统项目进行区块链改造的过程中,将所有本来存入传统RDBMS(关系数据库)的数据,全部改成存入区块链中,以为这就是区块链项目了。实际上,我们在对传统项目进行链改的过程中,由于区块链的特殊特性,并不能作为传统数据库使用,而 阅读全文
摘要:
在上一篇文章中,我们给出了一种零知识证明的方法,解决用户身份属性的隐私问题,下面我们再来谈谈基于DID技术,我们都能在什么场景去应用。 0x.0 无密码安全登录 这个使用场景大家应该都很熟悉了,就类似于微信扫码登录,当我们要注册或者登录一个网站时,不需要再填写用户名、密码、邮箱之类的信息,只需要用手 阅读全文
摘要:
在上一篇文章中,我们介绍了用户具有多个身份属性时,选择性的把其中的一个属性暴露出来,而不会造成其他信息的暴露。更进一步的情况,某些时候我们只需要验证用户的年龄达到多少岁,或者小于多少岁,但是并不关心用户的具体年龄和出生日期,比如在购买烟酒时,商家需要验证用户的年龄大于18岁。除了年龄,住址、民族等都 阅读全文
摘要:
在上一篇文章中,我们以最简单的生成DID,颁发VC,验证VP流程介绍了DID的用法,但是在实际生活中,我们并不总是希望直接将整个证件VC亮给验证者看,比如我们去住酒店时,需要登记姓名、身份证号信息,但是如果我们直接把身份证给前台人员的话,前台人员就可以看到我们的民族、住址等信息,对于我们普通人来说, 阅读全文
摘要:
在上一篇文章,我们已经掌握了DID的基本概念,接下来我们用一个具体的场景来看看DID是怎么使用的。 0x0. 场景描述 小明是一个刚刚从大学毕业的应届毕业生,在毕业当天学校颁发了毕业证给小明对应的数字身份,小明拿到毕业证后第二天去公司入职,其中一个环节,公司HR要求验证小明的学历信息,验证完成,小明 阅读全文
摘要:
本人最近正在研究数字身份DID技术,该技术在区块链领域目前还比较冷门,并没有什么实际的应用案例,但是数字身份的应用场景广阔,是一个必然会火起来的技术。于是打算写几篇文章,好好讲一下其中涉及到的概念,技术实现和应用场景。先从基本概念讲起: 身份: 国际电子技术委员会将“身份”定义为“一组与实体关联的属 阅读全文
摘要:
如果我们的BaaS为某SaaS提供区块链服务,那么必然面对的就是每个租户的链上数据该如何隔离的问题。在Fabric中,一般来说我们有四种隔离方法,从软到硬分别是: 1.状态数据过滤隔离 我们知道状态数据都存储在一个KV数据库,而我们可以通过构建特定的前缀实现数据存入和数据查询时的过滤。也就是说在Ch 阅读全文
摘要:
用过Fabric的都知道,在Fabric中的状态数据库提供了Couchdb和Leveldb两种实现,一般我们都会使用Couchdb作为状态数据库的默认实现,主要是因为Couchdb可以进行富查询。但是在某些情况下我们只能采用Leveldb的情况下,我们无法使用富查询,那么怎么办?我们可以利用Leve 阅读全文