加密技术在数据外包(DASS)中的应用

  好吧,虽然加密也被reject了,但是既然看了这些天,就把一些理解神马的写上来好啦~

  数据场景是介个样子的:

  假如我有海量的数据用第三方的数据库存储,为了保证数据的安全性,我需要对数据进行加密。按照传统的逻辑,要检索存储在第三方的加密数据,需要把数据从第三方下载过来,解密后再检索,这种方式仅仅是把第三方当做硬盘来用,检索速度慢,而且浪费了第三方的计算资源。所以我需要有一种算法,能让第三方在不理解数据内容的基础上进行检索。

  本文就是探讨目前的解决方案。主流的加密思想也有两种:保序加密和同态加密。加密的数据有两种形态:字符型,数字型。

  保序加密,顾名思义,就是加密过后的数据仍然是有序的。从简单的数学角度来看,其实就是将数据用一个单调函数处理之后再存储到数据库中。优点是数据库加密对应用程序相对透明,加密计算通常为对称加密,时间复杂度相对较低。但是缺点也很明显,当需要对一组数进行SUM、AVG操作时,仍然需要解密,而且抵抗密文攻击的能力比较弱。一般用于数字型数据需要排序的列,字符型数据同样也可以用这种方法,只是需要把字符转换成ASCII码再计算。相关的算法可以搜索OPES、OPES+(针对字符型数据)。

  同态加密,概念听起来很牛掰,可以对加密过的数据进行任何运算,解密后等同于对明文做同样的运算。但是在当下的DASS中并不适用,因为同态加密现在研究的是怎样的算法能同时保证加法同态和乘法同态。加法同态,就是对密文相加后解密,等同于明文相加,乘法同态类似。

  当应用场景是DASS中,比如说我们要检索id>80的数据时,怎么检索?有人可能会说只要检索E(id)>E(80)或者E(id)-E(80)>E(0)的数据就好啦。

  首先,目前的同态加密并不支持> <等一类的关系检索,第二,同态加密后的结果并不是有序的,第三方的数据库无法判断E(id)-E(80)是否大于E(0)。

  同态加密确实克服了保序加密的一些缺点,如无法对加密后的数据进行计算,无法抵抗密文攻击等,但是如果给同态加密加上有序的特性,那抵抗密文攻击的性能就会下降很多。(再说。。也没几个人同态加密有序化的方向去努力吧。。)

  当下的同态加密方案,大多都是非对称算法,比如说RSA。一些公钥密码天然的满足加法同态或者乘法同态,比如我没记错的话,RSA天生就是乘法同态的。

  其他的方案,贴个xmind图。以上及以下均只供参考。

时间: 2024-11-07 19:28:27

加密技术在数据外包(DASS)中的应用的相关文章

非对称加密技术- RSA算法数学原理分析

非对称加密技术,在现在网络中,有非常广泛应用.加密技术更是数字货币的基础. 所谓非对称,就是指该算法需要一对密钥,使用其中一个(公钥)加密,则需要用另一个(私钥)才能解密.但是对于其原理大部分同学应该都是一知半解,今天就来分析下经典的非对称加密算法 - RSA算法.通过本文的分析,可以更好的理解非对称加密原理,可以让我们更好的使用非对称加密技术. 题外话: 本博客一直有打算写一系列文章通俗的密码学,昨天给站点上https, 因其中使用了RSA算法,就查了一下,发现现在网上介绍RSA算法的文章都写

cocos2d-x 2.1 Win32+Android开发中的sqlite数据库加密技术探讨

注意:本博客转移自本人约一年前的ITPUB博客文章,为的是便于学员参考之用. 很显然,cocos2d-x编程中只了解基本的sqlite数据库操作技术只是一个开头,真正把此数据库数据应用于实际中不使用一定的加密及解密技术几乎是不行的. 这个问题尽早会来到我面前,这不?现在就来了.一开始,自然想使用最省工的了:但是,这样的好事并不多,极少极少...... 于是,我先搜罗了一些现成的文章拿来一阅. 1,Sqlite数据库加密解密 SRC: http://blog.sina.com.cn/s/blog_

浅谈 PHP 中的多种加密技术及代码示例

