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

    一个朋友问我的,我就学习了一下,在此做下笔记。

    同态加密

    如果我们有一个加密函数$f$,把明文$A$变成密文${A}'$,把明文$B$变成密文${B}'$,也就是说$f(A)={A}'$, $f(B)={B}'$。另外我们还有一个加解密函数$f^{-1}$,能够将$f$加密后的密文解密成加密前的明文。

    对于一般的加密函数,如果我们将${A}'$和${B}'$相加,得到${C}'$。我们用$f^{-1}$对${C}'$进行解密得到的结果一般是毫无意义的乱码。

    但是,如果$f$是个可以进行同态加密的加密函数,我们对${C}'$使用$f^{-1}$进行解密得到结果$C$,这时候的$C=A+B$。

    (可见,这个同态与群论里的同态概念是相同的)

    同态分类

    a) 如果满足$f(A)+f(B)=f(A+B)$,我们称这种加密函数为加法同态

    b) 如果满足$f(A) imes f(B) = f(A imes B)$,我们称这种加密函数为乘法同态

    如果一个加密函数同时满足加法同态和乘法同态,称为全同态加密。那么使用这个加密函数可完成各种加密后的运算(加减乘除、多项式求值、指数、对数、三角函数)。

    全同态的应用

    1. 安全代理计算

    将数据全同态加密之后传输给云端,在云端计算(全都是密文),再将计算结果(也是密文)返回给用户,用户解密得到真正的结果。

    参考资料

    用C++ NTL实现的全同态加密及相关论文

    参考链接:https://baike.baidu.com/item/%E5%85%A8%E5%90%8C%E6%80%81%E5%8A%A0%E5%AF%86/8892160

  • 相关阅读:
    实习第五十七天
    武汉第五十六天
    武汉第五十五天
    常用环境配置
    http 基本验证(nginx)
    nginx configuration
    docker run demo
    初识Hadoop
    大数据简介
    HDFS 存放策略
  • 原文地址:https://www.cnblogs.com/lfri/p/13410643.html
Copyright © 2011-2022 走看看