相关技术
椭圆曲线签名算法(ECDSA)
秘密共享
门限加密
门限签名
同态加密
双线性映射累加器
区块链中的数学 -- Accumulator(累加器) | 登链社区 | 区块链技术社区
差分隐私
粗略地说,差分隐私是指在处理数据时添加一些随机性,使得个人数据无法被准确识别,但又能保证统计特征较为准确。
差分隐私指的是能满足这样一种效果的算法:保证无论一个人是否在某一个数据库中,从这个数据库中查询得到的结果(如平均数或计数)的差距微乎其微。
换言之,数据使用者无法确定某个人是否在某个数据库中,这样就能够保证用户个人数据的隐私。再换言之,除非数据使用者拥有整个数据库,否则他无法通过差分攻击来获取用户隐私。
- 数据的可用性及其隐私保护程度是一对矛盾
- 差分隐私能够在不泄露个人数据的情况下,对集体数据进行。较为准确的学习。
- 差分隐私的「差分」指的是对于两个只相差一个数据的数据库,能够保证查询结果差不多;也就是说,无法通过两个相似的查询来倒推出某人的信息。
- 差分隐私具有局限性,不适用于需要准确个人数据的场景(如导航)。
差分隐私(英语:differential privacy)是一个数据共享手段,可以实现仅分享可以描述数据库的一些统计特征、而不公开具体到个人的信息。
差分隐私背后的直观想法是:如果随机修改数据库中的一个记录造成的影响足够小,求得的统计特征就不能被用来反推出单一记录的内容;这一特性可以被用来保护隐私。从另一个角度来理解差分隐私,可以将其视为用于公开统计数据库统计特征的算法的一个约束条件。该约束条件要求数据库各记录中的隐私信息不被公开。例如,差分隐私的算法被一些政府部门用于公开人口统计信息或其它统计数据,同时保证各被统计对象的回答的保密;又如,一些公司在收集用户行为信息的时候可以籍此控制包括内部人员在内的访问者可以看到的细节
安全多方计算
https://zhuanlan.zhihu.com/p/384759946
安全多方计算是指在无可信第三方的情况下,多个参与方协同计算一个约定的函数,并且保证每一方仅获取自己的计算结果,无法通过计算过程中的交互数据推测出其他任意一方的输入和输出数据(除非函数本身可以由自己的输入推测出其他参与方的输入和输出)。
环签名
环签名(ring signature)是一种数字签名方案,最初由Rivest等人提出,环签名是一种简化的群签名,环签名中只有环成员没有管理者,不需要环成员间的合作。
环签名与群签名的关键区别在于环签名没有 ”群管理员“,环签名没有可信中心,没有群的建立过程,对于验证者来说,签名人是完全正确匿名的。环签名提供了一种匿名泄露秘密的巧妙方法。环签名的这种无条件匿名性在对信息需要长期保护的一些特殊环境中非常有用。例如,即使RSA被攻破也必须保护匿名性的场合。
可链接环签名
可链接环签名在环签名的基础上可以实现对两条签名生成者是否相同的判断
门限环签名
关联环签名
盲环签名
群签名
群签名(group signature)方案是一种类似于数字签名的密码原语,其目的在于允许用户代表群签名消息,并在该群内保持匿名。也就是说,看到签名的人可以用公钥验证该消息是由该群成员发送的,但不知道是哪一个。同时,用户不能滥用这种匿名行为,因为群管理员可以通过使用秘密信息(密钥)来消除(恶意)用户的匿名性。
群签名方案的关键是“群管理员”,它负责添加群成员,并能够在发生争议时揭示签名者身份。
以此来看,群签名在有“管理员”,并且需要一定匿名性的场景下可以有有比较好应用,比如电子商务,电子政务,企业管理等场景。
然而群签名的安全性和效率成为群签名应用的瓶颈。许多安全的群签名效率较低,并且许多已有的群签名不支持成员撤销或成员撤销效率很低,不适合大群组应用
目前比较经典的群签名方案有ACJT 2000,BBS04群签名算法等,但是他们或多或少都存在一些比如无法撤销,效率底下的问题,后续也有一些对于在这些算法基础上的改进,但基本未看到实现,所以在这里也不再展开。
聚合签名
聚合签名是一种用来将任意多个签名聚合成一个签名的变体签名方案,它可以把一笔多签交易的各个参与方的公钥和签名合并为一个公钥与签名,整个合并过程是不可见的,无法从合并后的公钥与签名推导出合并前的信息,并且在验证时仅需一次验证即可。当前通常使用Schnorr签名算法实现签名聚合。
混合网络
1981年由Chaum首先提出了基于mix-net的电子投票方案,mix net可以保证用户在访问资源或者服务时不泄露其身份信息。它由多个 Mix 服务器串联组成,每个服务器都有自己的公私钥对,用户先将自己的投票信息按顺序用串联的mix-net服务器的公钥加密然后发送给第一级mix-net服务器,进行解密,每个服务器将上一级服务器的输出内容作为输入并在随机置换其顺序后,输出给下一级服务器。这样得到的最终输出就无法和原始输入一 一对应,从而达到匿名的效果。虽然mix-net所需要的的通信成本较小,但是需要零知识证明,因此针对大规模的投票活动,其开销较大,目前仍停留在理论阶段,难以投入实际应用。
盲签名
区块链中的数学 -盲签名(Blind Signature) | 登链社区 | 区块链技术社区
盲签名与一般的数字签名不同,一般的数字签名思想是产生一串仅发送者能够产生的别人无法伪造的数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。不同的是,盲签名的签名者是不知道其所签名消息的具体内容,仅在未来某一时刻(以公证人的身份)证明签名的真实性。
具备以下性质:
- 签名者对其签名的消息是不可见的(这就是“盲”的含义),即签名者不知道他所签名消息的具体内容。
- 签名消息不可追踪,即当签名消息被公布后,签名者无法知道这是他何时/哪次的签署的。
注意这里省略了一般签名的性质(不可伪造性和不可抵赖性)。
零知识证明
基于标识的密码体制(IBC)
无证书公钥密码体制(CL-PKC)
基于密文策略属性加密(CP-ABE)
Intel SGX
TEE(Trusted Execution Environment,可信执行环境)
libsnark
libsnark 是目前实现 zk-SNARKs 电路最重要的框架,在众多私密交易或隐私计算相关项目间广泛应用
区块链预言机
https://zhuanlan.zhihu.com/p/52369816
哈希锁定
跨链
18. XuperChain 跨链技术 — xuperchain-doc 文档
侧链
公证人机制
-
单签公证人
-
多签公证人
-
分布式签名公证人
分布式私钥控制
分布式私钥控制就是多方计算和门限密码共享机制的技术。其主要作用是将中继链账户的私钥分为冗余的多份,然后分发给验证人,可以防止某个验证人在跨链资产交换的解除锁定阶段的单方作恶,因为只有多个验证人集合起来才拥有私钥。