CN105160266A - 基于k-匿名的运动轨迹数据隐私保护方法与系统 - Google Patents
基于k-匿名的运动轨迹数据隐私保护方法与系统 Download PDFInfo
- Publication number
- CN105160266A CN105160266A CN201510396875.2A CN201510396875A CN105160266A CN 105160266 A CN105160266 A CN 105160266A CN 201510396875 A CN201510396875 A CN 201510396875A CN 105160266 A CN105160266 A CN 105160266A
- Authority
- CN
- China
- Prior art keywords
- data
- extensive
- zone bit
- encryption
- anonymity
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 230000008569 process Effects 0.000 claims description 26
- 238000003780 insertion Methods 0.000 claims description 2
- 230000037431 insertion Effects 0.000 claims description 2
- 238000011946 reduction process Methods 0.000 claims 1
- 238000005516 engineering process Methods 0.000 abstract description 18
- 238000013461 design Methods 0.000 abstract description 6
- 230000007246 mechanism Effects 0.000 abstract description 3
- 238000011084 recovery Methods 0.000 abstract 1
- 238000004891 communication Methods 0.000 description 13
- 230000002093 peripheral effect Effects 0.000 description 9
- 239000000203 mixture Substances 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000000712 assembly Effects 0.000 description 3
- 238000000429 assembly Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 239000000306 component Substances 0.000 description 2
- 239000004615 ingredient Substances 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 201000010099 disease Diseases 0.000 description 1
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002427 irreversible effect Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
- G06F21/6254—Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于K-匿名的运动轨迹数据隐私保护方法与系统,采用K-匿名技术泛化运动轨迹数据,使真实数据得到隐藏,通过建立数据库触发器机制,对泛化后的数据同时进行加密,利用设计数据恢复算法,将已经泛化的数据解密并还原成原始数据,从而实现运动轨迹数据的隐私保护。本发明通过对K-匿名泛化算法的改进,使其能够将泛化的轨迹隐私数据进行还原,从而保证在隐藏隐私数据的同时能够还原原始数据,实现数据的完整性。
Description
技术领域
本发明涉及隐私数据保护技术领域,具体而言涉及一种基于K-匿名的运动轨迹数据隐私保护方法与系统。
背景技术
k-匿名是Samarati和L.Sweeney在1998年提出来的用于公共数据库或微数据发布的匿名隐私保护技术,2002年L.Sweeney为之命名为k-匿名模型,该模型在信息发布时能有效避免通过链接攻击等手段而造成的隐私信息泄露,从此基于k-匿名的隐私保护技术成为研究热点。
k-匿名就是通过匿名化原始数据集中的某些属性值形成满足一定匿名要求的匿名数据集并可用于数据发布,对于任何一个投影到这些属性上的值行,必须同时存在至少k-1条其他记录属性值完全相同于该值行。为保证数据的有效性,这些被泛化的属性一般是非敏感属性,对于敏感属性通常不进行匿名化,以保证统计数据的准确性,因为发布数据的敏感属性通常是研究的主要内容,比如医院患者就诊记录中的所患疾病,泛化该属性将导致发布数据失去意义,同时K-匿名可以保证敏感属性值不对应到具体的个体。通常K-匿名要求对于任何一条投影到这些属性上的值行,必须同时存在至少k-1条其他记录满足在这个属性集上完全相同于该值行,这k条记录组成一个等价组,从而使个体隐藏在k条数据之中,而无法确定k条数据中的具体哪一条记录是该个体对应的记录,这样对自由访问型的数据仍能达到隐私保护的目的,对于敏感属性这些对统计数据库统计结果相对重要的属性则完全保证了数据的精确性,从而以属性值的部分信息损失换取隐私属性值的被保护。
K-匿名技术最早使用在关系数据库的隐私保护中,K-匿名技术可以防止链接攻击造成的信息泄露,K-匿名技术可以保证每个个体的敏感属性,隐藏在规模为K的群体中,而这样个体能够被确认的几率不会超过1/K。该技术尽可能的保持数据的可统计性,所以可以说k-匿名技术是一种自由访问性隐私保护技术。
K-匿名是将敏感信息隐藏在K个群体中以防止信息泄露。而在位置信息中,采用时空伪装的思想,即使用空间范围代替二维坐标点,或者用时间区间代替坐标相应的时间点。其基本思想是通过减小用户空间位置的精确度,防止根据位置信息定位出用户的具体位置。
目前已有的研究工作主要解决基于K-匿名的泛化算法中泛化属性单一问题。
发明内容
本发明目的在于提供一种基于K-匿名的运动轨迹数据隐私保护方法,该方法加密能力强,在保护隐私数据的同时能够对数据进行还原处理,防止数据完整性的丢失,加密方法基于内核,适用于多种应用系统,可扩展性强。
本发明的上述目的通过独立权利要求的技术特征实现,从属权利要求以另选或有利的方式发展独立权利要求的技术特征。
为达成上述目的,本发明提出一种基于K-匿名的运动轨迹数据隐私保护方法,包括:
步骤1、获取数据库数据,并对数据添加标志位参数,将加密规则写入标志位中,根据加密规则对原始数据进行加密,最后得到新的数据库轨迹位置数据,并存入数组中;
步骤2、设置泛化参数,泛化参数包括匿名的泛化范围以及需要泛化的数据量,根据泛化参数对加密后的位置数据进行泛化,并将判断原始数据真假的规则写入标志位中,标记原始数据,得到位置数据的匿名泛化组;
步骤3、将得到的位置数据匿名泛化组进行相应列的填充并写入数据库中,同时将对应的标志位写入数据库;
步骤4、根据上述步骤得到位置数据的匿名泛化组和对应的标志位数据,并对加入标志位的位置数据的匿名泛化组进行数据库内核加密处理;以及
步骤5、在还原数据时,根据数据库内核加密算法解密标志位数据,根据解密规则判断匿名泛化组的数据真假,根据标志位加密规则对真实原始数据进行解密处理,从而得到解密后的真实原始数据。
根据本发明的改进,还提出一种基于K-匿名的运动轨迹数据隐私保护系统,包括:
用于获取数据库数据,并对数据添加标志位参数,将加密规则写入标志位中,根据加密规则对原始数据进行加密,最后得到新的数据库轨迹位置数据,并存入数组中的第一模块;
用于设置泛化参数,根据泛化参数对加密后的位置数据进行泛化,并将判断原始数据数据真假的规则写入标志位中,标记原始数据,得到位置数据的匿名泛化组的第二模块,其中前述泛化参数包括匿名的泛化范围以及需要泛化的数据量;
用于将得到的位置数据匿名泛化组进行相应列的填充并写入数据库中,同时将对应的标志位写入数据库的第三模块;
用于根据得到的位置数据的匿名泛化组和对应的标志位数据,并对加入标志位的位置数据的匿名泛化组进行数据库内核加密处理的第四模块;以及
用于在还原数据时,根据数据库内核加密算法解密标志位数据,根据解密规则判断匿名泛化组的数据真假,根据标志位加密规则对真实原始数据进行解密处理,从而得到解密后的真实原始数据的第五模块。
由以上本发明的技术方案可知,本发明与现有的隐私数据保护技术相比,其显著优点为:
(1)采用了K-匿名与数据库内核加密双保险机制,将K-匿名技术与数据库内核加密结合,保证泛化后的数据不能轻易被找出规律进行破解;
(2)数据还原机制,K-匿名技术往往是针对不可逆的发布数据进行隐私保护,从而导致数据的不可恢复,采用数据还原机制可使得保护数据的同时不损坏数据的完整性;
(3)可扩展能力强,本K-匿名算法可对大量数据进行处理;
(4)可适应性强,应用系统仅需要提供相应参数即能对需要保护的运动轨迹数据进行保护。
应当理解,前述构思以及在下面更加详细地描述的额外构思的所有组合只要在这样的构思不相互矛盾的情况下都可以被视为本公开的发明主题的一部分。另外,所要求保护的主题的所有组合都被视为本公开的发明主题的一部分。
结合附图从下面的描述中可以更加全面地理解本发明教导的前述和其他方面、实施例和特征。本发明的其他附加方面例如示例性实施方式的特征和/或有益效果将在下面的描述中显见,或通过根据本发明教导的具体实施方式的实践中得知。
附图说明
附图不意在按比例绘制。在附图中,在各个图中示出的每个相同或近似相同的组成部分可以用相同的标号表示。为了清晰起见,在每个图中,并非每个组成部分均被标记。现在,将通过例子并参考附图来描述本发明的各个方面的实施例,其中:
图1是说明根据本发明某些实施例的基于K-匿名的运动轨迹数据隐私保护方法的流程示意图。
图2是说明根据本发明某些实施例的K-匿名泛化算法的流程示意图。
图3是说明根据本发明某些实施例的3DES加密算法的框图。
图4是说明根据本发明某些实施例的数据库内核加密流程示意图。
图5是说明根据本发明某些实施例的计算机系统的示意图。
具体实施方式
为了更了解本发明的技术内容,特举具体实施例并配合所附图式说明如下。
在本公开中参照附图来描述本发明的各方面,附图中示出了许多说明的实施例。本公开的实施例不必定意在包括本发明的所有方面。应当理解,上面介绍的多种构思和实施例,以及下面更加详细地描述的那些构思和实施方式可以以很多方式中任意一种来实施,这是因为本发明所公开的构思和实施例并不限于任何实施方式。另外,本发明公开的一些方面可以单独使用,或者与本发明公开的其他方面的任何适当组合来使用。
如图1所示的根据本发明某些实施例的基于K-匿名的运动轨迹数据隐私保护方法的流程,根据本发明的实施例,一种基于K-匿名的运动轨迹数据隐私保护方法,其实现大致上包括以下步骤:步骤1、获取数据库数据,并对数据添加标志位参数,将加密规则写入标志位中,根据加密规则对原始数据进行加密,最后得到新的数据库轨迹位置数据,并存入数组中;步骤2、设置泛化参数,泛化参数包括匿名的泛化范围以及需要泛化的数据量,根据泛化参数对加密后的位置数据进行泛化,并将判断原始数据数据真假的规则写入标志位中,标记原始数据,得到位置数据的匿名泛化组;步骤3、将得到的位置数据匿名泛化组进行相应列的填充并写入数据库中,同时将对应的标志位写入数据库;步骤4、根据上述步骤得到位置数据的匿名泛化组和对应的标志位数据,并对加入标志位的位置数据的匿名泛化组进行数据库内核加密处理;步骤5、在还原数据时,根据数据库内核加密算法解密标志位数据,根据解密规则判断匿名泛化组的数据真假,根据标志位加密规则对真实原始数据进行解密处理,从而得到解密后的真实原始数据。
在一些具体的例子中,前述方法,首先通过数据库或者其他类型文件获取运动轨迹数据(包括经度和纬度数据),通过加密规则进行加密并将加密规则存入标志位中。然后根据设置参数和K-匿名泛化算法对加密处理后的位置数据进行泛化处理,并将原始数据标记为真,其余泛化数据标志为假存储在标志位中,得到匿名泛化组。其次,通过数据库内核层加密技术对匿名泛化组进行加密处理。最后在还原数据时,通过还原算法对泛化数据进行还原处理。该方法可以在保证数据隐私得到保护的同时不损失数据的完整性,从而可对重要数据进行隐私保护。
参考图2所示的基于K-匿名技术的泛化算法流程示意图,在整个运动轨迹数据隐私保护的实现过程中,泛化参数对于泛化结果和算法效率产生很重要的影响。图3所示为3DES加密算法的流程框图,图4所示为数据库内核加密的流程示意图。
如图3、图4所示,可以看出数据库内核加密使用算法和加密解密流程。
结合图1以及图2-图4所示,下面对前述实施例的基于K-匿名的运动轨迹数据隐私保护方法的实现加以更加具体的说明。
步骤1、获取数据库数据,并对数据添加标志位参数,将加密规则写入标志位中,根据加密规则对原始数据进行加密,最后得到新的数据库轨迹位置数据,并存入数组中。
在本例中,通过连接数据库或者选择由经度纬度组成的.csv和EXCEL文件,获得经纬度数据组,向数据库中添加标志位参数,将加密规则写入标志位中,根据加密规则对原始数据进行加密,最后得到新的数据库轨迹位置数据,并存入数组中。
为了记录原始经纬度数据的偏移量等信息,我们使用了一个64位的long类型的字段用于保存相关信息,这里将该字段命名为lable,对于该字段的使用如下:
0000000000000000000000000000000000000000000000000000000000000000
从左往右,第0-27位表示经度的偏移量,第27位是符号位,第28-55位表示经度的偏移量,第55位是符号位,第62位是真假标志位,用于表示当前数据是否可以用于恢复原始数据。
作为示例性的实现方式,前述步骤1中按照下述方式将加密规则写入标志位中,根据加密规则对原始数据进行加密,得到新的数据库轨迹位置数据:
首先,根据配置文件中的经度泛化级别参数lon_level和纬度泛化级别参数lat_level,生成随机的经度偏移lon_offset和纬度偏移lat_offset:
lon_offset=Random(-lon_level,lon_level)
lat_offset=Random(-lat_level,lat_level)
然后将生成的经度偏移lon_offset和纬度偏移lat_offset写入lable中:
式中,运算符&表示按位与运算,|表示按位或运算。<<表示按位左移运算,>>表示按位右移运算。
然后将lable的标志位设定为1,这里,我们用1表示当前数据可以用于恢复原始数据:
lable=lable|0x4000000000000000
此时,即完成了对lable的设置。
最后,将原始的经度数据longitude和纬度数据latitude分别加上相应的偏移:
latitude=latitude+lat_offset×0.000001
latitude=latitude+lat_offset×0.000001
至此,完成了对一条原始数据(经度数据和纬度数据)的加密处理。
前述对原始数据进行加密,得到新的数据库轨迹位置数据的具体实现方式,构成加密规则。
步骤2、设置泛化参数,泛化参数包括匿名的泛化范围以及需要泛化的数据量,根据泛化参数对加密后的位置数据进行泛化,并将判断原始数据数据真假的规则写入标志位中,标记原始数据,得到位置数据的匿名泛化组。
本例中,设置的泛化参数包括匿名的泛化范围以及需要泛化的数据量,用于对每一条加密处理后的位置数据进行泛化处理得到多条数据,并将真假规则写入标志位,最后得到匿名泛化组。
如前述的,在字段lable的第62位写入真假标志信息。
作为一个示例性的实现,前述的泛化处理以及真假标志的写入包括:
根据设置的参数K,即泛化数量(需要泛化的数据量),生成K-1个泛化数据。这K-1个泛化数据加上原始的位置数据构成一个匿名泛化组。
首先,对于任一泛化数据的标志位字段,将其真假标志位设定为0,由下列公式完成:
lable=lable&0xbfffffffffffffff
然后,根据泛化范围参数并根据如下公式生成经纬度的扰动:
lon_offset=Random(-lon_level,lon_level)
lat_offset=Random(-lat_level,lat_level)
最后,将经纬度扰动加到经纬度数据上:
longitude=longitude+lon_offset×0.000001
latitude=latitude+lat_offset×0.000001。
至此,完成对每一条加密后的位置数据的泛化处理。
步骤3、将位置数据匿名泛化组进行相应列的填充并写入数据库中,同时将对应的标志位写入数据库。
步骤4、根据上述步骤得到位置数据的匿名泛化组和对应的标志位数据,并对加入标志位的位置数据的匿名泛化组进行数据库内核加密处理。
本例中,结合图4所示,数据库内核加密处理的实现包括:
首先,连接Oracle数据库,在数据库中为DBMS_CRYPTO加密库进行授权,调用加密库并使用3DES对称加解密算法进行加密;
其次,为需要加密的表中属性列编写触发器程序,使得数据库在数据插入、更新和删除时,对数据自动进行加密;
最后,调用加密算法对匿名泛化组的数据进行更新,使得原始数据得到加密效果。
本例中,前述加密解密算法选择现有公知的3DES对称加密算法,其实现原理和过程如图3所示。
结合图1所示,步骤5、在还原数据时,根据数据库内核加密算法解密标志位数据,根据解密规则判断匿名泛化组数据的真假,根据标志位加密规则对真实原始数据进行解密处理,从而得到解密数据。
如前述内容所描述的,在所有数据中,lable字段标志位为1的记录,可以用于恢复原始经纬度数据。
所以首先要判断标志位是否为1:
当lable&0x4000000000000000≠0时,该记录可以用于恢复原始数据:
首先得到经纬度的偏移量:
然后将经度和纬度数据减去相应的偏移量,即可得到原始的经度和纬度数据:
longitude=longitude-lon_offset×0.000001
latitude=latitude-lat_offset×0.000001
结合图1所示,根据本发明的实施例,还提出一种基于K-匿名的运动轨迹数据隐私保护装置,包括:用于获取数据库数据,并对数据添加标志位参数,将加密规则写入标志位中,根据加密规则对原始数据进行加密,最后得到新的数据库轨迹位置数据,并存入数组中的第一模块;用于设置泛化参数,根据泛化参数对加密后的位置数据进行泛化,并将判断原始数据数据真假的规则写入标志位中,标记原始数据,得到位置数据的匿名泛化组的第二模块,其中前述泛化参数包括匿名的泛化范围以及需要泛化的数据量;用于将得到的位置数据匿名泛化组进行相应列的填充并写入数据库中,同时将对应的标志位写入数据库的第三模块;用于根据得到的位置数据的匿名泛化组和对应的标志位数据,并对加入标志位的位置数据的匿名泛化组进行数据库内核加密处理的第四模块;以及用于在还原数据时,根据数据库内核加密算法解密标志位数据,根据解密规则判断匿名泛化组的数据真假,根据标志位加密规则对真实原始数据进行解密处理,从而得到解密后的真实原始数据的第五模块。
显然,正如以上内容结合图1所示描述的,本例中的第一模块、第二模块、第三模块、第四模块、第五模块,在具体实现其配置和功能时,优选地采用前述的一个或多个基于K-匿名的运动轨迹数据隐私保护方法的具体实施方式来实现。
图5示例性地说明了根据本发明某些实施例的计算机系统的结构实例,计算机系统100包括一个或多个处理单元(CPU)101、存储器控制器102、外设接口103、通信装置104、外部端口105、存储器120、I/O子系统130、显示屏132(图4示例性地绘示了构造为触控屏的情形)、其他输入或控制设备134。这些组件通过一条或多条数据总线/信号线160进行通信。图4所表示的计算机系统100仅仅是一个示例,该计算机系统100的组件还可以比图示具有更多或者更少的组件,或者具有不同的组件配置。图4所示的各种组件可以利用硬件、软件或者软硬件的结合来实现,包括一个或多个信号处理和/或集成电路。
前述一个或多个处理器(CPU)101作为计算机系统100的控制执行核心组件,运行各种存储在存储器120内的程序和/或指令集,以便实现计算机系统100的各项功能并对数据进行相关处理。
存储器120,包括高速随机读取存储器进行数据缓存,还包括非易失性存储器,例如一个或多个闪存设备(FLASH),或者其他非易失性固态存储设备。在某些实施例中,存储器120还可以包括远离前述一个或多个处理器101的存储器,例如经由通信装置104或者外部端口105以及通信网络进行访问的网络附加存储器,其中的通信网络可以是因特网、一个或多个内部网络、局域网(LAN)、存储局域网(SAN)、广域网(WLAN)等,或者其适当的组合形式。
存储器控制器102,控制计算机系统100的诸如一个或多个处理器101、外设接口103之类的组件对存储器120的访问。
外设接口103,用于将计算机系统100的输入和输出外设耦接到处理器101和存储器120。
处理器101、存储器控制器102以及外设接口103可以在单个芯片上实现,例如图5中表示的芯片110。在另外的例子中,它们也可以在多个分立的芯片上实现。
在一些例子中,图5中其他的一些组件,诸如通信装置104、外部端口105之类的组件,也可以与前述处理器101、存储器控制器102以及外设接口103一起集成在单个芯片上。
通信装置104,用于实现计算机系统100与通信网络以及其他设备进行通信。例如通过电磁波来实现数据信息的交换,通信装置104执行电磁波的接收和发送,将电磁波变成电信号或者将电信号变换成电磁波。通信装置104可包括公知的用于执行这些功能的电路和/或模块,例如天线系统、RF收发器、用户身份识别卡(SIM)、CODEC芯片组、数字信号处理器等,或者它们的组合。这些通信装置104例如可通过无线通信与通信网络和/或其他设备进行通信,这些通信网络例如因特网、内部网、诸如蜂窝电话网络之类的无线网络、无线局域网(LAN)、城域网(MAN)等。这些无线通信可以基于多种通信协议、标准中的至少一种,包括但不限于全球移动通信系统(GSM)、增强型数据GSM环境(EDGE)、宽带码分多址(W-CDMA)、码分多址(CDMA)、蓝牙(Bluetooth)、基于IEEE标准的Wi-Fi、基于因特网协议的语音传输(VoIP)、即时消息协议(IM)、短讯息服务协议(SMS),或者其他任意合适的通信协议。
外部端口105,例如通用串行总线接口(USB)、火线接口1394(FireWire)、高清晰度多媒体接口(HDMI)、VGA接口等,适于直接或者通过网络(如因特网、无限局域网等)间接耦接到其他设备。
I/O子系统130提供计算机系统100的输入/输出外设与外设接口103之间的接口。输入/输出外设包括触控屏132(如果前述显示屏构造为触控屏,当然也可以采用其他形式的显示构件)、其他输入/控制设备,或者其它类似的设备。本例的I/O子系统130包括一触控屏控制器131以及一个或多个其他输入控制器133。该一个或多个其他输入控制器133接收/发送来自/去往其他输入/控制设备的电信号。所述的输入/控制设备134包括物理按钮(例如按压式按钮、摇杆按钮等)、拨号盘、滑动式开关、操纵杆、旋转式多重选择器等。
触控屏132同时提供计算机系统100与用户之间的输入与输出接口。触控屏控制器131接收/发送来自/去往触控屏的电信号。该触控屏132向用户提供可视输出,包括文本、图形、视频及其任意组合。
触控屏132适于基于触觉和/或触知来接受用户的输入。触控屏132具有一个接收用户输入的触摸敏感表面。触控屏132与触控屏控制器131(连同存储器120内存储的任何相关联的模块和/或指令集一起)检测触控屏上的接触(以及接触的连续和/或中断),并且将检测到的接触变换成与显示在触控屏上的诸如一个或多个软按键之类的用户界面的交互。
在一些实施例中,触控屏132与用户之间的接触基于一个或多个手指。在另一些例子中,触控屏132与用户之间的接触基于外部设备,诸如指示笔等。
触控屏132可基于LCD、LED技术的触控式设备,可以采用多种触敏技术中的一种来检测接触以及接触的连续与中断,例如电容、电阻、红外和声表面波技术,接近传感器阵列等。
计算机系统100还包括电源系统180,用于为各个组件供电。电源系统180包括电源管理系统、一个或多个电源(电池或AC)、充电系统、电源故障检测电路、电源转换电路/逆变器、电源状态指示电路等。
如图5所述,计算机系统100的软件组件包括操作系统、通信模块(或指令集)以及用于实现前述图1所示的各个流程或处理的模块,诸如根据图1以及前述内容所描述的方法而编写的程序模块(组件/指令集),这些程序模块被存储在前述的存储器120中,并可由处理器101通过调用执行,从而实现前述图1所示的各个步骤。
前述的操作系统,例如Linux、iOS、WINDOWS、Andriod系统,或者诸如Vxworks之类的嵌入式系统,具有用于控制和管理常规系统任务(例如内存管理、存储设备控制、电源管理等)以及有助于各类软硬件组件之间通信的各种软件组件和/或驱动器。
通信模块,有助于经一个或多个外部端口105而与其他设备进行通讯。并且该通讯模块还包括用于处理外部端口105和/或通信装置104接收的数据的各种软件组件。
虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视权利要求书所界定者为准。
Claims (9)
1.一种基于K-匿名的运动轨迹数据隐私保护方法,其特征在于,包括:
步骤1、获取数据库数据,并对数据添加标志位参数,将加密规则写入标志位中,根据加密规则对原始数据进行加密,最后得到新的数据库轨迹位置数据,并存入数组中;
步骤2、设置泛化参数,泛化参数包括匿名的泛化范围以及需要泛化的数据量,根据泛化参数对加密后的位置数据进行泛化,并将判断原始数据数据真假的规则写入标志位中,标记原始数据,得到位置数据的匿名泛化组;
步骤3、将得到的位置数据匿名泛化组进行相应列的填充并写入数据库中,同时将对应的标志位写入数据库;
步骤4、根据上述步骤得到位置数据的匿名泛化组和对应的标志位数据,并对加入标志位的位置数据的匿名泛化组进行数据库内核加密处理;以及
步骤5、在还原数据时,根据数据库内核加密算法解密标志位数据,根据解密规则判断匿名泛化组的数据真假,根据标志位加密规则对真实原始数据进行解密处理,从而得到解密后的真实原始数据。
2.根据权利要求1所述的基于K-匿名的运动轨迹数据隐私保护方法,其特征在于,前述步骤1中,通过连接数据库或者选择由经度纬度组成的.csv和EXCEL文件,获得经纬度数据组,向数据库中添加标志位参数,将加密规则写入标志位参数中,根据加密规则对原始数据进行加密,最后得到新的数据库轨迹位置数据,并存入数组中,其中,在对原始数据的加密过程中,使用了一个64位的long类型的字段用于保存相关信息,这里将该字段命名为lable,对于该字段的使用如下:
0000000000000000000000000000000000000000000000000000000000000000
Lable字段从左往右,第0-27位表示经度的偏移量,第27位是符号位,第28-55位表示经度的偏移量,第55位是符号位,第62位是真假标志位,用于表示当前数据是否可以用于恢复原始数据。
3.根据权利要求2所述的基于K-匿名的运动轨迹数据隐私保护方法,其特征在于,前述步骤1中,按照下述方式将加密规则写入标志位中,根据加密规则对原始数据进行加密,得到新的数据库轨迹位置数据:
首先,根据配置文件中的经度泛化级别参数lon_level和纬度泛化级别参数lat_level,生成随机的经度偏移lon_offset和纬度偏移lat_offset:
lon_offset=Random(-lon_level,lon_level)
lat_offset=Random(-lat_level,lat_level)
然后将生成的经度偏移lon_offset和纬度偏移lat_offset写入lable中:
式中,运算符&表示按位与运算,|表示按位或运算,<<表示按位左移运算,>>表示按位右移运算;
然后将lable的标志位设定为1,使用1表示当前数据可以用于恢复原始数据:
lable=lable|0x4000000000000000
此时,即完成了对lable的设置;
最后,将原始的经度数据longitude和纬度数据latitude分别加上相应的偏移:
latitude=latitude+lat_offset×0.000001
latitude=latitude+lat_offset×0.000001
至此,完成了对一条原始数据的加密处理。
4.根据权利要求3所述的基于K-匿名的运动轨迹数据隐私保护方法,其特征在于,前述步骤2中,设置的泛化参数包括匿名的泛化范围以及需要泛化的数据量,用于对每一条加密处理后的位置数据进行泛化处理得到多条数据,并将真假规则写入标志位,最后得到匿名泛化组,其中
前述的泛化处理以及真假标志的写入包括:
根据设置的参数K,即泛化数量,生成K-1个泛化数据,这K-1个泛化数据加上原始的位置数据构成一个匿名泛化组;
首先,对于任一泛化数据的标志位字段,将其真假标志位设定为0,由下列公式完成:
lable=lable&0xbfffffffffffffff
然后,根据泛华范围参数并根据如下公式生成经纬度的扰动:
lon_offset=Random(-lon_level,lon_level)
lat_offset=Random(-lat_level,lat_level)
最后,将经纬度扰动加到经纬度数据上:
longitude=longitude+lon_offset×0.000001
latitude=latitude+lat_offset×0.000001
至此,完成对每一条加密后的位置数据的泛化处理。
5.根据权利要求4所述的基于K-匿名的运动轨迹数据隐私保护方法,其特征在于,前述步骤4中,数据库内核加密处理的实现包括:
首先,连接Oracle数据库,在数据库中为DBMS_CRYPTO加密库进行授权,调用加密库并使用3DES对称加解密算法进行加密;
其次,为需要加密的表中属性列编写触发器程序,使得数据库在数据插入、更新和删除时,对数据自动进行加密;
最后,调用加密算法对匿名泛化组的数据进行更新,使得原始数据得到加密效果。
6.根据权利要求5所述的基于K-匿名的运动轨迹数据隐私保护方法,其特征在于,前述步骤5中,在还原数据时,根据数据库内核加密算法解密标志位数据,根据解密规则判断匿名泛化组数据的真假,根据标志位加密规则对真实原始数据进行解密处理,从而得到解密数据,其具体实现包括:
首先,判断标志位是否为1:
当lable&0x4000000000000000≠0时,该记录可以用于恢复原始数据:
然后,获取经纬度的偏移量:
最后,将经度和纬度数据减去相应的偏移量,即可得到原始的经度和纬度数据:
longitude=longitude-lon_offset×0.000001
latitude=latitude-lat_offset×0.000001
至此,完成数据的还原过程。
7.一种基于K-匿名的运动轨迹数据隐私保护系统,其特征在于,包括:
用于获取数据库数据,并对数据添加标志位参数,将加密规则写入标志位中,根据加密规则对原始数据进行加密,最后得到新的数据库轨迹位置数据,并存入数组中的第一模块;
用于设置泛化参数,根据泛化参数对加密后的位置数据进行泛化,并将判断原始数据数据真假的规则写入标志位中,标记原始数据,得到位置数据的匿名泛化组的第二模块,其中前述泛化参数包括匿名的泛化范围以及需要泛化的数据量;
用于将得到的位置数据匿名泛化组进行相应列的填充并写入数据库中,同时将对应的标志位写入数据库的第三模块;
用于根据得到的位置数据的匿名泛化组和对应的标志位数据,对加入标志位的位置数据的匿名泛化组进行数据库内核加密处理的第四模块;以及
用于在还原数据时,根据数据库内核加密算法解密标志位数据,根据解密规则判断匿名泛化组的数据真假,根据标志位加密规则对真实原始数据进行解密处理,从而得到解密后的真实原始数据的第五模块。
8.一种计算机系统,其特征在于,包括:
存储器;
一个或多个处理器;
一个或多个模块,该一个或多个模块被存储在所述存储器中并被配置成由所述一个或多个处理器执行,所述一个或多个模块包括用于执行下述处理的模块:
用于获取数据库数据,并对数据添加标志位参数,将加密规则写入标志位中,根据加密规则对原始数据进行加密,最后得到新的数据库轨迹位置数据,并存入数组中的第一模块;
用于设置泛化参数,根据泛化参数对加密后的位置数据进行泛化,并将判断原始数据数据真假的规则写入标志位中,标记原始数据,得到位置数据的匿名泛化组的第二模块,其中前述泛化参数包括匿名的泛化范围以及需要泛化的数据量;
用于将得到的位置数据匿名泛化组进行相应列的填充并写入数据库中,同时将对应的标志位写入数据库的第三模块;
用于根据得到的位置数据的匿名泛化组和对应的标志位数据,对加入标志位的位置数据的匿名泛化组进行数据库内核加密处理的第四模块;以及
用于在还原数据时,根据数据库内核加密算法解密标志位数据,根据解密规则判断匿名泛化组的数据真假,根据标志位加密规则对真实原始数据进行解密处理,从而得到解密后的真实原始数据的第五模块。
9.一种计算机系统,其特征在于,包括:
存储器;
一个或多个处理器;
一个或多个模块,该一个或多个模块被存储在所述存储器中,并被配置成由所述一个或多个处理器运行以执行下述处理:
获取数据库数据,并对数据添加标志位参数,将加密规则写入标志位中,根据加密规则对原始数据进行加密,最后得到新的数据库轨迹位置数据,并存入数组中;
设置泛化参数,泛化参数包括匿名的泛化范围以及需要泛化的数据量,根据泛化参数对加密后的位置数据进行泛化,并将判断原始数据数据真假的规则写入标志位中,标记原始数据,得到位置数据的匿名泛化组;
将得到的位置数据匿名泛化组进行相应列的填充并写入数据库中,同时将对应的标志位写入数据库;
根据得到位置数据的匿名泛化组和对应的标志位数据,并对加入标志位的位置数据的匿名泛化组进行数据库内核加密处理;以及
在还原数据时,根据数据库内核加密算法解密标志位数据,根据解密规则判断匿名泛化组的数据真假,根据标志位加密规则对真实原始数据进行解密处理,从而得到解密后的真实原始数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510396875.2A CN105160266B (zh) | 2015-07-08 | 2015-07-08 | 基于k-匿名的运动轨迹数据隐私保护方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510396875.2A CN105160266B (zh) | 2015-07-08 | 2015-07-08 | 基于k-匿名的运动轨迹数据隐私保护方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105160266A true CN105160266A (zh) | 2015-12-16 |
CN105160266B CN105160266B (zh) | 2018-09-04 |
Family
ID=54801118
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510396875.2A Active CN105160266B (zh) | 2015-07-08 | 2015-07-08 | 基于k-匿名的运动轨迹数据隐私保护方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105160266B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110502919A (zh) * | 2019-07-12 | 2019-11-26 | 武汉理工大学 | 一种基于深度学习的轨迹数据去匿名方法 |
CN110543782A (zh) * | 2019-07-10 | 2019-12-06 | 暨南大学 | 一种基于k-匿名算法实现数据集脱敏的方法以及系统 |
CN111539023A (zh) * | 2020-04-27 | 2020-08-14 | 南京邮电大学 | 一种基于多次迭代过滤的移动轨迹数据隐私保护匹配方法 |
FR3094109A1 (fr) * | 2019-03-21 | 2020-09-25 | Roofstreet | Procédé et système de traitement de données numériques provenant d’équipements connectés en garantissant la sécurité des données et la protection de la vie privée |
CN111917533A (zh) * | 2019-05-10 | 2020-11-10 | Sap欧洲公司 | 具有减少泄漏的区间统计量的隐私保护基准分析 |
US10831928B2 (en) | 2018-06-01 | 2020-11-10 | International Business Machines Corporation | Data de-identification with minimal data distortion |
US10885224B2 (en) | 2018-02-01 | 2021-01-05 | International Business Machines Corporation | Data de-identification with minimal data change operations to maintain privacy and data utility |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101788985A (zh) * | 2009-01-23 | 2010-07-28 | 日电(中国)有限公司 | 对加密倒排索引表进行k匿名更新的方法和装置 |
CN101964034A (zh) * | 2010-09-30 | 2011-02-02 | 浙江大学 | 一种模式信息损失最小化的序列类数据隐私保护方法 |
CN103841555A (zh) * | 2014-03-03 | 2014-06-04 | 江苏智联天地科技有限公司 | 基于终端与云端系统协同动态混淆的安全和隐私保护方法 |
JP2014164476A (ja) * | 2013-02-25 | 2014-09-08 | Hitachi Systems Ltd | k−匿名データベース制御サーバおよび制御方法 |
US20150007341A1 (en) * | 2008-09-05 | 2015-01-01 | Iowa State University Research Foundation, Inc. | Cloaking with footprints to provide location privacy protection in location-based services |
-
2015
- 2015-07-08 CN CN201510396875.2A patent/CN105160266B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150007341A1 (en) * | 2008-09-05 | 2015-01-01 | Iowa State University Research Foundation, Inc. | Cloaking with footprints to provide location privacy protection in location-based services |
CN101788985A (zh) * | 2009-01-23 | 2010-07-28 | 日电(中国)有限公司 | 对加密倒排索引表进行k匿名更新的方法和装置 |
CN101964034A (zh) * | 2010-09-30 | 2011-02-02 | 浙江大学 | 一种模式信息损失最小化的序列类数据隐私保护方法 |
JP2014164476A (ja) * | 2013-02-25 | 2014-09-08 | Hitachi Systems Ltd | k−匿名データベース制御サーバおよび制御方法 |
CN103841555A (zh) * | 2014-03-03 | 2014-06-04 | 江苏智联天地科技有限公司 | 基于终端与云端系统协同动态混淆的安全和隐私保护方法 |
Non-Patent Citations (1)
Title |
---|
刘华玲: ""基于完备空间数据扰动的隐私保护理论方法研究及应用"", 《中国博士学位论文全文数据库信息科技辑》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10885224B2 (en) | 2018-02-01 | 2021-01-05 | International Business Machines Corporation | Data de-identification with minimal data change operations to maintain privacy and data utility |
US10831928B2 (en) | 2018-06-01 | 2020-11-10 | International Business Machines Corporation | Data de-identification with minimal data distortion |
FR3094109A1 (fr) * | 2019-03-21 | 2020-09-25 | Roofstreet | Procédé et système de traitement de données numériques provenant d’équipements connectés en garantissant la sécurité des données et la protection de la vie privée |
CN111917533A (zh) * | 2019-05-10 | 2020-11-10 | Sap欧洲公司 | 具有减少泄漏的区间统计量的隐私保护基准分析 |
CN110543782A (zh) * | 2019-07-10 | 2019-12-06 | 暨南大学 | 一种基于k-匿名算法实现数据集脱敏的方法以及系统 |
CN110543782B (zh) * | 2019-07-10 | 2022-03-29 | 暨南大学 | 一种基于k-匿名算法实现数据集脱敏的方法以及系统 |
CN110502919A (zh) * | 2019-07-12 | 2019-11-26 | 武汉理工大学 | 一种基于深度学习的轨迹数据去匿名方法 |
CN110502919B (zh) * | 2019-07-12 | 2022-11-18 | 武汉理工大学 | 一种基于深度学习的轨迹数据去匿名方法 |
CN111539023A (zh) * | 2020-04-27 | 2020-08-14 | 南京邮电大学 | 一种基于多次迭代过滤的移动轨迹数据隐私保护匹配方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105160266B (zh) | 2018-09-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105160266A (zh) | 基于k-匿名的运动轨迹数据隐私保护方法与系统 | |
US9602506B2 (en) | Method and apparatus for supporting login through user terminal | |
US20230045087A1 (en) | Method for Remedying a Security Breach on a Mobile Device | |
EP2973167B1 (en) | Techniques for securing use of one-time passwords | |
CN103597456B (zh) | 用于在分布式存储器环境中实施存储器段访问控制的方法和装置 | |
CN105005731A (zh) | 一种数据加密、解密的方法及移动终端 | |
CN103988465B (zh) | 用于实现密钥流层级的方法和装置 | |
Abiodun et al. | Security and information assurance for IoT-based big data | |
US20120303964A1 (en) | Portable terminal, and method for securing data transmitted between hardware modules | |
CN103457995A (zh) | 终端设备数据信息的存储方法、终端设备和云端服务器 | |
WO2014051558A1 (en) | Shared secret identification for secure communication | |
CN101473314B (zh) | 在不可信机器上输入机密信息 | |
CN110462620A (zh) | 分解敏感数据存储在不同应用环境中 | |
CN113778749B (zh) | 数据备份方法及电子设备 | |
KR101267875B1 (ko) | 가상 키보드를 이용한 메시지 암·복호화 장치 및 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체 | |
US8320570B2 (en) | Apparatus and method for generating secret key | |
US11646869B1 (en) | Stateless system to restore access | |
CN102883039A (zh) | 手机多媒体私密日记加密方法 | |
CN105933499A (zh) | 验证方法和验证系统 | |
CN108696355B (zh) | 一种防止用户头像盗用的方法及系统 | |
US11775657B2 (en) | Systems and methods for enhancing security of device-internal encryption with externally generated entropy | |
CN104915607B (zh) | 一种基于移动终端的密码数据处理和交换方法 | |
KR20140123353A (ko) | 보안 메시지 전송 시스템, 이를 위한 장치 및 그의 보안 메시지 처리 방법 | |
JP2015191269A (ja) | シングルサインオン情報管理システムおよび管理方法 | |
Kedziora et al. | Improved threat models for the security of encrypted and deniable file systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |