本篇文章给大家谈谈区块链与身份认证,以及区块链身份认证系统开发对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
Identity Verification Using Blockchain (区块链身份认证)
Model based on Dave Birch's article:
User's verifiable attributes of the identity, such as name, age or address are hashed, then digitally signed by a trusted body. Hash with the signature then stored on the Blockchain or DLT and users store their verified ID information encrypted on their phone and carry it with them. During the verification process, user provides the relevant original information with the signed data (retrievable address on the Blockchain or DLT) to a 3rd party, and if the 3rd party can reproduce the hash from the provided information, match it with the one stored on the Blockchain and trust the signature, then the identity of the user can be treated as verified.
Benefits of using this approach:
用户可验证区块链与身份认证的身份属性(如姓名区块链与身份认证,年龄或地址)经过哈希处理,然后由受信任的机构进行数字签名。将签名及哈希数据存储在区块链或DLT中,用户将其验证的身份信息存储在手机中加密并随身携带。在验证过程中,用户向第三方提供相关的原始信息和签名数据(例如区块链或DLT上的可检索地址),如果第三方可以从提供的身份信息经哈希处理后,能将其与存储在区块链上的信息匹配并信任签名机构,那么用户的身份可以视为已验证。
使用这种方法的好处区块链与身份认证:
区块链里数字身份的意义(附一篇引发思考的优秀区块链文章)
微信作为当前互联网的基础设施和连接器,所有的价值都基于“连接”,人与人的连接,人与财的连接,人与事的连接,现在也可以人与物的连接(摩拜小程序扫码骑车),但所有的“连接”都有一个前提就是 我信任微信,信任腾讯,信任法制对互联网的规范,信任 周围的人都在用微信,这种信任追根溯源是对中心化的信任,对名誉好的企业信任,对机构,法制,社群的信任。
而如今区块链似乎可以实现区块链网络里的每个节点变成“微信”,为了形成这种去中心化的信任,我们需要给节点“微信”定义唯一可信的数字身份, 这个数字身份不仅仅是你有了区块链网络里管理你自己数字资产的私钥,还要让这个数字身份最终服务于现实生活,应用场景落地,因此还需要赋予之前提到的法制,机构,社群的信用标签。
未来的世界是分布的,并且每个节点都是可验证,可信任的,无论放在区块链还是现实世界,每个节点都变成我们大家信任的“微信”,同时我们自己也可以成为被别人信任的“微信”。
附:数字身份对于区块链的意义-刘永新(NEL)
1.特修斯之船-如何定义你自己
生活中,我们经常使用身份,我们经常会向别人介绍自己,有时会发自己的名片,有时会出示自己的身份证,可是身份的内涵究竟是什么,如何定义身份,可能很多人并不清楚。
有一个著名的思想实验叫做“特修斯之船”,特修斯之船可以在海上长久不间断航行数百年,一块木板腐烂了,就换一块新的木板,直到有一天,船上所有的木板都不是原来的木板,那么这艘船还是原来的特修斯之船吗?
人体就像是特修斯之船,细胞一直在做着新陈代谢,那么所有的细胞都更新了一遍,你还是不是原来的你?如果你的思想、性格也改变了呢?
所以,如何定义你自己好像并不是一件简单的事情。
2.生活中的身份
在生活中,我们有很多种身份,例如在公司里,你有自己的职位,在家庭里,可能是丈夫、妻子或者孩子,对于银行来说,你是他的客户,对于你的房子来说,你是他的主人,是租客的房东,对于你的车子来说,你是车主。
所以我们发现,在不同的场景中,你有不同的身份,不同的身份通常对应了不同的客体。对于银行来说,它在意的是你是不是他的客户,你在家庭里承担什么样的角色并不重要,对于车子来说,只要你有它的钥匙就可以启动它,你是不是房东它并不关心。
3.定义身份
根据前面的探讨,我尝试定义身份:
身份是关系的标识,
关系是双向的,
关系代表了双方之间的权利和义务。
所以对于不同的客体,你们有着不同的关系,你有着不同的权利和义务,有着不同的身份。
对于国家来说,你有着公民身份,通常用身份证代表,公民身份代表了你有着纳税的义务,代表着你有选举投票的权利。对于银行来说,你是他的客户,代表了你在它那里的存款和负债。对于区块链来说,你掌握了私钥,代表你拥有私钥控制的资产,私钥就是你的身份。
所以,我们不应该放弃客体而去探讨身份,重要的不是你是谁,重要的是你在别人眼里是谁。
在身份使用的过程中,包含认证和验证两个过程,例如中国人出生之后要到派出所上户口,这就是认证过程,此后出示身份证,就是验证过程。在网络上账号的注册和登录就是身份认证和验证过程。而区块链对资产所有权的认证和验证是通过共识算法达成的,可以简单的认为是51%的投票认可。
4.可信数据
中本聪在比特币的创世块中写入了一句话:“The Times 03/Jan/2009 Chancellor on brink of second bailout for banks”,这句话是当天泰晤士报的头版头条,意思是“总理大臣第二次拯救银行于危险边缘”。
很多人认为,这句话体证明了泰晤士报当天一定发表了这篇文章,体现了区块链具备的存在性证明的能力。
然而,区块链只能保证写入数据的不可篡改,无法保证数据的真实性。我们之所以认为这篇报纸文章一定存在,是因为写入区块链的是中本聪,数据的真实性是由中本聪的信誉保证的 。
实际上,数据的真实性是通过两种方式产生的:
去中心化方式,或者说51%民主投票,例如比特币交易数据的真实性实际上是通过51%算力投票的方式保证的,对于链外数据上链时,也可以通过人工投票的方式保证数据的真实性,例如去中心化预测平台Augur。
但是,不是所有的共识都能通过少数服从多数的方式达成。
例如一个艺术品究竟是真还是假,是通过专家鉴定的,而无法通过少数服从多数,鉴定结果的可信度是通过专家的信用保证的。对于一个人是不是中国人,是在上户口的时候,由派出所认证的,而不是由全体中国人投票认证的。所以对于特定的场景,有时候不得不通过公认的权威来确认事件的真实性。
通常,链上原生的数据,例如代币的分发、交易等数据可以非常方便的通过少数服从多数的投票机制来达成共识,但是对于链下数据上链时,其数据真实性需要依赖上链者的身份信誉背书,有时候也需要法律手段通过问责机制来威慑造假行为。
5.可信数据上链
所以对于链下数据的上链,数据的真实性可以通过少数服从多数的投票或者权威身份的信誉背书完成。
可信数据上链的基本流程应该是这样的:
首先,你要有个数字身份,这个身份的认证有可能是通过51%的投票产生,也有可能是通过权威认证。
然后在数据上链的时候,需要附加上身份信息。
数据使用者获取到数据后,对身份信息进行验证,然后根据验证结果决定数据的可信度。
6.身份管理
当我们使用网络应用时,需要注册、登录账号,有时候,为了方便,我们会使用第三方应用来注册及登录,这种身份托管方式虽然提供了便利性,但是第三方应用其实可以在未经我们授权的情况下登录应用,并进行操作以及获取个人数据。
所以理想情况下,我们希望能够兼顾便利性和安全性,我们希望能够通过同一个账号登录不同应用,并且完全是由自己控制。
数字身份大体可以分为三类:
数字主权身份,在中国表现形式是CA证书、EID等方案,要满足政府监管,兼容国家法律,必须知道主权身份。
数字网络身份,即各种APP的登录账号
数字资产身份,即各种区块链资产的地址及私钥
数字身份管理应用应当能兼容这几种身份,能够实现身份的认证、验证、注销、丢失找回等。
还应当有一个数据管理平台,实现数据的存储及权限管理。
区块链平台可以作为数据存证平台,将数据的指纹、读写记录等进行存证,智能合约可以实现身份的验证,通过加密技术避免多余信息泄露,也可以通过多重签名实现密钥找回。同时,区块链也是数字资产的登记平台。
在此基础上,可以实现丰富的应用场景,例如:APP登录,电子合同签署,供应链,版权保护,资产数字化。
当数字身份和区块链结合之后,再加上数据管理平台,就可以实现联盟链的需求,例如银行间的KYC联盟。联盟链的本质是基于身份的数据互信,是不是一条单独的链并不重要。
而区块链资产和主权身份关联起来后,就可以满足政府监管需求,可以在应用层增加满足监管需求的监管策略。
因此,未来区块链要想大规模应用,必须要解决数字身份问题,数字身份是链上和链下的桥梁,是区块链走向合规监管的桥梁。
而随着构建在区块链上的应用和资产越来越多,因为有统一的身份标识,大数据分析也成为可能,因此,大数据和区块链的结合,也离不开数字身份。
区块链和数字身份的关系
本文翻译自:
“身份”这个词通常用来表示微妙的不同事物。《牛津英语词典》简洁地将其定义为“一个人或一件事是谁或什么这一事实”;ISO29115更倾向于更广义的定义:“与实体相关的属性集”。
因此,身份不是一种单一的特征,而是一组因关系而异的属性,而且这些关系的多样性可以通过确证提高被声明的身份的可信度。
在物理世界中,这是相当简单的。例如,政府机构可以证明公民的照片、姓名和地址;这些信息可以通过银行或电信供应商进行的身份检查得到证实,这些银行或电信供应商受到监管,以“了解客户”,从而增强与给定身份相关的属性的可信度,从而增强身份本身的可信度。
数字身份需要以类似的方式发挥作用,但数字世界的性质使其更加困难。
特别是,数字身份所面临的一些关键挑战包括:
这些需求也是区块链背后的基本构建块。
用户的数字身份在区块链中可以表示如下:
在这里,用户的身份作为一个自声明块开始进入区块链,其中包含用户的身份属性(散列)和用户的公钥,所有这些都是用用户的私钥签名的。在此阶段,对用户身份的信任程度处于基本水平。
其他实体(例如与用户有关系的银行或电力供应商)也在区块链中表示,它们具有自己的散列属性和公钥集。这些实体可以通过签署与该关系相关的用户的特定散列属性来与该用户建立关系。例如,如果用户断言的属性值与Passport Office记录的值相匹配,那么Passport Office可以对经过散列处理的地址、姓名和主题照片进行签名。
当在区块链中为用户建立越来越多的关系时,对属性的准确性的可信度(因此身份本身)就会自然地增长。此外,随着涉及用户的事务越来越多(其他用户或实体验证或信任用户的散列属性),身份的“信誉资本”也会增长。换句话说,对身份的准确性的信心会增加,对身份背后的人的可信度的信心也会增加,这是基于他们在网上做了什么——所有这些都是透明的,任何人都可以通过区块链看到。
如果用户和实体之间的任何关系发生了变化,可以在区块链中建立一个带有加密签名时间戳的单独块,从而使任何新的验证程序都可以在加密保护的序列中观察以前的关系和当前的关系。
用户交互的任何服务的一个关键方面是在便利性和安全性之间找到适当的平衡。正如Eve Maler曾经指出的,“一个0%安全性和100%功能性的应用程序仍然是一个应用程序,但是一个100%安全性和0%功能性的应用程序是没有用的”。
在区块链中表示数字身份的块使用与用户关联的公钥进行标识,而相应的私钥是用户需要保持受保护的凭据。因此,在某种意义上,公钥可以被认为等同于用户ID,而私钥则等同于“密码”或生物特征。
然而,公钥不是一个方便的“用户id”,而私钥也不是很容易记住的东西(比如密码)或用户固有的东西(比如生物特征)。安全地存储私钥以确保它不能被其他人使用,同时能够轻松地使用它来断言相关的标识,这是一个真正的挑战。
一种解决方案是引入钱包的概念,通过钱包用户可以自断言其属性并管理其公钥和私钥。然后,可以通过更方便的用户ID(例如用户的MSISDN)识别这个钱包,并使用传统的多因素身份验证机制解锁它。然后用户可以证明私钥的所有权,从而确认他们的身份。
Mobile Connect是支持此类钱包的理想框架,它为用户提供了一种简单的身份验证方法,既方便又安全。
移动连接管理钱包和区块链管理身份分散的方式是一个完美的解决方案,提供数字身份,并以一种“方便安全”的方式提供给用户。
区块链与身份认证的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于区块链身份认证系统开发、区块链与身份认证的信息别忘了在本站进行查找喔。
标签: #区块链与身份认证
评论列表