zoukankan      html  css  js  c++  java
  • 同态加密

    同态加密是基于数学难题的计算复杂性理论的密码学技术。对经过同态加密的数据进行处理得到一个输出,将这一输出进行解密,其结果与用同一方法处理未加密的原始数据得到的输出结果是一样的。

    1.同态加密的相关概念

    同态加密是一种无须对加密数据进行提前解密就可以执行计算的方法。使用同态加密技术在区块链上加密数据,不会对区块链属性造成任何重大的改变。也就是说,区块链仍旧是公有区块链,然而区块链上的数据将会被加密,因此照顾到了公有区块链的隐私问题,实现与私有区块链一样的隐私效果。

    同态加密的思想起源于私密同态,代数同态和算术同态是私密同态的子集。R和S是域,称加密函数E:R→S为:

    ·加法同态,如果存在有效算法,E(x+y)=E(x)⊕E(y)或者x+y=D(E(x)⊕E(y))成立,并且不泄漏x和y;

    ·乘法同态,如果存在有效算法,E(x×y)=E(x)E(y)或者xy=D(E(x)E(y))成立,并且不泄漏x和y;

    ·混合乘法同态,如果存在有效算法,E(x×y)=E(x)y或者xy=D(E(x)y)成立,并且不泄漏x;

    ·减法同态,如果存在有效算法,E(x-y)=E(x)○-E(y)或者x-y=D(E(x)○-E(y))成立,并且不泄漏x和y;

    ·除法同态,如果存在有效算法,E(x/y)=E(x)○/E(y)或者x/y=D(E(x)○/E(y))成立,并且不泄漏x和y;

    ·代数同态,如果E既是加法同态又是乘法同态;

    ·算术同态,如果E同时为加法同态、减法同态、乘法同态和除法同态。

    2.同态加密的优势

    同态加密技术不仅提供了隐私保护,它同样允许随时访问公有区块链上的加密数据进行审计用于或其他目的。换句话说,使用同态加密在公有区块链上存储数据将能够同时提供公有区块链和私有区块链最好的部分。比如,使用同态加密的以太坊智能合约能够提供相似的特点和更强的掌控,同时完整地保留以太坊的优点。

    在Shield128区块链安全平台上,KobiGurkan提到了一个同态加密在区块链上的应用案例——使用同态加密,以太坊智能合约能够用于管理员工开支。在这个案例中,如果员工不想让其同行知道他们的开支,那么他们可以加密其开支详细信息,然后发送到智能合约上。经过加密的开支信息会被算入总开支。最后,当公司财务部门想要分析开支时,可以在本地对最终的智能合约进行解密,将总开支详细分解开。这样的效果与公有账本相同,但是只有最终机构能够看到开支详细信息,其他的用户则只能看到一些加密的条目。

  • 相关阅读:
    Linux常用命令,touch命令,vi和vim命令,文件查看命令,文本处理命令,备份压缩命令,网络与磁盘命令,软件安装命令
    Linux命令整理,用户管理命令,用户组管理命令,系统管理命令,目录管理常用命令
    单元测试基本步骤?单元测试三个常用注解?日志体系结构和log4j,Log4j三个核心?
    cookies,sessionStorage 和 localStorage 之间有什么区别?
    filter() 、find()、findIndex()
    设置多行文本隐藏显示省略号时样式丢失了
    react 中封装一个简单的滚动条组件
    react-router-cache-router
    浅谈React 中 Component与PureComponent如何使用
    React.Fragment
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13312817.html
Copyright © 2011-2022 走看看