CN107078899A - 混淆数据的方法 - Google Patents

混淆数据的方法 Download PDF

Info

Publication number
CN107078899A
CN107078899A CN201680003053.6A CN201680003053A CN107078899A CN 107078899 A CN107078899 A CN 107078899A CN 201680003053 A CN201680003053 A CN 201680003053A CN 107078899 A CN107078899 A CN 107078899A
Authority
CN
China
Prior art keywords
data
obscured
determined
random
produced
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
Application number
CN201680003053.6A
Other languages
English (en)
Other versions
CN107078899B (zh
Inventor
阮子瀚
吴双
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei International Pte Ltd
Original Assignee
Huawei International Pte Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority to SG10201502401XA priority Critical patent/SG10201502401XA/en
Priority to SG10201502401X priority
Application filed by Huawei International Pte Ltd filed Critical Huawei International Pte Ltd
Priority to PCT/SG2016/050134 priority patent/WO2016153430A1/en
Publication of CN107078899A publication Critical patent/CN107078899A/zh
Application granted granted Critical
Publication of CN107078899B publication Critical patent/CN107078899B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communication
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communication
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communication the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communication
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communication the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/16Obfuscation or hiding, e.g. involving white box

Abstract

本发明的实施例提供混淆数据的系统和方法。根据一个实施例,通过将单向压缩函数应用于多个辅助输入来产生多个随机数,所述多个辅助输入可以至少包含秘密密钥和数据合作伙伴标识符。针对待混淆的每一行数据M,反复地执行以下步骤:根据所述待混淆的每一行数据构建多个数据块,其中预先确定所述数据块的数目(n);产生点积,所述点积通过以下步骤获得:通过将所述多个数据块中的每一个数据块乘以所述多个随机数中的专属的一个来产生多个乘积,并对所述多个乘积求和;以及通过确定取模运算的余数来产生所述待混淆的每一行数据的混淆形式,使用所述点积作为被除数以及预先确定的整数值作为除数来执行所述确定取模运算的余数。

Description

混淆数据的方法
技术领域
[0001] 本发明涉及数据共享应用中的数据混淆,且更具体地说,涉及混淆数据的方法,所 述方法提供模糊数据中的抗碰撞性、不可改变性、计算有效性、抗共谋性和伪随机性。
背景技术
[0002] 数据共享常见于科学研究以及企业中。电信业务提供商(telecommunication service provider,TSP)可以获得如图1的表Ia到Ib所陈列的用户或订户信息。
[0003] 电信业务提供商可能希望与他们的业务合作伙伴共享此信息,他们的业务伙伴可 能希望评估某一位置(12,24)是否适用于建立美容商店。因此,电信业务提供商可以向合作 伙伴提供表Ia和lb,所述合作伙伴接着检查所述位置周围的人流量模型,特别是他们的目 标客户(例如,年轻女性)。然而,按照根据美国国家标准与技术研究所的US标准,移动号码 被认为是个人可识别信息(Personally Identifiable Information,PII) WII是指能够就 其本身而言或与其它信息一起用于识别、联系或定位单个的人或在情境中识别个体的信 息。PII可以被看作是关于由代理机构维护的个体的任何信息,包含(1)可以用来辨别或追 踪个体的身份的任何信息,例如姓名、社会保障号、出生日期和地点、母亲的婚前姓,或生物 标识记录;以及⑵关联到或可关联到个体的任何其它信息,例如医疗、教育、财政和就业信 息。
[0004] 因此,直接共享来自表Ia和Ib的数据会危及所列用户的隐私,从而可能导致犯罪。 从表Ia和Ib中删除移动号码将解决隐私问题,但是不能提供有用的数据,因为移动号码是 用作关联这两个表中的数据的主(关联)密钥。因此,需要数据的混淆。
[0005] 如果与不同合作伙伴共享的混淆数据相同,那么存在共谋攻击的风险。图2示出了 分别与不同合作伙伴共享的表2a到2c。由于提供给不同合作伙伴的已加密移动号码相同, 因此合作伙伴可能共谋重建对于每个订户的几乎完整的档案袋,这将侵犯用户隐私。
[0006] 与数据混淆相关的现有方法在第US 2008/0181396 Al号美国专利申请公开案(巴 拉克里希南(Balakrishnan)等人)“使用实体检测和替换的文本数据的数据混淆(Data Obfuscation of Text Data Using Entity Detection and Replacement)”和第US 2012/ 0303616 Al号美国专利申请公开案(阿布尔萨德(Abuelsaad)等人)“使用单向哈希的数据 微扰和匿名化(Data Perturbation and Anonymization Using One Way Hash)” 中进行了 描述。虽然现有方案对于单次使用可以有效,但是当存在数百万或甚至数十亿行待混淆的 数据的情况下现有方案将不会有效。在当今时代,在高速下产生高容量数据,因此需要更有 效的混淆方法。
发明内容
[0007] 本发明的实施例提供一种混淆数据的有效方法和系统,其符合模糊数据中的其它 安全需求,包含抗碰撞性、不可改变性、计算有效性、抗共谋性和伪随机性。
[0008] 根据本发明的一个实施例,提供一种混淆数据的方法。所述方法包括:
[0009]通过将单向压缩函数应用于多个辅助输入来产生多个随机数;以及 [0010] 针对待混淆的每一行数据,反复地:
[0011] 根据待混淆的每一行数据构建多个数据块,其中预先确定数据块的数目;
[0012] 产生点积,所述点积通过以下步骤获得:通过将多个数据块中的每一个数据块乘 以多个随机数中的专属的一个来产生多个乘积,并对所述多个乘积求和;以及
[0013] 通过确定取模运算的余数来产生待混淆的每一行数据的混淆形式,使用点积作为 被除数以及预先确定的整数作为除数来执行确定取模运算的余数。
[0014] 所述方法可以进一步包含:
[0015] 在反复之前,确定整数值和待混淆的多行数据;
[0016] 使用1 一厂^1)/2(1确定碰撞的概率,其中q是所确定的整数,L是所确定的待混淆的 数据的总行数,且e是自然对数的已知底数(大约等于2.718281828);并且
[0017] 如果所确定的碰撞概率超过第一预定阈值,调整整数值。
[0018] 所述方法可以进一步包含:
[0019] 确定不大于调整后的整数值的数据块长;
[0020] 基于针对大域的Goldreich-Levin定理,确定以任何随机数辨别混淆形式的概率; 以及
[0021] 如果所确定的以任何随机数辨别混淆形式的概率超过第二预定阈值,调整调整后 的整数值和数据块长。
[0022] 根据本发明的一个实施例,提供一种混淆数据的系统。所述系统包括:
[0023] 混淆模块,其可通信地耦合到数据源和随机化模块,
[0024] 其中所述随机化模块用于通过将单向压缩函数应用于多个辅助输入来产生多个 随机数,
[0025] 其中所述混淆模块用于:
[0026] 针对待混淆的每一行数据,反复地:
[0027] 根据待混淆的每一行数据构建多个数据块,其中预先确定数据块的数目;
[0028] 产生点积,所述点积通过以下步骤获得:通过将多个数据块中的每一个数据块乘 以多个随机数中的专属的一个来产生多个乘积,并对所述多个乘积求和;以及
[0029] 通过确定取模运算的余数来产生待混淆的每一行数据的混淆形式,使用点积作为 被除数以及预先确定的整数值作为除数来执行确定取模运算的余数。
[0030] 在以上实施例中,对单向压缩函数的多个辅助输入可以包含以下中的至少一个: 对混淆形式提供不可改变性的秘密密钥、提供抗共谋性的数据合作伙伴标识符、提供灵活 性的批次标识符以及对待混淆的每一行数据的随后混淆提供不可关联性的计数器。在以上 实施例中,单向压缩函数可以是密码哈希函数和块密码中的一个。
附图说明
[0031] 下文参考图式公开本发明的实施例,在图式中:
[0032] 图1示出了表Ia和lb,表Ia和Ib含有其中主(关联)密钥是未混淆的移动号码的订 户数据;
[0033] 图2示出了表2a到2c,表2a到2c待与不同合作伙伴共享并且含有其中主(关联)密 钥是混淆移动号码的订户数据;
[0034] 图3示出了用于执行根据本发明的一个实施例的数据混淆的流程次序;
[0035] 图4A示出了对一行原始数据的混淆程序的示意性图示;
[0036] 图4B示出了对多行原始数据的混淆程序的示意性图示;
[0037] 图5是根据本发明的一个实施例的用于数据混淆的系统的示意性图示。
具体实施方式
[0038] 下文描述中陈述许多具体细节,以对本发明各实施例进行通彻理解。然而,本领域 熟练技术人员将理解,可以在不具有这些具体细节中的一些或全部的情况下实践本发明的 实施例。在其它情况下,为了不多余地混淆所描述的实施例的相关方面,并未详细地描述熟 知的处理操作。在图式中,所有的几张图以相同参考标号指代相同或相似的功能或特征。
[0039] 参考图3的流程次序300以及图4A和4B中的示意性图示描述一种混淆数据的方法。
[0040] 在方块302中,如下通过数据责任人确定或选择用于混淆所需的各种参数:
[0041] 选择单向压缩函数F。例如,可以选择以密码方式安全哈希函数,例如安全哈希算 法SHA-256、SHA-I、MD5。替代地,可以选择块密码,例如高级加密标准(Advanced Encryption Standard,AES)〇
[0042] 选择大整数q。大整数q可以是具有64比特的素数。应基于待混淆的数据的总行数L 和所需抗碰撞级别选择q的值。可以通过下式计算出碰撞的概率,即寻找映射到一个混淆数 据的任何两个原始数据的概率:
[0043] e—L(L—1)/2q
[0044] 其中e是自然对数的已知底数(e = 2.718281828···)。此界定被称为一般化生日问 题。整数q应足够大以确保足够小的计算得出的概率或确保计算得出的碰撞概率小于预定 阈值。
[0045] 选择随机或秘密密钥k。所选密钥应至少是128比特。选择数目n,其对应于待混淆 的一行数据被分成的数据块的总数目。高的η值将使安全级提高,但是也将增加计算时间。 因此,存在计算有效性与安全性之间的权衡。因此,不同用户应基于用户的实际系统来选择 η的值。
[0046] 在方块304中,通过将单向压缩函数应用于多个辅助输入来产生多个随机数。多个 辅助输入可以至少包含对混淆数据提供不可改变性的秘密密钥k (如在方块302中所确定), 以及提供抗共谋性的合作伙伴标识符PID (S卩,识别将接收混淆数据的合作伙伴)。基于辅助 输入,将F (辅助输入)计算为多个随机数ri、r2、···、rn。图4Ατ]^出了多个随机数ri、r2、···、rn。
[0047] 在图3的方块306中,对于一行原始或未混淆数据M(具有C比特),根据所述行数据M 构建各自具有比特串长H的多个较小的数据块81、82、〜、&。将所述行数据分成11块,其中11是 在方块302中所确定。图4A示出了多个数据块SI、S2、…、Sn。
[0048] 构建较小数据块的一种可能方式是将M的第一 H比特设置为S1,将M的第二H比特设 置为S2,…,将M的第(n-1) H比特设置为n,并且使M的剩余比特以零填补以形成H比特的串 Sn〇
[0049] 随后,基于
Figure CN107078899AD00061
产生所述行原始数据的混淆形式h,方块308和310中 将进一步描述。
[0050] 在方块308中,产生点积,所述点积通过以下步骤获得:通过将多个数据块中的每 一个数据块乘以多个随机数中的专属的一个来产生多个乘积,并对所述多个乘积求和。例 如,将第i位置处的数据块乘以第i位置的随机数。在将数据块和随机数的对相乘之后,对自 其所得的多个乘积求和或相加。
[0051] 在方块310中,通过确定取模运算的余数来产生所述行数据M的混淆形式,使用在 方块308中所产生的点积作为被除数以及预先确定的整数值q作为除数来执行确定取模运 算的余数。接着可将混淆形式存储在另一表或数据库中。
[0052] 在方块312中,流程次序检查是否有待混淆的另一行数据。如果没有待混淆的另一 行数据,流程次序前进到方块314中的结束。如果存在待混淆的另一行数据,对下一行数据 重复方块306到310。
[0053] 执行方块306到312的反复直到混淆了所有指定行数据。应了解,同一批次内的每 一行数据的混淆包括重复使用在方块304中确定的多个随机数。
[0054]图4B是对于多行数据Mi、M2、…、Ml的混淆程序的示意性图示。如图4B中所示以及上 文所示,基于所选压缩函数和接收到的辅助输入产生多个随机数。对于待混淆的每一行数 据,在每次产生点积时应用相同多个随机数,并且根据其结果执行取模运算。因此,反复地, 个别地产生每一行数据的混淆形式,并且可以将所述混淆形式输出到混淆数据的表或数据 库。
[0055] 在上述流程次序中,对单向压缩函数的辅助输入可以至少包含秘密密钥k和合作 伙伴标识符PID。在某些其它实施例中,辅助输入可以另外包含批次标识符BID和计数器中 的至少一个。
[0056] 参考图3的流程次序300描述的以上程序可以作为程序指令提供。因此,在本发明 的一个实施例中,提供一种计算机程序产品,其包括非暂时性计算机可读介质,所述非暂时 性计算机可读介质包括计算机可读程序,其中所述计算机可读程序当由计算机上的微处理 器执行时致使计算机执行参考图3的流程次序300描述的程序。
[0057] 图5是用于数据混淆的系统的示意性图示,所述系统可以并入计算系统中。所述用 于数据混淆的系统包括可通信地耦合到数据源和随机化模块的混淆模块,其中数据源和/ 或随机化模块可以位于混淆模块本地或远程。
[0058] 随机化模块用于通过将单向压缩函数应用于多个辅助输入来产生多个随机数 rr-_rn,所述多个辅助输入可以至少包含秘密密钥k和数据合作伙伴标识符PID。混淆模块用 于:针对待混淆的每一行数据M,反复地:根据待混淆的每一行数据构建多个数据块sr··%, 其中预先确定数据块的数目η;产生点积,所述点积通过以下步骤获得:通过将多个数据块 中的每一个数据块乘以多个随机数中的专属的一个来产生多个乘积,并对所述多个乘积求 和;以及通过确定取模运算的余数来产生待混淆的每一行数据的混淆形式,使用点积作为 被除数以及预先确定的整数值作为除数来执行确定取模运算的余数。
[0059] 混淆模块进一步用于:在反复之前,确定整数值和待混淆的多行数据;使用1 一e 4(^1)/2q确定碰撞的概率,其中q是所确定的整数,L是所确定的待混淆的数据的总行数,且e 是自然对数的已知底数(大约等于2.718281828);并且如果所确定的碰撞概率超过第一预 定阈值,调整整数值。
[0060] 混淆模块进一步用于:确定不大于调整后整数值的数据块长Η;基于针对大域的 Goldreich-Levin定理,确定以任何随机数辨别混淆形式的概率;以及如果所确定以任何随 机数辨别混淆形式的概率超过第二预定阈值,进一步调整调整后的整数值和数据块长Η。
[0061] 应用1:原始数据M是128比特的密文
[0062] 使用与图2的表2a到2c相关的上述实例,电信业务提供商(数据责任人)想要与合 作伙伴共享其订户的GPS位置,因此,采用本公开内容的发明来混淆表2a到2c的已加密移动 号码(其是主密钥)。
[0063] 在本申请中,适用可能的最有效的实施方案。参数确定如下:C=128,n = 2,H = 64, q = 264。数据责任人选择128比特秘密密钥k和压缩函数F作为SHA256哈希函数。
[0064] 可以如下所示执行混淆程序:
[0065] (1)将随机数计算为两个64比特数(n,r2) =F (k,PID,BID)。
[0066] (2)对于每一行数据:
[0067] a.将已加密移动号码Mi的第i行分成两个64比特数(ai,bi)。
[0068] b.$|jahi = ;ri*ai+r2*bimodq。
[0069] 应注意在本申请中,原始数据是密文。对于有效实施方案,应基本上均匀地分布原 始数据。安全密文的分布符合安全需求。
[0070] 应用2:原始数据M具有至少148比特熵。
[0071] 在本申请中,原始数据M是任意(已加密或未加密)消息。为了确保混淆输出的不可 预测,原始数据M应具有至少148比特的熵。
[0072] 例如,在电子邮件业务提供商的用户姓名的数据库中,电子邮件地址具有用户名@ 域名(usernameOdomain)的格式,其中用户名M可以长达64个字符。允许的用户名至少包含 52个大写和小写英文字母、10个数字和20个特殊字符(对于英文电子邮件地址)。因此,可能 的用户名数目将为(52+10+20) 64 = 24()6。如果用户名的平均长度超过23,用户名将具有超过 148比特的熵。如果电子邮件业务提供商想要共享存储于数据库中的若干表中的信息,其中 表的主密钥是电子邮件地址,电子邮件业务提供商可以执行混淆程序如下所示:
[0073] (1)如在方块302中计算素数q的最小可接受值。此处,假设如从块302所确定的q = 128〇
[0074] (2)选择小于或等于q的值H。如在方块306中将原始数据M分成具有如(S1,…,sn)的 长H的比特串的η块。在此实例中每个字符通常以8比特存储,这意味着M具有512比特。此处, 假设!1=16,并且11 = 512/16 = 32。
[0075] (3)根据针对大域的以下Goldreich-Levin定理(叶夫根尼•多迪(Yevgeniy Dodis)、沙菲•戈德瓦塞尔(Shafi Goldwasser)、雅艾尔•莱(Yael Kalai)、克里斯•佩克 特(Chris Peikert)和维诺德·瓦伊昆塔南森(Vinod Vaikuntanathan),具有辅助输入的 公开密钥加密方案(Public-Key Encryption Schemes with Auxiliary Inputs),TCC网页 361-381,2010年)计算概率ε。
[0076] 定理I:假设q是质数并且假设H是GF (q)的任意子集。假设f: Hn {0,1} *是任何(可能 随机的)函数。如果存在在时间t运行的标识D使得
[0077] I Pr [s—Hn,y—f (s),r—GF (q) n:D (y,r,<r,s>) = 1]
[0078] -Pr [s—Hn,y—f (s),r—GF (q) n,u—GF (q) n: D (y,r,u) = 1] I = ε
[0079] 将存在在以下时间运行的逆变器A
[0080] t,=t · poly (η, |Η|,1/ε)
[0081] 因此
[0082]
Figure CN107078899AD00091
(I)
[0083] 根据此定理应用上述参数,将确定
Figure CN107078899AD00092
q值大约等于2128,因此ε最多为 245。这是以随机数辨别混淆输出的理论上最大的概率。如果数据责任人可接受此概率,就 可以将q、H和η的当前值用于未来的混淆。
[0084] ⑷如果以随机数辨别混淆输出的此概率ε太大,那么可以选择更大的H(对应于更 小的η)并且可以重新考虑q的值。(更大的q允许更小的η,但是其使ε更大)。基于H和q的调整 后的值,根据针对大域的Goldreich-Levin定理重复以上概率分析。
[0085] (5)—旦设置了参数,就可以如方块306到312中所描述的执行混淆程序。
[0086] 在本发明的实施例中,用于混淆L行数据的计算开销,即用于混淆M1、…、Ml的计算 开销包括用以产生随机数的压缩函数的计算(例如,哈希计算)、n倍乘法和(N-I)倍加法模 数q。因此,本发明提供一种有效的混淆方法,其允许将计算得出的压缩函数(随机数)重复 用于数据混淆的每一次反复。
[0087] 本发明还符合其它安全需求,尤其是:
[0088] •正确性/抗碰撞性:一个原始数据应始终对应于一个混淆数据,具有绝对概率。 在安全压缩函数(例如,密码哈希函数)和整数q较大的情况下,这在本发明中是可能的。此 夕卜,当选择参数时可以确定碰撞的概率的可接受性。
[0089] •不可改变性:给定混淆数据,在使用密码哈希函数和秘密密钥的情况下在计算 上将很难恢复原始数据。例如,如果待混淆的数据是移动电话号码并且未使用秘密密钥作 为辅助输入,攻击者将更容易根据混淆数据推断原始数据。然而,如果使用通常为大数目并 且仅数据责任人知道的秘密密钥,攻击者将不得不推断秘密密钥来对混淆数据执行任何攻 击。因此,秘密密钥用作辅助输入将提供并促进对混淆形式/数据的不可改变性。
[0090] •有效性:混淆方法应是有效的。由于随机数可以重复用于相同批次中的其它行 数据,因此这在本发明中是可能的。因此,计算开销包括压缩函数的计算(例如,哈希计算)、 η倍乘法和(N-I)倍加法模数q。
[0091] •抗共谋性:如果数据共享到不同合作伙伴,不同合作伙伴获得的混淆数据应不 相同。在安全压缩函数(例如,密码哈希函数)和攻击者获得的h值的数〈(L+P) n-1的情况下, 其中P是不同合作伙伴的数目,这在本发明中是可能的。这些h值表示使用与P个合作伙伴共 享的相同组原始数据M^Ms、. . .Ml计算得出的输出h^hs、. . .hL的总数目。此外,如果数据合 作伙伴标识符指定为用于产生随机数的输入中的一个,混淆数据将是抗共谋性的。
[0092] 灵活性:如果针对相同合作伙伴分批地共享数据,取决于应用,以不同批次获得的 混淆数据可以相同或不同。参考图2的表2a,例如,数据合作伙伴可能希望对某一时间某一 位置处的人数进行计数,或追踪所述区域中人的移动。在前一应用中,第二批次的混淆数据 应含有以与第一批次不同的方式混淆的移动号码以确保更高用户隐私。在后一应用中,第 二批次的混淆数据应含有以与第一批次相同的方式混淆的移动号码。在本发明中,如果批 次标识符指定为用于产生随机数的辅助输入中的一个,以不同批次获得的混淆数据可以不 同,由此提供在需要时改变混淆数据的灵活性。此外,在将至少两次或更多次地对相同组原 始数据M执行混淆的某些应用中,辅助输入可以包含在相同组原始数据的每次随后的混淆 之后递增的计数器。因此,一组原始数据M的第一混淆数据将随着相同组原始数据M的每次 随后的混淆而不同。通过简单地检查不同混淆数据,攻击者将不能够确定对相同组原始数 据的关联性。因此,使用计数器作为辅助输入提供了对相同原始数据的随后混淆的不可关 联性。本领域的技术人员根据对本说明书的考量和对实施例的实践将清楚其它实施例。此 夕卜,出于描述明确性的目的使用了某些术语且这些术语不会限制本发明的所公开实施例。 上文描述的实施例和特征应视为示例性的。

