ICP币是Internet Computer的原生功能型代币,Internet Computer是DFINITY基金会开发的第一层协议,旨在成为“发展互联网的区块链网络”。该“互联网计算机”旨在“扩展公共互联网的功能,以便可以在智能合约兼容的分布式网络上托管后端软件”。为了实现这个愿景,ICP致力于在区块时间、确认时间以及计算和存储能力的可扩展性方面进行创新。
Internet Computer背后的主要创新是Chain Key Technology,它包含了几种新技术,包括共识机制、非交互式分布式密钥生成(NI-DKG)、网络神经系统(NNS)、互联网身份等。
Internet Computer协议主要组成
1.Network Nervous System(NNS):NNS是底层的区块链,它控制网络并分配各个节点提供的计算能力。
2.节点:每个节点都是一个子网,按功能顺序包括(i)P2P层,(iii)共识层,(iii)消息路由层和(iv)执行环境。
3.共识:节点之间更大的共识通常是共识机制不可知的,但总是分为四层:公证层、区块链层、随机信标层和身份层。
4.Neurons:Neurons允许用户抵押其ICP代币,以对治理建议进行投票。用户因对提案进行投票而获得奖励。他们还可以取消抵押ICP并将其转换为Cycles以进行功率计算。
5.Cycles:Cycles是在网络上执行操作所需的计算资源,即“燃料”。
6.Canisters:每个cannister都由WASM代码和内存组成。与以太坊等其他链不同,cycles是在每个智能合约或cannister中预先筹集的。
7.Mokoto:由DFINITY Foundation开发的新的WebAssembly编译器。
ICP代币应用场景
1.治理:ICP代币持有者可以将ICP抵押在Network Nervous System (NNS)中,以创建“ Neurons”以对治理建议进行投票并获得投票奖励。
2.网络交易:ICP代币可以分解并转换为Cycles,该周期用于通过canisters在网络上运行网站和应用程序。
3.发送:将ICP余额的一部分发送到另一个账户。如果所有的 ICP 都被发送到另一个账户,那么原发送账户就不存在了(即从分类账中删除)。
Dfinity项目介绍
Dfinity是一个去中心化的网络设计项目。团队开发了一套计算机网络协议Internet Computer Protocol(ICP),通过ICP协议,开发者利用点对点网络计算资源建立一个虚拟的区块链计算机网络。在此网络上,现有的软件以及智能合约都可以进行部署,并具有区块链可追溯,不可篡改和分布式的特性。
DFINITY团队自2015年起就致力于区块链底层技术研究,致力于开发一种基于区块链的,安全、强大的下一代应用级区块链全球计算机。DFINITY正在构建一款全新的去中心化的公共云计算服务。这套服务需要打造一个新的类似于以太坊的区块链机制,但拥有更强的性能、更大的容量和更好的兼容性。在这个机制上运行的商业应用不会宕机,不需要复杂的类似数据库、系统等控件。这将极大得减少商业应用的开支(约节省90%)和人力维护成本。
DFINITY社区将人们和组织聚集在一起,以学习和协作产品,帮助管理下一代互联网软件和服务。互联网计算机使开发人员可以进行互联网的垄断,并使互联网回到其自由开放的根源。我们致力于通过活动,内容和讨论来联系那些相信相同观点的人。
我们的任务是建造“互联网计算机”,从而将互联网重新发明为承载具有超级功能的安全软件的计算机。互联网计算机是一种不可破解,快速,可扩展至全球数十亿用户的新技术堆栈,并支持一种新型的自治软件,有望逆转Big Tech对互联网的垄断。
DFINITY由多米尼克·威廉姆斯(Dominic Williams)于2016年创立。
DFINITY基金会是一家位于瑞士苏黎世的非营利组织,负责监督帕洛阿尔托,旧金山和苏黎世的研究中心。
Dfinity项目特点
1. DFINITY 可以构建各类应用。
DFINITY 上的容器一直处于激活状态,编写的程序通过通讯协议,可以实现主动触发。相比智能合约需要外部触发而言,DFINITY 的初始设置便具备更高的灵活性。
2. DFINITY 可以做到无缝连接。
在 DFINITY 上,开发者可以直接在互联网本体上构建程序和应用,不需要云服务、数据库或支付接口等。开发者由于不需要考虑很多中间件,因而可以实现无缝连接地构建应用。
3. DFINITY 具有较强性能优势。
当 DFINITY 上的应用需要扩展性能时,原容器可以创建新的容器,或者 fork 自身。每个额外的容器都会增加整体内存容量,在增加容器数量的同时也会增加整体更新和查询调用的吞吐量。这就是所谓的无限性能。
另外,容器的更新虽然只有一个执行线程,但 DFINITY 可以允许应用并行地执行很多个容器。这是因为,在 DFINITY 中不同容器具有不同功能,一个应用会涉及到多个容器,有些容器可能是数据容器,有些可能是信任容器等,容器之间是互相调用的关系,在应用更新时,也互不影响。
4.DFINITY 简化技术栈并具有较高的包容性。
DFINITY 在互联网编程的可靠性和安全性有效解决后,很多中间件不再必要,通过简化传统的技术栈有效降低开发难度。
在 DFINITY 上用于开发的两个主要语言是:Rust 和 Motoko。据官方介绍,未来 DFINITY 业将会支持所有的开发语言,比如 C 还有 Rust 等。