Lumino, 照亮云图前行道路上的引领之光。 Lumino是什么? Lumino的中文含义为发光、照明。在PlatON/Alaya的世界里,Lumino是一个多方协作的计算仪式,为PlatON/Alaya的密码学基础设施之一——零知识证明协议,创建必要的安全参数。 作为区块链领域重要的隐私计算技术之一,零知识证明,允许证明者向验证者证实前者知道一个秘密信息,同时又不直接泄露信息本身。作为一种兼具隐私保护和认证能力的密码学原语,零知识证明被广泛用于区块链中的交易隐私保护、数据最小化认证以及各类扩容等场景。区块链领域应用的零知识证明系统,主要是一类被称为「zk-SNARKs」的密码算法,它具有以下几个特点:
为什么要启动Lumino 目前现有的zk-SNARKs类算法,主要包括经典的GGPR13、PGHR13、Groth16、GM17,以及支持公共参数可更新的Sonic、Marlin、Plonk等新一代算法。知名的隐私密码货币ZCash的当前版本就是采用了Groth16算法。 而如果希望借助这些zk-SNARKs算法来正确运行电路——经过计算机系统编译后的证明逻辑,其前提是系统中的一系列随机的初始化参数已经存在。 例如我们可以通过一个可信的第三方来创建这些参数,创建完成之后,这些参数会被计算「证明密钥」和「验证密钥」,分别作为电路执行者——证明者和验证者的各自输入。需要注意的是,任何人如果掌握了这些随机化参数创建过程中的一些秘密信息,就可以利用这些秘密信息来作弊,使得自己可以生成虚假证明,顺利地欺骗任何人。 事实上,这些随机化的参数不会凭空出来,而区块链的世界里,也不存在纯粹的可信第三方,因此通过安全多方计算(Secure Multi-party Computation)的方式,让多个参与者共同完成这些随机化参数的创建,无疑是一个绝妙的想法。事实上,ZCash已经通过其安全多方计算仪式(Power of Tau),于2017年11月,成功地为Groth16算法创建了系统参数。 在Lumino中,多个参与者将会通过接力的形式进行多轮计算,即当前参与者将采用前一位参与者的计算结果共作为本轮的输入,而他的计算输出也将成为下一位参与者的计算输入。经过一定轮数的计算后,最后的一位参与者的输出,将作为整个仪式的最终成果,也就是PlatON/Alaya的零知识证明系统将选用的系统初始化参数。 (责任编辑:admin) |