Claims (11)

1. 一种混淆数据的方法,其特征在于,所述方法包括: 通过将单向压缩函数应用于多个辅助输入来产生多个随机数;以及 对待混淆的每一行数据,反复地进行一下步骤: 根据所述待混淆的每一行数据构建多个数据块,其中预先确定所述数据块的数目; 产生点积,所述点积通过以下步骤获得:通过将所述多个数据块中的每一个数据块乘 以所述多个随机数中的专属的一个来产生多个乘积,并对所述多个乘积求和;以及 通过确定取模运算的余数来产生所述待混淆的每一行数据的混淆形式,使用所述点积 作为被除数以及预先确定的整数值作为除数来执行所述确定取模运算的余数。
2. 根据权利要求1所述的方法,其特征在于,对所述单向压缩函数的所述多个辅助输入 包含以下中的至少一个:对所述混淆形式提供不可改变性的秘密密钥、提供抗共谋性的数 据合作伙伴标识符、提供灵活性的批次标识符以及对所述待混淆的每一行数据的随后混淆 提供不可关联性的计数器。
3. 根据权利要求1所述的方法,其特征在于,进一步包括: 在所述反复之前,确定所述整数值和待混淆的多行数据; 使用1 一 e_Ul_1)/2q确定碰撞的概率,其中q是所述所确定的整数,L是所述所确定的待混 淆的数据的总行数,且e是自然对数的已知底数(大约等于2.718281828);并且 如果所述所确定的碰撞概率超过第一预定阈值,调整所述整数值。
4. 根据权利要求3所述的方法,其特征在于,进一步包括: 确定不大于所述调整后的整数值的数据块长; 基于针对大域的Go Idreich-Levin定理,确定以任何所述随机数辨别所述混淆形式的 概率;以及 如果所述所确定的以任何所述随机数辨别所述混淆形式的概率超过第二预定阈值,调 整所述调整后的整数值和数据块长。
5. 根据权利要求1到4中任一项所述的方法,其特征在于,所述单向压缩函数是密码哈 希函数和块密码中的一个。
6. —种包括非暂时性计算机可读介质的计算机程序产品,所述非暂时性计算机可读介 质包括计算机可读程序,其特征在于,所述计算机可读程序当由计算机上的微处理器执行 时致使所述计算机执行根据权利要求1到5中任一项所述的方法。
7. —种混淆数据的系统,其特征在于,所述系统包括: 混淆模块,其可通信地耦合到数据源和随机化模块, 其中所述随机化模块用于通过将单向压缩函数应用于多个辅助输入来产生多个随机 数, 其中所述混淆模块用于: 针对待混淆的每一行数据,反复地: 根据所述待混淆的每一行数据构建多个数据块,其中预先确定数据块的数目; 产生点积,所述点积通过以下步骤获得:通过将所述多个数据块中的每一个数据块乘 以所述多个随机数中的专属的一个来产生多个乘积,并对所述多个乘积求和;以及 通过确定取模运算的余数来产生所述待混淆的每一行数据的混淆形式,使用所述点积 作为被除数以及预先确定的整数值作为除数来执行所述确定取模运算的余数。
8. 根据权利要求7所述的系统,其特征在于,对所述单向压缩函数的所述多个辅助输入 包含以下中的至少一个:对所述混淆形式提供不可改变性的秘密密钥、提供抗共谋性的数 据合作伙伴标识符、提供灵活性的批次标识符以及对所述待混淆的每一行数据的随后混淆 提供不可关联性的计数器。
9. 根据权利要求7所述的系统,其特征在于,所述混淆模块进一步用于: 在所述反复之前,确定所述整数值和待混淆的多行数据; 使用1 一 e_Ul_1)/2q确定碰撞的概率,其中q是所述所确定的整数,L是所述所确定的待混 淆的数据的总行数,且e是自然对数的已知底数(大约等于2.718281828);以及 如果所述所确定的碰撞概率超过第一预定阈值,调整所述整数值。
10. 根据权利要求9所述的系统,其特征在于,所述混淆模块进一步用于: 确定不大于所述调整后的整数值的数据块长; 基于针对大域的Go Idreich-Levin定理,确定以任何所述随机数辨别所述混淆形式的 概率;以及 如果所述所确定的以任何所述随机数辨别所述混淆形式的概率超过第二预定阈值,调 整所述调整后的整数值和数据块长。
11. 根据权利要求7到10中任一项所述的系统,其特征在于,所述单向压缩函数是密码 哈希函数和块密码中的一个。
CN201680003053.6A 2015-03-26 2016-03-23 混淆数据的方法 Active CN107078899B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
SG10201502401XA SG10201502401XA (en) 2015-03-26 2015-03-26 Method of obfuscating data
SG10201502401X 2015-03-26
PCT/SG2016/050134 WO2016153430A1 (en) 2015-03-26 2016-03-23 Method of obfuscating data

