矿业

另类匿名加密货币Apple币评论

AppeCoin是Sergio D. Lerner针对电子现金计划的

提案,专为不依赖可信第三方的对等网络而设计。像加密货币Monero或Zcash一样,AppeCoin是一个旨在保证用户完全隐私的协议。勒纳的电子现金计划利用硬币洗牌。与ZeroCoin不同,货币单位是一个固定值,所以交易金额可以从发送单位数量中推断出来,AppeCoin使用户可以通过提供分割和合并硬币的选项来真正隐藏交易金额。 <! --1 - >

你可以在这里找到最新版本的AppeCoin草案。

概述:

同行拥有私人账户,可以向其他同行发送货币单位(称为账单)。账单的金额是加密的,只有账单所有者才知道。票据可以分为较小的票据或合并为较大的票据。账单拆分和账单合并的过程可以在不揭示账单或其部分的价值的情况下完成。零知识证明用于证明正确性:账单的价值等于其部分的总和。为了避免通货膨胀,有一个最低票据价值。

<! - 2 - >

通过使用通用重新加密,可以发送到其他对等方的事务而不泄露其公共地址。一旦付款被发送,它必须被接收方接受。付款人和收款人交换加密账单的密钥。付款人和收款人之间的通信使用混合加密和实体认证。

社群验证交易的有效性,并且硬币已被正确划分或合并。在基于工作量证明的框架中,这些变化记录在由矿工维护的分类帐中。为了增加匿名性,AppeCoin提供私人,委托和公共账单洗牌。矿工们证实了洗牌的正确性。

<! AppeCoin寻求确保(见草案第6页):

效率:低交易等待时间。安全性:没有双重支出,没有超支,不可伪造(账单和付款记录),真实性,不可否认性,便携性。隐私:匿名(付款人无法从付款期间交换的数据中识别),难以追踪(不可追踪账单历史记录),无法链接的付款,私人账户余额,隐藏的交易金额。

只要所使用的加密方案抵抗仅密文攻击和选择明文攻击,决策Diffie-Hellman问题和表示问题的困难就应该保证安全和隐私。

更多详细信息:

下面我们描述AppeCoin协议中使用的一些密钥加密构件和算法。

一种。 1:Schnorr公钥的通用重新加密:

账单包含当前账单所有者的公钥。通用重新加密用于重新加密账单所有者的公钥而不使他改变其私钥。

一种。 2:Bill Shuffle: BillShuffle算法对账单进行混洗,并提供洗牌正确性的零知识证明。 BillShuffle算法的输入是票据ai(i = 1,...,n)的列表A =(a1,...,an),其输出是列表B =(b1,...,bn),其中bi是aπ(i)对于具有加密密钥k的置换π。 AppeCoin提案中考虑了两个证明系统。两者都将菲亚特 - 沙米尔启发式应用于交互式公共硬币证明系统。所提出的第二个证明系统使用(伪)随机子集测试,使其更有效。零知识是通过使加密密钥变暗来实现的,并且仅向验证者显示在给定置换π下随机选择的子集的图像或前像,而不是子集本身。证明者承诺对子集的元素的乘积进行加密。表示问题的假设硬度使得难以猜测产品。

<! --1 - > 一种。 3:CoinSplitting:

CoinSplitting算法的输入是一个账单a并且产生两个账单b和c的输出,其值加起来为账单a的值。该算法提供了正确性的零知识证明。

帐单的金额v隐藏在指数i中。即作为xv。 (请注意,在提案中,指数是指同态加密)。 CoinSplitting算法验证平衡的核心思想,即va = vb + vc,是检查方程xva = xvb×xvc的正确性。盲法因子用于掩饰比例:对于随机kb和kc,xkva zk = xkvb zkb×xkvc zkc,其中k = kb + kc。证明者改变指数或乘以因子,为验证者提供知识证明。

<! --2 - > 一种。 4:InRangeProof:

