JP7460515B2 - 電子署名生成装置、電子署名生成方法及び電子署名生成プログラム - Google Patents
電子署名生成装置、電子署名生成方法及び電子署名生成プログラム Download PDFInfo
- Publication number
- JP7460515B2 JP7460515B2 JP2020215118A JP2020215118A JP7460515B2 JP 7460515 B2 JP7460515 B2 JP 7460515B2 JP 2020215118 A JP2020215118 A JP 2020215118A JP 2020215118 A JP2020215118 A JP 2020215118A JP 7460515 B2 JP7460515 B2 JP 7460515B2
- Authority
- JP
- Japan
- Prior art keywords
- electronic signature
- signature generation
- bits
- key
- private 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.)
- Active
Links
- 238000000034 method Methods 0.000 title description 35
- 238000012795 verification Methods 0.000 claims description 11
- 238000004364 calculation method Methods 0.000 claims description 9
- 230000000717 retained effect Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 30
- SMBQBQBNOXIFSF-UHFFFAOYSA-N dilithium Chemical compound [Li][Li] SMBQBQBNOXIFSF-UHFFFAOYSA-N 0.000 description 22
- 238000009826 distribution Methods 0.000 description 8
- 238000007796 conventional method Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000009827 uniform distribution Methods 0.000 description 3
- 230000010365 information processing Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000013461 design Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
Images
Landscapes
- Storage Device Security (AREA)
Description
以下、本発明の実施形態の一例である第1実施形態について説明する。
本実施形態では、Module-LWE問題に基づく従来の電子署名方式を改良し、安全性の根拠をModule-LWR問題に基づく構成とすることで、秘密鍵長を短縮した。また、安全性及び署名棄却率を従来と同等にできるパラメータを設計した。
電子署名生成装置1は、制御部10及び記憶部20の他、各種の入出力インタフェースを備えた情報処理装置(コンピュータ)である。制御部10は、記憶部20に格納されたソフトウェア(例えば、電子署名生成プログラム)を読み込み実行することにより、次の各部として機能する。
なお、署名検証部13を備えた電子署名検証装置が電子署名生成装置1とは別に設けられてもよい。
本実施形態では、電子署名の安全性として、Roundingノイズの大きさが所定値(従来と同等)となるように、パラメータが設定される。
また、電子署名の棄却率を所定以下(従来と同等)とするため、鍵データの演算に伴うビットの繰り上がりの影響度が所定以下となるように、パラメータが設定される。
さらに、Roundingの効率化のため、法q及びpは、2冪の数値が設定される。
ここで、r:=r mod+ p(ステップ1)は、r∈(-p/2,p/2]をr∈[0,p)に変換する。
また、r0:=r mod± α(ステップ3)は、rをr0∈(-α/2,α/2]へ原点中心に変換する。なお、αは偶数とする。
r1:=HighBitsp(r,α)
r0:=LowBitsp(r,α)
もし|r0|,|z0|<α/4なら、|r0+z0|<α/2となり、常にh=0である。|r0|,|z0|<α/2の場合は、r0+z0>α/2のとき繰り上がり、r0+z0<-α/2のとき繰り下がる。
ここで、MakeHintでr0+z0<-α/2のとき繰り下がり、LowBitsp(r0+z0)>0となっているため、r1はr1+1に修正される(ステップ3)。
また、MakeHintでr0+z0>α/2のとき繰り上がり、LowBitsp(r0+z0)<0となっているため、r1はr1-1に修正される(ステップ4)。
具体的には、LWEサンプルAs1+s2に代えて、LWRサンプル
これにより、暗黙的に、
また、t=t1・2d+t0とする(ステップ6)。
なお、検証者は、t0だけを持っていることとする。
なお、(Dil)は、非特許文献1における従来手法(Dilithium)での値である。
次に、本実施形態における各パラメータの設計方法を示す。
従来のDilithiumの場合、q=223-213+1であった。すると、q-1=223-213=(29-1)214+213であり、2d=214なので、t1∈{0,…,29-1}となる。したがって、t1の各係数は9ビットである。
本実施形態のLWR-Dilithiumの場合、LWRにおけるRoundingの処理を簡易化するために、法qを2冪とする。具体的には、q=223と設定する。
従来のDilithiumの場合、LWEにおけるノイズの標準偏差をσ=2η/√12、すなわち一様分布U(-η,η)の標準偏差とする。そして、非特許文献2のlwe-estimatorを用いて、実現したいセキュリティビットを満たすようにη,σ,(k,l)が設定される。
また、従来のDilithiumと同様に、LWEにおけるノイズの標準偏差をσ=2η/√12とするが、
従来のDilithiumの場合、βは、Pr[∥csi∥∞>β]<2-128≒0となるように設定されている。
ここで、s1,s2∈Sηである。c∈B60si∈Sηなので、上界β≦60ηの中で決められる。なお、∥csi∥∞の分布は後述する。
そこで、∥cs1∥∞<β1、∥cs2∥∞<β2(<β1)としてβ1,β2の二つに分け、それぞれPr[∥csi∥∞>βi]≒0を満たすように設定する。
・Yn:=Σi=1 60Xi, where Xi~U(-1/2,1/2)
・U(-1/2,1/2)の分散σ2=1/12
・中心極限定理より、Yn~N(0,σB 2:=60σ2)
従来のDilithiumと同様に、γ1:=q/16,γ2:=γ1/2と定義する。さらに、p/q倍された変数に対してγ1,γ2に当たるパラメータ
一方、従来のDilithiumでは、dは、∥ct0∥∞≦∥c∥1・∥t0∥∞≦60・2d-1≦2γ2=γ1=219となるように設定されている。すなわち、2d=214<219=2γ2=γ1である。
現状、従来のDilithiumでは、γ1:=(q-1)/16と設定されており、4ビット固定である。LWRでは、2η=16=24程度となり、γ1=p程度となってHighbitが存在しなくなるので、γ2 ̄を設定する必要があった。
なお、これは、非特許文献1に示され、非特許文献3で証明されている。
ここでは、電子署名方式のアルゴリズムにおけるt=t1・2d+t0のビット長を示している。t1が公開鍵部分であり、t0が秘密鍵部分に当たる。
ここで、公開鍵部分t1の長さは9ビットから変化していない。これは、電子署名の安全性及び署名棄却率を従来と同等に維持するためのパラメータ設定がされたことによる。
ここで、本実施形態における電子署名の安全性を示す。
まず、次のSelfTargetMSIS問題を定義する。
Hを暗号学的ハッシュ関数、A←$Rm×k、Iは単位行列であるとすると、SelfTargetMSISm,k,γとは、
Aの最後尾の1列をt、つまりA=[A’ t]とおくと、
・∥z∥∞<γ1-β
・H(μ∥UseHintq(h,Az-ct1・2d・2γ2))=c
・Hw(h)≦ω
を満たす有効なメッセージと署名との組M,(z,h,c)を生成する困難性を示せばよい。
=2γ2・HighBitsq(Az-ct,2γ2)
=Az-ct1・2d+u
において、∥u∥∞≦2γ2+1である。また、t=t1・2d+t0より、
Az-ct1・2d+u=Az-c(t-t0)+u=Az-ct+(ct0+u)
=Az-ct+u’
∥u’∥∞≦∥c∥1・∥t0∥∞+∥u∥∞≦60・2d-1+2γ2+1≦4γ2
である。
具体的には、従来のDilithiumにおいては、t’:=w+ctとおき、
Az+u’=t’
∥z∥∞<4γ2
∥u’∥∞<4γ2
を満たすz,u’を求める計算量で評価されている。
より詳しくは、∥z∥∞<γ1-β≒2γ2、かつ、u’はそのw個の係数以外のノルムが2γ2以下なので、ここでもconservativeな評価である。
本実施形態における署名棄却率を示す。
従来のDilithiumの場合、以下の条件(1)~(5)のそれぞれについて確率を求める。
(z:=y+cs1,y←Sl γ1-1),Sη:={w∈R|∥w∥∞≦η}.
セキュリティのために、SVPの解の部分に当たるzは小さくある必要がある。
cs1のそれぞれの係数をσとする。yiの各係数は、[-(γ1-β-1)-σ,(γ1-β-1)-σ]にあればよいので、確率は、
上述の条件∥r0∥∞<γ2-βを満たすとき、∥cs2∥∞≦βならば、∥r0+cs2∥∞<γ2が成り立つので、r1:=HighBitsq(w-cs2,2γ2)=HighBitsq(w,2γ2):=w1である。
確率Pr[∥cs2∥∞≦β]について、cs2の分布は、次のように求まる。
・s2∈Sη k
・Xi:=(s2の各係数)とすると、i.i.dでXi~U(-η,η).
・ση 2:=Var(Xi)=(2η)2/12,
・(cs2の一つの係数):=Y=Σi-1 60Xi
~N(0,60・ση 2)(∵中心極限定理)
・Pr[∥Y∥<β]=1-2FY(-β)
したがって、確率は、
Pr[∥cs2∥∞<β]=(1-2FY(-β))nk
=1-2nkFY(-β)+O(FY(-β)2)(∵二項展開)
となる。
t=t1・2d+t0, where ∥t0∥∞≦2d-1
と書ける。なお、Power2Roundも、Decomposeqと同様に下位ビットは0中心にmodされるため、ノルム(絶対値)は2d未満ではなく、2d-1以下となる。また、
∥ct0∥∞≦∥c∥1∥t0∥∞≦60・2d-1<γ1=2γ2
が成り立つ。
ここで、ct0の分布は、次のように求まる。
・Xi:=(t0の各係数)とし、i.i.dでXi~U(-2d-1,2d-1)と仮定する。
・σX 2=Var(Xi)=(2・2d-1)2/12=22d/12,
・Y:=Σi-1 60Xi~N(0,60・σX 2)(∵中心極限定理)
このとき、
h=[[HighBitsq(w-cs2+ct0,2γ2)≠HighBitsq(w-cs2,2γ2)]]
であり、次の条件が成り立つ。
・∥r0∥∞<γ2-β(r0:=LowBitsq(w-cs2,2γ2))
・∥ct0∥∞≦γ2
ここで、r0+ct0の分布は、次のように求まる。
・Xi:=(r0の各係数)とし、X~U(-γ2,γ2)と仮定する。
・Y:=(ct0の各係数)とすると、Y~N(0,σY 2:=60・22d/12)である。
・Z:=X+Yとすると、
∥r0∥∞<γ2-β(r0:=LowBitsq(w-cs2,2γ2))
の条件を満たすとき、∥cs2+ξ+ξ’∥∞≦β2ならば、
この結果、図8に示したように、秘密鍵のバイト長は、従来法では、
さらに、扱う値が小さくなるため、実行速度の向上が期待できる。
また、署名棄却率を所定以下に、例えば従来のDilithiumと同等になるようにパラメータが設定される。
これにより、電子署名生成装置1は、安全性及び処理速度を従来と同等以上としつつも、秘密鍵長を短縮できる。
以下、本発明の実施形態の一例である第2実施形態について説明する。
本実施形態では、第1実施形態の電子署名生成装置1の機能構成(図1)から変更はなく、署名生成部12が用いる署名生成アルゴリズムを変更することにより、署名生成処理を高速化した。
まず、第1実施形態と同様に、また、さらに追加して次の定義及び表記を用いる。
Bhは、その係数のうちh個の係数が-1又は1である多項式の集合である。
Hw(w)は、多項式w∈Rkの非ゼロの係数の数である。
ブール演算子
集合Aから要素aを一様ランダムに抽出する操作を、
本実施形態において、特に断りがない場合、全てのアルゴリズムを確率的とする。入力xに対するアルゴリズムAの確率的計算の出力がyであるとき、y←A(x)と表記する。
図10は、本実施形態における具体的なパラメータ値を示す図である。
ここでは、安全性の強度に応じて、6種類のパラメータ群を例示する。
サブ関数UseHintp(h,r,α)は、繰り上がりがある(h=1)とき、上位ビットr1に対して、下位ビットの符号に合わせて1を加算又は減算して返す。
図13は、本実施形態における電子署名方式のうち、署名関数Signのアルゴリズムを示す図である。
図14は、本実施形態における電子署名方式のうち、検証関数Verifyのアルゴリズムを示す図である。
これらは、本実施形態による高速化の手法を適用する前のアルゴリズムであり、第1実施形態と同等のものである。
本アルゴリズムでは、高速化の手法を適用する前(図13)から、ステップ9,15,16が変更され、ステップ14が削除されている。
このとき、下位ビットが上位ビットに及ぼす影響(繰り上がり)の有無を示す値hが電子署名の一部として算出される。
さらに、署名生成部12は、検証者による上位ビットw1の再構成の際に必要な、下位からの繰り上がりの有無の情報hを、実際の演算の試行(MakeHint)によらず、下位ビットw0に基づく値が所定の長さに応じた範囲にあることを条件に決定する。
そして、第1実施形態では、ステップ14及び15において、wに基づく中間生成値の上位ビット及び下位ビットそれぞれによる複数の条件を用いて、w1が秘密鍵を用いずに再構成可能な電子署名を求められていたが、第2実施形態では、w0に基づく一つの条件のみで実現される。
また、署名生成部12は、ステップ16において、関数MakeHintによる演算(加算)を行うことなく、ct0の加算に伴う下位ビットから上位ビットへの繰り上がりの有無を判定する。
なお、署名生成アルゴリズムSign(図15)において、(1)「ステップ14及び15の変更」と、(2)「ステップ16の変更」とは、いずれか一方のみによる高速化も可能であるが、(1)及び(2)両方の変更がより効果的である。
10 制御部
11 鍵生成部
12 署名生成部
13 署名検証部
20 記憶部
Claims (8)
- Module-LWE問題における法qに対して、法pに縮小したModule-LWR問題の困難性を安全性の根拠とし、ノイズ情報を含まない秘密鍵及び公開鍵を含む鍵データを生成する鍵生成部と、
前記Module-LWR問題におけるRoundingノイズを、前記公開鍵及び前記秘密鍵から算出して電子署名を生成する署名生成部と、を備え、
前記署名生成部は、前記電子署名の検証者に、前記秘密鍵に基づく演算値における所定の長さの上位ビットを再構成させるために、前記演算値の下位ビットを保持し、前記上位ビットに基づく前記電子署名を、前記下位ビットに関する条件のもとに生成する電子署名生成装置。 - 前記電子署名の安全性として、前記Roundingノイズの大きさが所定値となるように、パラメータが設定される請求項1に記載の電子署名生成装置。
- 前記電子署名の棄却率を所定以下とするため、前記鍵データの演算に伴うビットの繰り上がりの影響度が所定以下となるように、パラメータが設定される請求項1又は請求項2に記載の電子署名生成装置。
- 前記法q及びpは、2冪の数値が設定される請求項1から請求項3のいずれかに記載の電子署名生成装置。
- 前記署名生成部は、前記電子署名の検証者に、前記秘密鍵に基づく演算値における所定の長さの上位ビットを再構成させるために、前記演算値の下位ビットを保持し、前記上位ビットの再構成の際に必要な、下位からの繰り上がりの有無の情報を、実際の演算の試行によらず、前記下位ビットに基づく値が前記所定の長さに応じた範囲にあることを条件に決定する請求項1から請求項4のいずれかに記載の電子署名生成装置。
- 請求項1から請求項5のいずれかに記載の電子署名生成装置により生成された電子署名を、前記秘密鍵に基づいて算出される前記Roundingノイズを用いて検証する電子署名検証装置。
- Module-LWE問題における法qに対して、法pに縮小したModule-LWR問題の困難性を安全性の根拠とし、ノイズ情報を含まない秘密鍵及び公開鍵を含む鍵データを生成する鍵生成ステップと、
前記Module-LWR問題におけるRoundingノイズを、前記公開鍵及び前記秘密鍵から算出して電子署名を生成する署名生成ステップと、をコンピュータが実行し、
前記署名生成ステップにおいて、前記電子署名の検証者に、前記秘密鍵に基づく演算値における所定の長さの上位ビットを再構成させるために、前記演算値の下位ビットを保持し、前記上位ビットに基づく前記電子署名を、前記下位ビットに関する条件のもとに生成する電子署名生成方法。 - 請求項1から請求項6のいずれかに記載の電子署名生成装置としてコンピュータを機能させるための電子署名生成プログラム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020043897 | 2020-03-13 | ||
JP2020043897 | 2020-03-13 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021150951A JP2021150951A (ja) | 2021-09-27 |
JP7460515B2 true JP7460515B2 (ja) | 2024-04-02 |
Family
ID=77849621
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020215118A Active JP7460515B2 (ja) | 2020-03-13 | 2020-12-24 | 電子署名生成装置、電子署名生成方法及び電子署名生成プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7460515B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115242381A (zh) * | 2022-06-29 | 2022-10-25 | 中国科学院信息工程研究所 | 一种基于格上错误学习问题的密钥协商方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2511464B2 (ja) | 1986-07-09 | 1996-06-26 | イエダ リサ−チ アンド デベロツプメント カンパニ− リミテツド | 識別及び署名方法及び装置 |
WO2018149912A1 (en) | 2017-02-15 | 2018-08-23 | Koninklijke Philips N.V. | Key exchange devices and method |
WO2018206344A1 (en) | 2017-05-10 | 2018-11-15 | Koninklijke Philips N.V. | Key agreement devices and method |
WO2020016268A1 (en) | 2018-07-17 | 2020-01-23 | Koninklijke Philips N.V. | Key encapsulation protocols |
-
2020
- 2020-12-24 JP JP2020215118A patent/JP7460515B2/ja active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2511464B2 (ja) | 1986-07-09 | 1996-06-26 | イエダ リサ−チ アンド デベロツプメント カンパニ− リミテツド | 識別及び署名方法及び装置 |
WO2018149912A1 (en) | 2017-02-15 | 2018-08-23 | Koninklijke Philips N.V. | Key exchange devices and method |
WO2018206344A1 (en) | 2017-05-10 | 2018-11-15 | Koninklijke Philips N.V. | Key agreement devices and method |
WO2020016268A1 (en) | 2018-07-17 | 2020-01-23 | Koninklijke Philips N.V. | Key encapsulation protocols |
Non-Patent Citations (3)
Title |
---|
D'ANVERS, J.-P. et al.,Saber: Module-LWR based key exchange, CPA-secure encryption and CCA-secure KEM,Cryptology ePrint Archive,Paper 2018/230 ver. 20190318:104623,[online],2019年03月18日,pp.1-24,<URL:https://eprint.iacr.org/archive/2017/916/20180220:145753>, [2023年12月13日検索] |
DUCAS, L. et al.,CRYSTALS-Dilithium: A Lattice-Based Digital Signature Scheme,IACR Transactions on Cryptographic Hardware and Embedded Systems,[online],2018年02月14日,Vol.2018 No.1,pp.238-268,<URL:https://tches.iacr.org/index.php/TCHES/article/view/839>,[2023年12月13日検索] |
LYUBASHEVSKY, V.,Presentation Crystals-Dilithium,First PQC Standardization Conference,[online],2018年04月13日,pp.1-29,<URL:https://csrc.nist.gov/Presentations/2018/Crystals-Dilithium>,[2023年12月13日検索] |
Also Published As
Publication number | Publication date |
---|---|
JP2021150951A (ja) | 2021-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Naor et al. | Universal one-way hash functions and their cryptographic applications | |
Van Oorschot et al. | Parallel collision search with cryptanalytic applications | |
JP3560860B2 (ja) | 秘密分散システム、装置及び記憶媒体 | |
US7000110B1 (en) | One-way function generation method, one-way function value generation device, proving device, authentication method, and authentication device | |
US20080232580A1 (en) | Secret sharing apparatus, method, and program | |
CN104919754B (zh) | 篡改检测装置、篡改检测方法、以及程序 | |
CN115529141B (zh) | 一种对数签名大小的可追踪环签名生成方法及系统 | |
US20030152218A1 (en) | Cryptography method on elliptic curves | |
Liu et al. | An efficient double parameter elliptic curve digital signature algorithm for blockchain | |
JP7460515B2 (ja) | 電子署名生成装置、電子署名生成方法及び電子署名生成プログラム | |
EP4144040A1 (en) | Generating shared private keys | |
US8407248B2 (en) | System and method for authentication using a shared table and sorting exponentiation | |
US20110126020A1 (en) | Content disclosure system and method for guaranteeing disclosed contents in the system | |
Kazmirchuk et al. | The Improvement of digital signature algorithm based on elliptic curve cryptography | |
US20080229111A1 (en) | Prevention of unauthorized forwarding and authentication of signatures | |
CN110233733A (zh) | 面向区块链智能合约的不可拆分数字签名通用构造方法 | |
Fischlin | Incremental cryptography and memory checkers | |
WO2023016729A1 (en) | Generating digital signature shares | |
Dousti et al. | Tri-op redactable blockchains with block modification, removal, and insertion | |
Alomair et al. | Efficient generic forward-secure signatures and proxy signatures | |
EP3900255B1 (en) | A circuit compiling device and circuit evaluation device | |
WO2006062166A1 (ja) | 電子データ検証装置 | |
CA2306468A1 (en) | Signature verification for elgamal schemes | |
KR102122773B1 (ko) | 복원가능 기능을 가지는 리댁터블 서명 시스템 및 방법 | |
JP3711821B2 (ja) | 素数生成方法及び装置及び素数生成プログラムを格納した記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230306 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20231115 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240109 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240221 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20240305 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240321 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7460515 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |