CN117413489A - 加密标签生成装置、隐匿检索系统、加密标签生成方法和加密标签生成程序 - Google Patents
加密标签生成装置、隐匿检索系统、加密标签生成方法和加密标签生成程序 Download PDFInfo
- Publication number
- CN117413489A CN117413489A CN202180098791.4A CN202180098791A CN117413489A CN 117413489 A CN117413489 A CN 117413489A CN 202180098791 A CN202180098791 A CN 202180098791A CN 117413489 A CN117413489 A CN 117413489A
- Authority
- CN
- China
- Prior art keywords
- logical
- random number
- encryption tag
- encryption
- value
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 64
- 230000014509 gene expression Effects 0.000 claims abstract description 69
- 239000006185 dispersion Substances 0.000 claims description 12
- 230000014759 maintenance of location Effects 0.000 description 13
- 238000004364 calculation method Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 6
- 239000000284 extract Substances 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000005516 engineering process Methods 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/6227—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 where protection concerns the structure of data, e.g. records, types, queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
-
- 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/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/588—Random number generators, i.e. based on natural stochastic processes
-
- 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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Databases & Information Systems (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
逻辑式取得部(502)取得通过多个属性值和逻辑运算符的逻辑结构来表示许可隐匿检索的条件的逻辑式。加密标签生成部(504)对多个属性值分别设定反映逻辑结构的秘密分散值,使用对多个属性值设定的多个秘密分散值生成在隐匿检索中使用的加密标签。
Description
技术领域
本发明涉及隐匿检索技术。
隐匿检索技术是在被加密的状态下使用被加密的关键字来检索被加密的数据(以下也称作加密数据)的技术。
背景技术
在云服务开始普及的当前,一般利用廉价且不费工夫就能够开始利用的云存储器。另一方面,在利用云来管理包含微妙信息的数据的情况下,为了避免信息泄露的风险,需要对数据进行加密并保管加密数据。
关于隐匿检索,不对加密数据进行解密就能够进行检索,因此,能够同时实现安全性和功能性双方。
在隐匿检索中,使用2个被加密的关键字来实现检索。
第1个是加密标签。加密标签是与加密数据相关联的被加密的关键字。第2个是陷门。陷门是在检索条件中使用的被加密的关键字。
在登记时,在云存储器等存储服务器中,加密数据和加密标签相互关联起来进行登记。加密标签与加密数据本身或加密数据的标识符相关联。加密标签作为加密索引而由存储服务器进行保管。
在隐匿检索中,检索者将陷门发送到存储服务器。
存储服务器寻找与陷门一致的加密标签而不对陷门进行解密。然后,存储服务器提取与加密标签相关联的加密数据,将提取出的加密数据发送到检索者。
由此,在隐匿检索中,能够不暴露数据和关键字地进行数据检索。
隐匿检索能够大致分为公共密钥型隐匿检索和公开密钥型隐匿检索。
在公开密钥型隐匿检索中,在加密标签和陷门的生成中使用不同的密钥,另一方面,在公共密钥型隐匿检索中,在加密标签和陷门的生成中使用相同的密钥。
此外,一般而言,公共密钥型隐匿检索与公开密钥型隐匿检索相比,能够高速地进行检索。
作为与本发明相关联的技术,存在专利文献1记载的技术和非专利文献1记载的技术。
在专利文献1和非专利文献1中,记载有公共密钥型隐匿检索的访问控制方法。
现有技术文献
专利文献
专利文献1:国际公开WO2019/142268号
非专利文献
非专利文献1:R.A.Popa,N.Zeldovich,“Multi-Key Searchable Encryption”,IACR Cryptology ePrint Archive:Report 2013/508
发明内容
发明要解决的课题
在专利文献1和非专利文献1记载的技术中,在开始运用隐匿检索系统之前决定访问控制模式,按照所决定的访问控制模式进行访问控制。访问控制模式是通过多个属性值和逻辑运算符(简称作运算符)的逻辑结构来表示许可隐匿检索的条件的逻辑式。
在专利文献1和非专利文献1记载的技术中,例如如逻辑或运算符为1个逻辑式、逻辑与运算符为2个逻辑式那样预先决定访问控制模式中的逻辑结构。然后,在专利文献1和非专利文献1记载的技术中,按照预先决定的逻辑结构进行访问控制。
这样,在专利文献1和非专利文献1记载的技术中,一旦决定访问控制模式后,无法以与所决定的访问控制模式不同的访问控制模式进行访问控制。
因此,在专利文献1和非专利文献1记载的技术中,在以新的访问控制模式进行访问控制的情况下,需要重新构建隐匿检索系统,存在便利性显著低这样的课题。
本发明的主要目的在于解决这种课题。即,本发明的主要目的在于实现能够进行更加灵活的访问控制的隐匿检索。
用于解决课题的手段
本发明的加密标签生成装置具有:逻辑式取得部,其取得通过多个属性值和逻辑运算符的逻辑结构来表示许可隐匿检索的条件的逻辑式;以及加密标签生成部,其对所述多个属性值分别设定反映所述逻辑结构的秘密分散值,使用对所述多个属性值设定的多个秘密分散值生成在所述隐匿检索中使用的加密标签。
发明效果
在本发明中,对各属性值设定反映由逻辑式表示的逻辑结构的秘密分散值,使用对各属性值设定的秘密分散值生成加密标签。因此,根据本发明,能够自由地决定由逻辑式表示的逻辑结构,在隐匿检索中,能够实现更加灵活的访问控制。
附图说明
图1是示出实施方式1的隐匿检索系统的结构例的图。
图2是示出实施方式1的数据流的图。
图3是示出实施方式1的主密钥生成装置的功能结构例的图。
图4是示出实施方式1的用户密钥生成装置的功能结构例的图。
图5是示出实施方式1的陷门生成装置的功能结构例的图。
图6是示出实施方式1的加密标签生成装置的功能结构例的图。
图7是示出实施方式1的一致判定装置的功能结构例的图。
图8是示出实施方式1的主密钥生成装置的处理的流程的流程图。
图9是示出实施方式1的用户密钥生成装置的处理的流程的流程图。
图10是示出实施方式1的陷门生成装置的处理的流程的流程图。
图11是示出实施方式1的加密标签生成装置的处理的流程的流程图。
图12是示出实施方式1的一致判定装置的处理的流程的流程图。
图13是示出实施方式1的加密标签生成装置的处理的详细情况的流程图。
图14是示出实施方式1的加密标签生成装置的处理的详细情况的流程图。
图15是示出实施方式1的加密标签生成装置的处理的详细情况的流程图。
图16是示出实施方式1的隐匿检索系统的硬件资源的一例的图。
具体实施方式
下面,使用附图对实施方式进行说明。在以下的实施方式的说明和附图中,标注有相同标号的部分表示相同的部分或相当的部分。
实施方式1
***概要***
在本实施方式中,对在公共密钥型隐匿检索中实现灵活的访问控制的隐匿检索系统进行说明。
在本实施方式的隐匿检索系统中,使用通过多个属性值(表示称呼、所属部门等的值)和逻辑运算符(逻辑或运算符、逻辑与运算符)的逻辑结构来表示被许可隐匿检索的用户的条件(以下称作可检索条件)的逻辑式生成加密标签。而且,在本实施方式的隐匿检索系统中,不需要对在加密标签的生成中使用的逻辑式的长度(即逻辑式中包含的属性值的个数)设置制约,因此,能够进行灵活的访问控制。
为了能够实现长度没有制约的逻辑式,需要按照每个属性值来生成参数。以往,仅1个参数,因此,需要事先决定在1个参数中包含几个属性值,即利用1个参数生成何种程度的长度的逻辑式。在本实施方式的隐匿检索系统中,按照每个属性值来生成参数,因此,不需要逻辑式中包含的属性值的数量的上限。这样,在按照每个属性值来生成参数的情况下,需要使加密标签准确地反映逻辑式的逻辑结构。
例如,在逻辑式“AAND B”和逻辑式“AOR B”中包含相同的2个属性值(A和B)。该情况下,需要生成加密标签以区分由2个逻辑式表示的逻辑结构。即,需要生成加密标签以能够区分各逻辑式中包含的逻辑运算符是逻辑与运算符(AND)还是逻辑或运算符(OR)。
在本实施方式中,对各属性值设定反映逻辑式的逻辑结构的秘密分散值,使用对各属性值设定的秘密分散值生成加密标签。即,在逻辑式中包含逻辑与运算符(AND)的情况下,对利用逻辑与运算符(AND)连接的属性值(逻辑与属性值)分别设定反映逻辑与属性值分别利用逻辑与运算符(AND)连接的秘密分散值。此外,在逻辑式中包含逻辑或运算符(OR)的情况下,对利用逻辑或运算符(OR)连接的属性值(逻辑或属性值)分别设定反映逻辑或属性值分别利用逻辑或运算符(OR)连接的秘密分散值。
具体而言,在所述的逻辑式“AAND B”的情况下,对属性值A设定成为s=s1+s2的秘密分散值s1,对属性值B设定秘密分散值s2。此外,在逻辑式“AOR B”的情况下,对属性值A和属性值B双方设定秘密分散值s。
这样,在本实施方式的隐匿检索系统中,能够自由地决定由逻辑式表示的逻辑结构,与以往相比,能够实现灵活的访问控制。
***功能结构的说明***
图1示出本实施方式的隐匿检索系统100的结构例。
如图1所示,隐匿检索系统100具有主密钥生成装置200、多个用户密钥生成装置300、多个陷门生成装置400、多个加密标签生成装置500和一致判定装置600。
主密钥生成装置200、多个用户密钥生成装置300、多个陷门生成装置400、多个加密标签生成装置500和一致判定装置600利用网络101相互连接。
网络101例如是互联网。
作为网络101,也可以使用互联网以外的网络。例如,作为网络101,也可以使用LAN(Local·Area·Network:局域网)。在使用LAN作为网络101的情况下,主密钥生成装置200、多个用户密钥生成装置300、多个陷门生成装置400、多个加密标签生成装置500和一致判定装置600设置于相同的企业内。
主密钥生成装置200、用户密钥生成装置300、陷门生成装置400、加密标签生成装置500和一致判定装置600分别是计算机。
主密钥生成装置200、用户密钥生成装置300、陷门生成装置400、加密标签生成装置500和一致判定装置600分别例如是PC(Personal Computer:个人计算机)。一致判定装置600例如是存储服务器。
主密钥生成装置200结合比特长度U来生成主密钥K。
然后,如图2所示,主密钥生成装置200经由网络101将生成的主密钥K发送到用户密钥生成装置300和加密标签生成装置500。
如图2所示,用户密钥生成装置300接收主密钥K。
此外,主密钥生成装置200取得用户的属性值的集合即属性值集合Γ,使用主密钥K和属性值集合Γ生成用户密钥skΓ。
然后,用户密钥生成装置300经由网络101将生成的用户密钥skΓ发送到陷门生成装置400和加密标签生成装置500。另外,也可以不经由网络101而利用邮寄等手段送达用户密钥skΓ。
如图2所示,陷门生成装置400接收用户密钥skΓ。
此外,陷门生成装置400取得关键字W,使用用户密钥skΓ和关键字W生成陷门T。关键字W是在隐匿检索中使用的关键字。
然后,陷门生成装置400经由网络101将生成的陷门T发送到一致判定装置600。
如图2所示,加密标签生成装置500接收主密钥K和用户密钥skΓ。
此外,加密标签生成装置500取得关键字W和逻辑式V,使用主密钥K、用户密钥skΓ、关键字W和逻辑式V生成加密标签E。
如上所述,逻辑式V是通过多个属性值和逻辑运算符的逻辑结构来表示可检索条件的逻辑式。可检索条件是被许可隐匿检索的用户的属性的条件。
加密标签生成装置500经由网络101将生成的加密标签E发送到一致判定装置600。
另外,加密标签生成装置500的动作步骤相当于加密标签生成方法。此外,实现加密标签生成装置500的动作的程序相当于加密标签生成程序。
如图2所示,一致判定装置600接收陷门T和加密标签E。
然后,一致判定装置600判定陷门T中包含的关键字W和加密标签E中包含的关键字W是否一致。
然后,一致判定装置600经由网络101将判定结果发送到陷门生成装置400。
图3示出本实施方式的主密钥生成装置200的功能结构例。
如图3所示,主密钥生成装置200具有比特长度取得部201、密钥生成部202、发送部203和随机数值生成部204。
另外,虽然没有图示,但是,主密钥生成装置200具有用于存储在图3所示的各要素中使用的数据的存储介质。
比特长度取得部201取得在隐匿检索系统100中使用的密钥的比特长度U。
密钥生成部202以公共密钥方式生成成为在隐匿检索系统100中进行的运算的基本的、适合于比特长度U的主密钥K。
密钥生成部202使用由随机数值生成部204生成的随机数值生成主密钥K。
随机数值生成部204生成在主密钥K的生成中使用的随机数值。
发送部203将由密钥生成部202生成的主密钥K发送到用户密钥生成装置300和加密标签生成装置500。
图4示出本实施方式的用户密钥生成装置300的功能结构例。
如图4所示,用户密钥生成装置300具有密钥接收部301、属性值集合取得部302、用户密钥生成部303、发送部304和随机数值生成部305。
另外,虽然没有图示,但是,用户密钥生成装置300具有用于存储在图4所示的各要素中使用的数据的存储介质。
密钥接收部301从主密钥生成装置200接收主密钥K。
属性值集合取得部302取得用户密钥中设定的用户的属性值的集合即属性值集合Γ。
用户密钥生成部303使用主密钥K、属性值集合Γ和由随机数值生成部305生成的随机数值用户密钥skΓ。
随机数值生成部305生成在用户密钥skΓ的生成中使用的随机数值。
发送部304将由用户密钥生成部303生成的用户密钥skΓ发送到陷门生成装置400和加密标签生成装置500。
图5示出本实施方式的陷门生成装置400的功能结构例。
如图5所示,陷门生成装置400具有密钥接收部401、关键字取得部402、陷门生成部403、发送部404和随机数值生成部405。
虽然没有图示,但是,陷门生成装置400具有用于存储在图5所示的各要素中使用的数据的记录介质。
密钥接收部401从用户密钥生成装置300接收用户密钥skΓ。
关键字取得部402取得关键字W。
陷门生成部403使用用户密钥skΓ、关键字W和由随机数值生成部405生成的随机数值生成陷门T。
另外,陷门生成部403使用多个陷门T中公共的随机数值(公共随机数值)生成陷门T。
随机数值生成部405生成在陷门T的生成中使用的随机数值。
发送部404将由陷门生成部403生成的陷门T发送到一致判定装置600。
图6示出本实施方式的加密标签生成装置500的功能结构例。
如图6所示,加密标签生成装置500具有密钥接收部501、逻辑式取得部502、关键字取得部503、加密标签生成部504、发送部505、随机数值生成部506和随机数值保持部507。
另外,虽然没有图示,但是,加密标签生成装置500具有用于存储在除了随机数值生成部506和随机数值保持部507以外的图6所示的各要素中使用的数据的记录介质。另外,如后所述,由随机数值生成部506生成的随机数值被保持为保持随机数值。保持随机数值被用于秘密分散值。为了使随机数值被保持为保持随机数值这点更加明确,在图6中,特意图示出保持随机数值的随机数值保持部507。
密钥接收部501接收主密钥K和用户密钥skΓ。
逻辑式取得部502取得表示可检索条件L的逻辑式V。
另外,由逻辑式取得部502进行的处理相当于逻辑式取得处理。
关键字取得部503取得关键字W。
加密标签生成部504使用主密钥K、用户密钥skΓ、逻辑式V、关键字W、由随机数值生成部506生成的随机数值和由随机数值保持部507保持的保持随机数值生成加密标签E。
另外,由加密标签生成部504进行的处理相当于加密标签生成处理。
随机数值生成部506生成在加密标签E的生成中使用的随机数值。
随机数值保持部507保持由随机数值生成部506生成的随机数值。
在由随机数值生成部506生成了新的随机数值且由加密标签生成部504生成了更加新的随机数值的情况下,随机数值保持部507利用新的随机数值和/或新的随机数值对保持随机数值进行更新。
发送部505将由加密标签生成部504生成的加密标签E发送到一致判定装置600。
图7示出本实施方式的一致判定装置600的功能结构例。
如图7所示,一致判定装置600具有加密标签接收部601、陷门接收部602、一致判定部603、结果发送部604和随机数值生成部605。
另外,虽然没有图示,但是,一致判定装置600具有用于存储在图7所示的各要素中使用的数据的记录介质。
加密标签接收部601接收加密标签E。
陷门接收部602接收陷门T。
一致判定部603进行一致判定。
具体而言,一致判定部603使用由随机数值生成部605生成的随机数值,判定加密标签E中包含的关键字W和陷门T中包含的关键字W是否一致。
结果发送部604将一致判定部603的判定结果发送到陷门生成装置400。
例如,在由一致判定部603判定为加密标签E中包含的关键字W和陷门T中包含的关键字W一致的情况下,结果发送部604发送“0”作为判定结果。另一方面,在判定为不一致的情况下,结果发送部604发送“1”作为判定结果。另外,结果发送部604也可以使用其他数值、字符、记号作为判定结果。
另外,代替判定结果的发送,在加密标签E中包含的关键字W和陷门T中包含的关键字W一致的情况下,结果发送部604例如也可以从未图示的数据库取得与加密标签E相关联的加密数据。然后,结果发送部604也可以将取得的加密数据发送到陷门生成装置400。
***关于加密技术***
接着,对成为本实施方式的隐匿检索系统100的动作的前提的加密技术进行说明。
基于属性的加密是仅拥有根据满足可检索条件L的属性值的集合即属性值集合Γ生成的用户密钥的用户能够解密的加密技术。基于属性的加密例如由以下所示的算法构成。
设置ABESETUP
生成与取得的比特长度对应的主密钥K和公开密钥pk。
用户密钥生成ABEKEYGEN
使用主密钥K和属性值集合Γ生成与属性值集合Γ相符的用户密钥skΓ。
加密ABEENC
使用公开密钥pk和可检索条件L生成公共密钥加密用的密钥KK,使用密钥KK生成密文P。
解密ABEDEC
使用用户密钥skΓ和密文P,判定属性值集合Γ和生成密文P时使用的可检索条件L是否一致。在属性值集合Γ和可检索条件L一致的情况下,输出在密文P的加密中使用的密钥KK。
在公共密钥加密技术中,使用主密钥K对明文M进行加密。此外,在公共密钥加密技术中,使用主密钥K对密文C进行解密而得到明文M。
主密钥K是随机的值。公共密钥加密技术例如由以下的算法构成。
加密SKEENC
使用主密钥K对明文M进行加密,输出密文C。
解密SKEDEC
使用主密钥K对密文C进行解密,输出明文M。
在实施方式中,在公共密钥加密技术中,还利用使用了块加密的计数器模式加密技术。下面,将使用了块加密的计数器模式加密技术中的加密处理表记为SCTRENC,将解密处理表记为SCTRDEC。
在计数器模式中,存在辅助信息(计数器值)。下面,辅助信息(计数器值)表记为auxC。
在使用了块加密的计数器模式加密技术中,如以下那样进行加密。
C=SCTRENC(K、auxC)+M
C是密文。M是明文。K是主密钥。此外,“+”表示异或。
此外,在使用了块加密的计数器模式加密技术中,如以下那样进行解密。
M=SCTRENC(K、auxC)+C
***动作的说明***
接着,对本实施方式的隐匿检索系统100的动作例进行说明。
图8示出本实施方式的主密钥生成装置200的动作例。
首先,在步骤S201中,比特长度取得部201取得密钥的比特长度U。
接着,在步骤S202中,随机数值生成部204生成M比特的随机数值,密钥生成部202使用随机数值生成主密钥K。密钥生成部202也可以将M比特的随机数值直接设为主密钥K。
最后,在步骤S203中,发送部203将主密钥K发送到用户密钥生成装置300和加密标签生成装置500。
图9示出本实施方式的用户密钥生成装置300的动作例。
最初,在步骤S301中,密钥接收部301接收主密钥K。
接着,在步骤S302中,属性值集合取得部302取得属性值集合Γ。
接着,在步骤S303中,用户密钥生成部303生成用户密钥skΓ。
具体而言,用户密钥生成部303如以下那样生成用户密钥skΓ。
另外,设Γ={Qi}(i=1,..,n)。Qi是属性值集合Γ中包含的属性。此外,下面,H意味着散列运算。
ski=H(K,Qi)(i=1,…n)
skΓ=(sk1,..skn)
最后,在步骤S304中,发送部304将用户密钥skΓ发送到陷门生成装置400和加密标签生成装置500。
图10示出本实施方式的陷门生成装置400的动作例。
首先,在步骤S401中,密钥接收部401接收用户密钥skΓ。
接着,在步骤S402中,关键字取得部402取得关键字W。
接着,在步骤S403中,陷门生成部403生成陷门T。
具体而言,陷门生成部403如以下那样生成陷门T。另外,下面,r意味着随机数值。随机数值由随机数值生成部405来生成。
T0=H(K,W)+r
针对(i=1,…,n),
Ti1=H(ski、w),Ti2=H(Ti1、r)
T=(Γ、T0、(T11、T12),...,(Tn1、Tn2))
最后,在步骤404中,发送部404将陷门T发送到一致判定装置600。
图11示出本实施方式的加密标签生成装置500的动作例。
首先,在步骤S501中,密钥接收部501接收主密钥K和用户密钥skΓ。
接着,在步骤S502中,逻辑式取得部502取得表示可检索条件L的逻辑式V。
接着,在步骤S503中,关键字取得部503取得关键字W。
接着,在步骤S504中,加密标签生成部504根据逻辑式V计算秘密分散值。
步骤S504的详细情况在后面叙述。
接着,在步骤S505中,加密标签生成部504根据在步骤S504中生成的秘密分散值、主密钥K、用户密钥skΓ和关键字W生成加密标签E。
步骤S505的详细情况在后面叙述。
最后,在步骤S506中,发送部505将加密标签E发送到一致判定装置600。
图12示出本实施方式的一致判定装置600的动作例。
首先,在步骤S601中,陷门接收部602接收陷门T。
接着,在步骤602中,加密标签接收部601接收加密标签E。
另外,步骤S601和步骤S602的顺序也可以调换。此外,步骤S601和步骤S602也可以并行地进行。
接着,在步骤603中,一致判定部603进行一致判定。
步骤S603的详细情况在后面叙述。
最后,在步骤S604中,结果发送部604将判定结果发送到陷门生成装置400。
如上所述,例如,在由一致判定部603判定为加密标签E中包含的关键字W和陷门T中包含的关键字W一致的情况下,结果发送部604发送“0”作为判定结果。另一方面,在判定为不一致的情况下,结果发送部604发送“1”作为判定结果。
接着,对图11的步骤S504的详细情况进行说明。
在步骤S504中,加密标签生成部504对多个属性值分别设定反映由逻辑式V表示的逻辑结构的秘密分散值。这里,“对多个属性值分别设定秘密分散值”是指将秘密分散值与各属性值对应起来。
此外,下面对“反映逻辑结构的秘密分散值”的详细情况进行说明。
在逻辑式V中包含多个属性值和逻辑运算符。
逻辑运算符是逻辑或运算符(OR)或逻辑与运算符(AND)。下面,将逻辑或运算符(OR)表记为逻辑或(OR)或OR,将逻辑与运算符(AND)表记为逻辑与(AND)或AND。
在逻辑式V中包含逻辑或(OR)的情况下,加密标签生成部504对利用逻辑或(OR)连接的2个以上的属性值即2个以上的逻辑或属性值分别设定反映2个以上的逻辑或属性值分别利用逻辑或(OR)连接的秘密分散值。更具体而言,加密标签生成部504对2个以上的逻辑或属性值分别设定保持随机数值作为秘密分散值。保持随机数值是随机数值保持部507保持的随机数值。
此外,在逻辑式V中包含逻辑与运算符(AND)的情况下,加密标签生成部504对利用逻辑与运算符(AND)连接的2个以上的属性值即2个以上的逻辑与属性值分别设定反映2个以上的逻辑与属性值分别利用逻辑与运算符(AND)连接的秘密分散值。更具体而言,加密标签生成部504使随机数值生成部506生成新的随机数值,使用新的随机数值和保持随机数值进行运算,生成更加新的随机数值。然后,加密标签生成部504对2个以上的逻辑与属性值分别设定新的随机数值和更加新的随机数值中的任意一方作为秘密分散值。
下面,使用流程图对图11的步骤S504的详细情况进行说明。
图13、图14和图15是示出步骤S504的详细情况的流程图。
另外,下面,随机数值保持部507保持保持随机数值Xn和Yn。另外,n=1、2…。
此外,加密标签生成部504利用波兰记法对逻辑式V进行转换,从开头扫描转换后的逻辑式V。
首先,在步骤S5401中,加密标签生成部504将初始随机数值S0和0代入保持随机数值Xn、Yn中(Xn←S0、Yn←0)。即,加密标签生成部504使随机数值保持部507保持初始随机数值S0和0作为保持随机数值Xn和Yn。
初始随机数值是随机数值生成部506最初生成的随机数值。
接着,在步骤S5402中,加密标签生成部504判定逻辑式V中包含的逻辑运算符是逻辑与(AND)还是逻辑或(OR)。
在最初的运算符是逻辑与(AND)的情况下,处理进入步骤S5403。另一方面,在最初的运算符是逻辑或(OR)的情况下,处理进入步骤S5418(图15)。
在步骤S5403中,加密标签生成部504使随机数值生成部506生成新的随机数值Zj。这里,j=1、2…。
接着,在步骤S5404中,加密标签生成部504判定当前关注的逻辑与(AND)是否是最初的AND。
在当前关注的逻辑与(AND)是最初的AND的情况下,处理进入步骤S5405。
另一方面,在当前关注的逻辑与(AND)不是最初的AND的情况下,处理进入步骤S5416。
在步骤S5405中,加密标签生成部504从随机数值生成部506取得新的随机数值Zj,将当前的保持随机数值Xn除以新的随机数值Zj,得到更加新的随机数值(Xn/Zj)。
接着,在步骤S5406中,加密标签生成部504利用新的随机数值Zj和更加新的随机数值(Xn/Zj)对当前的保持随机数值Xn和Yn进行更新(Xn←Zj、Yn←(Xn/Zj))。
即,加密标签生成部504使随机数值保持部507保持新的随机数值Zj和更加新的随机数值(Xn/Zj)作为更新后的保持随机数值Xn、Yn。
接着,在步骤S5407中,加密标签生成部504判定逻辑式V中逻辑与(AND)的下一项是否是被运算符(属性值)。
在逻辑与(AND)的下一项是被运算符(属性值)的情况下,处理进入步骤S5408。
在逻辑与(AND)的下一项不是被运算符(属性值)的情况下,下一项是逻辑运算符,因此,处理返回步骤S5402,加密标签生成部504判定该逻辑运算符是逻辑与(AND)还是逻辑或(OR)。
在步骤S5408中,加密标签生成部504对逻辑与(AND)的下一项即被运算符(属性值)设定保持随机数值Xn作为秘密分散值。这里设定的保持随机数值Xn是在步骤S5406或后述的步骤S5417中更新后的随机数值。
接着,在步骤S5409中,加密标签生成部504判定在逻辑式V中是否存在下一项。
在存在下一项的情况下,处理进入步骤S5410。
另一方面,在不存在下一项的情况下,处理结束。
在步骤S5410中,加密标签生成部504判定下一项是否是被运算符(属性值)。
在下一项是被运算符(属性值)的情况下,处理进入步骤S5411。
在下一项不是被运算符(属性值)的情况下,下一项是逻辑运算符,因此,处理返回步骤S5402,加密标签生成部504判定该逻辑运算符是逻辑与(AND)还是逻辑或(OR)。
在步骤S5411中,加密标签生成部504对下一项即被运算符(属性值)设定保持随机数值Yn作为秘密分散值。这里设定的保持随机数值Yn是在步骤S5406或后述的步骤S5417中更新后的随机数值。
接着,在图14的步骤S5412中,加密标签生成部504判定在逻辑式V中是否存在下一项。
在存在下一项的情况下,处理进入步骤S5413。
另一方面,在不存在下一项的情况下,处理结束。
在步骤S5413中,加密标签生成部504判定下一项是否是被运算符(属性值)。
在下一项是被运算符(属性值)的情况下,处理进入步骤S5414。
在下一项不是被运算符(属性值)的情况下,下一项是逻辑运算符,因此,处理返回步骤S5402,加密标签生成部504判定该逻辑运算符是逻辑与(AND)还是逻辑或(OR)。
在步骤S5414中,加密标签生成部504将当前的保持随机数值Yn除以当前的保持随机数值Xn,得到更加新的随机数值(Yn/Xn)。另外,(Yn/Xn)={Xn-1/(Zj*Zj)}。
接着,在步骤S5415中,加密标签生成部504利用更加新的随机数值(Yn/Xn)对当前的保持随机数值Yn进行更新(Yn←(Yn/Xn))。
接着,处理返回步骤S5411,加密标签生成部504对下一项即被运算符(属性值)设定保持随机数值Yn作为秘密分散值。这里设定的保持随机数值Yn是在步骤S5415中更新的随机数值(具体而言为(Yn/Xn)={Xn-1/(Zj*Zj)})。
然后,进行步骤S5412以后的处理。
在步骤S5404中关注的逻辑与(AND)不是最初的AND的情况下(第2次以后的AND的情况下),在步骤S5416中,加密标签生成部504从随机数值生成部506取得新的随机数值Zj,将当前的保持随机数值Y除以新的随机数值Zj,得到更加新的随机数值(Yn/Zj)。
接着,在步骤S5417中,加密标签生成部504利用新的随机数值Zj和更加新的随机数值(Yn/Zj)对当前的保持随机数值Xn和Yn进行更新(Xn←Zj、Yn←(Yn/Zj))。
即,加密标签生成部504使随机数值保持部507保持新的随机数值Zj和更加新的随机数值(Yn/Zj)作为更新后的保持随机数值Xn、Yn。
然后,进行步骤S5407以后的处理。
在步骤S5402中逻辑式V中包含的运算符是逻辑或(OR)的情况下,在图15的步骤S5418中,加密标签生成部504判定逻辑或(OR)的下一项是否是被运算符(属性值)。
在逻辑或(OR)的下一项是被运算符(属性值)的情况下,处理进入步骤S5419。
在逻辑或(OR)的下一项不是被运算符(属性值)的情况下,下一项是逻辑运算符,因此,处理返回步骤S5402,加密标签生成部504判定该逻辑运算符是逻辑与(AND)还是逻辑或(OR)。
在步骤S5419中,加密标签生成部504对下一项即被运算符(属性值)设定保持随机数值Xn作为秘密分散值。
接着,在步骤S5420中,加密标签生成部504判定在逻辑式V中是否存在下一项。
在存在下一项的情况下,处理返回步骤S5418。
另一方面,在不存在下一项的情况下,处理结束。
通过进行图13、图14和图15的步骤,加密标签生成部504能够对逻辑式V中包含的被运算符(属性值)设定秘密分散值。
这里,使用具体例对图13、图14和图15所示的步骤进行说明。
下面,例如使用逻辑式“(A OR B)AND(C AND D)”进行说明。在按照波兰记法对该逻辑式进行转换时,成为“AND OR AB AND C D”。2个“AND”和“OR”分别是逻辑运算符,“A”、“B”、“C”和“D”分别是被运算符(属性值)。
根据步骤S5401,加密标签生成部504将初始随机数值S0、0代入保持随机数值X1、Y1中(X1←S0、Y1←0)。
加密标签生成部504从左侧起扫描逻辑式“AND OR A B AND C D”。最初的逻辑运算符是“AND”(在步骤S5402中为“AND”),因此,处理进入步骤S5403。
在步骤S5403中,加密标签生成部504指示随机数值生成部506生成新的随机数值Zj。
这里,设为生成Z1作为新的随机数值Zj。
此外,当前关注的“AND”是最初的AND(在步骤S5404中为“是”),因此,处理进入步骤S5405。
在步骤S5405中,加密标签生成部504从随机数值生成部506取得新的随机数值Z1,将当前的保持随机数值X1除以新的随机数值Z1,得到更加新的随机数值(X1/Z1)(=(S0/Z1))。
接着,在步骤S5406中,加密标签生成部504利用新的随机数值Z1和更加新的随机数值(X1/Z1)对当前的保持随机数值X1和Y1进行更新(X2←Z1、Y2←(X1/Z1)(=(S0/Z1))。
接着,在步骤S5407中,加密标签生成部504判定“AND”的下一项是否是被运算符(属性值)。
在逻辑式“AND OR A B AND C D”中,“AND”的下一项是“OR”,因此,处理返回步骤S5402。
进而,步骤S5402的判定的结果是,处理进入图15的步骤S5418。
在步骤S5418中,判定“OR”的下一项是否是被运算符(属性值)。
在逻辑式“AND OR AB AND C D”中,“OR”的下一项是“A”,因此,处理进入步骤S5419。
在步骤S5419中,加密标签生成部504对下一项即被运算符(属性值“A”)设定保持随机数值X2(=Z1)作为秘密分散值。
接着,在步骤S5420中,加密标签生成部504判定是否存在下一项。
在逻辑式“AND OR AB AND C D”中,在“A”之后存在“B”,因此,处理进入步骤S5418。
然后,下一项即“B”是被运算符(属性值),因此,处理进入步骤S5419。
其结果是,在步骤S5419中,加密标签生成部504对下一项即被运算符(属性值“B”)设定保持随机数值X2(=Z1)作为秘密分散值。
接着,在步骤S5420中,加密标签生成部504判定是否存在下一项。
在逻辑式“AND OR AB AND C D”中,在“B”之后存在“AND”,因此,处理进入步骤S5418。
然后,下一项即“AND”是逻辑运算符,因此,处理进入图13的步骤S5402。
逻辑运算符为“AND”(在步骤S5402中为“AND”),因此,处理进入步骤S5403。
在步骤S5403中,加密标签生成部504指示随机数值生成部506生成新的随机数值Zj。
这里,设为生成Z2作为新的随机数值Zj。
接着,当前关注的“AND”是第2次的AND(在步骤S5404中为“否”),因此,处理进入步骤S5416。
在步骤S5416中,加密标签生成部504从随机数值生成部506取得新的随机数值Z2,将当前的保持随机数值Y2除以新的随机数值Z2,得到更加新的随机数值(Y2/Z2)(={S0/(Z1*Z2)})。
接着,在步骤S5417中,加密标签生成部504利用新的随机数值Z2和更加新的随机数值(Y2/Z2)对当前的保持随机数值X2和Y2进行更新(X3←Z2、Y3←(Y2/Z2))。
接着,在步骤S5407中,加密标签生成部504判定“AND”的下一项是否是被运算符(属性值)。
在逻辑式“AND OR AB AND C D”中,“AND”的下一项是“C”,因此,处理进入步骤S5408。
在步骤S5408中,加密标签生成部504对“AND”的下一项即被运算符(属性值“C”)设定保持随机数值X3(=Z2)作为秘密分散值。
接着,在步骤S5409中,加密标签生成部504判定是否存在下一项。
在逻辑式“AND OR A B AND C D”中,在“C”之后存在“D”,因此,处理进入步骤S5410。然后,“D”是被运算符(属性值),因此,处理进入步骤S5411。
在步骤S5411中,加密标签生成部504对属性值“D”设定保持随机数值Y3(=(Y2/Z2))作为秘密分散值。
接着,在图14的步骤S5412中,加密标签生成部504判定是否存在下一项。
在逻辑式“AND OR A B AND C D”中,“D”是最后的项,因此,处理结束。
通过以上的处理,对“A”设定X2=Z1的秘密分散值,对“B”设定X2=Z1的秘密分散值,对“C”设定X3=Z2的秘密分散值,对“D”设定(Y2/Z2)(={S0/(Z1*Z2)})的秘密分散值。
对利用逻辑或(OR)连接的“A”和“B”设定公共的秘密分散值“Z1”。因此,能够识别两者利用逻辑或(OR)连接。
此外,如上所述,在本实施方式中,基本原理是,在逻辑式“A AND B”的情况下,对属性值A设定成为s=s1+s2的秘密分散值s1,对属性值B设定秘密分散值s2。依照该基本原理,加密标签生成部504对“A”和“B”设定秘密分散值“Z1”,对“C”设定秘密分散值“Z2”,对“D”设定通过“Z1”和“Z2”的运算而得到的秘密分散值{S0/(Z1*Z2)}。因此,能够识别“A”、“B”、“C”和“D”利用逻辑与(AND)连接。
接着,对图11的步骤S505的详细情况进行说明。
在进行步骤S504的处理时,对全部被运算符设定秘密分散值。
下面,设为设定(S1,...,Sm)这样的m个秘密分散值。
在步骤S505中,加密标签生成部504计算以下内容。
E0=H(K,W)+S0
针对(i=1,…,m),
Ei1=H(H(ski、W),Ri)+Si,Ei2=Ri
E=(L、E0、(E11、E12),...,(Em1、Em2))
另外,S0是初始随机数值。此外,L是可检索条件。Ri是随机数值。
接着,对图12的步骤S603的详细情况进行说明。
首先,一致判定部603对可检索条件L和属性值集合Γ进行比较。
然后,一致判定部603提取属性值集合Γ的要素中包含的属性Qi中的、满足可检索条件L的最低限度的属性。这里,设为一致判定部603提取满足可检索条件L的最低限度的属性作为(QQ1,...,QQu)。
例如,在给出逻辑式“A OR B”作为可检索条件L的情况下,QQ1=A、QQ2=B满足可检索条件L,仅QQ1=A也满足可检索条件L。
一致判定部603提取这样满足可检索条件L的属性的组合中的、属性数最少的属性的组合作为“满足可检索条件L的最低限度的属性”。
此外,这里,将用于提取满足可检索条件L的可检索条件的最低限度的属性的计算式设为F。一致判定部603执行计算式F,由此提取满足可检索条件L的最低限度的属性(QQ1,...,QQu)。
然后,一致判定部603通过以下的计算,如以下那样提取与满足可检索条件L的最低限度的属性(QQ1,...,QQu)对应的加密标签E的成分和陷门T的成分。
E0=H(K,W)+S0
针对i=1,…,u,
Ei1=H(H(ski、W),Ri)+Si,Ei2=Ri
T0=H(K,W)+r
针对i=1,…,u,
Ti1=H(ski、W),Ti2=H(Ti1、r)
另外,Ri和r分别是随机数值。
接着,一致判定部603通过以下的计算来计算秘密分散值Si。
针对i=1,…,u,
Si=Ei1+H(Ti1,Ei2)
然后,一致判定部603根据计算出的秘密分散值Si,使用计算式F计算满足条件的S0。
具体而言,一致判定部603如以下那样进行计算。
r=H(E0+S0)+T0
例如,在逻辑式“A AND B”的情况下,上述的“条件”是2个属性值的逻辑与(乘法运算)。在该例子的情况下,应该通过加密标签生成部504对“A”设定秘密分散值Z1,对“B”设定秘密分散值(S0/Z1)。因此,在一致判定部603执行计算式F(在该例子的情况下为乘法运算)后,初始随机数值S0被复原。
关于计算式F和条件之间的对应,如果逻辑式的运算符为“OR”,则计算式F是加法运算,如果逻辑式的运算符为“AND”,则计算式F成为乘法运算。
接着,一致判定部603针对(i=1,…,n),判定Ti2=H(Ti1、r)是否成立。
针对全部(i=1,…,n),如果Ti2=H(Ti1、r)成立,则一致判定部603判定为关键字W一致。另一方面,关于(i=1,…,n)中的1个,如果Ti2=H(Ti1、r)不成立,则一致判定部603判定为关键字W不一致。
***实施方式的效果的说明***
如上所述,在本实施方式的隐匿检索系统中,不需要对在加密标签的生成中使用的逻辑式的长度(即逻辑式中包含的属性值的个数)设置制约,因此,能够实现能够进行更加灵活的访问控制的隐匿检索。
另外,也可以仅实施本实施方式中说明的步骤的一部分。
此外,也可以组合实施本实施方式中说明的步骤的至少一部分和本实施方式中未说明的步骤。
此外,也可以根据需要对本实施方式记载的结构和步骤进行变更。
***硬件结构的说明***
最后,对主密钥生成装置200、用户密钥生成装置300、陷门生成装置400、加密标签生成装置500和一致判定装置600的硬件结构例进行说明。
图16示出主密钥生成装置200、用户密钥生成装置300、陷门生成装置400、加密标签生成装置500和一致判定装置600的硬件结构例。
在图16中,主密钥生成装置200、用户密钥生成装置300、陷门生成装置400、加密标签生成装置500和一致判定装置600分别具有处理器1101。
处理器1101例如是CPU(Central Processing Unit:中央处理单元)。
处理器1101经由总线1102与多个硬件器件连接。处理器1101例如与ROM(ReadOnly Memory:只读存储器)1103、RAM(Random Access Memory:随机存取存储器)1104连接。此外,处理器1101也可以与通信板1105、显示器1111(显示装置)、键盘1112、鼠标1113连接。此外,处理器1101也可以与驱动器1114、磁盘装置1120连接。
处理器1101对这些硬件器件进行控制。
驱动器1114是对FD(Flexible Disk Drive:软磁碟机)、CD(Compact Disc:光盘)、DVD(Digital Versatile Disc:数字多功能盘)等存储介质进行读写的装置。
ROM1103、RAM1104、磁盘装置1120和驱动器1114是存储装置的一例。
键盘1112、鼠标1113和通信板1105是输入装置的一例。
显示器1111和通信板1105是输出装置的一例。
通信板1105以有线或无线的方式与LAN(Local Area Network:局域网)、互联网、电话线路等通信网连接。
在磁盘装置1120中存储有OS(Operating System:操作系统)1121、程序1122、文件1123。
在程序1122中包含执行在本实施方式中作为“~部”说明的功能的程序。程序(例如加密标签生成程序、一致判定程序)由处理器1101读出并执行。即,程序使计算机作为“~部”发挥功能,此外,使计算机执行“~部”的步骤和方法。
在文件1123中包含在本实施方式中说明的“~部”中使用的各种数据(输入、输出、判定结果、计算结果、处理结果等)。
在本实施方式中,结构图和流程图中包含的箭头主要表示数据或信号的输入输出。
根据流程图等说明的本实施方式的处理使用处理器1101、存储装置、输入装置、输出装置等硬件来执行。
在本实施方式中作为“~部”说明的内容也可以是“~电路”或“~装置”或“~设备”,此外,也可以是“~步骤”或“~过程”或“~处理”或“线路”。即,作为“~部”说明的内容可以通过固件、软件、硬件或它们的组合中的任意一方来安装。
此外,主密钥生成装置200、用户密钥生成装置300、陷门生成装置400、加密标签生成装置500和一致判定装置600分别也可以通过处理电路来实现。
处理电路例如是逻辑IC(Integrated Circuit:集成电路)、GA(Gate Array:门阵列)、ASIC(Application Specific Integrated Circuit:专用集成电路)、FPGA(FieldProgrammable Gate Array:现场可编程门阵列)。
该情况下,作为“~部”说明的内容分别作为处理电路的一部分来实现。
另外,在本说明书中,将处理器和处理电路的上位概念称作“处理线路”。
即,处理器和处理电路分别是“处理线路”的具体例。
标号说明
100:隐匿检索系统;101:网络;200:主密钥生成装置;201:比特长度取得部;202:密钥生成部;203:发送部;204:随机数值生成部;300:用户密钥生成装置;301:密钥接收部;302:属性值集合取得部;303:用户密钥生成部;304:发送部;305:随机数值生成部;400:陷门生成装置;401:密钥接收部;402:关键字取得部;403:陷门生成部;404:发送部;405:随机数值生成部;500:加密标签生成装置;501:密钥接收部;502:逻辑式取得部;503:关键字取得部;504:加密标签生成部;505:发送部;506:随机数值生成部;507:随机数值保持部;600:一致判定装置;601:加密标签接收部;602:陷门接收部;603:一致判定部;604:结果发送部;605:随机数值生成部;1101:处理器;1102:总线;1103:ROM;1104:RAM;1105:通信板;1111:显示器;1112:键盘;1113:鼠标;1114:驱动器;1120:磁盘装置;1121:OS;1122:程序;1123:文件。
Claims (8)
1.一种加密标签生成装置,该加密标签生成装置具有:
逻辑式取得部,其取得通过多个属性值和逻辑运算符的逻辑结构来表示许可隐匿检索的条件的逻辑式;以及
加密标签生成部,其对所述多个属性值分别设定反映所述逻辑结构的秘密分散值,使用对所述多个属性值设定的多个秘密分散值生成在所述隐匿检索中使用的加密标签。
2.根据权利要求1所述的加密标签生成装置,其中,
所述逻辑式取得部取得包含逻辑或运算符和逻辑与运算符中的至少任意一方作为所述逻辑运算符的逻辑式,
在所述逻辑式中包含所述逻辑或运算符的情况下,所述加密标签生成部对利用所述逻辑或运算符连接的2个以上的属性值即2个以上的逻辑或属性值分别设定反映所述2个以上的逻辑或属性值分别利用所述逻辑或运算符连接的秘密分散值,
在所述逻辑式中包含所述逻辑与运算符的情况下,所述加密标签生成部对利用所述逻辑与运算符连接的2个以上的属性值即2个以上的逻辑与属性值分别设定反映所述2个以上的逻辑与属性值分别利用所述逻辑与运算符连接的秘密分散值。
3.根据权利要求2所述的加密标签生成装置,其中,
所述加密标签生成装置还具有:
随机数值生成部,其生成随机数值;
随机数值保持部,其保持由所述随机数值生成部生成的随机数值作为保持随机数值,
在所述逻辑式中包含所述逻辑或运算符的情况下,所述加密标签生成部对所述2个以上的逻辑或属性值分别设定所述保持随机数值作为秘密分散值,
在所述逻辑式中包含所述逻辑与运算符的情况下,所述加密标签生成部使所述随机数值生成部生成新的随机数值,进行使用了所述新的随机数值和所述保持随机数值的运算而生成更加新的随机数值,对所述2个以上的逻辑与属性值分别设定所述新的随机数值和所述更加新的随机数值中的任意一方作为秘密分散值。
4.根据权利要求3所述的加密标签生成装置,其中,
在由所述随机数值生成部生成了所述新的随机数值且由所述加密标签生成部生成了所述更加新的随机数值的情况下,所述随机数值保持部利用所述新的随机数值和所述更加新的随机数值中的至少任意一方对所述保持随机数值进行更新。
5.根据权利要求3所述的加密标签生成装置,其中,
所述加密标签生成部使用基于公共密钥方式的主密钥、根据所述主密钥生成的用户密钥、所述隐匿检索的关键字、由所述随机数值生成部最初生成的随机数值即初始随机数值以及所述多个秘密分散值生成多个加密标签。
6.一种隐匿检索系统,该隐匿检索系统具有:
权利要求5所示的加密标签生成装置;
陷门生成装置,其使用多个陷门中公共的随机数值即公共随机数值、权利要求5所示的主密钥、用户密钥以及关键字生成所述多个陷门;以及
一致判定装置,其取得权利要求5所示的多个加密标签和所述多个陷门,使用所述多个加密标签和所述多个陷门计算权利要求5所示的多个秘密分散值,使用计算出的所述多个秘密分散值计算权利要求5所示的初始随机数值,使用计算出的所述初始随机数值计算所述公共随机数值,使用计算出的所述公共随机数值判定在所述多个加密标签的生成中使用的关键字和在所述多个陷门的生成中使用的关键字是否一致。
7.一种加密标签生成方法,其中,
计算机取得通过多个属性值和逻辑运算符的逻辑结构来表示许可隐匿检索的条件的逻辑式,
所述计算机对所述多个属性值分别设定反映所述逻辑结构的秘密分散值,使用对所述多个属性值设定的多个秘密分散值生成在所述隐匿检索中使用的加密标签。
8.一种加密标签生成程序,该加密标签生成程序使计算机执行以下处理:
逻辑式取得处理,取得通过多个属性值和逻辑运算符的逻辑结构来表示许可隐匿检索的条件的逻辑式;以及
加密标签生成处理,对所述多个属性值分别设定反映所述逻辑结构的秘密分散值,使用对所述多个属性值设定的多个秘密分散值生成在所述隐匿检索中使用的加密标签。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2021/022276 WO2022259515A1 (ja) | 2021-06-11 | 2021-06-11 | 暗号化タグ生成装置、秘匿検索システム、暗号化タグ生成方法及び暗号化タグ生成プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117413489A true CN117413489A (zh) | 2024-01-16 |
Family
ID=84424632
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180098791.4A Pending CN117413489A (zh) | 2021-06-11 | 2021-06-11 | 加密标签生成装置、隐匿检索系统、加密标签生成方法和加密标签生成程序 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20240045984A1 (zh) |
JP (1) | JP7378675B2 (zh) |
CN (1) | CN117413489A (zh) |
DE (1) | DE112021007462T5 (zh) |
WO (1) | WO2022259515A1 (zh) |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019142268A1 (ja) | 2018-01-17 | 2019-07-25 | 三菱電機株式会社 | 登録装置、検索操作装置、データ管理装置、登録プログラム、検索操作プログラムおよびデータ管理プログラム |
-
2021
- 2021-06-11 CN CN202180098791.4A patent/CN117413489A/zh active Pending
- 2021-06-11 DE DE112021007462.8T patent/DE112021007462T5/de active Pending
- 2021-06-11 WO PCT/JP2021/022276 patent/WO2022259515A1/ja active Application Filing
- 2021-06-11 JP JP2023526799A patent/JP7378675B2/ja active Active
-
2023
- 2023-10-17 US US18/380,916 patent/US20240045984A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
DE112021007462T5 (de) | 2024-02-08 |
JP7378675B2 (ja) | 2023-11-13 |
WO2022259515A1 (ja) | 2022-12-15 |
US20240045984A1 (en) | 2024-02-08 |
JPWO2022259515A1 (zh) | 2022-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9275250B2 (en) | Searchable encryption processing system | |
US8406422B2 (en) | Cryptographic module management apparatus, method, and program | |
CN111587452B (zh) | 登记装置、检索操作装置、数据管理装置和计算机能读取的存储介质 | |
US10872158B2 (en) | Secret search system, secret search method, and computer readable medium | |
US11831769B2 (en) | Registration device, server device, searchable encryption system, and searchable encryption method | |
JP2012164031A (ja) | データ処理装置及びデータ保管装置及びデータ処理方法及びデータ保管方法及びプログラム | |
JPWO2013108698A1 (ja) | 文字列がオートマトンに受理されるか否かを認証するシステム | |
JP6289768B2 (ja) | 暗号化装置、暗号化プログラム及び暗号化方法 | |
US11902418B2 (en) | Registration device, search operation device, and data management device | |
US11106740B2 (en) | Search device, search system, search method, and computer readable medium | |
CN117413489A (zh) | 加密标签生成装置、隐匿检索系统、加密标签生成方法和加密标签生成程序 | |
JP7016458B2 (ja) | 秘匿検索システム、秘匿検索方法、及び、秘匿検索プログラム | |
CN111602127A (zh) | 数据管理装置、检索装置、登记装置、数据管理方法和数据管理程序 | |
WO2020003859A1 (ja) | 情報処理装置および情報処理方法 | |
WO2015107561A1 (ja) | 検索システム、検索方法および検索プログラム | |
US20190163934A1 (en) | Registration destination determination device, registration device, searchable encryption system, registration destination determination method, and computer readable medium | |
JP6918253B2 (ja) | 秘匿検索システムおよび秘匿検索方法 |
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 |