解密装置、解密能力提供装置、其方法、以及程序的制作方法

文档序号:9575614阅读:589来源:国知局
解密装置、解密能力提供装置、其方法、以及程序的制作方法
【技术领域】
[0001 ] 本发明涉及云密钥管理型的解密技术。
【背景技术】
[0002]为了对通过公开密钥密码方式、公共密钥密码方式等密码方式而加密的密文进行解密,需要特定的解密密钥。没有保持解密密钥的解密装置用于得到密文的解密结果的以往方法之一是,保持有解密密钥的外部装置向解密装置提供解密密钥,解密装置使用该解密密钥来进行密文的解密的方法。用于解密装置得到密文的解密结果的其他以往方法是,解密装置将密文提供给外部装置,外部装置对密文进行解密而将其解密结果提供给解密装置的方法。
[0003]但是,在前者的方法中,由于解密密钥本身被提供给解密装置,所以存在安全性的问题。另一方面,在后者的方法中,解密装置不能验证解密结果的正确性。
[0004]作为解决这样的问题的技术,存在使用了自校正(Self-Correcting)技术的云密钥管理型的解密技术(例如,参照专利文献1?3等)。自校正技术是,使用不一定输出正确的计算结果的计算机、系统而始终进行正确的计算(在使用了输出正确的计算结果的计算机的情况下输出正确的计算结果,在使用了不一定输出正确的结果的计算机的情况下,得到正确的计算结果或者得到不能计算的意旨的结果)的技术。在使用了自校正技术的云密钥管理型的解密技术中,保持解密密钥的解密能力提供装置不将解密密钥提供给解密装置,而仅将用于解密装置对密文进行解密的信息提供给解密装置。解密装置能够使用该信息而始终进行正确的解密运算。
[0005]现有技术文献
[0006]专利文献
[0007]专利文献1:国际公开W0/2012/057134号公报
[0008]专利文献2:国际公开W0/2011/086992号公报
[0009]专利文献3:国际公开W0/2012/121152号公报

【发明内容】

