用户身份验证系统 在目前的互联网中,用户通过账户和密码进行登录,并将信息上传到服务器中。但实际上这种方式并不安全,黑客很有可能攻击公司服务器或服务器提供商获取数据。DFINITY 则采用数字签名系统替代账户和密码,也就是加密技术中的公私钥,包括密钥生成、签名和验证。其他区块链协议同样会使用数字签名系统,用户使用私钥登录钱包,再通过钱包进行转账等各种操作。如果私钥丢失或被人窃取,就意味着永久丢失地址中的财产。DFINITY 提供了一种不同于互联网账户密码登录,也不同于区块链私钥登录的互联网身份验证系统。 DFINITY 的互联网身份可以通过三种方式验证登录:设备(智能手机或笔记本电脑)中的生物识别系统,设备解锁的密码,或插入计算机 USB 的安全密钥。用户在首次注册时会在设备的芯片中生成加密密钥,并与生成的用户号绑定。如果用户的用户号丢失,或者登录的设备丢失,都会导致无法连接到 DFINITY 的互联网身份,因此官方建议在同一个用户号下添加多个设备。互联网身份还可以为用户在不同容器前端赋予不同身份,这样用户在与每个应用交互时,应用不能将用户在不同应用中的行为关联起来。 容器(Canister)与子网(Subnet) DFINITY 中的计算单位被称为容器,包含程序和状态,是智能合约的一种衍化形式。容器允许应用程序与环境分离,并能储存当前的软件状态和用户交互的记录,以及使用应用功能引起的状态更新。容器与用户或容器之间的交互行为是储存在区块链上的,因此它运行的过程是不可篡改且不可阻止的,这也是互联网计算机不需要防火墙的原因。容器也可以运行网页前端,这是与智能合约的不同,只要有燃料供给容器就能保持运行。容器运行的燃料为 Cycles,通过由网络代币 ICP 单项兑换而来。兑换比例非固定,因此可以维持 Cycles 的价格相对稳定。在容器中预存 Cycles 可以让用户在不持有代币的情况下使用互联网服务,这方面与其他公链不同。 容器由位于数据中心的节点负责运行,它们被分配在不同的子网上,以此来实现互联网计算机的扩容。每个子网都运行自己的区块链,链上的容器可以透明地调用同一子网或者其他子网上的容器。对于整个系统来说,在同一子网中调用还是跨子网调用容器是没有区别的,背后都涉及节点间的复制和计算。在这些子网中有一个比较特殊,它负责维护互联网计算机的治理系统,也就是网络神经元系统(NNS,Network Nervous System)。 (责任编辑:admin) |