要开发安全的智能合约,并规避合约资金被盗风险,开发者必须在安全方面下大功夫。如果随机数是智能合约依赖的关键数据,那么开发者就自然会期望合约所有相关方都拥有同等的不确定性,并降低因某一方成功预测结果而钻空子的风险。Chainlink VRF可以为智能合约提供随机数以及加密证明,在链上验证随机数具有不可预测性,因而可以满足智能合约对于安全随机数的要求。
本文是密码学系列文章的一部分,重点介绍了基于椭圆曲线的加密协议,包括密钥交换、承诺方案、签名、零知识证明和可验证随机函数等。文章通过清晰的示例和图示,详细解释了这些协议的原理和实现方法。