[0010]发明要解决的课题
[0011]但是,在包含同态运算和非同态运算的解密处理的情况下,不能进行使用了自校正技术的云密钥管理型的解密。
[0012]用于解决课题的手段
[0013]解密装置在与解密能力提供装置之间进行自校正处理,得到第一密文的解密值,进行使用了对应于或来自于第一密文的解密值的值和附加值的非同态运算,输出明文,该解密能力提供装置保持用于对能够通过同态运算而解密的第一密文进行解密的解密密钥。
[0014]发明效果
[0015]在本发明中,由于仅在能够通过同态运算而解密的第一密文的解密处理中使用自校正处理,所以即使在解密处理包含同态运算和非同态运算的情况下,也能够进行使用了自校正技术的云密钥管理型的解密。
【附图说明】
[0016]图1是实施方式的安全系统的框图。
[0017]图2是第一实施方式的加密装置的框图。
[0018]图3A是第一实施方式的解密装置以及解密能力提供装置的框图。图3B是例示第一实施方式的自校正处理部以及解密能力提供部142的细节的框图。
[0019]图4是用于说明第一实施方式的解密处理的图。
[0020]图5是第二实施方式的加密装置的框图。
[0021]图6是第二实施方式的解密装置以及解密能力提供装置的框图。
[0022]图7是用于说明第二实施方式的解密处理的图。
[0023]图8是第三实施方式的加密装置的框图。
[0024]图9是第三实施方式的解密装置以及解密能力提供装置的框图。
[0025]图10是用于说明第三实施方式的解密处理的图。
【具体实施方式】
[0026]以下,说明本发明的实施方式。
[0027][原理]
[0028]在各实施方式中,解密装置在与解密能力提供装置之间进行自校正处理,得到第一密文的解密值,进行使用了对应于或来自于第一密文的解密值的值和附加值的非同态运算,从而输出明文,该解密能力提供装置保持用于对能够通过同态运算而解密的第一密文进行解密的解密密钥。明文是与包含第一密文的信息对应的第二密文的解密值。“来自(derive)于A的值B”意味着(1)A或A的一部分的信息、或者(2)A或A的一部分的信息的函数值、或者(3)包含A或A的一部分的信息以及其他信息在内的信息的函数值。“来自于A的值B”的例子是“与A对应的B”。“来自于A的值B”的其他例是“基于A的B”。此夕卜“包含A的B”意味着(1)B是A、或者(2)B将A包含于要素、或者(3)B的一部分是A(例如,B的一部分比特表示A)。
[0029]<第二密文的例1 >
[0030]第二密文例如是与能够通过同态运算而解密的第一密文和在解密时成为非同态运算的被运算符的附加值对应的密文(例如,包含第一密文和附加值的密文)。进行这样的第二密文的解密的解密装置在与保持用于对第一密文进行解密的解密密钥的解密能力提供装置之间进行自校正处理,得到第一密文的解密值。第一密文能够通过同态运算而解密,这样的第一密文的解密能够通过使用了自校正技术的公知的云密钥管理型的解密方式来执行(例如,参照专利文献1?3等)。进而,解密装置进行使用了该第一密文的解密值和附加值的非同态运算,输出第二密文的解密值。像这样,由于仅在能够通过同态运算而解密的第一密文的解密处理中使用自校正处理,所以即使第二密文包含在其解密时成为非同态运算的被运算符的附加值,也能够进行使用了自校正技术的云密钥管理型的解密。
[0031]第一密文的例子包含对来自于随机值的值进行加密而得到的值(例如,是对与随机值对应的值进行加密而得到的值),此时的附加值的例子是包含与包含明文和随机值的信息对应的值的值(例如,与明文和随机值对应的值)。在该第一密文的例子中,优选的是,仅从第一密文的解密值难以(例如不可能)得到第二密文的解密值。“难以得到解密值”例如意味着在多项式时间内不能得到解密值。“多项式时间”例如意味着能够通过解密密钥的大小(长度)的多项式来表现的时间(计算时间)。换言之,“多项式时间”例如意味着在将解密密钥的长度(例如比特长)设为X的情况下的能够通过关于X的任意的多项式来表现的时间(计算时间)。第一密文的其他例是包含对来自于包含明文的信息的值进行加密而得到的值的值(例如,是对与明文对应的值进行加密而得到的值),此时的附加值是包含来自于包含第一密文和随机值的信息的值的值(例如,与第一密文和随机值对应的值)。与值Θ (例如,随机值、明文等)对应的值的例子是表示值Θ的信息或者其映射、示出表示值Θ的信息的一部分的信息或者其映射、包含表示值Θ的信息在内的信息或者其映射、包含示出表示值Θ的信息的一部分的信息在内的信息或者其映射、用于得到值Θ的映射的原像的其他映射,包含表示用于得到值Θ的映射的原像的信息在内的信息的其他映射。
[0032]在此,第一密文包含对来自于随机值的值进行加密而得到的值(例如,是对与随机值对应的值进行加密而得到的值),附加值是包含与包含明文和随机值的信息对应的值的值(例如,是与明文和随机值对应的值),在仅从第一密文的解密值难以得到第二密文的解密值的情况下(例如,这不可能的情况下),即使第一密文的信息被提供给解密能力提供装置,只要附加值的信息不被提供给解密能力提供装置,第二密文的解密值的信息就不会泄露给解密能力提供装置。因此,在这样的情况下,也可以是解密装置不扰乱第一密文的信息地将其提供给解密能力提供装置(例如,解密装置将表示第一密文的信息提供给解密能力提供装置),且从解密能力提供装置得到用于得到第一密文的解密值的信息而不是从解密能力提供装置得到解密密钥的信息。由此,能够削减解密装置用于扰乱第一密文的信息的运算量。其中,这是一例,在这样的情况下,也可以是解密装置将扰乱了第一密文的信息提供给解密能力提供装置,从解密能力提供装置得到用于得到解密值的信息。
[0033]另一方面,在从第一密文的解密值得到第二密文的解密值的信息的情况下,优选解密装置是,将扰乱了第一密文的信息提供给解密能力提供装置,且从解密能力提供装置得到用于得到第一密文的解密值的信息而不是从解密能力提供装置得到解密密钥的信息的结构。
[0034]第一密文的具体例是具有同态的0W - CPA安全的密码方式的密文(关于第一密文的解密值而0W - CPA安全的密文),与第一密文和附加值对应的第二密文的具体例是不具有同态的IND - CCA安全的密码方式的密文(关于明文而IND — CCA安全的密文)。以下,例示0W — CPA安全的密码方式、和基于其的IND - CCA安全的密码方式。
[0035]〈方式例1>
[0036]方式例1是基于公开密钥密码方式的方式。
[0037]《0W- CPA安全的密码方式1 一 1》
[0038]密钥生成算法:KeyGen(lA)— (pk,sk)
[0039]加密算法:Enc(pk, Μ!) — C0
[0040]解密算法:Dec(sk,C。)一 Μ/
[0041]其中,λ表示是1以上的整数的安全参数,1λ表示由λ个1构成的串,pk表示公开密钥密码方式的公开密钥(加密密钥),sk表示与其对应的秘密密钥(解密密钥)。KeyGen(lA) 一(pk,sk)表示使用 1λ得至lj (pk,sk)的运算,Enc(pk,Μ 丨)一 C。表示使用 pk遵照公开密钥密码方式对吣进行加密而得到C。的同态的运算,Dec(sk, C0) — Μ/表示使用sk遵照公开密钥密码方式对C。进行解密而得到Μ /的同态的运算。0W - CPA安全的密码方式1 一 1的例子是RSA密码、ElGamal密码、modified — ElGamal密码、Paillier密码等。
[0042]《基于0W- CPA安全的密码方式1 一 1的IND — CCA安全的密码方式1 一 2》
[0043]密钥生成算法:KeyGen(lA)— (pk, sk)
[0044]加密算法:Enc— F0 (pk) — C = (C!,C2) = (Enc (pk, a),F0(Q,r))
[0045]解密算法:Dec— F0(sk,C) — k
[0046]其中,r表示随机值,a以及k表示来自于r的值(例如,与r对应的值)。Enc _F0(pk) — C表示使用pk得到与随机值r对应的密文C的运算,Enc (pk, a ) — (^表示使用pk对a进行加密而得到密文(^的同态的运算。F0(Q,r) — C 2表示得到来自于包含Q和r的信息的值C2的非同态的运算。其中,Q是来自于a的值。由于a以及k是来自于r的值,所以Q是与明文k对应的值。Dec —F0(sk,C) — k表示使用sk对C进行解密而得到k的非同态的运算。该Dec —F0(sk,C)包含使用秘密密钥sk对密文Q
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1