Publications (2)

Publication Number Publication Date
CN107078899A true CN107078899A (zh) 2017-08-18
CN107078899B CN107078899B (zh) 2020-06-16

Family

ID=55661516

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680003053.6A Active CN107078899B (zh) 2015-03-26 2016-03-23 混淆数据的方法

Country Status (5)

Country Link
US (1) US10360406B2 (zh)
EP (1) EP3134994B1 (zh)
CN (1) CN107078899B (zh)
SG (1) SG10201502401XA (zh)
WO (1) WO2016153430A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109726363A (zh) * 2017-10-31 2019-05-07 阿里巴巴集团控股有限公司 一种数据统计方法和装置
CN110825922A (zh) * 2018-08-14 2020-02-21 阿里巴巴集团控股有限公司 数据统计方法和装置

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9866532B2 (en) 2015-10-07 2018-01-09 International Business Machines Corporation Anonymization of traffic patterns over communication networks
US11070523B2 (en) * 2017-04-26 2021-07-20 National University Of Kaohsiung Digital data transmission system, device and method with an identity-masking mechanism
CN110710154A (zh) * 2017-05-26 2020-01-17 微芯片技术股份有限公司 用于使设备操作模糊化的系统、方法和装置
US10289816B1 (en) * 2018-06-08 2019-05-14 Gsfm Llc Methods, systems, and devices for an encrypted and obfuscated algorithm in a computing environment

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1554088A (zh) * 2001-07-06 2004-12-08 皇家菲利浦电子有限公司 用于保护存储在信息载体上的内容的方法
US20060179075A1 (en) * 2005-02-07 2006-08-10 Fay Jonathan E Method and system for obfuscating data structures by deterministic natural data substitution
US20080181396A1 (en) * 2006-11-22 2008-07-31 International Business Machines Corporation Data obfuscation of text data using entity detection and replacement
US20100306854A1 (en) * 2009-06-01 2010-12-02 Ab Initio Software Llc Generating Obfuscated Data
US20120303616A1 (en) * 2011-05-27 2012-11-29 International Business Machines Corporation Data Perturbation and Anonymization Using One Way Hash

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2446199A (en) * 2006-12-01 2008-08-06 David Irvine Secure, decentralised and anonymous peer-to-peer network
JP5532560B2 (ja) * 2008-08-25 2014-06-25 ソニー株式会社 データ変換装置、およびデータ変換方法、並びにプログラム
US8856157B2 (en) * 2011-08-23 2014-10-07 Business Objects Software Limited Automatic detection of columns to be obfuscated in database schemas
US9390271B2 (en) * 2012-08-06 2016-07-12 Samsung Electronics Co., Ltd. Vectorial private equality testing

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1554088A (zh) * 2001-07-06 2004-12-08 皇家菲利浦电子有限公司 用于保护存储在信息载体上的内容的方法
US20060179075A1 (en) * 2005-02-07 2006-08-10 Fay Jonathan E Method and system for obfuscating data structures by deterministic natural data substitution
US20080181396A1 (en) * 2006-11-22 2008-07-31 International Business Machines Corporation Data obfuscation of text data using entity detection and replacement
US20100306854A1 (en) * 2009-06-01 2010-12-02 Ab Initio Software Llc Generating Obfuscated Data
US20120303616A1 (en) * 2011-05-27 2012-11-29 International Business Machines Corporation Data Perturbation and Anonymization Using One Way Hash

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109726363A (zh) * 2017-10-31 2019-05-07 阿里巴巴集团控股有限公司 一种数据统计方法和装置
CN109726363B (zh) * 2017-10-31 2020-05-29 阿里巴巴集团控股有限公司 一种数据统计方法和装置
CN110825922A (zh) * 2018-08-14 2020-02-21 阿里巴巴集团控股有限公司 数据统计方法和装置

