如何避免基于格的可否认零知识证明中的重复操作
非可转移签名
在过去几十年引入的某些签名方案中,签名的有效性不像标准签名那样具有普遍可验证性。签名者会对能够验证签名的用户以及将这种验证结果传递给其他用户的能力加以限制。这类签名方案包括指定验证者签名、定向签名、提名签名、不可否认签名和指定确认者签名等。
其中一些被归为在线非可转移签名。在这类方案中,签名算法由签名者运行,之后签名者和验证者会运行确认(Confirm)和否认(Disavow)这两个交互协议,以确认签名的有效性或无效性。验证者无法使其他任何人相信这些结果。这类签名的应用包括机器可读旅行证件和电子护照等身份文件。
签名者和验证者之间的交互通常涉及一个三轮零知识系统。如果要在基于格的环境中设计此类方案,本文的研究成果可直接作为设计的组成部分,使签名者和验证者之间的交互只需进行一次,验证者不会察觉到中止情况,也无需(并行)重复操作。
例如,第一个(可能也是唯一的)安全的基于格的不可否认签名方案。该方案的确认和否认协议采用了斯特恩(Stern)的技术,不诚实的证明者被接受的概率为 2/3(健全性错误),这意味着为了实现真正的健全性,协议必须运行多次。结合适用于这些确认/否认协议所涉及语言的高效基于格的零知识系统,本文的技术将产生具有极高健全性的协议,且不会因中止而重复操作。如今有很多选择可以为特定的基于格的语言找到合适且高效的零知识系统。
具备 CAI 和 CR 属性的电子投票
电子投票系统有两个重要属性:按意愿投票(CAI)可验证性和抗胁迫性(CR)。CAI 可验证性指的是,当密文由外部(可能不诚实)的投票设备生成时,选民能够确信进入投票箱的密文中的选项是自己所选