定义:能够在不向验证者提供有效信息的情况下,使得验证者相信某种论断的正确性。
浅显易懂的说明(Zcash):https://zhuanlan.zhihu.com/p/24440530
零知识证明的三条性质(https://www.jianshu.com/p/77b44709ca37)
1.完备性(验证方和证明方都是诚实的,并遵循证明的每一个步骤)
2.合理性(没人能假冒证明方,阿里巴巴和强盗的故事,存在一种可能的情况:阿里巴巴不知道咒语,但和别人串通好,强盗举起左右手的时候,由那个人给出咒语)
3.零知识性(证明者只向验证者提供了“拥有这个知识”的信息,并没有获得知识本身的任何一点信息)
RSA加密算法
名词说明:质数(素数),互质
模反元素:两个正整数a,n互质,能找另一整数b,使得ab-1=n
rsa分为签名算法和验证算法
签名算法使用私钥加密,然后将签名和信息共同广播出去,接收方使用公钥解密;
验证算法使用公钥加密,然后将信息广播出去,接收方使用私钥解密