同态加密是一种可以对加密状态的数据直接进行各种操作而不会影响其保密性的技术。近年来同态加密技术不断发展和突破,越来越受人们的关注和青睐。
一、同态加密
同态加密是基于数学难题的计算复杂性理论的密码学技术。对经过同态加密的数据进行处理得到一个输出,将这一输出进行解密,其结果与用同一方法处理未加密的原始数据得到的输出结果是一样的。
实际上,现有的同态加密算法大部分鄙是对加法同态。
二、同态加密在物联网中的应用
1、数据处理与隐私保护
海量数据信息的存储与处理是物联网面临的关键问题之一。随着物联网不断发展和应用,用户(个人或企业单位)的机密信息和隐私数据也会越来越多,比如个人资料、保密数据文件等,而这些信息往往需要加密后存储在服务提供商的服务器上或者要求服务提供商的服务器处理后再返回给用户。如何保证这些机密信息不被别人知道(包括服务提供商)是用户最关心的问题之一,而如何在用户数据信息不被别人知道(包括服务提供商自己)的前提下对这些数据进行准确有效的处理并从中提取有价值的信息是服务提供商最关心的问题。这些问题都足传统加密方案难以实现的。
全同态加密是解决数据处理与隐私保护问题的一种新技术。它不需要解密就能对已加密的数据进行处理,实现与对原始数据直接进行处理相同的效果。利用同态加密技术,用户可以将需要处理的数据以密文的形式交给云端服务器,服务器可以直接对密文数据进行处理而不需要用户来解密数据,处理后服务器以密文的形式将处理结果返回给用户,用户收到处理结果后对其进行同态解街,得到已经处理好的明文数据。基于同态加密的数据处理过程如图1所示。同样,为了在确保用户隐私安全的前提下“刺探用户隐私”,以获取不涉及用户隐私而用对服务提供商有用的信息,可以利用同态加密技术对刚户的隐私信息进行加密后存储在云端服务器上,服务提供商可以对加密的隐私信息进行处理来获取有价值的信息而不必知道用户的隐私内容。
2、信息检索
随着物联网的发展,越来越多的加密数据信息存储在云端服务器上,当服务端存储的加密数据形成一定规模后,对加密数据的检索成为一个迫切需要解决的问题。现有的加密信息检索算法包括线性搜索、公钥搜索和安全索引等,这些算法鄙可以对加密数据进行快速检索,但是它们都只适用于小规模数据的检索,而且代价很高。基于全同态加密技术的数据检索方法可以直接对加密的数据进行检索,不但能保证被检索的数据不被统计分析,还能对被检索的数据做基本的加法和乘法运算而不改变对应明文的顺序,既保护了用户的数据安全,又提高了检索效率。
全同态加密的检索方法采用向量空间模型,先对待提交的检索语句进行分词和词干化,将得到的关键检索词序列和待检索文档进行加密。云端服务器对提交待检索加密文档进行检索时,提交加密后的检索词。文档南每个关键词的权重向量表示,权重是词频与倒排文档频率对数的乘积的归一化。对用全同态加密后的词频和倒排文档频率进行操作可以得到权重。对于检索词采用同样方法来描述,取检索词与文档权重的内积即可得到两者之间的相关度,然后根据大小进行排序,将有效排序后的文档返回给用户。用户得到加密文档后,用私钥对文档解密得到原始文档。基于全同态加密的检索过程如同2所示。
3、版权保护——数字水印
随着物联网在商业中的广泛应用,必然会有大甚的数字产品在网络中流通,能否有效的保护这些数字产品的版权不受侵犯,将直接影响到物联网在电子商业中的发展应用。目前,针对数字产品版权保护的信息隐藏与数字水印技术的研究已经比较成熟并在互联网中得到广泛应用。然而,如何应对复杂网络环境下数据隐藏与数字水印系统的安全挑战,是目前需要迫切解决的问题。
数字水印攻击技术可以分为两类:
1)安全性攻击,指对水印算法、水印密钥或者含有水印的载体进行的各种恶意攻击;
2)系统攻击,指针对水印系统涉及的其他问题,比如标准化问题、法律问题和硬件问题等所进行的攻击。
系统攻击需要通过优化体系结构、统一标准或者完善法律法规去解决,而安全性攻击则可以通过一些技术手段,比如本文介绍的同态加密技术去解决。主要的一类安全性攻击是非授权检测攻击,即攻击者在未经授权的情况下对含有水印的载体进行检测,以确定水印是否存在,进而猜测或破译水印的含义,甚至去除载体中的水印嵌入一个伪造的水印。
为克服上述问题,Cox等人提出分层的数字水印系统模型,如图3所示。他们将水印系统分为加密层和水印层,即存水印系统中增加一个加密层,使得被检测出来的加密水印无法破解其含义从而保证水印的安全性。水印系统将水印消息编码为符号,加密层负责水印消息的隐藏,水印层负责符号的隐藏。
然而,在多数水印系统中,普通的加密方法并不能有效抵抗非授权检测攻击。事实上,攻击者可以通过对检测统计量和相应阀值进行比较,从而判断水印的存在性。
ZhiLi等人提出的基于同态加密的数字水印方案可以有效地抵抗非授权检测攻击。其工作原理如图4所示。该方案利用同态加密技术对水印信号进行加密,将加密后的水印嵌入到原始载体中。在检测水印信号之前,先要对含有水印的载体进行同态解密,从而保证检测水印之前水印信号与含水印的载体之间没有明显的相关性,授权用户在对含水印的载体解密之后,可以通过计算解密后的含密载体与水印信号之间的相关度,判断水印的存在性进而提取水印。
小知识之物联网
物联网是新一代信息技术的重要组成部分,也是“信息化”时代的重要发展阶段。其英文名称是:“Internet of things(IoT)”。顾名思义,物联网就是物物相连的互联网。