CN111602127B - 数据管理装置、数据管理方法和计算机能读取的存储介质 - Google Patents

数据管理装置、数据管理方法和计算机能读取的存储介质 Download PDF

Info

Publication number
CN111602127B
CN111602127B CN201880085235.1A CN201880085235A CN111602127B CN 111602127 B CN111602127 B CN 111602127B CN 201880085235 A CN201880085235 A CN 201880085235A CN 111602127 B CN111602127 B CN 111602127B
Authority
CN
China
Prior art keywords
map
identifier
search
data
unit
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
Application number
CN201880085235.1A
Other languages
English (en)
Other versions
CN111602127A (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of CN111602127A publication Critical patent/CN111602127A/zh
Application granted granted Critical
Publication of CN111602127B publication Critical patent/CN111602127B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic 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/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • G06F21/645Protecting data integrity, e.g. using checksums, certificates or signatures using a third party
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system

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)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Bioethics (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

陷门取得部(314)取得通过按照每个标识符而不同的映射sk中的分配给标识符U’的映射sk_U’对检索字s进行转换而成的陷门t(s)。检索密文生成部(315)通过按照每个标识符而不同的映射f中的分配给标识符U’的映射f_U’,对由陷门取得部(314)取得的陷门t(s)进行转换,生成检索密文c(s)。分配给同一标识符的映射sk和映射f的合成映射为标识符公共的映射mk。

Description

数据管理装置、数据管理方法和计算机能读取的存储介质
技术领域
本发明涉及在加密的状态下检索数据的隐匿检索技术。
背景技术
隐匿检索是能够在加密的状态下检索数据的技术。在云服务开始普及的当前,能够廉价且无麻烦地开始利用的云存储器正变得流行。另一方面,在通过云对包含机密信息的数据进行管理的情况下,为了避免信息泄漏的风险,需要对数据进行加密保管。隐匿检索是如下技术:能够在不解码的情况下检索被加密的数据,因此能够兼顾安全性和功能性。
在隐匿检索中,使用2个被加密的关键字实现检索。第一个是与数据相关的关键字的密文,称作加密标签。第二个是要检索的关键字的密文,称作陷门。
在登记数据时,将加密后的数据和加密标签登记到存储器服务器中。加密标签与相关的数据或数据的标识符相关联地被作为加密索引保管。隐匿检索通过从加密索引中找出在不解码的情况下与检索者发送的陷门一致的加密标签,在不暴露数据、关键字的信息的情况下实现检索。
隐匿检索可以大致分成公共密钥型隐匿检索和公开密钥型隐匿检索。公共密钥型隐匿检索和公开密钥型隐匿检索具有如下的不同特征。
公开密钥型隐匿检索在加密标签和陷门的生成中使用不同的密钥,与此相对,公共密钥型隐匿检索在加密标签和陷门的生成中使用同一密钥。此外,公共密钥型隐匿检索能够比公开密钥型隐匿检索更高速地进行检索处理。
在专利文献1中记载有对密文进行转换并发送给用户。在专利文献1中,使用利用相同的密钥生成加密索引和陷门的公共密钥型隐匿检索。
在专利文献2中记载有如下技术:即使是利用不同的秘密密钥加密后的密文也能够进行比较。在专利文献2中,用于比较的密文的一部分被加密成不依赖于秘密密钥。
在非专利文献1中记载有基于多个检索者的公共密钥型隐匿检索技术。在非专利文献1中,全部用户使用相同的随机数r对关键字进行加密并进行检索。
现有技术文献
专利文献
专利文献1:日本特开2016-012897号公报
专利文献2:日本特开2015-022318号公报
非专利文献
非专利文献1:Reza Curtmola,Juan A.Garay,Seny Kamara,Rafail Ostrovsky,“Searchable symmetric encryption:improved definitions and efficientconstructions”,ACM Conference on Computer and Communications Security 2006,pp.79-88,2006.
发明内容
发明要解决的课题
在现有的公共密钥型隐匿检索中,在加密标签和陷门的生成中使用相同的密钥。因此,存在如下课题:在由多个用户使用公共密钥型隐匿检索的情况下,有可能产生加密标签和陷门的解码和由于伪造密钥引起的欺骗。
本发明的目的在于能够防止解码和欺骗。
用于解决课题的手段
本发明的数据管理装置具有:
陷门取得部,其取得通过按照每个标识符而不同的映射sk中的分配给标识符U’的映射sk_U’对检索字s进行转换而成的陷门t(s);以及
检索密文生成部,其通过按照每个标识符而不同的映射f中的分配给标识符U’的映射f_U’对由所述陷门取得部取得的所述陷门t(s)进行转换,生成检索密文c(s)。
发明效果
在本发明中,使用利用按照每个标识符而不同的映射sk转换而成的陷门t(s)。因此,能够防止解码和欺骗。
附图说明
图1是实施方式1的隐匿检索***10的结构图。
图2是实施方式1的密钥生成装置20的结构图。
图3是实施方式1的数据管理装置30的结构图。
图4是实施方式1的登记装置40的结构图。
图5是实施方式1的检索装置50的结构图。
图6是实施方式1的公共密钥生成处理的流程图。
图7是实施方式1的单独密钥生成处理的流程图。
图8是实施方式1的数据登记处理的流程图。
图9是实施方式1的数据检索处理的流程图。
图10是实施方式1的数据删除处理的流程图。
图11是变形例4的密钥生成装置20的结构图。
图12是变形例4的数据管理装置30的结构图。
图13是变形例4的登记装置40的结构图。
图14是变形例4的检索装置50的结构图。
具体实施方式
实施方式1
***结构的说明***
参照图1,说明实施方式1的隐匿检索***10的结构。
隐匿检索***10具有密钥生成装置20、数据管理装置30、1台以上的登记装置40和1台以上的检索装置50。
密钥生成装置20、数据管理装置30、登记装置40和检索装置50经由传输路径90而连接。作为具体例,传输路径90是互联网或LAN(Local Area Network:局域网)。
对各登记装置40和各检索装置50分配有标识符。
参照图2,说明实施方式1的密钥生成装置20的结构。
密钥生成装置20具有处理器21、内存22、存储器23和通信接口24这样的硬件。处理器21经由信号线而与其他硬件连接,对这些其他硬件进行控制。
作为功能结构要素,密钥生成装置20具有参数取得部211、密钥生成部212和密钥发送部213。密钥生成装置20的各功能结构要素的功能通过软件来实现。
在存储器23中存储有实现密钥生成装置20的各功能结构要素的功能的程序。该程序被处理器21读入到内存22,由处理器21执行。由此,实现密钥生成装置20的各功能结构要素的功能。
此外,存储器23实现密钥存储部231的功能。
参照图3,说明实施方式1的数据管理装置30的结构。
数据管理装置30具有处理器31、内存32、存储器33和通信接口34这样的硬件。处理器31经由信号线而与其他硬件连接,对这些其他硬件进行控制。
作为功能结构要素,数据管理装置30具有密钥取得部311、数据取得部312、保管标签生成部313、陷门取得部314、检索密文生成部315、检索部316和删除部317。数据管理装置30的各功能结构要素的功能通过软件来实现。
在存储器33中存储有实现数据管理装置30的各功能结构要素的功能的程序。该程序被处理器31读入到内存32,由处理器31执行。由此,实现数据管理装置30的各功能结构要素的功能。
此外,存储器33实现密钥存储部331和数据存储部332的功能。
参照图4,说明实施方式1的登记装置40的结构。
登记装置40具有处理器41、内存42、存储器43和通信接口44这样的硬件。处理器41经由信号线而与其他硬件连接,对这些其他硬件进行控制。
作为功能结构要素,登记装置40具有密钥取得部411、数据取得部412、加密标签生成部413、加密部414和数据发送部415。登记装置40的各功能结构要素的功能通过软件来实现。
在存储器43中存储有实现登记装置40的各功能结构要素的功能的程序。该程序被处理器41读入到内存42,由处理器41执行。由此,实现登记装置40的各功能结构要素的功能。
此外,存储器43实现密钥存储部431的功能。
参照图5,说明实施方式1的检索装置50的结构。
检索装置50具有处理器51、内存52、存储器53和通信接口54这样的硬件。处理器51经由信号线而与其他硬件连接,对这些其他硬件进行控制。
作为功能结构要素,检索装置50具有密钥取得部511、检索字取得部512、陷门生成部513和检索委托部514。检索装置50的各功能结构要素的功能通过软件来实现。
在存储器53中存储有实现检索装置50的各功能结构要素的功能的程序。该程序被处理器51读入到内存52,由处理器51执行。由此,实现检索装置50的各功能结构要素的功能。
此外,存储器53实现密钥存储部531的功能。
处理器21、31、41、51是进行运算处理的IC(Integrated Circuit:集成电路)。作为具体例,处理器21、31、41、51是CPU(Central Processing Unit:中央处理单元)、DSP(Digital Signal Processor:数字信号处理器)和GPU(Graphics Processing Unit:图形处理单元)。
内存22、32、42、52是临时存储数据的存储装置。作为具体例,内存22、32、42、52是SRAM(Static Random Access Memory:静态随机存取存储器)和DRAM(Dynamic RandomAccess Memory:动态随机存取存储器)。
存储器23、33、43、53是保管数据的存储装置。作为具体例,存储器23、33、43、53是HDD(Hard Disk Drive:硬盘驱动器)。此外,存储器23、33、43、53也可以是SD(注册商标,Secure Digital:安全数字)存储卡、CF(CompactFlash:致密闪存,注册商标)、NAND闪存、软盘、光盘、压缩盘、Blu-ray(注册商标)盘、DVD(Digital Versatile Disk:数字多功能盘)这样的移动存储介质。
通信接口24、34、44、54是用于与外部装置进行通信的接口。作为具体例,通信接口24、34、44、54是Ethernet(注册商标)、USB(Universal Serial Bus:通用串行总线)、HDMI(注册商标,High-Definition Multimedia Interface:高清晰度多媒体接口)的端口。
在图2中,仅示出一个处理器21。但是,密钥生成装置20也可以具有替代处理器21的多个处理器。同样,数据管理装置30也可以具有替代处理器31的多个处理器。登记装置40也可以具有替代处理器41的多个处理器。检索装置50也可以具有替代处理器51的多个处理器。
这些多个处理器分担执行实现各功能结构要素的功能的程序。与处理器21、31、41、51同样,各个处理器是进行运算处理的IC。
***动作的说明***
参照图6~图10,说明实施方式1的隐匿检索***10的动作。
实施方式1的隐匿检索***10的动作中的密钥生成装置20的动作相当于实施方式1的密钥生成方法。此外,密钥生成装置20的动作相当于实施方式1的密钥生成程序的处理。
实施方式1的隐匿检索***10的动作中的数据管理装置30的动作相当于实施方式1的数据管理方法。此外,数据管理装置30的动作相当于实施方式1的数据管理程序的处理。
实施方式1的隐匿检索***10的动作中的登记装置40的动作相当于实施方式1的登记方法。此外,登记装置40的动作相当于实施方式1的登记程序的处理。
实施方式1的隐匿检索***10的动作中的检索装置50的动作相当于实施方式1的检索方法。此外,检索装置50的动作相当于实施方式1的检索程序的处理。
参照图6,说明实施方式1的公共密钥生成处理。
公共密钥生成处理由密钥生成装置20执行。
(步骤S11:参数取得处理)
参数取得部211取得参数λ。
具体而言,参数取得部211经由通信接口24取得从外部装置发送的参数λ。或者,参数取得部211取得通过经由通信接口24而连接的输入装置输入的参数λ。参数取得部211将参数λ写入到内存22。
(步骤S12:公共密钥生成处理)
密钥生成部212生成密钥K2和映射mk。
具体而言,密钥生成部212从内存22读出参数λ。密钥生成部212以参数λ为输入,通过随机数生成器生成随机的密钥K2。密钥生成部212任意地生成映射mk。密钥生成部212将密钥K2和映射mk写入到内存22。
密钥K2是在全部登记装置40和检索装置50中公共的密钥。即,密钥K2是在分配给登记装置40和检索装置50的全部标识符中公共的密钥。
映射mk是在全部登记装置40和检索装置50中公共的映射。即,映射mk是在分配给登记装置40和检索装置50的全部标识符中公共的映射。
(步骤S13:密钥存储处理)
密钥生成部212从内存22读出在步骤S11中取得的参数λ以及在步骤S12中生成的密钥K2和映射mk。密钥生成部212将参数λ、密钥K2和映射mk写入到密钥存储部231。密钥K2和映射mk是秘密信息,因此,被严密地保管成***露到外部。
参照图7,说明实施方式1的单独密钥生成处理。
单独密钥生成处理由密钥生成装置20、数据管理装置30、登记装置40或检索装置50执行。具体而言,步骤S21~步骤S23的处理由密钥生成装置20执行。步骤S24的处理由数据管理装置30执行。步骤S25的处理由登记装置40或检索装置50执行。
可以在从登记装置40或检索装置50向密钥生成装置20发送了单独密钥的生成请求的情况下执行单独密钥生成处理。或者,也可以在任意的定时执行单独密钥生成处理。
(步骤S21:标识符取得处理)
密钥生成装置20的参数取得部211取得作为处理对象的装置的标识符。
具体而言,参数取得部211经由通信接口24取得从外部装置发送的标识符。或者,参数取得部211取得通过经由通信接口24而连接的输入装置输入的标识符。参数取得部211将标识符写入到内存22。
这里,设已取得“U”作为标识符。
(步骤S22:单独密钥生成处理)
密钥生成部212生成密钥K1、映射sk和映射f。这里,密钥生成部212生成与在步骤S21中取得的标识符U对应的密钥K1_U、映射sk_U和映射f_U。
具体而言,密钥生成部212从内存22读出在步骤S21中取得的标识符U。密钥生成部212从密钥存储部231读出在公共密钥生成处理中存储的参数λ和映射mk。密钥生成部212以标识符U和参数λ为输入,通过随机数生成器生成随机的密钥K1_U。密钥生成部212以映射mk为输入,生成映射sk_U和映射f_U。这时,密钥生成部212生成映射sk_U和映射f_U,以使对映射sk_U与映射f_U进行合成后的合成映射为映射mk。即,mk=f_U·sk_U。密钥生成部212将密钥K1_U、映射sk_U和映射f_U写入到内存22。
说明映射sk_U和映射f_U的生成方法的一例。
密钥生成部212针对位数为n的组的元x,设映射mk为mk(x)=xc。密钥生成部212随机地选择满足ab=c(mod n)的整数a、b。密钥生成部212设映射sk_U=xa,设映射f_U=xb
密钥K1是按照每个登记装置40、每个检索装置50而不同的密钥。即,密钥K1是按照分配给登记装置40和检索装置50的每个标识符而不同的密钥。
映射sk和映射f是按照每个登记装置40、每个检索装置50而不同的映射。即,映射sk和映射f是按照分配给登记装置40和检索装置50的每个标识符而不同的映射。此外,分配给同一标识符的映射sk和映射f的合成映射为标识符公共的映射mk。
(步骤S23:密钥发送处理)
密钥发送部213从内存22读出在公共密钥生成处理中存储的密钥K2。从内存22读出在步骤S22中生成的密钥K1_U、映射sk_U和映射f_U。
密钥发送部213经由通信接口24将映射f_U发送到数据管理装置30。此外,密钥发送部213经由通信接口24将密钥K1_U、密钥K2和映射sk_U发送到与标识符U对应的登记装置40或检索装置50。
(步骤S24:第1密钥取得处理)
数据管理装置30的密钥取得部311经由通信接口34接收在步骤S23中发送的映射f_U。密钥取得部311将接收到的映射f_U写入到密钥存储部331。映射f_U是秘密信息,因此,被严密地保管成***露到外部。
(步骤S25:第2密钥取得处理)
与标识符U对应的登记装置40或检索装置50工作。
在登记装置40与标识符U对应的情况下,密钥取得部411经由通信接口44接收在步骤S23中发送的密钥K1_U、密钥K2和映射sk_U。密钥取得部411将接收到的密钥K1_U、密钥K2和映射sk_U写入到密钥存储部431。
在检索装置50与标识符U对应的情况下,密钥取得部511经由通信接口54接收在步骤S23中发送的密钥K1_U、密钥K2和映射sk_U。密钥取得部511将接收到的密钥K1_U、密钥K2和映射sk_U写入到密钥存储部531。
密钥K1_U、密钥K2和映射sk_U是秘密信息,因此,被严密地保管成***露到外部。另外,在检索装置50与标识符U对应的情况下,也可以不发送密钥K1_U。
参照图8,说明实施方式1的数据登记处理。
数据登记处理由数据管理装置30和登记装置40执行。具体而言,步骤S31~步骤S34的处理由登记装置40执行。步骤S35~步骤S37的处理由数据管理装置30执行。
这里,设由标识符U的登记装置40执行数据登记处理。
(步骤S31:数据取得处理)
登记装置40的数据取得部412取得登记对象的数据D、作为能够识别数据D的名称的数据名称ID(D)和用于检索数据D的关键字w的集合W(D)。
具体而言,数据取得部412经由通信接口44取得从外部装置发送的数据D、数据名称ID(D)和集合W(D)。或者,数据取得部412取得通过经由通信接口24而连接的输入装置输入的数据D、数据名称ID(D)和集合W(D)。数据取得部412将数据D、数据名称ID(D)和集合W(D)写入到内存42。
(步骤S32:加密标签生成处理)
加密标签生成部413生成关于在步骤S31中取得的集合W(D)中包含的各关键字w的加密标签c。
具体而言,加密标签生成部413从内存42读出数据名称ID(D)和集合W(D)。此外,加密标签生成部413从密钥存储部431读出密钥K2和映射sk_U。加密标签生成部413以集合W(D)中包含的各关键字w为对象,对对象关键字w进行加密,生成加密标签c。这里,加密标签生成部413计算c=sk_U(E(K2,w)),生成加密标签c。其中,E是加密函数。作为加密函数能够使用如下函数:AES(Advanced Encryption Standardd:高级加密标准)这样的公共密钥加密方式的加密函数、HMAC(Hash-based Message Authentication Code:基于哈希的消息验证码)这样的消息认证函数、SHA-256(Secure Hash Algorithm-256:安全哈希算法-256)这样的哈希函数。即,加密标签生成部413使用加密函数E,利用密钥K2对对象关键字w进行加密,通过映射sk_U进行转换,生成加密标签c。
加密标签生成部413将数据名称ID(D)与加密标签c的集合C(D)的组作为登记加密数据R(D)写入到内存42。
另外,在E(K2,w)不是可输入到映射sk_U的值的情况下,进行任意编码而转换成可输入到映射sk_U的值。
(步骤S33:加密处理)
加密部414对在步骤S31中取得的数据D进行加密,生成加密数据B(D)。
具体而言,加密部414从内存42读出数据D和数据名称ID(D)。此外,加密部414从密钥存储部431读出密钥K1_U。加密部414对数据D进行加密,生成加密数据B(D)。这里,加密部414计算B(D)=E(K1_U,D),生成加密数据B(D)。其中,E是加密函数。与步骤S32同样,作为加密函数能够使用如下函数:AES这样的公共密钥加密方式的加密函数、HMAC这样的消息认证函数和SHA-256这样的哈希函数。此外,作为加密函数,也可以是基于ID的加密和基于属性的加密这样的加密函数。即,加密部414使用加密函数E,利用密钥K1_U对数据D进行加密,生成加密数据B(D)。加密部414将加密数据B(D)写入到内存42。
(步骤S34:数据发送处理)
数据发送部415从内存42读出在步骤S32中生成的登记加密数据R(D)和在步骤S33中生成的加密数据B(D)。数据发送部415经由通信接口44而将登记加密数据R(D)、加密数据B(D)发送到数据管理装置30。
(步骤S35:数据接收处理)
数据管理装置30的数据取得部312经由通信接口34接收在步骤S34中发送的登记加密数据R(D)和加密数据B(D)。数据取得部312将登记加密数据R(D)和加密数据B(D)写入到内存32。
(步骤S36:保管标签生成处理)
保管标签生成部313生成关于在步骤S35中接收到的登记加密数据R(D)的集合C(D)中包含的各加密标签c的保管标签c’。
具体而言,保管标签生成部313从内存32读出登记加密数据R(D)。此外,保管标签生成部313从密钥存储部331读出映射f_U。保管标签生成部313以登记加密数据R(D)的集合C(D)中包含的各加密标签c为对象,通过映射f_U对对象加密标签c进行转换,生成保管标签c’。即,保管标签生成部313计算c’=f_U(c),生成保管标签c’。
保管标签生成部313将数据名称ID(D)与保管标签c’的集合C’(D)的组作为保管加密数据I(D)写入内存32。
保管标签c’是通过映射sk_U对被加密的关键字w进行转换,进而通过映射f_U进行转换而生成的。分配给同一标识符的映射sk和映射f的合成映射为标识符公共的映射mk。因此,无论由哪个登记装置40执行了数据登记处理的情况下,保管标签c’都是通过映射mk对被加密的关键字w进行转换而生成的。
(步骤S37:索引追加处理)
保管标签生成部313将在步骤S36中生成的保管加密数据I(D)追加到加密索引I。加密索引I存储于数据存储部332。此外,保管标签生成部313将在步骤S35中接收到的加密数据B(D)写入到数据存储部332。
参照图9,说明实施方式1的数据检索处理。
数据检索处理由数据管理装置30和检索装置50执行。具体而言,步骤S41~步骤S43和步骤S48的处理由检索装置50执行。步骤S44~步骤S47的处理由数据管理装置30执行。
这里,设由标识符U’的检索装置50执行数据检索处理。
(步骤S41:检索字取得处理)
检索装置50的检索字取得部512取得作为用于检索数据D的关键字的检索字s。
具体而言,检索字取得部512经由通信接口44取得从外部装置发送的检索字s。或者,检索字取得部512取得通过经由通信接口24而连接的输入装置输入的检索字s。检索字取得部512将检索字s写入到内存52。
(步骤S42:陷门生成处理)
陷门生成部513生成在步骤S41中取得的检索字s的陷门t(s)。
具体而言,陷门生成部513从内存52读出检索字s。此外,陷门生成部513从密钥存储部531读出密钥K2和映射sk_U’。陷门生成部513对检索字s进行加密,生成陷门t(s)。这里,陷门生成部513计算t(s)=sk_U’(E(K2,s)),生成陷门t(s)。其中,E是与在步骤S32中使用的加密函数相同的加密函数。即,陷门生成部513使用加密函数E,利用密钥K2对检索字s进行加密,通过映射sk_U进行转换,生成陷门t(s)。陷门生成部513将陷门t(s)写入到内存52。
另外,在E(K2,s)不是可输入到映射sk_U的值的情况下,进行与图8的步骤S32相同的编码而转换成可输入到映射sk_U的值。
(步骤S43:检索委托处理)
检索委托部514从内存52读出在步骤S42中生成的陷门t(s)。检索委托部514经由通信接口54将陷门t(s)发送到数据管理装置30。
(步骤S44:检索委托接收处理)
数据管理装置30的陷门取得部314经由通信接口34接收在步骤S43中发送的陷门t(s)。陷门取得部314将陷门t(s)写入到内存32。
(步骤S45:检索密文生成处理)
检索密文生成部315根据在步骤S44中取得的陷门t(s),生成检索密文c(s)。
具体而言,检索密文生成部315从内存32读出陷门t(s)。此外,检索密文生成部315从密钥存储部331读出映射f_U’。检索密文生成部315对陷门t(s)进行映射f_U’转换,生成检索密文c(s)。即,检索密文生成部315计算c(s)=f_U’(t(s)),生成检索密文c(s)。检索密文生成部315将检索密文c(s)写入到内存32。
检索密文c(s)是通过映射sk_U对被加密的检索字s进行转换,进而通过映射f_U’进行转换而生成的。分配给同一标识符的映射sk和映射f的合成映射为标识符公共的映射mk。因此,无论由哪个检索装置50执行了数据检索处理的情况下,检索密文c(s)都是通过映射mk对被加密的检索字s进行转换而生成的。
(步骤S46:检索处理)
检索部316从加密索引I提取包含在步骤S45中生成的检索密文c(s)作为保管标签c’的保管加密数据I(D)。
具体而言,检索部316从内存32读出检索密文c(s)。检索部316在数据存储部332中存储的保管加密数据I(D)中,使用二分搜索和哈希表这样的技术提取包含检索密文c(s)作为保管标签c’的保管加密数据I(D)。检索部316确定提取出的保管加密数据I(D)中包含的数据名称ID(D)表示的加密数据B(D)。检索部316将已确定的加密数据B(D)的集合作为检索结果S(s)写入到内存32。
另外,也可以设提取出的保管加密数据I(D)中包含的数据名称ID(D)的集合为检索结果S(s)。
如上所述,无论由哪个登记装置40执行了数据登记处理的情况下,保管标签c’都是通过映射mk对被加密的关键字w进行转换而生成的。无论由哪个检索装置50执行了数据检索处理的情况下,检索密文c(s)都是通过映射mk对被加密的检索字s进行转换而生成的。因此,无论由哪个检索装置50执行的数据检索处理中,都能够以由全部登记装置40登记的数据为对象进行检索。
(步骤S47:结果发送处理)
检索部316从内存32读出在步骤S46中写入的检索结果S(s)。检索部316经由通信接口34将检索结果S(s)发送到检索装置50。
(步骤S48:结果接收处理)
检索装置50的检索委托部514经由通信接口54接收在步骤S47中发送的检索结果S(s)。检索委托部514经由通信接口54将检索结果S(s)输出到显示装置等。
参照图10,说明实施方式1的数据删除处理。
数据删除处理由数据管理装置30和登记装置40执行。具体而言,步骤S51和步骤S52的处理由登记装置40执行。步骤S53和步骤S54的处理由数据管理装置30执行。
(步骤S51:删除名称取得处理)
数据取得部412取得删除对象的数据名称ID(D)。
具体而言,数据取得部412经由通信接口44取得从外部装置发送的数据名称ID(D)。或者,数据取得部412取得通过经由通信接口24而连接的输入装置输入的数据名称ID(D)。数据取得部412将数据名称ID(D)写入到内存42。
(步骤S52:删除委托处理)
数据发送部415从内存42读出在步骤S51中写入的数据名称ID(D)。数据发送部415经由通信接口44将数据名称ID(D)发送到数据管理装置30。
(步骤S53:删除委托接收处理)
数据管理装置30的删除部317经由通信接口34接收在步骤S52中发送的数据名称ID(D)。删除部317将数据名称ID(D)写入到内存32。
(步骤S54:删除处理)
删除部317从内存32读出在步骤S53中写入的数据名称ID(D)。删除部317从数据存储部332删除数据名称ID(D)表示的加密数据B(D)。此外,删除部317从加密索引I删除包含数据名称ID(D)的保管加密数据I(D)。
***实施方式1的效果***
如上所述,实施方式1的隐匿检索***10的各登记装置40和各检索装置50使用不同的密钥K1和不同的映射sk。因此,能够防止加密标签和陷门的解码和欺骗。
此外,实施方式1的隐匿检索***10在数据登记处理和数据检索处理中使用映射f进行转换。因此,数据管理装置30从密钥存储部331删除关于对象标识符U*的映射f_U*,由此,能够使分配有对象标识符U*的登记装置40或检索装置50的权限失效。
此外,在实施方式1的隐匿检索***10中,能够与现有的公共密钥型隐匿检索同样,高速地执行图9的步骤S46的检索处理。陷门t(s)的转换需要处理时间,但是,陷门t(s)的转换为1次或固定次数的计算量。因此,能够比现有的公开密钥型隐匿检索更高速地进行数据的检索。
此外,无论由哪个检索装置50执行的数据检索处理中,实施方式1的隐匿检索***10都能够以由全部登记装置40登记的数据为对象进行检索。即,能够与登记装置40和检索装置50无关地使加密索引I共享。因此,存储加密索引I的存储器33的容量较少即可。
***其他结构***
<变形例1>
在实施方式1中,是密钥生成装置20生成密钥K2、映射mk、密钥K1、映射sk和映射f。但是,也可以将生成密钥K2、映射mk、密钥K1、映射sk和映射f的装置分成多个装置。
<变形例2>
在实施方式1中,是密钥生成装置20将映射sk_U发送到登记装置40和检索装置50。取而代之,也可以是密钥生成装置20向登记装置40和检索装置50中的任意一方发送映射mk来替代映射sk_U。
在密钥生成装置20将映射mk发送到登记装置40的情况下,在图8的步骤S32中,加密标签生成部413替代映射sk_U而使用映射mk生成加密标签c。然后,省略图8的步骤S36的处理。
在密钥生成装置20将映射mk发送到检索装置50的情况下,在图9的步骤S42中,陷门生成部513替代映射sk_U而使用映射mk生成陷门t(s)。然后,省略图9的步骤S45。
<变形例3>
在实施方式1中,是加密数据B(D)和加密索引I存储于由数据管理装置30的存储器33实现的数据存储部332。但是,加密数据B(D)和加密索引I也可以存储于数据管理装置30外部的存储装置。换言之,数据存储部332也可以设置于数据管理装置30外部的存储装置。
<变形例4>
在实施方式1中,是通过软件实现各功能结构要素。但是,作为变形例4,也可以通过硬件实现功能结构要素。关于该变形例4,说明与实施方式1不同之处。
参照图11,说明变形例4的密钥生成装置20的结构。
在通过硬件实现功能的情况下,密钥生成装置20替代处理器21、内存22和存储器23而具有电子电路25。电子电路25是实现密钥生成装置20的功能结构要素、内存22和存储器23的功能的专用电路。
参照图12,说明变形例4的数据管理装置30的结构。
在通过硬件实现功能的情况下,数据管理装置30替代处理器31、内存32和存储器33而具有电子电路35。电子电路35是实现数据管理装置30的功能结构要素、内存32和存储器33的功能的专用电路。
参照图13,说明变形例4的登记装置40的结构。
在通过硬件实现功能的情况下,登记装置40替代处理器41、内存42和存储器43而具有电子电路45。电子电路45是实现登记装置40的功能结构要素、内存42和存储器43的功能的专用电路。
参照图14,说明变形例4的检索装置50的结构。
在通过硬件实现功能的情况下,检索装置50替代处理器51、内存52和存储器53而具有电子电路55。电子电路55是实现检索装置50的功能结构要素、内存52和存储器53的功能的专用电路。
电子电路25、35、45、55假设是单一电路、复合电路、程序化的处理器、并行程序化的处理器、逻辑IC、GA(Gate Array:门阵列)、ASIC(Application Specific IntegratedCircuit:面向特定用途的集成电路)、FPGA(Field-Programmable Gate Array:现场可编程门阵列)。
可以通过一个电子电路25实现密钥生成装置20的各功能结构要素的功能,也可以使各功能结构要素的功能分散到多个电子电路25中实现。同样,数据管理装置30、登记装置40和检索装置50分别可以通过一个电子电路35、45、55实现各功能结构要素的功能,也可以使各功能结构要素的功能分散到多个电子电路35、45、55中实现。
<变形例5>
作为变形例5,也可以通过硬件实现一部分功能,通过软件实现其他功能。即,也可以通过硬件实现各功能结构要素中的一部分功能,通过软件实现其他功能。
将处理器21、31、41、51、内存22、32、42、52、存储器23、33、43、53和电子电路25、35、45、55称作处理电路。即,各功能结构要素的功能通过处理电路实现。
标号说明
10:隐匿检索***;20:密钥生成装置;21:处理器;22:内存;23:存储器;24:通信接口;25:电子电路;211:参数取得部;212:密钥生成部;213:密钥发送部;231:密钥存储部;30:数据管理装置;31:处理器;32:内存;33:存储器;34:通信接口;35:电子电路;311:密钥取得部;312:数据取得部;313:保管标签生成部;314:陷门取得部;315:检索密文生成部;316:检索部;317:删除部;331:密钥存储部;332:数据存储部;40:登记装置;41:处理器;42:内存;43:存储器;44:通信接口;45:电子电路;411:密钥取得部;412:数据取得部;413:加密标签生成部;414:加密部;415:数据发送部;431:密钥存储部;50:检索装置;51:处理器;52:内存;53:存储器;54:通信接口;55:电子电路;511:密钥取得部;512:检索字取得部;513:陷门生成部;514:检索委托部;531:密钥存储部;90:传输路径。

Claims (4)

1.一种数据管理装置,该数据管理装置具有:
陷门取得部,其取得通过按照每个标识符而不同的映射sk中的分配给标识符U’的映射sk_U’对检索字s进行转换而成的陷门t(s);
检索密文生成部,其通过按照每个标识符而不同的映射f中的分配给标识符U’的映射f_U’,对由所述陷门取得部取得的所述陷门t(s)进行转换,生成检索密文c(s);
数据取得部,其取得通过按照每个标识符而不同的映射sk中的分配给标识符U的映射sk_U对关键字w进行转换而成的加密标签c;
保管标签生成部,其通过按照每个标识符而不同的映射f中的分配给标识符U的映射f_U,对由所述数据取得部取得的所述加密标签c进行转换,生成保管标签c’;以及
检索部,其确定与所述检索密文c(s)一致的所述保管标签c’,
分配给同一标识符的所述映射sk和所述映射f的合成映射为标识符公共的映射mk。
2.根据权利要求1所述的数据管理装置,其中,
所述保管标签c’被写入到数据存储部,
所述检索部从所述数据存储部中存储的保管标签c’中,检索与由所述检索密文生成部生成的所述检索密文c(s)对应的保管标签c’。
3.一种数据管理方法,其中,
数据管理装置的陷门取得部取得通过按照每个标识符而不同的映射sk中的分配给标识符U’的映射sk_U’对检索字s进行转换而成的陷门t(s),
所述数据管理装置的检索密文生成部通过按照每个标识符而不同的映射f中的分配给标识符U’的映射f_U’对所述陷门t(s)进行转换,生成检索密文c(s),
所述数据管理装置的数据取得部取得通过按照每个标识符而不同的映射sk中的分配给标识符U的映射sk_U对关键字w进行转换而成的加密标签c,
所述数据管理装置的保管标签生成部通过按照每个标识符而不同的映射f中的分配给标识符U的映射f_U对所述加密标签c进行转换,生成保管标签c’,
所述数据管理装置的检索部确定与所述检索密文c(s)一致的所述保管标签c’,
分配给同一标识符的所述映射sk和所述映射f的合成映射为标识符公共的映射mk。
4.一种存储有数据管理程序的计算机能读取的存储介质,该数据管理程序使计算机作为数据管理装置发挥功能,该数据管理装置执行以下处理:
陷门取得处理,取得通过按照每个标识符而不同的映射sk中的分配给标识符U’的映射sk_U’对检索字s进行转换而成的陷门t(s);
检索密文生成处理,通过按照每个标识符而不同的映射f中的分配给标识符U’的映射f_U’,对通过所述陷门取得处理而取得的所述陷门t(s)进行转换,生成检索密文c(s);
数据取得处理,取得通过按照每个标识符而不同的映射sk中的分配给标识符U的映射sk_U对关键字w进行转换而成的加密标签c;
保管标签生成处理,通过按照每个标识符而不同的映射f中的分配给标识符U的映射f_U,对通过所述数据取得处理而取得的所述加密标签c进行转换,生成保管标签c’;以及
检索处理,确定与所述检索密文c(s)一致的所述保管标签c’,
分配给同一标识符的所述映射sk和所述映射f的合成映射为标识符公共的映射mk。
CN201880085235.1A 2018-01-17 2018-01-17 数据管理装置、数据管理方法和计算机能读取的存储介质 Active CN111602127B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2018/001225 WO2019142265A1 (ja) 2018-01-17 2018-01-17 データ管理装置、検索装置、登録装置、データ管理方法及びデータ管理プログラム

Publications (2)

Publication Number Publication Date
CN111602127A CN111602127A (zh) 2020-08-28
CN111602127B true CN111602127B (zh) 2023-05-16

Family

ID=65228949

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880085235.1A Active CN111602127B (zh) 2018-01-17 2018-01-17 数据管理装置、数据管理方法和计算机能读取的存储介质

Country Status (5)

Country Link
US (1) US20210067317A1 (zh)
EP (1) EP3731107B1 (zh)
JP (1) JP6462968B1 (zh)
CN (1) CN111602127B (zh)
WO (1) WO2019142265A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019142268A1 (ja) * 2018-01-17 2019-07-25 三菱電機株式会社 登録装置、検索操作装置、データ管理装置、登録プログラム、検索操作プログラムおよびデータ管理プログラム

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013017017A (ja) * 2011-07-04 2013-01-24 Nippon Telegr & Teleph Corp <Ntt> 紛失通信システム、紛失通信方法、およびプログラム
CN103329478A (zh) * 2011-01-18 2013-09-25 三菱电机株式会社 密码***、密码***的密码处理方法、加密装置、加密程序、解密装置、解密程序、设置装置、设置程序、密钥生成装置、密钥生成程序、密钥移交装置以及密钥移交程序
CN103329184A (zh) * 2011-01-13 2013-09-25 三菱电机株式会社 数据处理装置以及数据保管装置
JP2014096692A (ja) * 2012-11-09 2014-05-22 Fujitsu Ltd 情報分析システム及び情報分析方法
CN104081390A (zh) * 2012-01-25 2014-10-01 三菱电机株式会社 数据检索装置、数据检索方法、数据检索程序、数据登记装置、数据登记方法、数据登记程序以及信息处理装置
CN104798339A (zh) * 2013-01-12 2015-07-22 三菱电机株式会社 密钥生成装置、密钥生成程序、隐匿检索***和密钥发布方法
CN104995621A (zh) * 2013-02-25 2015-10-21 三菱电机株式会社 服务器装置、隐匿检索程序、记录介质以及隐匿检索***
CN105210133A (zh) * 2013-05-15 2015-12-30 三菱电机株式会社 加密***、加密方法以及加密程序
CN107077469A (zh) * 2014-10-21 2017-08-18 三菱电机株式会社 服务器装置、检索***、终端装置、检索方法、服务器程序以及终端程序
WO2017221308A1 (ja) * 2016-06-20 2017-12-28 三菱電機株式会社 データ管理装置、データ管理方法、データ管理プログラム、検索装置、検索方法及び検索プログラム
EP3264314A1 (en) * 2016-06-30 2018-01-03 Huawei Technologies Co., Ltd. System and method for searching over encrypted data

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5441726B2 (ja) * 2010-01-14 2014-03-12 三菱電機株式会社 情報処理システム及び管理装置及びサーバ装置及び情報処理装置
JP6171649B2 (ja) 2013-07-16 2017-08-02 日本電気株式会社 暗号化装置、復号装置、暗号化方法および暗号化プログラム
JP6348004B2 (ja) 2014-06-30 2018-06-27 Kddi株式会社 暗号化データ管理システム、プロキシサーバ、暗号化データ管理方法およびコンピュータプログラム
US20170262546A1 (en) * 2014-07-30 2017-09-14 Hewlett Packard Enterprise Development Lp Key search token for encrypted data
US9977918B2 (en) * 2015-09-30 2018-05-22 Robert Bosch Gmbh Method and system for verifiable searchable symmetric encryption

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103329184A (zh) * 2011-01-13 2013-09-25 三菱电机株式会社 数据处理装置以及数据保管装置
CN103329478A (zh) * 2011-01-18 2013-09-25 三菱电机株式会社 密码***、密码***的密码处理方法、加密装置、加密程序、解密装置、解密程序、设置装置、设置程序、密钥生成装置、密钥生成程序、密钥移交装置以及密钥移交程序
JP2013017017A (ja) * 2011-07-04 2013-01-24 Nippon Telegr & Teleph Corp <Ntt> 紛失通信システム、紛失通信方法、およびプログラム
CN104081390A (zh) * 2012-01-25 2014-10-01 三菱电机株式会社 数据检索装置、数据检索方法、数据检索程序、数据登记装置、数据登记方法、数据登记程序以及信息处理装置
JP2014096692A (ja) * 2012-11-09 2014-05-22 Fujitsu Ltd 情報分析システム及び情報分析方法
CN104798339A (zh) * 2013-01-12 2015-07-22 三菱电机株式会社 密钥生成装置、密钥生成程序、隐匿检索***和密钥发布方法
CN104995621A (zh) * 2013-02-25 2015-10-21 三菱电机株式会社 服务器装置、隐匿检索程序、记录介质以及隐匿检索***
CN105210133A (zh) * 2013-05-15 2015-12-30 三菱电机株式会社 加密***、加密方法以及加密程序
CN107077469A (zh) * 2014-10-21 2017-08-18 三菱电机株式会社 服务器装置、检索***、终端装置、检索方法、服务器程序以及终端程序
WO2017221308A1 (ja) * 2016-06-20 2017-12-28 三菱電機株式会社 データ管理装置、データ管理方法、データ管理プログラム、検索装置、検索方法及び検索プログラム
EP3264314A1 (en) * 2016-06-30 2018-01-03 Huawei Technologies Co., Ltd. System and method for searching over encrypted data

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Haijiang Wang.Secure and efficient encrypted keyword search for multi-user setting in cloud computing.《Peer-to-Peer Networking and Applications》.2018,全文. *
刘振华.支持关键词搜索的属性代理重加密方案.《电子与信息学报》.2018,全文. *
许盛伟.支持文件动态更新的基于属性可搜索加密方案.《计算机应用研究》.2017,全文. *

Also Published As

Publication number Publication date
US20210067317A1 (en) 2021-03-04
EP3731107B1 (en) 2021-10-27
EP3731107A4 (en) 2020-11-11
JPWO2019142265A1 (ja) 2020-01-23
CN111602127A (zh) 2020-08-28
EP3731107A1 (en) 2020-10-28
WO2019142265A1 (ja) 2019-07-25
JP6462968B1 (ja) 2019-01-30

Similar Documents

Publication Publication Date Title
Salam et al. Implementation of searchable symmetric encryption for privacy-preserving keyword search on cloud storage
US20090296926A1 (en) Key management using derived keys
US10872158B2 (en) Secret search system, secret search method, and computer readable medium
JP2012164031A (ja) データ処理装置及びデータ保管装置及びデータ処理方法及びデータ保管方法及びプログラム
KR101979267B1 (ko) 클라우드 저장 기반 암호화 시스템 및 방법
WO2018047698A1 (ja) 暗号化メッセージ検索方法、メッセージ送受信システム、サーバ、端末、プログラム
CN110062941B (zh) 消息发送***及方法、通信终端、服务器装置、记录介质
EP3657475B1 (en) Data processing apparatus, data processing method, and data processing program
CN112685753A (zh) 一种用于加密数据存储的方法及设备
JP6362811B1 (ja) 登録端末、鍵サーバ、検索システム、登録プログラム
CN111602127B (zh) 数据管理装置、数据管理方法和计算机能读取的存储介质
JPWO2017126000A1 (ja) 暗号化装置、暗号化プログラム及び暗号化方法
JPWO2018131129A1 (ja) 暗号化タグ生成装置、検索クエリ生成装置及び秘匿検索システム
US11106740B2 (en) Search device, search system, search method, and computer readable medium
US10936757B2 (en) Registration destination determination device, searchable encryption system, destination determination method, and computer readable medium
JP7440662B2 (ja) マルチキー情報検索
WO2016002198A1 (ja) 検索補助データ格納装置、検索装置、追加装置、削除装置、検索依頼装置、追加依頼装置、削除依頼装置、データ検索システム、データ検索方法、および、記憶媒体
WO2020245898A1 (ja) 検索装置、サーバ装置、検索方法、情報処理方法、検索プログラム及び情報処理プログラム
Lima et al. A secure collaborative network protocol

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