CN110062941A - 消息发送系统、通信终端、服务器装置、消息发送方法以及程序 - Google Patents

消息发送系统、通信终端、服务器装置、消息发送方法以及程序 Download PDF

Info

Publication number
CN110062941A
CN110062941A CN201780076291.4A CN201780076291A CN110062941A CN 110062941 A CN110062941 A CN 110062941A CN 201780076291 A CN201780076291 A CN 201780076291A CN 110062941 A CN110062941 A CN 110062941A
Authority
CN
China
Prior art keywords
index
message
session key
communication terminal
key
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
CN201780076291.4A
Other languages
English (en)
Other versions
CN110062941B (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Publication of CN110062941A publication Critical patent/CN110062941A/zh
Application granted granted Critical
Publication of CN110062941B publication Critical patent/CN110062941B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9014Indexing; Data structures therefor; Storage structures hash tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • 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
    • 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/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • H04L9/16Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms the keys or algorithms being changed during operation
    • 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/24Key scheduling, i.e. generating round keys or sub-keys for block encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

提高机密性。通信终端存储与其它通信终端共享的会话密钥(S3)。通信终端对与消息相关联的字符串,将使用会话密钥生成的索引和消息识别符成组,发送到服务器装置(S4)。服务器装置存储索引和消息识别符的组(S5)。在会话密钥被更新时,通信终端使用更新前的会话密钥和更新后的会话密钥生成再加密密钥(S8)。服务器装置使用再加密密钥,将存储的索引更新为使用更新后的会话密钥生成的索引(S9)。通信终端使用会话密钥加密搜索关键字,生成搜索查询(S10)。服务器装置提取索引与搜索查询一致的消息识别符(S11)。

Description

消息发送系统、通信终端、服务器装置、消息发送方法以及 程序
技术领域
本发明涉及加密技术,特别涉及发送接收加密的消息的消息发送技术。
背景技术
在以商业中的使用为前提的消息发送系统中,存在使用基于云型的发送系统的消息发送系统,使得能够进行个人电脑和智能电话等多设备对应,并且考虑企业的机密信息泄露而不在客户终端中残留数据。作为这样的基于云型的消息发送系统的一个例子,举出非专利文献1中记载的产品。
在这样的消息发送系统中,通过加密通信路径而防止通信路径上的窃听,或者如已叙述的那样,通过在终端中不残留数据,防止因终端的丢失或非法的拿出引起的信息泄露。这样应对对于通信路径和终端的威胁,但是另一方面应对对于服务器的威胁并不足够。作为这里所说的对于服务器的威胁,举出对于服务器的来自外部的攻击或服务器管理者等的内部非法等。作为对于服务器的威胁举出,通过加密等对消息进行隐匿保存等对策,但是既然在服务器侧能够解码,当然来自服务器的消息泄露的可能性依然存在。因此,送到进行消息的发送接收或保存的服务器的消息对于服务器隐匿(在服务器侧不被窃听)非常重要。
一个方法是对于服务器隐匿消息,实现仅在终端可解码的端到端的加密通信,但是如何共享在终端间使用的公共密钥成为问题。作为该问题的解决对策,例如在非专利文献2中提出了在中央具有认证服务器的星型的网络中,对于认证服务器不泄露任何信息地在利用者之间共享公共密钥(以下,也称为会话密钥)的协议。由此,能够在对服务器隐匿了消息的情况下在终端间交换消息。
另一方面,若依据在商业中的利用,则需要高效地发现过去的交换的手段。作为该手段,考虑消息的搜索功能。但是,在适用利用者之间的会话密钥共享技术的情况下,云上累积的消息被隐匿,所以需要使得可在保持隐匿的情况下搜索消息。例如在非专利文献3中,搜索密钥和关键字输入到哈希函数,将其输出作为索引上传到服务器。在搜索时,将在同样的步骤中生成的加密关键字上传到服务器,服务器搜索与哈希值一致的索引并回答结果。由此,能够在隐匿了云上累积的消息的情况下进行搜索。
现有技术文献
非专利文献
非专利文献1:NTTソフトウェア、“ビジネスチャットTopicRoom(トピックルーム)”、[online]、[平成28年12月1日検索]、因特网<URL:https://www.ntts.co.jp/products/topicroom/index.html>
非专利文献2:小林鉄太郎、米山一樹、吉田麗生、川原祐人、冨士仁、山本具英、“スケーラブルな動的多者鍵配布プロトコル”、SCIS2016、4E2-3、2016年
非专利文献3:W.Ogata,K.Koiwa,A.Kanaoka,S.Matsuo,"Toward PracticalSearchable Symmetric Encryption",Proceedings of the Advances in Informationand Computer Security,Lecture Notes in Computer Science,Volume 8231,pp.151-167,2013.
发明内容
发明要解决的课题
如在上述中叙述的那样,通过在终端间共享会话密钥,可以在对服务器隐匿了消息的情况下进行交换,并且可以在隐匿了消息的情况下进行搜索。但是,如非专利文献2那样,在仅当前的参加成员希望共享会话密钥的情况下,在发生了用户的追加或删除等事件时,需要更新会话密钥。这时,具有以下与机密性有关的课题,即,若搜索密钥仍未被更新,则被删除的用户得不到会话密钥,所以无法读取消息,但是通过非法获取其他用户向服务器询问的搜索查询等,可以推测搜索的关键字的内容和服务器作为回答结果发送的消息的内容。
本发明的目的是,鉴于上述那样的问题点,提供可以在更新了会话密钥时进行再加密,以将搜索索引与更新后的会话密钥相对应,可以提高机密性的消息发送技术。
用于解决课题的手段
为了解决上述的课题,本发明的消息发送系统包含服务器装置和多台通信终端,至少一台其它通信终端接收从某个通信终端发送的消息,多台通信终端包含存储了与其它通信终端共享的会话密钥的会话密钥存储单元,至少一台通信终端进一步包含索引生成单元,将对于与消息相关联的字符串使用会话密钥生成的索引和唯一地确定消息的消息识别符设为组,发送到服务器装置,至少一台通信终端进一步包含再加密密钥生成单元,在会话密钥被更新时,使用更新前的会话密钥和更新后的会话密钥生成再加密密钥,发送到服务器装置,至少一台通信终端进一步包含查询生成单元,使用会话密钥存储单元中存储的会话密钥将搜索关键字加密,生成搜索查询,发送到服务器装置,服务器装置包括:索引存储单元,存储从通信终端接收到的索引和消息识别符的组;再加密单元,使用从通信终端接收到的再加密密钥,将索引存储单元中存储的索引更新为对于与消息相关联的字符串使用更新后的会话密钥生成的索引;以及搜索单元,提取索引存储单元中存储的索引与从通信终端接收到的搜索查询一致的消息识别符,发送到通信终端。
发明的效果
按照本发明的消息发送技术,因为在更新了会话密钥时更新搜索索引,以与更新后的会话密钥相对应,所以即使不知道更新后的会话密钥的通信终端获取了搜索查询,也不能推测消息的内容。因此,机密性提高。
附图说明
图1是例示消息发送系统的功能结构的图。
图2是例示服务器装置的功能结构的图。
图3是例示通信终端的功能结构的图。
图4是例示消息发送方法的处理步骤的图。
图5是用于说明索引的再加密的图。
具体实施方式
以下,详细地说明本发明的实施方式。而且,对于附图中具有相同的功能的结构单元附加相同的标号,省略重复说明。
在本发明的消息发送技术中,如下操作来解决上述的课题。在消息发送时,在进行与服务器的通信的通信终端侧使用会话密钥将消息内的关键字隐匿化。在更新了会话密钥时,通信终端生成用于将关键字再加密的再加密密钥,发送到服务器。服务器使用再加密密钥对用更新前的会话密钥加密的索引进行再加密,在将关键字隐匿的情况下变换为与更新后的会话密钥相对应的索引。通过以上操作,可以将消息内的关键字在隐匿的情况下发送到服务器,进而通过伴随会话密钥的更新而将索引再加密,可以防止来自参加用户以外的搜索内容的推测。
说明在以下的说明中使用的记号的定义。将G设为循环群。作为加法群,作为以素数p为模数的整数环的剩余环有G=Zp,作为乘法群,有以素数p为模数的整数环的剩余环的单元群G=Zp ×。以下作为G为乘法群来说明。将TCRHF设为以任意长度的字符串作为输入、将群G的元作为输出的目标冲突困难哈希函数。这里,叙述目标冲突困难哈希函数族的定义。将H={Hi:Di→Ri}i设为对于各i,具有定义域Di和值域Ri的哈希函数族。对于任意的多项式时间攻击者A和任意的下标i,在提供了从定义域Di随机地提取的x∈Di时,难以发现Hi(x)=Hi(x')那样的x'∈Di(x'≠x)时,将H称为目标冲突困难哈希函数族。作为TCRHF的例子,将p设为256比特素数,使用SHA256而举出TCRHF(x)=SHA256(x)mod p。但是,本发明的TCRHF不限于此。
如图1中例示的那样,实施方式的消息发送系统包含服务器装置1以及N(≧2)台通信终端21,…,2N。在该实施方式中,服务器装置1以及通信终端21,…,2N被分别连接到通信网3。通信网3是构成为在连接的各装置之间可相互通信的电路交换方式或者分组交换方式的通信网。希望通信网3是确保了安全的封闭的通信路径,但是若使用确保单独地加密各装置间的通信等安全性的手段,则也能够使用例如因特网等开放的网络。
如图2中例示的那样,服务器装置1包括:控制单元101、存储单元102、发送单元103、接收单元104、索引存储单元11、组ID生成单元12、再加密单元13、以及搜索单元14。如图3中例示的那样,通信终端21,…,2N包括:控制单元201、存储单元202、发送单元203、接收单元204、组ID存储单元21、会话密钥存储单元22、索引生成单元23、消息发送单元24、再加密密钥生成单元25、以及查询生成单元26。控制单元101以及201例如是中央运算处理装置(CPU:Central Processing Unit)。存储单元102以及202例如是主存储装置(RAM:RandomAccess Memory)。发送单元103以及203、接收单元104以及204例如是有线或者无线的网络接口卡(NIC:Network Interface Card)。通过该服务器装置1与通信终端21,…,2N一边相互通信一边进行图4所示的各步骤的处理,实现实施方式的消息发送方法。
服务器装置1例如是,在具有中央运算处理装置(CPU:Central ProcessingUnit)、主存储装置(RAM:Random Access Memory)等的公知或者专用的计算机中读入特别的程序而构成的特别的装置。各装置例如在中央运算处理装置的控制下执行各处理。输入到各装置的数据和在各处理中得到的数据例如被存储在主存储装置中,存储在主存储装置中的数据根据需要被读入到中央运算处理装置而利用于其它处理。各装置具有的各处理单元的至少一部分也可以由集成电路等硬件构成。各装置具有的各存储单元例如可以由RAM(Random Access Memory)等主存储装置、由硬盘或光盘或者闪存(Flash Memory)那样的半导体存储器元件构成的辅助存储装置、或者关系数据库和密钥值存储等中间件构成。
通信终端21,…,2N具体地说,是移动电话、智能手机、平板电脑终端、桌面型或者笔记本型的个人计算机等信息处理装置。各终端不限于这些具体例子,只要是可以通过视觉或听觉等对利用者提示信息,通过画面操作或声音输入等接受来自利用者的输入的信息处理装置,则可以是任何装置。
参照图4,说明实施方式的消息发送方法的处理步骤。在以下的说明中,通信终端2n(n∈{1,…,N})设为是通信终端21,…,2N的任意1台。在该消息发送系统中,可以构成由多个通信终端构成的谈话组(以下,仅称为组),在该组中包含的通信终端之间可以进行消息的交换。
在步骤S1中,服务器装置1的组ID生成单元12生成唯一地识别包含多个通信终端2的组的组ID。生成的组ID通过发送单元103分别发送到该组中包含的通信终端2。
在步骤S2中,通信终端2n从服务器装置1接收组ID。接收到的组ID存储到组ID存储单元21。
在步骤S3中,通信终端2n与相同的组中包含的其它通信终端2n'(n'≠n)共享会话密钥SK1,存储到会话密钥存储单元22。会话密钥的生成以及共享方法可以使用公知的技术进行。而且,会话密钥SK1设为对于服务器装置1来说不知道的密钥,设为伴随组知道用户的追加或删除或者经过一定时间等事件的发生,被变更为其它的会话密钥SK2(≠SK1)的密钥。
步骤S4中,通信终端2n的索引生成单元23对于与对组发送的消息m相关联的字符串sk,使用会话密钥存储单元22中存储的会话密钥SK1生成索引Indexk。k设为从1至K的各整数,K是与消息m相关联的字符串的数。索引Indexk与唯一地确定消息m的消息识别符IDm构成组,通过发送单元203发送到服务器装置1。具体地说,如以下那样操作,生成索引Indexk。将可搜索字符串长设为L。在未对可搜索的字符串长设置上限的情况下,也可以设为L=∞,但是这里L设为有限(<∞)。在该组中,将唯一地确定消息m的识别符设为IDm。由于对服务器装置1将消息m保持隐匿,所以希望从消息m生成识别符IDm的函数难以进行逆像计算,即,不能容易地从识别符IDm推测消息m。将函数F设为将任意长度的字符串作为输入,输出作为依赖于输入字符串的维数的、各分量的长度为L以下的字符串的向量的函数。作为函数F的例子,有输出消息m的元信息的函数、输出消息m内包含的字符串的函数、输出全部灵活运用N-Gram索引的消息m内的连续N字符的字符串的函数等。而且,N-Gram索引的细节记载在下述参考文献1中。
〔参考文献1〕北研二、津田和彦、獅々堀正幹著、「情報検索アルゴリズム」、共立出版、2002年
以下,函数F作为将输入的消息m内包含的连续的字符串全部输出的函数进行说明。为了生成输出字符串,将消息m的字符串长设为lengthm,设λ=min{L,lengthm},对各i=1,…,λ,索引生成单元23进行以下的操作。将消息m内的连续的i个字符串(将消息全体中的连续的字符串、或者消息区分为每个句节,考虑其中的连续的字符串等,但是不限于此)设为s1 (i),s2 (i),…。关于对字符串s1 (i),s2 (i),…各自的分配方法,例如有将从字符串的左端取得的连续的i个字符串设为s1 (i),将从左端向右偏移1个而得到的连续的i个字符串设为s2 (i),···这样的方法,但是不限于此。作为输出,函数F得到
维度向量
接着,读出会话密钥存储单元22中存储的会话密钥SK1,对各j=1,2,…,lengthm-λ+1,计算
得到
个Indexj (i)构成的索引集合
这时,在通过会话密钥SK1的取幂计算时,如果需要则也可以在计算了基于会话密钥SK1的素数p的余数后进行取幂计算。而且,在群G为加法群的情况下,进行SK1倍计算。即,计算为
例如,在设L≧3,m=“あいう”的情况下,生成6个索引
然后,将生成的索引集合Λ和对消息m赋予的消息识别符IDm的组
通过发送单元103发送到服务器装置1。而且,在发送时,希望进行TLS(TransportLayer Security,传输层安全性)那样的隐匿通信,但是不限定用哪样的手段进行发送。
在步骤S5中,服务器装置1从通信终端2n接收索引集合和消息识别符的组(Λ,IDm),存储到索引存储单元11。在索引存储单元11中,为了高效,如图5所示,在将包含关键字sk的消息的识别符设为IDk1,IDk2,…时,希望将对于关键字sk的索引Indexk作为密钥(key),保存为(Indexk,IDk1,IDk2,…),但是不限定形成哪样的表。
在步骤S6中,通信终端2n的消息发送单元24使用会话密钥存储单元22中存储的会话密钥SK1加密消息m。加密的消息m指定发送目的地的组ID,通过发送单元203发送到服务器装置1。
在步骤S7中,通信终端2n将会话密钥存储单元22中存储的会话密钥SK1更新为新会话密钥SK2。如上述那样,作为更新会话密钥的契机,有组中的用户的追加或删除或者经过一定时间等事件的发生。但是,会话密钥的更新不限于这些契机。更新后的会话密钥SK2被存储在会话密钥存储单元22中。
在步骤S8中,在会话密钥被更新时,通信终端2n的再加密密钥生成单元25使用更新前的会话密钥SK1和更新后的会话密钥SK2,计算
RK1,2=SK2/SK1
生成再加密密钥RK1,2,通过发送单元203发送到服务器装置1。而且,在发送时,希望进行TLS那样的隐匿通信,但是不限定用哪样的手段进行发送。
在步骤S9中,如图5所示,服务器装置1的再加密单元13从通信终端2n接收再加密密钥RK1,2,通过对在索引存储单元11中存储的该组中生成的各索引Indexk进行以下的计算,生成与更新后的会话密钥SK2对应的索引Index'k
这时,在基于再加密密钥RK1,2的取幂计算时,如果需要,也可以在计算了基于再加密密钥RK1,2的素数p的余数后进行取幂计算。而且,在群G为加法群的情况下,进行RK1,2倍计算。即,进行以下的计算。
Index′k=RK1,2(Indexk)
在步骤S10中,通信终端2n的查询生成单元26对输入的搜索关键字w用存储在会话密钥存储单元22的会话密钥SK2进行加密,生成搜索查询Query,通过发送单元203发送到服务器装置1。首先,将搜索关键字w的字符串的长度与可搜索字符串长L比较,若大于L则返回错误,结束处理。若为L以下,则从会话密钥存储单元22读出当前的会话密钥SK2,计算
生成搜索查询Query,通过发送单元203发送到服务器装置1。而且,在发送时,希望进行TLS那样的隐匿通信,但不限定用哪样的手段进行发送。
在步骤S11中,服务器装置1的搜索单元14从通信终端2n接收搜索查询Query,从索引存储单元11中存储的索引和消息识别符的组(Index'k,IDk1,IDk2,…)中,提取满足Index'k=Query的全部(Index'k,IDk1,IDk2,…)。提取的消息识别符IDk1,IDk2,…通过发送单元103发送到发送了搜索查询Query的通信终端2n。而且,在发送时,希望进行TLS那样的隐匿通信,但不限定用哪样的手段进行发送。
在步骤S12中,通信终端2n在接收对于搜索查询Query的搜索结果即消息识别符IDm时,获取与消息识别符IDm对应的被加密的消息m,作为搜索结果显示在画面等输出单元中。显示的方法例如考虑对搜索结果即消息m的一览,将各消息中的搜索关键字w高亮显示等,但是不限于此。
在上述的说明中,作为一台通信终端2n进行从索引的生成至搜索查询的生成的全部处理的结构进行了说明,也可以混合存在仅进行索引的生成的通信终端、仅进行再加密密钥的生成的通信终端、仅进行搜索查询的生成的通信终端。例如,若为仅进行索引的生成的通信终端,则仅包括控制单元201、存储单元202、发送单元203、接收单元204、组ID存储单元21、会话密钥存储单元22、索引生成单元23、以及消息发送单元24即可。而且,例如,若为仅进行再加密密钥的生成的通信终端,则仅包括控制单元201、存储单元202、发送单元203、接收单元204、组ID存储单元21、会话密钥存储单元22、以及再加密密钥生成单元25即可。而且,例如,若为仅进行搜索查询的生成的通信终端,则仅包括控制单元201、存储单元202、发送单元203、接收单元204、组ID存储单元21、会话密钥存储单元22、以及查询生成单元26即可。
通过上述那样构成,按照本发明的消息发送技术,可以在更新了会话密钥时隐匿了原来的字符串的情况下,将对与发送的消息相关联的字符串加密后的索引更新为与更新后的会话密钥对应的索引。因此,即使假设非法取得由其他用户发送的搜索查询等,也不能从搜索的关键字和搜索结果推测发送的消息的内容。因此,按照本发明,可以提高消息发送技术的机密性。
以上,说明了本发明的实施方式,但是具体的结构不限于这些实施方式,不用说,在不脱离本发明的宗旨的范围内即使有适当设计的变更等,也包含在本发明中。实施方式中说明的各种处理不仅按照记载的顺序时间序列地执行,也可以根据执行处理的装置的处理能力或者需要并行地或者单独地执行。
[程序,记录介质]
在通过计算机实现上述实施方式中说明的各装置中的各种处理功能的情况下,通过程序记述各装置应具有的功能的处理内容。然后,通过计算机执行该程序,在计算机上实现上述各装置中的各种处理功能。
记述了该处理内容的程序可以记录在计算机可读取的记录介质中。作为计算机可读取的记录介质,例如可以是磁记录装置、光盘、光磁记录介质、半导体存储器等任何介质。
而且,该程序的流通例如通过销售、转让、租借等记录了该程序的DVD、CD-ROM等可拆装型记录介质来进行。进而,也可以设为将该程序存储在服务器计算机的存储装置中,经由网络,通过将该程序从服务器计算机转发到其它计算机,使该程序流通的结构。
执行这样的程序的计算机例如首先将可拆装型记录介质中记录的程序或者从服务器计算机转发的程序暂时存储在自己的存储装置中。然后,在执行处理时,该计算机读取自己的记录装置中存储的程序,执行按照读取的程序的处理。而且,作为该程序其它执行方式,计算机也可以从可拆装型记录介质直接读取程序,执行按照该程序的处理,进而,也可以在每次从服务器计算机对该计算机转发程序时,逐次执行按照接受的程序的处理。而且,也可以设为通过不进行从服务器计算机向该计算机的程序的转发,仅通过该执行指令和结果取得来实现处理功能的、所谓ASP(Application Service Provider,应用服务提供商)型的服务,执行上述的处理的结构。而且,本方式中的程序中,包含供电子计算机的处理用的信息即基于程序的信息(虽然不是对于计算机的直接的指令,但是具有规定计算机的处理的性质的数据等)。
而且,在本方式中,设为通过在计算机上执行规定的程序来构成本装置,但是也可以硬件性地实现这些处理内容的至少一部分。

Claims (8)

1.一种消息发送系统,包含服务器装置和多台通信终端,至少一台其它通信终端接收从某个通信终端发送的消息,
所述多台通信终端包含:
存储与其它通信终端共享的会话密钥的会话密钥存储单元,
至少一台所述通信终端进一步包含:
将对于与所述消息关联的字符串使用所述会话密钥生成的索引和唯一地确定所述消息的消息识别符设为组,发送到所述服务器装置的索引生成单元,
至少一台所述通信终端进一步包含:
在所述会话密钥被更新时,使用更新前的会话密钥和更新后的会话密钥生成再加密密钥,发送到所述服务器装置的再加密密钥生成单元,
至少一台所述通信终端进一步包含:
使用所述会话密钥存储单元中存储的所述会话密钥,加密搜索关键字,生成搜索查询,发送到所述服务器装置的查询生成单元,
所述服务器装置包含:
索引存储单元,存储从所述通信终端接收到的所述索引和所述消息识别符的组;
再加密单元,使用从所述通信终端接收到的所述再加密密钥,将所述索引存储单元中存储的所述索引更新为对于与所述消息相关联的字符串使用所述更新后的会话密钥生成的索引;以及
搜索单元,提取所述索引存储单元中存储的所述索引与从所述通信终端接收到的搜索查询一致的所述消息识别符,发送到所述通信终端。
2.如权利要求1所述的消息发送系统,
所述索引生成单元对包含在所述消息内或者所述消息中包含的各句节内的任意的字符串,使用所述会话密钥和目标冲突困难哈希函数生成所述索引。
3.如权利要求1或者2所述的消息发送系统,
将G设为乘法群,将TCRHF设为以任意长度的字符串作为输入、输出群G的元的目标冲突困难哈希函数,将SK1设为所述更新前的会话密钥,将SK2设为所述更新后的会话密钥,将RK1,2设为所述再加密密钥,将K设为与所述消息相关联的字符串的数,将k设为从1至K的各整数,将sk设为与所述消息相关联的字符串,将Indexk设为更新前的索引,将Index'k设为更新后的索引,将w设为所述搜索关键字,将Query设为所述搜索查询,
所述索引生成单元通过下式生成所述索引:
所述再加密密钥生成单元通过下式生成所述再加密密钥:
RK1,2=SK2/SK1
所述再加密单元通过下式更新所述索引:
所述查询生成单元通过下式生成所述搜索查询:
4.如权利要求1或者2所述的消息发送系统,
将G设为乘法群,将TCRHF设为以任意长度的字符串作为输入、输出群G的元的目标冲突困难哈希函数,将SK1设为所述更新前的会话密钥,将SK2设为所述更新后的会话密钥,将RK1,2设为所述再加密密钥,将K设为与所述消息相关联的字符串的数,将k设为从1至K的各整数,将sk设为与所述消息相关联的字符串,将Indexk设为更新前的索引,将Index'k设为更新后的索引,将w设为所述搜索关键字,将Query设为所述搜索查询,
所述索引生成单元通过下式生成所述索引:
Indexk=SK1(TCRHF(sk))
所述再加密密钥生成单元通过下式生成所述再加密密钥:
RK1,2=SK2/SK1
所述再加密单元通过下式更新所述索引:
Index′k=RK1,2(Indexk)
所述查询生成单元通过下式生成所述搜索查询:
Query=SK2(TCRHF(w))。
5.一种通信终端,在从权利要求1至4的任意一项所述的消息发送系统中被使用。
6.一种服务器装置,在权利要求1至4的任意一项所述的消息发送系统中被使用。
7.一种消息发送方法,用于在包含服务器装置和多台通信终端的消息发送系统中,至少一台其它通信终端接收从某个通信终端发送的消息,包括:
会话密钥存储步骤,所述通信终端将与其它通信终端共享的会话密钥存储在会话密钥存储单元中;
索引生成步骤,所述通信终端将对于所述消息相关联的字符串使用所述会话密钥生成的索引和唯一地确定所述消息的消息识别符设为组,发送到所述服务器装置;
索引存储步骤,所述服务器装置将从所述通信终端接收到的所述索引和所述消息识别符的组存储在索引存储单元中;
再加密密钥生成步骤,在更新了所述会话密钥时,所述通信终端使用更新前的会话密钥和更新后的会话密钥生成再加密密钥,发送到所述服务器装置;
再加密步骤,所述服务器装置使用从所述通信终端接收到的所述再加密密钥,将所述索引存储单元中存储的所述索引更新为对与所述消息相关联的字符串使用所述更新后的会话密钥生成的索引;
查询生成步骤,所述通信终端使用所述会话密钥存储单元中存储的所述会话密钥加密搜索关键字,生成搜索查询,发送到所述服务器装置;以及
搜索步骤,所述服务器装置提取所述索引存储单元中存储的所述索引与从所述通信终端接收到的搜索查询一致的所述消息识别符,发送到所述通信终端。
8.一种程序,用于使计算机具有作为权利要求5中记载的通信终端或者权利要求6中记载的服务器装置的功能。
CN201780076291.4A 2016-12-20 2017-12-06 消息发送系统及方法、通信终端、服务器装置、记录介质 Active CN110062941B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2016-246821 2016-12-20
JP2016246821 2016-12-20
PCT/JP2017/043766 WO2018116826A1 (ja) 2016-12-20 2017-12-06 メッセージ送信システム、通信端末、サーバ装置、メッセージ送信方法、およびプログラム

Publications (2)

Publication Number Publication Date
CN110062941A true CN110062941A (zh) 2019-07-26
CN110062941B CN110062941B (zh) 2022-07-15

Family

ID=62626461

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780076291.4A Active CN110062941B (zh) 2016-12-20 2017-12-06 消息发送系统及方法、通信终端、服务器装置、记录介质

Country Status (6)

Country Link
US (1) US11765137B2 (zh)
EP (1) EP3561797B1 (zh)
JP (1) JP6879311B2 (zh)
KR (1) KR102290605B1 (zh)
CN (1) CN110062941B (zh)
WO (1) WO2018116826A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111818525A (zh) * 2020-07-13 2020-10-23 清华大学 面向空间信息网络的密钥更新方法和系统

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020084751A1 (ja) * 2018-10-26 2020-04-30 日本電気株式会社 秘密計算サーバ、システム、秘密計算方法及びプログラム
KR20220161748A (ko) * 2021-05-31 2022-12-07 삼성에스디에스 주식회사 인스턴트 메시징 서비스의 공지 사항 표시 방법 및 그 장치
CN116709316B (zh) * 2023-07-06 2024-01-26 云南大学 基于智能卡的大规模动态群组的无状态组密钥更新方法

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090089580A1 (en) * 2002-11-05 2009-04-02 Kabushiki Kaisha Toshiba Wireless communication device, portable terminal, communication control program and communication system
US20100211661A1 (en) * 2007-07-18 2010-08-19 Panasonic Corporation Address generation method, address generation system, communication device, communication method, communication system, and partner communication device
JP2011146895A (ja) * 2010-01-14 2011-07-28 Mitsubishi Electric Corp 情報処理システム及び管理装置及びサーバ装置及び情報処理装置
US20110249816A1 (en) * 2010-04-08 2011-10-13 The Industry & Academic Cooperation In Chungnam National University (Iac) Hybrid key management method for robust scada systems and session key generation method
CN103119594A (zh) * 2010-12-08 2013-05-22 株式会社日立制作所 可检索密码处理系统
CN103795533A (zh) * 2012-10-31 2014-05-14 三星Sds株式会社 基于标识符的加密、解密的方法及其执行装置
US20140208117A1 (en) * 2011-09-30 2014-07-24 Toshiba Solutions Corporation Server apparatus and program
JP2015033068A (ja) * 2013-08-06 2015-02-16 日本電信電話株式会社 ファイル共有システム、情報提供装置、情報取得装置、及びその方法、プログラム
JP2015073238A (ja) * 2013-10-04 2015-04-16 株式会社日立製作所 暗号処理方法、暗号システム、およびサーバ
WO2015187640A2 (en) * 2014-06-02 2015-12-10 Robert Bosch Gmbh System and method for secure review of audit logs
US20160335450A1 (en) * 2014-01-16 2016-11-17 Hitachi, Ltd. Searchable encryption processing system and searchable encryption processing method
CN106156349A (zh) * 2016-07-22 2016-11-23 黎海纤 基于信息安全的图像检索方法
JP6038427B1 (ja) * 2016-01-15 2016-12-07 三菱電機株式会社 暗号化装置、暗号化方法、暗号化プログラム及び保管装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6038427B2 (ja) 1976-07-12 1985-08-31 関西ペイント株式会社 水性被覆用組成物
JP4333723B2 (ja) * 2006-09-29 2009-09-16 株式会社日立製作所 通信ログ管理システム
KR101300843B1 (ko) * 2006-11-29 2013-08-29 삼성전자주식회사 리키 인덱스 생성 방법 및 이를 이용한 리키 인덱스 생성장치
CN101593196B (zh) * 2008-05-30 2013-09-25 日电(中国)有限公司 用于快速密文检索的方法、装置和系统
US8533489B2 (en) * 2010-09-29 2013-09-10 Microsoft Corporation Searchable symmetric encryption with dynamic updating
JP6033741B2 (ja) * 2013-06-14 2016-11-30 株式会社日立製作所 暗号化鍵更新システム及びその方法
US9355271B2 (en) * 2013-10-18 2016-05-31 Robert Bosch Gmbh System and method for dynamic, non-interactive, and parallelizable searchable symmetric encryption
US9363243B2 (en) * 2014-03-26 2016-06-07 Cisco Technology, Inc. External indexing and search for a secure cloud collaboration system
US10237246B1 (en) * 2015-07-31 2019-03-19 Symphony Communication Services Holdings Llc Secure message search
US9715546B1 (en) * 2016-02-18 2017-07-25 Yahoo! Inc. Method and system for searching encrypted data
KR102666331B1 (ko) * 2016-11-11 2024-05-17 삼성전자주식회사 메시지 암호화를 위한 방법 및 단말 장치
US10671742B2 (en) * 2016-11-18 2020-06-02 Duncan MacDougall Greatwood Sharing an object using the scattered storage system with high-entropy credentials

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090089580A1 (en) * 2002-11-05 2009-04-02 Kabushiki Kaisha Toshiba Wireless communication device, portable terminal, communication control program and communication system
US20100211661A1 (en) * 2007-07-18 2010-08-19 Panasonic Corporation Address generation method, address generation system, communication device, communication method, communication system, and partner communication device
JP2011146895A (ja) * 2010-01-14 2011-07-28 Mitsubishi Electric Corp 情報処理システム及び管理装置及びサーバ装置及び情報処理装置
US20110249816A1 (en) * 2010-04-08 2011-10-13 The Industry & Academic Cooperation In Chungnam National University (Iac) Hybrid key management method for robust scada systems and session key generation method
CN103119594A (zh) * 2010-12-08 2013-05-22 株式会社日立制作所 可检索密码处理系统
US20140208117A1 (en) * 2011-09-30 2014-07-24 Toshiba Solutions Corporation Server apparatus and program
CN103795533A (zh) * 2012-10-31 2014-05-14 三星Sds株式会社 基于标识符的加密、解密的方法及其执行装置
JP2015033068A (ja) * 2013-08-06 2015-02-16 日本電信電話株式会社 ファイル共有システム、情報提供装置、情報取得装置、及びその方法、プログラム
JP2015073238A (ja) * 2013-10-04 2015-04-16 株式会社日立製作所 暗号処理方法、暗号システム、およびサーバ
US20160335450A1 (en) * 2014-01-16 2016-11-17 Hitachi, Ltd. Searchable encryption processing system and searchable encryption processing method
WO2015187640A2 (en) * 2014-06-02 2015-12-10 Robert Bosch Gmbh System and method for secure review of audit logs
JP6038427B1 (ja) * 2016-01-15 2016-12-07 三菱電機株式会社 暗号化装置、暗号化方法、暗号化プログラム及び保管装置
CN106156349A (zh) * 2016-07-22 2016-11-23 黎海纤 基于信息安全的图像检索方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111818525A (zh) * 2020-07-13 2020-10-23 清华大学 面向空间信息网络的密钥更新方法和系统
CN111818525B (zh) * 2020-07-13 2021-10-26 清华大学 面向空间信息网络的密钥更新方法和系统

Also Published As

Publication number Publication date
EP3561797B1 (en) 2022-02-09
US20200084185A1 (en) 2020-03-12
JP6879311B2 (ja) 2021-06-02
EP3561797A1 (en) 2019-10-30
WO2018116826A1 (ja) 2018-06-28
JPWO2018116826A1 (ja) 2019-10-24
KR20190077556A (ko) 2019-07-03
KR102290605B1 (ko) 2021-08-18
CN110062941B (zh) 2022-07-15
EP3561797A4 (en) 2020-06-24
US11765137B2 (en) 2023-09-19

Similar Documents

Publication Publication Date Title
US20150365385A1 (en) Method and apparatus for securing sensitive data in a cloud storage system
US9021259B2 (en) Encrypted database system, client terminal, encrypted database server, natural joining method, and program
CN110062941A (zh) 消息发送系统、通信终端、服务器装置、消息发送方法以及程序
EP3511845B1 (en) Encrypted message search method, message transmission/reception system, server, terminal and programme
CN112042150B (zh) 登记装置、服务器装置、隐匿检索系统、隐匿检索方法及计算机可读取的记录介质
CN105049196B (zh) 云存储中指定位置的多个关键词可搜索的加密方法
CN107196840B (zh) 数据处理方法、装置及设备
CN104065680A (zh) 信息处理方法、检索方法、装置、用户终端及服务器
CN104685825A (zh) 用于安全通信的共享秘密标识
US9641328B1 (en) Generation of public-private key pairs
CA3066701A1 (en) Controlling access to data
CN103020504A (zh) 基于指纹认证的图片管理系统及图片管理方法
CN109417472A (zh) 通信终端、服务器装置、程序
KR20210110597A (ko) 디지털 식별성 관리 장치
CN109565440A (zh) 密钥交换方法,密钥交换系统
JP6557338B2 (ja) 類似性秘匿検索システム、類似性秘匿検索方法
US20180025172A1 (en) Data storage apparatus, data processing method, and computer readable medium
CN108170753A (zh) 一种共有云中Key-Value数据库加密与安全查询的方法
Koh et al. Encrypted cloud photo storage using Google photos
CN117786752A (zh) 一种对称可搜索加密方法、装置、设备及介质
JPWO2018043466A1 (ja) データ抽出システム、データ抽出方法、登録装置及びプログラム
CN108920968B (zh) 一种基于连接关键词的文件可搜索加密方法
CN112565156A (zh) 信息注册方法、装置和系统
Taka Secure Communication by combined Diffe-Hellman key exchange Based AES Encryption and Arabic Text Steganography.
Verma et al. Secure digital documents sharing using blockchain and attribute-based cryptosystem

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