CN105981088B - 秘密计算方法、秘密计算系统、注册者终端以及记录介质 - Google Patents
秘密计算方法、秘密计算系统、注册者终端以及记录介质 Download PDFInfo
- Publication number
- CN105981088B CN105981088B CN201480074049.XA CN201480074049A CN105981088B CN 105981088 B CN105981088 B CN 105981088B CN 201480074049 A CN201480074049 A CN 201480074049A CN 105981088 B CN105981088 B CN 105981088B
- Authority
- CN
- China
- Prior art keywords
- mentioned
- secret
- password
- dispersion value
- data
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols 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/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0625—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
-
- 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/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0863—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/46—Secure multiparty computation, e.g. millionaire problem
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Computer Hardware Design (AREA)
- Mathematical Analysis (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Operations Research (AREA)
- Probability & Statistics with Applications (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Algebra (AREA)
- Life Sciences & Earth Sciences (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
以隐匿了个人信息的状态进行数据处理。注册者终端(2)对注册时输入密码进行秘密分散而分配给秘密计算服务器(1)。秘密计算服务器(1)验证密码是否一致。注册者终端(2)对处理对象数据进行秘密分散而分配给秘密计算服务器(1)。秘密计算服务器(1)存储数据分散值。用户终端(3)对利用时输入密码进行秘密分散而分配给秘密计算服务器(1)。秘密计算服务器(1)验证密码是否一致。用户终端(3)将数据处理请求发送给秘密计算服务器(1)。秘密计算服务器(1)对数据分散值执行秘密计算,生成处理结果的分散值。用户终端(3)恢复处理结果分散值而获得处理结果。
Description
技术领域
本发明涉及密码应用技术,尤其涉及不泄漏输入数据而进行函数计算、统计处理的秘密计算技术。
背景技术
近年来,通过遵守个人信息保护法等提高了保护隐私的重要性。因此,例如在利用了大数据的数据挖掘、罕见病例的处方新药开发、国家规划布局这样的采用人口普查信息等的统计分析中,增加了以隐匿个人信息的状态进行数据处理的要求。但是,在多数情况下,积累的重要的数据被进行了秘密管理,无法充分应对要求高的市场分析和用于策划的统计分析,停留在数据的积累,可谓没有走出记录的领域。
以隐匿个人信息的状态的信息利用考虑如下的方法:在物理上将包含个人信息的数据库进行隔离,通过运用向所需的信息进行的接入来应对。例如,考虑从数据库中删除有关个人信息的项目、在保存数据时进行加密且在加工时解密为明文、通过运用而进行限定于系统管理者等的接入控制、以不能确定个人的方式掩蔽个人信息等方法。
以在通过如上述那样的方法隐匿了个人信息的状态进行函数计算、统计处理作为目的的技术中,例如有非专利文献1至9中所举的技术。
现有技术文献
非专利文献
非专利文献1:Dan Bogdanov,Margus Niitsoo,Tomas Toft,Jan Willemson,“High-performance secure multi-party computation for data miningapplications”,International Journal of Information Security,vol.11,issue 6,pp403-418,2012
非专利文献2:Martin Burkhart,Mario Strasser,Dilip Many,XenofontasDimitropoulos,“SEPIA:Privacy-Preserving Aggregation of Multi-Domain NetworkEvents and Statistics”,USENIX Security,2010
非专利文献3:Raluca Ada Popa,Catherine M.S.Redfield,NickolaiZeldovich,Hari Balakrishnan,“CryptDB:Protecting Confidentiality withEncrypted Query Processing”,SOSP'11Proceedings of the Twenty-Third ACMSymposium on Operating Systems Principles,pp.85-100,2011
非专利文献4:Craig Gentry,“Fully Homomorphic Encryption Using IdealLattices”,STOC'09Proceedings of the 41st annual ACM symposium on Theory ofcomputing,pp.169-178,2009
非专利文献5:日本甲骨文株式会社,“Oracle Advanced Security”、[online]、[2014年1月24日检索],互联网<URL:http://www.oracle.com/technetwork/jp/database/enterprise-edition/ds-security-adv anced-security-11gr2-134506-ja.pdf>
非专利文献6:三菱电机株式会社,“秘匿検索基盤ソフトウェア”,[online]、[2014年1月24日检索],互联网<URL:http://www.mitsubishielectric.co.jp/news/2013/pdf/0703-a.pdf>
非专利文献7:日本IBM株式会社,“IBM InfoSphere Optim Data MaskingSolution for Oracle E-Business Suite”,[online],[2014年1月24日检索],互联网<URL:http://www-06.ibm.com/software/jp/data/optim/solutionbrief/IMS14011_JPJA_01.pdf>
非专利文献8:株式会社富士通研究所,“世界初!暗号化したまま統計計算や生体認証などを可能にする準同型暗号の高速化技術を開発”,[online],[2014年1月24日检索],互联网<URL:http://pr.fujitsu.com/jp/news/2013/08/28.html>
非专利文献9:日本电气株式会社,“NEC、世界初、データベースの情報を暗号化したまま処理できる秘匿計算技術を開発”,[online],[2014年1月24日检索],互联网<URL:http://jpn.nec.com/press/201311/20131106_01.html>
发明内容
发明要解决的课题
基于以往的方法的对个人信息进行了隐匿的信息利用中存在以下的课题。在从数据库中删除个人信息的方法中,例如在少数情况下的分析等数据的整体数目少的情况下,能够根据个人信息以外的值而类推个人,不能保证安全性。在保存数据时进行加密的方法中,在对数据进行加工时需要解码为明文,不能排除信息泄露的危险性。在通过运用而进行接入控制的方法中,存在由于来自内部的非法接入而信息泄露的危险性。在掩蔽数据的方法中,只要掩蔽一次就不能还原,缺乏能够应对各种统计分析要求的灵活性。
本发明的目的在于,提供在隐匿了数据中包含的个人信息的状态下不进行恢复就能够进行各种数据处理的秘密计算技术。
用于解决课题的方案
为了解决上述的课题,本发明的秘密计算方法中,n、k是2以上的整数,且n≧k,n台秘密计算服务器的存储部中存储有将信息提供者的注册密码秘密分散为n个的注册密码分散值以及将信息分析者的利用密码秘密分散为n个的利用密码分散值,上述秘密计算方法包含:注册时认证请求步骤,由注册者终端的认证请求部将信息提供者输入的注册时输入密码秘密分散为n个的注册时输入密码分散值分配给n台秘密分散服务器;注册时认证执行步骤,由至少k台秘密计算服务器的认证执行部利用注册时输入密码分散值与注册密码分散值,验证注册密码与注册时输入密码是否一致;秘密分散步骤,由注册者终端的秘密分散部将信息提供者输入的处理对象数据秘密分散为n个而生成数据分散值;注册请求步骤,由注册者终端的注册请求部将数据分散值分配给n台秘密计算服务器;注册执行步骤,由n台秘密计算服务器的注册执行部将数据分散值存储到存储部;利用时认证请求步骤,由用户终端的认证请求部将信息分析者输入的利用时输入密码秘密分散为n个的利用时输入密码分散值分配给n台秘密计算服务器;利用时认证执行步骤,由至少k台秘密计算服务器的认证执行部利用利用时输入密码分散值与利用密码分散值,验证利用密码与利用时输入密码是否一致;运算请求步骤,由用户终端的运算请求部将对于处理对象数据的数据处理请求发送给n台秘密计算服务器;秘密计算步骤,由至少k台秘密计算服务器的秘密计算部按照数据处理请求,对数据分散值执行秘密计算,并生成将对处理对象数据执行了数据处理请求的处理结果秘密分散为n个的处理结果分散值;以及结果恢复步骤,由用户终端的结果恢复部对处理结果分散值中的、从秘密计算服务器接收到的至少k个处理结果分散值进行恢复,从而获得处理结果。
发明效果
根据本发明,在隐匿了数据中包含的个人信息的状态下不进行恢复就能够进行各种数据处理。
附图说明
图1是例示秘密计算系统的功能结构的图。
图2是例示秘密计算服务器的功能结构的图。
图3是例示注册者终端的功能结构的图。
图4是例示用户终端的功能结构的图。
图5是例示秘密计算方法的处理流程的图。
图6是例示秘密计算方法的处理流程的图。
具体实施方式
在说明实施方式之前,说明在本发明中利用的基本技术概念。
[秘密分散技术]
秘密分散是将数据变换为多个分散值,利用一定数目以上的分散值能够恢复原来的数据,根据少于一定数目的分散值绝对不能恢复原来的数据的技术。作为秘密分散之一的(k,n)-秘密分散是将把被输入的明文分割为n个的分散值预先分散到n个计算主体,只要凑齐任意的k个分散值就能够恢复明文,根据少于k个的分散值不能获得与明文有关的一切信息的秘密分散。此时,n、k是1以上的整数,且n≧k。(k,n)-秘密分散的代表性例是在“A.Shamir,“How to share a secret”,Communications of the ACM,Volume 22Issue11,pp.612-613,1979.(参考文献1)”中记载的Shamir秘密分散。在本发明中利用的秘密分散只要是后述的秘密计算以及秘密计算认证可利用的方法,可以是任意的秘密分散。
[秘密计算技术]
秘密计算是对多个计算主体将计算对象的数据秘密分散保存,不用恢复原来的数据,与其他的计算主体协作而计算原来的数据的函数值的分散值的技术。在秘密计算中,作为基本技术而利用秘密分散。
在本发明中利用的秘密计算适当利用能够对基于特定的秘密分散方法的分散值进行所期望的数据处理所需的各种运算的计算即可。对秘密分散值进行加法或乘法等基本运算的秘密计算技术例如记载在“千田浩司、濱田浩気、五十嵐大、高橋克己、‘軽量検証可能3パーティ秘匿関数計算の再考’、コンピュータセキュリティシンポジウム2010、2010年(参考文献2)”中。从数据串的秘密分散值,以隐匿了信息的状态进行检索的秘密匹配技术例如记载在“千田浩司、寺田雅之、山口高康、五十嵐大、濱田浩気、高橋克巳、‘統計的開示制御を考慮したセキュアマッチングプロトコル’、情報処理学会研究報告、2011-CSEC-52(12)、2011年(参考文献3)”中。以隐匿了数据串的秘密分散值的状态进行排列的秘密分类技术例如记载在“濱田浩気、五十嵐大、千田浩司、高橋克巳、‘秘匿関数計算上の線形時間ソート’、コンピュータセキュリティシンポジウム2011、2011年(参考文献4)”中。
[秘密计算认证技术]
秘密计算认证是对多个计算主体,将登录名和密码等认证信息秘密分散而保存,不恢复认证信息而与其他计算主体协作认证用户所输入的认证信息是否正确的技术。
在本发明中,能够利用任意的秘密计算认证方法。例如,能够利用在“菊池亮、五十嵐大、千田浩司、濱田浩気、‘無条件秘匿性を持つマルチパーティシステム用パスワード認証方式’、コンピュータセキュリティシンポジウム2013、2013年(参考文献5)”中记载的秘密计算认证方法。
以下,详细说明本发明的实施方式。另外,图中对具有相同功能的结构部赋予相同标号,并省略重复说明。
[实施方式]
参照图1,说明实施方式的秘密计算系统的结构例。秘密计算系统包含n(≧2)台秘密计算服务器11,…,1n、至少1台注册者终端2、至少1台用户终端3以及网络9。秘密计算服务器11,…,1n、注册者终端2以及用户终端3分别连接到网络9。各网络9只要被构成为秘密计算服务器11,…,1n之间、各秘密计算服务器11,…,1n与注册者终端2之间、各秘密计算服务器11,…,1n与用户终端3之间可相互通信即可,例如能够由互联网、LAN、WAN等构成。各秘密计算服务器11,…,1n之间的通信路径期望通过加密技术等实现隐匿性高的通信。此外,秘密计算服务器11,…,1n、注册者终端2以及用户终端3不一定要能够经由网络9以在线方式进行通信。例如,也可以构成为将注册者终端2输出的信息存储在USB存储器等可移动型记录介质中,从该可移动型记录介质向任意的秘密计算服务器1i(1≦i≦n)以离线方式输入。
参照图2,说明在秘密计算系统中包含的秘密计算服务器1i(i=1,…,n)的结构例。秘密计算服务器1i包含认证执行部10、注册执行部12、秘密计算部14以及存储部16。秘密计算服务器1i例如是在具有中央运算处理装置(Central Processing Unit、CPU)、主存储装置(Random Access Memory、RAM)等已知或专用的计算机中读入特殊的程序而构成的特殊的装置。秘密计算服务器1i例如基于中央运算处理装置的控制而执行各处理。秘密计算服务器1i中输入的数据或在各处理中获得的数据例如存储在主存储装置中,在主存储装置中存储了的数据根据需要而被读取并用于其他处理。存储部16能够由RAM(RandomAccess Memory)等主存储装置、硬盘或光盘或闪速存储器这样的由半导体存储元件构成的辅助存储装置、或者关系数据库或键值存储器(key-value store)等中间件构成。
参照图3,说明在秘密计算系统中包含的注册者终端2的结构例。注册者终端2包含认证请求部20、数据输入部22、秘密分散部24以及注册请求部26。注册者终端2例如是在具有中央运算处理装置(Central Processing Unit、CPU)、主存储装置(Random AccessMemory、RAM)等已知或专用的计算机中读入特殊的程序而构成的特殊的装置。注册者终端2例如基于中央运算处理装置的控制而执行各处理。在注册者终端2中输入的数据或在各处理中获得的数据例如存储在主存储装置中,在主存储装置中存储了的数据根据需要而被读取并用于其他处理。注册者终端2具体是台式或笔记本式的个人计算机、移动电话、智能手机、平板终端等。
参照图4,说明在秘密计算系统中包含的用户终端3的结构例。用户终端3包含认证请求部30、运算输入部32、运算请求部34以及结果恢复部36。用户终端3例如是在具有中央运算处理装置(Central Processing Unit、CPU)、主存储装置(Random Access Memory、RAM)等已知或专用的计算机中读入特殊的程序而构成的特殊的装置。用户终端3例如基于中央运算处理装置的控制而执行各处理。在用户终端3中输入的数据或在各处理中获得的数据例如存储在主存储装置中,在主存储装置中存储了的数据根据需要而被读取并用于其他处理。用户终端3具体是台式或笔记本式的个人计算机、移动电话、智能手机、平板终端等。
参照图5、6,按照过程的顺序而说明实施方式的秘密计算系统所执行的秘密计算方法的处理流程的一例。图5是注册者终端2将作为数据处理的对象的数据注册到秘密计算服务器11,…,1n中的步骤。
在秘密计算服务器1i(i=1,…,n)的存储部16中,存储有将对利用注册者终端2的信息提供者或利用用户终端3的信息分析者分别设定的密码秘密分散为n个的分散值中的、第i个分散值。以下,将信息提供者的密码称为注册密码,将注册密码分散为n个的分散值称为注册密码分散值。此外,将信息分析者的密码称为利用密码,将利用密码分散为n个的分散值称为利用密码分散值。对密码进行秘密分散的方法需要是能够利用上述的秘密计算认证技术的秘密分散方法。例如,能够应用在参考文献5中记载的秘密分散方法。
在步骤S20a中,注册者终端2的认证请求部20将把信息提供者输入的密码秘密分散为n个的分散值向n台秘密计算服务器11,…,1n分配。以下,将信息提供者输入的密码称为注册时输入密码,将注册时输入密码分散为n个的分散值称为注册时输入密码分散值。分配是指将i设为1以上且n以下的各整数,将第i个注册时输入密码分散值经由通信路径发送给第i个秘密计算服务器1i的情况。
在步骤S10a中,秘密计算服务器1i的认证执行部10利用从注册者终端2接收到的注册时输入密码分散值与在存储部16中存储着的注册密码分散值,验证注册密码与注册时输入密码是否一致。步骤S10a只要n台秘密计算服务器11,…,1n中的至少k台协作执行即可。验证密码的具体的方法请参照上述的参考文献4。
在步骤S10b中,秘密计算服务器1i的认证执行部10在判定为注册密码与注册时输入密码一致的情况下,将表示认证成功的认证结果发送给注册者终端2。在判定为注册密码与注册时输入密码不一致的情况下,将表示认证失败的认证结果发送给注册者终端2。
在步骤S20b中,注册者终端2的认证请求部20在从秘密计算服务器1i接收到的认证结果表示认证失败的情况下,结束处理。在从秘密计算服务器1i接收到的认证结果表示认证成功的情况下,将处理推进至步骤S22。认证结果会从至少k台秘密计算服务器1接收,但只要不是所有的认证结果都表示认证成功,都判定为认证失败。
在步骤S22中,对注册者终端2的数据输入部22输入成为数据处理的对象的处理对象数据。处理对象数据中包含有能够确定个人的个人信息。个人信息例如是姓名、地址、出生年月日、性别这样的表示个人属性的信息。根据数据处理的目的,处理对象数据中的个人信息以外的信息被设定必要的项目。
在步骤S24中,注册者终端2的秘密分散部24将处理对象数据秘密分散为n个而生成数据分散值。将处理对象数据进行秘密分散的方法需要是能够利用上述的秘密计算技术的秘密分散方法。例如,能够应用上述的参考文献2至4的任一个中记载的秘密分散方法。此时,将在处理对象数据中包含的相当于个人信息的项目以及个人信息以外的项目进行汇总,从而作为处理对象数据整体来进行秘密分散。
在步骤S26中,注册者终端2的注册请求部26将数据分散值分配给n台秘密计算服务器11,…,1n。分配是将i设为1以上且n以下的各整数,将第i个数据分散值经由通信路径发送给第i个秘密计算服务器1i的情况。
在步骤S12中,秘密计算服务器11,…,1n的注册执行部12将从注册者终端2接收到的数据分散值存储在存储部16中。
参照图6,说明利用向秘密计算服务器11,…,1n注册的处理对象数据的分散值,进行由用户终端3请求的数据处理的步骤。
在步骤S30a中,用户终端3的认证请求部30将把信息分析者输入的密码秘密分散为n个的分散值分配给n台秘密计算服务器11,…,1n。以下,将信息分析者输入的密码称为利用时输入密码,将把利用时输入密码秘密分散为n个的分散值称为利用时输入密码分散值。分配是指将i设为1以上且n以下的各整数,将第i个利用时输入密码分散值经由通信路径发送给第i个秘密计算服务器1i的情况。
在步骤S10c中,秘密计算服务器1i的认证执行部10利用从用户终端3接收到的利用时输入密码分散值与在存储部16中存储着的利用密码分散值,验证利用密码与利用时输入密码是否一致。步骤S10c由n台秘密计算服务器11,…,1n中的至少k台协作而执行即可。验证密码的具体的方法请参照上述的参考文献5。
在步骤S10d中,秘密计算服务器1i的认证执行部10在判定为利用密码与利用时输入密码一致的情况下,将表示认证成功的认证结果发送给用户终端3。在判定为利用密码与利用时输入密码不一致的情况下,将表示认证失败的认证结果发送给用户终端3。
在步骤S30b中,用户终端3的认证请求部30在从秘密计算服务器1i接收到的认证结果表示认证失败的情况下,结束处理。在从秘密计算服务器1i接收到的认证结果表示认证成功的情况下,将处理推进步骤S32。认证结果至少会从k台秘密计算服务器1接收,但只要不是所有的认证结果都表示认证成功,都判定为认证失败。
在步骤S32中,用户终端3的运算输入部32被输入记述了对于处理对象数据的数据处理的内容的数据处理请求。数据处理请求例如是通过预先决定的编程语言记述的脚本。具体来说,能够利用面向统计分析通过开源码项目开发的R语言等。关于R语言的细节请参照“The R Project、“The R Project for Statistical Computing”、[online]、[2014年1月14日检索]、互联网<URL:http://www.r-project.org/index.html>(参考文献6)”。在数据处理请求中,除了加法、乘法等基本运算之外,还可以包含有对处理对象数据进行排列的分类处理、从处理对象数据中提取符合条件的数据的匹配处理。
在步骤S34中,用户终端3的运算请求部34将数据处理请求发送给n台秘密计算服务器11,…,1n。发送路径只要n台秘密计算服务器11,…,1n全部能够接收数据处理请求,则可以是任意的路径。例如,可以由用户终端3对n台秘密计算服务器11,…,1n全部单独发送,也可以从用户终端3对任意一台秘密计算服务器1i发送,并从秘密计算服务器1i向其他秘密计算服务器1j(j=1,…,n、i≠j)转发。
在步骤S14a中,秘密计算服务器1i的秘密计算部14按照从用户终端3接收到的数据处理请求,对在存储部16中存储着的数据分散值执行秘密计算,并生成将对处理对象数据执行了数据处理请求后的处理结果分散为n个的分散值。以下,将处理结果分散为n个的分散值称为处理结果分散值。步骤S14a只要n台秘密计算服务器11,…,1n中的至少k台协作执行即可。
在步骤S14b中,秘密计算服务器1i的秘密计算部14将处理结果分散值发送给用户终端3。
在步骤S36中,用户终端3的结果恢复部36将从秘密计算服务器1i接收到的处理结果分散值进行恢复而获得处理结果。处理结果分散值无需从n台秘密计算服务器11,…,1n全部接收,只要至少从k台秘密计算服务器1接收k个以上的处理结果分散值,就能够恢复处理结果。
如此,根据本发明的秘密计算技术,在通过秘密计算认证安全地经历认证的基础上,由注册者终端对处理对象数据整体被秘密分散的分散值以隐匿了个人信息的状态进行统计分析、检索等数据处理,并将处理结果的分散值返还给用户终端。由此,对秘密计算服务器以隐匿了处理对象数据以及处理结果中包含的个人信息的状态不用进行恢复就能够进行各种数据处理。
[与现有技术的比较]
在非专利文献1中记载的秘密计算技术中,存在不能进行统计分析所需的分类处理、由于利用特殊的语言编译器所以信息处理的扩展性低、计算节点数目固定等技术问题。根据本发明的秘密计算技术,能够以隐匿了信息的状态利用分类处理,能够利用通用的编程语言,计算节点数目可变。
在非专利文献2中记载的秘密计算技术中,存在基本运算性能低、不能进行分类处理、不能进行程序扩展等技术问题。根据本发明的秘密计算技术,能够以隐匿了信息的状态利用分类处理,能够利用通用的编程语言。此外,在非专利文献2中记载的秘密计算技术中,基本运算性能是每秒8万次乘法,比较低,但本发明的秘密计算技术是每秒100万次乘法,具有高基本运算性能。
在非专利文献3中记载的秘密计算技术通过阶段性地利用多个密码实现加密的状态下的分类,但能够处理的运算种类被限制。此外,存在如下问题:随着重复处理,能够估计顺序关系等。根据本发明的秘密计算技术,能够进行分类处理、匹配处理等各种运算,且能够以通过秘密分散隐匿了信息的状态进行分类处理,因此安全性高。
在非专利文献4中记载的秘密计算技术在利用全同态密码进行了加密的状态下能够进行任意的运算,但执行时间慢且实用性低。本发明的秘密计算技术如上述那样,基本运算性能高。
在非专利文献5中记载的秘密计算技术对数据库进行加密,但为了数据处理而需要恢复加密数据。本发明的秘密计算技术中所有的运算不需要恢复信息而以隐匿了信息的状态可执行。
在非专利文献6中记载的秘密计算技术对数据不进行解码也能够进行检索,但需要在数据提供主体之间共享密钥,不能保证隐匿性。本发明的秘密计算技术由于通过不利用密钥的秘密分散而进行信息的隐匿,因此安全性高。
在非专利文献7中记载的秘密计算技术能够将个人信息和机密信息一边维持数据的含义一边进行掩蔽,但除了个人信息以外的信息以明文状态被处理,因此难以在医疗或行政的领域那样的处理敏感数据的特定领域利用。本发明的秘密计算技术由于包含个人信息以外的信息在内将处理对象数据进行汇总而作为整体来进行秘密分散,因此即使在处理对象数据数少的情况下也难以根据个人信息以外的信息估计个人。
在非专利文献8中记载的秘密计算技术通过一台服务器进行的逻辑运算能够进行平均值、标准方差、合计等统计处理,但由于不能进行分类处理,因此即使是统计处理也不能求出最大值、最小值、中间值等,扩展性低。此外,还存在基本运算性能低的问题。根据本发明的秘密计算技术,能够以隐匿了信息的状态利用分类处理,因此能够求出最大值、最小值、中间值等。此外,如上述那样,本发明的秘密计算技术的基本运算性能高。
在非专利文献9中记载的秘密计算技术能够以对关系数据库(Relationaldatabase)进行了加密的状态进行数据处理,但一部分运算需要在客户侧执行。此外,由于每个运算的加密方式不同,因此存在信息处理的扩展性低等问题。本发明的秘密计算技术仅在秘密计算服务器之间进行秘密运算,用户终端等不会参与数据处理。此外,由于所有的运算利用通过特定的秘密分散技术进行了秘密分散的分散值进行,因此数据处理内容的设计的自由度高。
本发明并不限定于上述的实施方式,在不脱离本发明的宗旨的范围内当然能够进行适当变更。在上述实施方式中说明的各种处理不仅按照记载的顺序时序地执行,也可以根据执行处理的装置的处理能力或根据需要,并行地或者单独执行。
[程序、记录介质]
在通过计算机实现在上述实施方式中说明的各装置中的各种处理功能的情况下,通过程序来记述各装置应具有的功能的处理内容。此外,通过计算机来执行该程序,从而在计算机上实现上述各装置中的各种处理功能。
记述了该处理内容的程序能够预先记录在计算机中可读取的记录介质。作为计算机中可读取的记录介质,例如有磁记录装置、光盘、光磁记录介质、半导体存储器等任意的记录介质
此外,该程序的流通例如通过将记录了该程序的DVD、CD-ROM等进行销售、转让、出租等而进行。进而,也可以设为如下结构:通过将该程序预先存储在服务器计算机的存储装置中,经由网络从服务器计算机向其他计算机转发该程序,从而使该程序流通。
执行这样的程序的计算机例如首先将记录在可移动型记录介质中的程序或者从服务器计算机转发的程序暂时存储在自己的存储装置中。然后,在执行处理时,该计算机读取在自己的记录介质中存储的程序,执行基于所读取的程序的处理。此外,作为该程序的其他的执行方式,也可以由计算机从可移动型记录介质直接读取程序,执行基于该程序的处理,进而,也可以在每次从服务器计算机向该计算机转发程序时,依次执行基于接受的程序的处理。此外,也可以设为如下的结构:从服务器计算机对该计算机不进行程序的转发,而是通过仅根据其执行指示与结果取得而实现处理功能的所谓的ASP(应用服务提供商)型的服务,执行上述的处理。另外,设本方式中的程序包含用于电子计算机进行的处理的、顺应程序的信息(不是对于计算机的直接的命令但具有规定计算机的处理的性质的数据等)。
此外,在本方式中,设通过在计算机上执行规定的程序从而构成本装置,但也可以设为通过硬件来实现这些处理内容的至少一部分。
Claims (6)
1.一种秘密计算方法,
其中n、k是2以上的整数,且n≧k,
n台秘密计算服务器的存储部中存储有将信息提供者的注册密码秘密分散为n个的注册密码分散值以及将信息分析者的利用密码秘密分散为n个的利用密码分散值,
上述秘密计算方法包含:
注册时认证请求步骤,由注册者终端的认证请求部将上述信息提供者输入的注册时输入密码秘密分散为n个的注册时输入密码分散值分配给n台上述秘密计算服务器;
注册时认证执行步骤,由至少k台上述秘密计算服务器的认证执行部利用上述注册时输入密码分散值与上述注册密码分散值,验证上述注册密码与上述注册时输入密码是否一致;
注册时认证结果判断步骤,所述注册者终端的认证请求部从所述至少k台所述秘密计算服务器接收验证了所述注册密码和所述注册时输入密码是否一致的结果即认证结果,仅在全部所述认证结果表示认证成功的情况下判断为认证成功;
秘密分散步骤,由上述注册者终端的秘密分散部将上述信息提供者输入的处理对象数据秘密分散为n个而生成数据分散值;
注册请求步骤,由上述注册者终端的注册请求部将上述数据分散值分配给n台上述秘密计算服务器;
注册执行步骤,由n台上述秘密计算服务器的注册执行部将上述数据分散值存储到上述存储部;
利用时认证请求步骤,由用户终端的认证请求部将上述信息分析者输入的利用时输入密码秘密分散为n个的利用时输入密码分散值分配给n台上述秘密计算服务器;
利用时认证执行步骤,由至少k台上述秘密计算服务器的认证执行部利用上述利用时输入密码分散值与上述利用密码分散值,验证上述利用密码与上述利用时输入密码是否一致;
运算请求步骤,由上述用户终端的运算请求部将对于上述处理对象数据的数据处理请求发送给n台上述秘密计算服务器;
秘密计算步骤,由至少k台上述秘密计算服务器的秘密计算部按照上述数据处理请求,对上述数据分散值执行秘密计算,并生成将对上述处理对象数据执行了上述数据处理请求的处理结果秘密分散为n个的处理结果分散值;以及
结果恢复步骤,由上述用户终端的结果恢复部对上述处理结果分散值中的、从上述秘密计算服务器接收到的至少k个上述处理结果分散值进行恢复,从而获得上述处理结果。
2.如权利要求1所述的秘密计算方法,其中,
上述处理对象数据包含能够确定个人的个人信息,
上述秘密分散步骤通过汇总上述处理对象数据整体而进行秘密分散,从而生成上述数据分散值。
3.如权利要求1或2所述的秘密计算方法,其中,
上述数据处理请求包含对上述处理对象数据进行排列的分类处理和/或从上述处理对象数据提取符合条件的数据的匹配处理,
上述秘密计算步骤通过对上述数据分散值执行秘密分类计算和/或秘密匹配计算,从而生成上述处理结果分散值。
4.一种秘密计算系统,n、k是2以上的整数,且n≧k,所述秘密计算系统包含n台秘密计算服务器、至少1台注册者终端以及至少1台用户终端,
上述注册者终端包含:
认证请求部,将把信息提供者输入的注册时输入密码秘密分散为n个的注册时输入密码分散值分配给n台上述秘密计算服务器,从至少k台所述秘密计算服务器接收验证了所述信息提供者的注册密码和所述注册时输入密码是否一致的结果即认证结果,仅在全部所述认证结果表示认证成功的情况下判断为认证成功;
秘密分散部,将上述信息提供者输入的处理对象数据秘密分散为n个而生成数据分散值;以及
注册请求部,将上述数据分散值分配给n台上述秘密计算服务器,
上述用户终端包含:
认证请求部,将把信息分析者输入的利用时输入密码秘密分散为n个的利用时输入密码分散值分配给n台上述秘密计算服务器;
运算请求部,将对于上述处理对象数据的数据处理请求发送给n台上述秘密计算服务器;以及
结果恢复部,将把对上述处理对象数据执行了上述数据处理请求的处理结果秘密分散为n个的处理结果分散值中的、从上述秘密计算服务器接收到的至少k个处理结果分散值进行恢复,从而获得处理结果,
上述秘密计算服务器包含:
存储部,存储将上述信息提供者的注册密码秘密分散为n个的注册密码分散值以及将上述信息分析者的利用密码秘密分散为n个的利用密码分散值;
认证执行部,在接收了上述注册时输入密码分散值时,利用上述注册时输入密码分散值与上述注册密码分散值,验证上述注册密码与上述注册时输入密码是否一致,在接收了上述利用时输入密码分散值时,利用上述利用时输入密码分散值与上述利用密码分散值,验证上述利用密码与上述利用时输入密码是否一致;
注册执行部,将上述数据分散值存储到上述存储部;以及
秘密计算部,根据上述数据处理请求,对上述数据分散值执行秘密计算,并生成上述处理结果分散值。
5.一种注册者终端,n、k是2以上的整数,且n≧k,
所述注册者终端包括:
认证请求部,将把信息提供者输入的注册时输入密码秘密分散为n个的注册时输入密码分散值分配给n台秘密计算服务器,从至少k台所述秘密计算服务器接收验证了所述信息提供者的注册密码和所述注册时输入密码是否一致的结果即认证结果,仅在全部所述认证结果表示认证成功的情况下判断为认证成功;
秘密分散部,将上述信息提供者输入的处理对象数据秘密分散为n个而生成数据分散值;以及
注册请求部,将上述数据分散值分配给n台上述秘密计算服务器。
6.一种计算机可读取的记录介质,记录了用于使计算机起到权利要求5所述的注册者终端的作用的程序。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014013081 | 2014-01-28 | ||
JP2014-013081 | 2014-01-28 | ||
PCT/JP2014/082220 WO2015114947A1 (ja) | 2014-01-28 | 2014-12-05 | 秘密計算方法、秘密計算システム、秘密計算サーバ、登録者端末、利用者端末及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105981088A CN105981088A (zh) | 2016-09-28 |
CN105981088B true CN105981088B (zh) | 2019-05-03 |
Family
ID=53756541
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480074049.XA Active CN105981088B (zh) | 2014-01-28 | 2014-12-05 | 秘密计算方法、秘密计算系统、注册者终端以及记录介质 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10218495B2 (zh) |
EP (1) | EP3101645B1 (zh) |
JP (1) | JP6321049B2 (zh) |
CN (1) | CN105981088B (zh) |
WO (1) | WO2015114947A1 (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105027180B (zh) * | 2013-01-17 | 2017-03-29 | 日本电信电话株式会社 | 保密计算系统、运算装置、以及保密计算方法 |
WO2016056473A1 (ja) * | 2014-10-07 | 2016-04-14 | 日本電信電話株式会社 | 秘密計算システム、中継装置、それらの方法、プログラム、および記録媒体 |
JP7020780B2 (ja) * | 2015-02-09 | 2022-02-16 | 日本電気株式会社 | サーバ装置、データ検索システム、検索方法および検索プログラム |
WO2017033442A1 (ja) * | 2015-08-26 | 2017-03-02 | 日本電気株式会社 | 情報処理装置、認証システム、認証方法、並びにコンピュータ・プログラムを記録する記録媒体 |
WO2017195886A1 (ja) * | 2016-05-13 | 2017-11-16 | 日本電気株式会社 | 認証システム、認証方法およびプログラム |
JP6556659B2 (ja) * | 2016-05-17 | 2019-08-07 | 日本電信電話株式会社 | ニューラルネットワークシステム、シェア計算装置、ニューラルネットワークの学習方法、プログラム |
WO2018135563A1 (ja) * | 2017-01-20 | 2018-07-26 | 日本電信電話株式会社 | 秘密計算システム、秘密計算装置、秘密計算方法、プログラム |
JP6821516B2 (ja) * | 2017-06-09 | 2021-01-27 | 株式会社日立製作所 | 計算機システム、秘密情報の検証方法、及び計算機 |
AU2018338249B2 (en) * | 2017-09-21 | 2020-11-26 | Nippon Telegraph And Telephone Corporation | Secure reading apparatus, secure writing apparatus, method thereof, and program |
WO2019133858A1 (en) * | 2017-12-29 | 2019-07-04 | Bonnie Berger Leighton | Realizing private and practical pharmacological collaboration |
US10897357B2 (en) * | 2018-04-04 | 2021-01-19 | International Business Machines Corporation | Computation using lattice-based cryptography |
DE112018008000T5 (de) * | 2018-09-20 | 2021-06-10 | Nec Corporation | Umwandlungsvorrichtung, umwandlungsverfahren und programm |
US10664612B2 (en) * | 2018-10-09 | 2020-05-26 | Unboun Tech Ltd. | System and method for controlling operations performed on personal information |
US11985232B2 (en) | 2018-10-26 | 2024-05-14 | Nec Corporation | Secure computing server, system, secure computing method, and program |
US11379616B2 (en) | 2019-03-25 | 2022-07-05 | Identiq Protocol Ltd. | System and method for providing anonymous validation of a query among a plurality of nodes in a network |
KR102211698B1 (ko) * | 2019-06-26 | 2021-02-03 | 넷마블 주식회사 | 글로벌 인증 계정 시스템 |
US12099997B1 (en) | 2020-01-31 | 2024-09-24 | Steven Mark Hoffberg | Tokenized fungible liabilities |
EP3916592A1 (en) * | 2020-05-28 | 2021-12-01 | I4P-Informatikai Kft. | Distributed data processing with systems comprising hsm, se and other secure storage elements |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1531241A (zh) * | 2003-03-13 | 2004-09-22 | ͬ�Ϳ�ҵ��ʽ���� | 密码重构方法、分散密码重构装置及密码重构系统 |
US6959394B1 (en) * | 2000-09-29 | 2005-10-25 | Intel Corporation | Splitting knowledge of a password |
CN101082946A (zh) * | 2006-06-01 | 2007-12-05 | 株式会社东芝 | 数据处理装置、数据处理方法和数据处理程序 |
CN103141056A (zh) * | 2010-10-06 | 2013-06-05 | 日本电信电话株式会社 | 秘密分散系统、秘密分散装置、秘密分散方法、秘密分类方法、秘密分散程序 |
-
2014
- 2014-12-05 WO PCT/JP2014/082220 patent/WO2015114947A1/ja active Application Filing
- 2014-12-05 EP EP14881321.5A patent/EP3101645B1/en active Active
- 2014-12-05 JP JP2015559767A patent/JP6321049B2/ja active Active
- 2014-12-05 US US15/110,645 patent/US10218495B2/en active Active
- 2014-12-05 CN CN201480074049.XA patent/CN105981088B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6959394B1 (en) * | 2000-09-29 | 2005-10-25 | Intel Corporation | Splitting knowledge of a password |
CN1531241A (zh) * | 2003-03-13 | 2004-09-22 | ͬ�Ϳ�ҵ��ʽ���� | 密码重构方法、分散密码重构装置及密码重构系统 |
CN101082946A (zh) * | 2006-06-01 | 2007-12-05 | 株式会社东芝 | 数据处理装置、数据处理方法和数据处理程序 |
CN103141056A (zh) * | 2010-10-06 | 2013-06-05 | 日本电信电话株式会社 | 秘密分散系统、秘密分散装置、秘密分散方法、秘密分类方法、秘密分散程序 |
Non-Patent Citations (3)
Title |
---|
Practical Yet Universally Composable Two-Server Password-Authenticated Secret Sharing;Jan Camenisch 等;《INTERNATIONAL ASSOCATION FOR CRYPTOLOGIC RESEARCH》;20121221;全文 |
Statistical Analysis System for Clinical Study Using Secure Multi-party Computation;Gembu Morohashi 等;《Computer Security Symposium 2012》;20121101;全文 |
Virtual Software Tokens-A Practical Way to Secure PKI Roaming;Taekyoung Kwon;《Springer International Publishing》;20020101;全文 |
Also Published As
Publication number | Publication date |
---|---|
EP3101645A4 (en) | 2017-10-11 |
US10218495B2 (en) | 2019-02-26 |
JP6321049B2 (ja) | 2018-05-09 |
CN105981088A (zh) | 2016-09-28 |
US20160330018A1 (en) | 2016-11-10 |
JPWO2015114947A1 (ja) | 2017-03-23 |
EP3101645A1 (en) | 2016-12-07 |
EP3101645B1 (en) | 2019-09-04 |
WO2015114947A1 (ja) | 2015-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105981088B (zh) | 秘密计算方法、秘密计算系统、注册者终端以及记录介质 | |
US11973750B2 (en) | Federated identity management with decentralized computing platforms | |
US11963006B2 (en) | Secure mobile initiated authentication | |
US11652608B2 (en) | System and method to protect sensitive information via distributed trust | |
US11314891B2 (en) | Method and system for managing access to personal data by means of a smart contract | |
US9946895B1 (en) | Data obfuscation | |
CA3060421C (en) | Systems and mechanism to control the lifetime of an access token dynamically based on access token use | |
US8997198B1 (en) | Techniques for securing a centralized metadata distributed filesystem | |
US9081978B1 (en) | Storing tokenized information in untrusted environments | |
US20130318361A1 (en) | Encrypting and storing biometric information on a storage device | |
JP6906521B2 (ja) | 生体認証プロトコル標準のシステムおよび方法 | |
KR20140030258A (ko) | 데이터 관리 및 큐레이션 시스템 | |
KR20220038115A (ko) | 바이오메트릭 프로토콜 표준을 위한 시스템 및 방법 | |
Catuogno et al. | An enterprise rights management system for on-the-field maintenance facilities | |
Shahin et al. | Big data platform privacy and security, a review | |
Megha | Authentication of Financial Wallet System and Data Protection using BlockChain | |
Sirisha et al. | ’Protection of encroachment on bigdata aspects’ | |
US10924286B2 (en) | Signing key log management | |
Wang et al. | Design and Implementation of a Blockchain-Based User Access Control Model | |
Alhazmi | Blockchain-based System for Big Data Security and Management | |
WO2024026428A1 (en) | Digital identity allocation, assignment, and management | |
WO2024076436A1 (en) | Blind subpoena protection | |
Fu et al. | A Design of Sharing Algorithm Based on Attribute–Based Encryption in Cloud Storage Environment | |
Karad et al. | Anonymous user authentication with secured storage and sharing of data on cloud | |
Zeydan et al. | Data Sharing Control with Blockchain-Based Self-Sovereign Identity Management System |
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 |