InRangeProof算法的输入是一个帐单和其值的范围。当账单在给定范围内时,算法的输出是1.

A。 5:SendBill:

这个动作包括两种产生公共和私人信息的算法。 公共消息:该消息通过网络传播,包含当前账单拥有者的公钥的散列,以及发送者的目的地地址和签名。

<! --3 - > 私人信息:该信息由发送者私密地发送给交易的接收者,实质上是账单密钥的加密,以便接收者可以验证金额并修改账单。

一种。 6:ReceiveBill:

接收方检查发送方的身份,并验证发送给他的账单和金额是否正确。

一种。 7:交易的公开检查:

矿工在分类帐中搜索账单的序列号,并确认账单未用完,并且发件人的Schnorr签名是正确的。发件人的公开地址暂时可见,直到被重新加密伪装。 评论:

我们认为AppeCoin提案非常令人兴奋,并希望评论其中的一些优点,并指出我们认为应该填补的地方。 Ad A. 1:通用重新加密: a)应假定Diffie-Hellman(DDH)而不是计算Diffie-Hellman(CDH)(AppeCoin draft,p。8)。 b)AppeCoin草案声称,通用重新加密对于任何满足不可分辨性的加密方案都是安全的,但没有提及参考。 Young / Yung的文章Semantically Secure Anonymity:Foundations of Re-Encryption演示了一种这样的加密方案,ElGamal加密的安全性。

Ad A. 2:BillShuffle:

a)安全方面:

BillShuffle提供了非交互式的零知识证明,因此需要形式证明。

菲亚特 - 沙米尔启发式是一种常用的方法,将不断循环的互动式证明转换为非交互式证明。启发式被证明是安全的,我。即在随机预言模型中是计算上合理的。在普通模型中存在一些不安全转换的例子,但菲亚特 - 沙米尔启发式应用于交互式证明,而不仅仅是参数,最近在涉及散列函数的某些条件下被证明是安全的。见Tauman-Kalai / Rothblum / Rothblum。

为BillShuffle算法的安全性提供了一些证据,但草案中没有安全性的正式证明。完整性是直截了当的。 Tauman-Kalai / Rothblum / Rothblum的文章可能意味着BillShuffle算法即使在普通模型中也能满足计算的正确性:菲亚特 - 沙米尔变换适用于证明。尽管可以从加密方案的强度中推导出零知识似乎是合理的,但是缺少所需的零知识模拟器。

b)性能:

具有随机子集测试的证明系统需要平均舍入* 3/2指数来证明和验证n个票据的混洗,这导致非常快的运行时间。 [比较shuffle协议由Abe(22 * nlog⁡(n)指数),Sako-Kilian(642 * n指数),Furukawa或Groth或Lipmaa-Fausti / Zajac(使用配对:大约3n),Lindell-Pinkas在电路上进行截断和选择;大致15qn + 39n + 10q + 6指数,其中q是统计安全参数)]。 洗牌参与者的私钥可能容易受到旁路攻击,因为洗牌的参与者必须解密所有洗牌的账单,直到他找到自己的账户为止,这导致其私钥的平均n / 2次呼叫。 c)技术备注:

在图4中,缺少bw:bw:= awk的定义。

在图7中, 13,Blob D应该以s(循环次数)开始,以便具有与证明中相同的散列H(C);

在图7中, 13,8.2中的bj应与9中的aQ(s,i)交换。 在图8中, 14,在14.1.3中,ts×k应该被rs×k代替。指数应该是j。同样,这适用于1中的ts×k-1。4. 2. 1. 1.

Ad A. 3:CoinSplitting:

a)安全方面:

其他资源

APPECoin,一个具有全部匿名化的系统 - 关键设计点 APPECoin(匿名对等电子钱币)设计(2012)

AppeCoin Anonymous Cryptocurrency Draft(2014)

如果您喜欢本文,您可能也会喜欢: zk-SNARKs技术解释:基本原则

量子抵抗公钥交换:超级同源Diffie-Hellman协议