信息加密技术的分类 单项散列加密技术(不可逆的加密) 属于摘要算法,不是一种加密算法,作用是把任意长的输入字符串变化成固定长的输出串的一种函数 MD5 string md5 ( string $str [, bool $raw_output = false ] ); //MD5加密,输入任意长度字符串返回一个唯一的32位字符 md5()为单向加密,没有逆向解密算法,但是还是可以对一些常见的字符串通过收集,枚举,碰撞等方法破解;所以为了让其破解起来更麻烦一些,所以我们一般加一点盐值(salt)并双

使用X.509数字证书加密解密实务(三)-- 使用RSA证书结合对称加密技术加密长数据

本文全部源代码下载:/Files/chnking/EncryptLongData.rar 一.  使用证书结合对称加密算法加.解密长数据 上一章节讨论了如何使用RSA证书加密数据,文中提到:“Dotnet的RSA实现有个特点,它必须要在明文中添加一些随机数,所以明文不能把128字节占满,实际测试,明文最多为117字节,留下的空间用来填充随机数”.也就是说对于1024位密钥的RSA来说,一次只能加密128字节的数据,对于Dotnet的RSA实现更是只能加密117个字节的数据. 这就引出一个问题,超

Linux中常见的加密技术介绍

常见的加密技术: 对称加密:非对称加密:单向加密:SSL/TLS:秘钥交换 1.对称加密 采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密,也称为单密钥加密. 对称加密的常见算法:DES.3DES.AES.IDEA.RC6.CAST5等 (1)优点 加密.解密使用同一个密钥,效率高: (2)缺点 必须商定秘钥:数据传送前,双方必须商定好秘钥.线上商定,存在被窃取风险: 来源无法确认:如果钥匙被窃取,窃取者就可以冒充另一方进行通讯,接收者无法确认来源:

射频识别技术漫谈(17)——射频卡中数据的存储形式

无论什么样的智能卡,不管是接触式的还是非接触式的,存储数据都是一个必须具备的功能.即使是只有一个5字节卡号的ID64格式的卡片也不例外,只不过卡里面的内容在出厂时就被厂家写死了,用户只能读出而不能写入或改变其内容罢了. 数据在存储介质中的存储格式往往和存储介质的容量有很大关系.容量小的存储器如E2PROM,一般以二进制的位(bit)或字节(byte)为单位:容量大的存储介质如硬盘.U盘,一般以文件的形式存储数据,文件有各种类型,文件大小只要别超过物理存储总量,几乎不受限制. 射频卡通常面向特定的

VR技术在数据中心3D机房中的应用 (下)

VR技术在数据中心3D机房中的应用 (下) 前面给大家简单科普了一下VR的硬件设备以及VR在各个领域的应用,是不是觉得非常高大上?千言万语概括成一句话,VR能给用户带来前所未有的沉浸感和交互方式,让人足不出户就能够接触到外面的世界.世界那么大,我想去看看,可是我又懒,那该怎么办?于是,VR就这么火了. 相信很多人都跟我的朋友A一样,觉得VR是高科技,太先进,太高不可攀了.然而事实并不是这样.随着技术的普及,VR已经逐渐渗透到我们生活的方方面面.(没有做不到,只有你想不到) 有人说,2016年是V

1、网页后退 2、瀑布流 3、上下左右的阿斯科码值 4、加密技术

1.网页后退 /前进  <a href="javascript:history.go(-1);">后退</a><a href="javascript:history.go(1);">前进</a> 2.瀑布流              瀑布流是目前一种比较流行的页面布局和加载效果.百度,花瓣等一些好的网站都广泛用了这样一种效果,适用于单页面展示对内容的页面.这几天就跟着一些资料学习了一下瀑布流效果的制作.其原理是利用js

加密技术及常见加密算法

有了互联网的同时给我们的日常生活带来了不少的便利,与此同时也给我们带来了不少的安全隐患,可能你在和别人通信的同时,通信数据就被别人截获了,所以就必须要有一种相应的加密技术,来保护我们的通信隐私.那么今天就大家来简单的了解一下加密技术及一些常见的加密算法. 1.为什么需要加密 1.不加密流量的易受攻击性 2.不加密密码/数据容易被嗅探 3.不加密数据容易被操作 4.不加密无法验证操作 5.不加密相当于邮寄明信片 2.不安全的传统协议 telnet.FTP.POP3等等:不安全密码 http.smt