向GNU Taler添加Schnorr的盲签名

2022-02-21 14:20:34

吉安·德马尔迈尔斯和卢西恩·赫泽维特已经完成了他们的学士学位#39;它为GNU Taler添加了第二个盲签名方案。

本论文的目标是通过增加对Schnorr盲签名的支持来提高Taler的性能并提供密码灵活性。为了实现这一目标,需要分析Schnorr签名研究的当前状态。选择签名方案后,必须将其集成到Taler协议中。除了在Taler中实现重新设计的协议外,还需要实现加密例程。2019年发表的论文《代数群模型中的盲Schnorr签名和签名ElGamal加密》(2021年更新)引入了子句盲Schnorr签名,作为我们改进的理论基础。本文解释了简单的盲Schnorr签名被破坏的原因,以及子句Schnorr盲签名方案是如何抵御这种攻击的。

与目前使用的RSA盲签名相比,新方案有一个额外的要求,即用两个盲因子而不是一个和多个计算来防止攻击。

Taler协议被重新设计,以支持子句盲Schnorr签名方案,包括轻微修改以确保中止幂等性,然后进一步指定。在开始实施重新设计的协议之前,本文实现了子句盲Schnorr签名的加密例程。所有实现的代码都经过测试,并为加密例程添加了基准测试。

本论文取得了多项成果:重新设计的支持子句盲Schnorr签名的协议Talerprotocols、密码例程的实现、Talers核心协议的实现,以及RSA盲签名和子句盲Schnorr签名之间的详细比较。总的来说,ClauseBlind-Schnorr签名速度更快,需要更少的磁盘空间和带宽,并为Taler提供了密码灵活性。