Also Published As

Publication number Publication date
SG10201502401XA (en) 2016-10-28
EP3134994A1 (en) 2017-03-01
CN107078899B (zh) 2020-06-16
US20170091485A1 (en) 2017-03-30
US10360406B2 (en) 2019-07-23
EP3134994B1 (en) 2017-11-08
WO2016153430A1 (en) 2016-09-29

Similar Documents

Publication Publication Date Title
CN107078899A (zh) 混淆数据的方法
US9830476B2 (en) System and method for cascading token generation and data de-identification
EP3356988B1 (en) Method and system for verifiable searchable symmetric encryption
Zhang et al. Breaking an image encryption algorithm based on hyper-chaotic system with only one round diffusion process
US20190245688A1 (en) Technologies for private key recovery in distributed ledger systems
US20170019255A1 (en) Relational encryption for password verification
US20110150212A1 (en) Computer implemented method for generating a set of identifiers from a private key, computer implemented method and computing device
CN107038383A (zh) 一种数据处理的方法和设备
AU2013101034B4 (en) Registration and authentication of computing devices using a digital skeleton key
US10924289B2 (en) Public-private key pair account login and key manager
US9596263B1 (en) Obfuscation and de-obfuscation of identifiers
GB2514428A (en) Enabling access to data
US10956612B2 (en) Highly secure networked system and methods for storage, processing, and transmission of sensitive personal information
JP6743702B2 (ja) Macタグリスト生成装置、macタグリスト検証装置、macタグリスト生成方法、macタグリスト検証方法およびプログラム
US10216940B2 (en) Systems, methods, apparatuses, and computer program products for truncated, encrypted searching of encrypted identifiers
KR102289419B1 (ko) 바이오메트릭을 이용한 사용자의 인증 방법 및 장치
CN107665314B (zh) 在电子文档上签名的可信处理方法及装置
CN110110163A (zh) 安全子字符串搜索以过滤加密数据
CN109583237A (zh) 用户数据保护方法、服务器及存储介质
Xu et al. A novel image encryption scheme using Josephus permutation and image filtering
CN106127061A (zh) 计算机密码安全保障计算方法
US10708050B2 (en) Multivariate encryption systems and methods
Wool Does the Cryptographic Hashing of Passwords Qualify for Statutory Breach Notification Safe Harbor?
US9507734B2 (en) Corrupting data structures for privacy protection
Modugula A Hybrid approach for Augmenting password security using Argon2i hashing and AES Scheme.

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant