JP2020510879A - 楕円曲線点乗算デバイス及び方法 - Google Patents
楕円曲線点乗算デバイス及び方法 Download PDFInfo
- Publication number
- JP2020510879A JP2020510879A JP2019549551A JP2019549551A JP2020510879A JP 2020510879 A JP2020510879 A JP 2020510879A JP 2019549551 A JP2019549551 A JP 2019549551A JP 2019549551 A JP2019549551 A JP 2019549551A JP 2020510879 A JP2020510879 A JP 2020510879A
- Authority
- JP
- Japan
- Prior art keywords
- multiplier
- base
- hash
- point
- blinded
- 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
Links
Images
Classifications
-
- 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
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
-
- 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/002—Countermeasures against attacks on cryptographic mechanisms
-
- 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
- H04L9/3006—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
- H04L9/3013—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the discrete logarithm problem, e.g. ElGamal or Diffie-Hellman systems
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
- H04L9/3252—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/08—Randomization, e.g. dummy operations or using noise
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/16—Obfuscation or hiding, e.g. involving white box
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Algebra (AREA)
- Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
Description
− 楕円曲線における複数の事前に算出された補助点とベース・ポイントとを保存するストレージと、
− 入力メッセージのベース・ハッシュを受け取るように構成される入力インターフェースと、
− プロセッサ回路とを有し、プロセッサ回路は
− 複数のジョイント・エンコーディングの第1及び第2セットの形式でベース・ハッシュから複数の被導出ハッシュと乗数とを導出するステップであって、第1セットは、それぞれが乗数とジョイント・エンコードされる複数の被導出ハッシュを含み、第2セットも被導出ハッシュを含み、第2セット内の被導出ハッシュの各々は、複数の被導出ハッシュのうち少なくとも1つの他のものとジョイント・エンコードされている、ステップと、
− 複数のジョイント・エンコーディングの第1セットから、ブラインド化されたベース乗数(a blinded based multiplier)を算出するステップと、
− 複数のジョイント・エンコーディングの第2セットから、複数のブラインド化された補助乗数を算出するステップであって、複数のブラインド補助乗数は複数の補助点に対応している、ステップと、
− 楕円曲線におけるベース・ポイントとブラインド化されたベース乗数との点乗算、及びブラインド補助乗数と補助点との多点乗算を計算することにより、乗数とベース・ポイントとの点乗算を求めるために、ブラインド楕円曲線計算を実行するステップと
を実行するように構成されている。
・ハッシュ関数H:{0,1}*→Zq
・署名者の秘密鍵x∈ZX q、及び公開鍵P=[x]G∈E
ECDSAアルゴリズムのセキュリティは、Pからxを得ることが困難であるという事実に依存している。これはECDSA仮定として知られている。メッセージMに署名するため、以下のステップを実行してもよい:
・h=H(M)を計算する。ここで、Hは暗号ハッシュ関数(例えば、SHA256)である。
・s=(h+rx)k−1∈Zq
・(r=0又はs=0ならば、新たなkとともに反復する)
・シグネチャは(r,s)である。
・ r=μ((kG)1)という計算において、
・ s=(h+rx)k−1という計算において、
2回使用された後に忘却されなければならないことである。
i kのビットのみが変わり、hは変更されない
ii hのビットのみが変わり、hは変更されない
iii kのビット及びhのビット双方が変わる
最初の変更のみが攻撃者にとって有用であることに留意されたい。hは変更されるので、第2及び第3の変更は正しいシグネチャを与えない。このシナリオでさえ、攻撃者は既に3倍の仕事を強いられる。更なるセキュリティ・パラメータnが使用される実施形態では、有意義なシグネチャをもたらす障害を攻撃者が注入する可能性は、よりいっそう小さくなる。一実施形態では、複数(n)の異なるhiが使用される。kのビットは、元のハッシュのビットと一緒にエンコードされる必要はなく、むしろ、n個の異なるハッシュのビットと一緒にエンコードされ得る。一実施形態では、乗数k及び全てのhiが同じビット長を有するが、これは必須ではない。
− 楕円曲線におけるブラインド化されたベース乗数とベース・ポイントとの点乗算、及び
− ブラインド化された補助乗数と補助点との多点乗算。
Σ0≦i≦n−1αi=1 及びΣ0≦j≦2n−1βi,j=0であるように、定数αi,βi及びCiをZq内で選択し、
aidi−bici≠0を満たすように、整数ai,bi,ci,diをZq内で選択し、
ハッシュからZqへのデ・ランダム関数f、及びハッシュ多様化関数hiを0≦i≦2n−1に関して選択し、
・2l(エル)ビットに作用するエンコーディング関数E(ランダム全単射の集まり)
・内的にl(エル)ビット・オペレーションを利用して(例えば、AESではl(エル)=8である)、l(エル)*mビット入力をm*l(エル)ビット出力にマッピングする置換線形変換{SLTi}j関数(例えば、固定されたキーを有するAES等)の集まり。
C0,i={SLT0,SLTi+1}i及びC2i+1,2i+2={SLT2i+1,SLT2i+2}i 即ち、各々の回路Ci,rは2つのml入力、例えばIl(エル),Irを或るエンコードされた方法(下記参照)で取得し、出力Oi=SLTi(Ii)及びOr=SLTj(Ir)(のエンコーディング)を算出する。この回路は例えばω経路及びσ経路を有し、ここでω経路はSLTiを計算し、σ経路はSLTjを計算する。
− v=Σi=0 mvibimodq ただし、
− ui及びviはl(ビット)の数であり、従って
− b=2l(エル)である。
Peter L.Montgomery,“Modular multiplication without trial division”.Mathematics of Computation,44:519−−521,1985.
すべての内的なオペレーションは、1つ又は2つのl(エル)ビット数に関するものであり、従って、例えば、所謂スクールブック乗算を使用して、テーブルに配置されることが可能である。
1.h=h0‖・・・‖hmとなるように、hをl(エル)ビットのh0,...,hmのブロックに分割する。
− エンコードされたペアEnc(k,t0),...,Enc(k,t2n−1)及び
− エンコードされたペアEnc(h,t0),...,Enc(h,t2n−1)
から進行する。
− 楕円曲線における複数の事前に算出された補助点Giとベース・ポイントGとを保存するステップ510と、
− 入力メッセージMのベース・ハッシュh、122を受け取るステップ520と、
− 複数のジョイント・エンコーディングの第1及び第2セットの形式でベース・ハッシュhからの複数の被導出ハッシュhiと乗数kとを導出するステップ530であって、第1セットは、それぞれが乗数kとジョイント・エンコードされる複数の被導出ハッシュAi=Enc(k,hi)(i=0...2n−1)221−223を含み、第2セットも複数の被導出ハッシュを含み、第2セット内の被導出ハッシュの各々は、複数の被導出ハッシュのうち少なくとも1つの他のものとジョイント・エンコードされている(Bi=Enc(h2i,h2i+1),i=0...n−1)321−323、ステップ530と、
− 複数のジョイント・エンコーディングAiの第1セットから、ブラインド・ベース乗数Aを算出するステップ540と、
− 複数のジョイント・エンコーディングBiの第2セットから、複数のブラインド補助乗数ηi、136を算出するステップ550であって、複数のブラインド補助乗数は複数の補助点Giに対応している、ステップ550と、
− 楕円曲線におけるベース・ポイントとブラインド・ベース乗数との点乗算、及びブラインド補助乗数と補助点との複数の点乗算を計算することにより、乗数kとベース・ポイントGとの点乗算kG、141を求めるために、ブラインド楕円曲線計算を実行するステップ560とを有する。
− 複数のジョイント・エンコーディングの更なる第1及び第2セットの形式でベース・ハッシュから、乗数kと更なる複数の被導出ハッシュtiとを導出するステップ610であって、更なる第1セットは、それぞれが乗数kとジョイント・エンコードされる複数の被導出ハッシュXi=Enc(k,ti)(i=0...2n−1)を含み、更なる第2セットは、それぞれがベース・ハッシュhとジョイント・エンコードされる複数の被導出ハッシュYi=Enc(h,ti)(i=0...2n−1)を含む、ステップ610と、
− 複数のジョイント・エンコーディングXiの更なる第1セットから、ブラインド化された乗数B=K’・ΣiDiTi、151を、更なる第1セットにおけるエンコードされた乗数の加重平均K’=Σiγik’iに、更なる第1セットにおける被導出ハッシュとエンコードされた乗数との加重平均(ΣiDiTi,Ti=ti+Σjδi,jk’j)を乗算したものとして算出するステップ620と、
− 複数のジョイント・エンコーディングYiの更なる第2セットから、ブラインド化されたベース・ハッシュH、156を、更なる第2セットにおけるエンコードされたベース・ハッシュの加重平均として(H=Σiμih’i)、デ・ブラインディング値T’、157を、エンコードされたベース・ハッシュと被導出ハッシュとの加重平均として(T’=ΣiDiT’i,T’i=ti+Σjvi,jhj)算出するステップ630と、
− ブラインド化された乗数の逆数B−1と、デ・ブラインディング値T’と、シグネチャの第1コンポーネントrにプライベート値xを掛けたものに、ブラインド化されたベース・ハッシュHを合計したもの(rx+H)との積を、デバイスのエンコード計算ネットワークで算出するステップと
により計算するステップを更に含む。
Claims (14)
- 暗号プロトコルで使用するための楕円曲線におけるベース・ポイントと乗数との間の楕円曲線における点乗算を算出する電子点乗算デバイスであって、当該デバイスは
− 前記楕円曲線における複数の事前に算出された補助点と前記ベース・ポイントとを保存するストレージと、
− 入力メッセージのベース・ハッシュを受け取るように構成される入力インターフェースと、
− プロセッサ回路と
を有し、前記プロセッサ回路は
− 複数のジョイント・エンコーディングの第1及び第2セットの形式で前記ベース・ハッシュから複数の被導出ハッシュと前記乗数とを導出するステップであって、前記第1セットは、それぞれが前記乗数とジョイント・エンコードされる前記複数の被導出ハッシュを含み、前記第2セットも前記複数の被導出ハッシュを含み、前記第2セット内の前記被導出ハッシュの各々は、前記複数の被導出ハッシュのうち少なくとも1つの他のものとジョイント・エンコードされている、ステップと、
− 複数のジョイント・エンコーディングの前記第1セットから、ブラインド化されたベース乗数を算出するステップと、
− 複数のジョイント・エンコーディングの前記第2セットから、複数のブラインド化された補助乗数を算出するステップであって、前記複数のブラインド化された補助乗数は前記複数の補助点に対応している、ステップと、
− 前記楕円曲線における前記ベース・ポイントと前記ブラインド化されたベース乗数との前記点乗算、及びブラインド化された補助乗数と補助点との前記複数の点乗算の点加算を算出することにより、前記乗数と前記ベース・ポイントとの前記点乗算を求めるために、ブラインド化された楕円曲線計算を実行するステップと
を行うように構成されている、点乗算デバイス。 - 前記ブラインド化されたベース乗数と前記複数のブラインド化された補助乗数とは、前記ブラインド化された楕円曲線計算の実行中に平文フォーマットで表現されている、請求項1に記載の点乗算デバイス。
- 前記プロセッサ回路は第1エンコード計算ネットワークとともに構成され、前記第1エンコード計算ネットワークは、ジョイント・エンコード関数ペアの第1セットを、前記ベース・ハッシュの自身とのジョイント・エンコーディングに適用し、ジョイント・エンコード関数ペアは、前記ベース・ハッシュから前記乗数を導出するように構成されるデ・ランダム関数と、ハッシュ多様化関数の集合のうちのハッシュ多様化関数とのジョイント・エンコーディングである、請求項1又は2に記載の点乗算デバイス。
- 前記プロセッサ回路は第2エンコード計算ネットワークとともに構成され、前記第2エンコード計算ネットワークは、ジョイント・エンコード関数ペアの第2セットを、前記ベース・ハッシュの自身とのジョイント・エンコーディングに適用し、ジョイント・エンコード関数ペアは、ハッシュ多様化関数の集合のうちの少なくとも2つのハッシュ多様化関数のジョイント・エンコーディングである、請求項1−3のうち何れか1項に記載の点乗算デバイス。
- 前記デ・ランダム関数及び/又は前記ハッシュ多様化関数は、SLT構成に従って構成されている、請求項3又は4に記載の点乗算デバイス。
- 複数のジョイント・エンコーディングの前記第1セット及び/又は複数のジョイント・エンコーディングの前記第2セットは、バイト毎又はニブル毎のジョイント・エンコーディングである、請求項1−5のうちの何れか1項に記載の点乗算デバイス。
- 前記第1エンコード計算ネットワーク及び/又は前記第2エンコード計算ネットワークは、エンコードされたモンゴメリー・ディジット・ベース計算用に構成されている、請求項1−6のうちの何れか1項に記載の点乗算デバイス。
- 前記複数の事前に算出された補助点は、事前に算出された乗数と前記ベース・ポイントとの間の点乗算として取得されている、請求項1−7のうちの何れか1項に記載の点乗算デバイス。
- 前記ブラインド化されたベース乗数は、複数のジョイント・エンコーディングの前記第1セットにおける多様化されたハッシュと前記乗数との加重和であり、前記複数のブラインド化された補助乗数は、前記加重和における前記多様化されたハッシュを補正するために選択されている、請求項1−8のうちの何れか1項に記載の点乗算デバイス。
- 前記入力メッセージにおけるECDSAシグネチャを計算するように更に構成され、前記プロセッサ回路は、前記乗数と前記ベース・ポイントとの間の前記楕円曲線における前記点乗算から、前記シグネチャの第1コンポーネントを求めるように構成されている、請求項1−9のうちの何れか1項に記載の点乗算デバイス。
- 前記プロセッサ回路は、前記シグネチャの第2コンポーネントを、
複数のジョイント・エンコーディングの更なる第1及び第2セットの形式で前記ベース・ハッシュから、前記乗数と更なる複数の被導出ハッシュとを導出するステップであって、前記更なる第1セットは、それぞれが前記乗数とジョイント・エンコードされる前記複数の被導出ハッシュを含み、前記更なる第2セットは、それぞれが前記ベース・ハッシュとジョイント・エンコードされる前記複数の被導出ハッシュを含む、ステップと、
複数のジョイント・エンコーディングの前記更なる第1セットから、ブラインド化された乗数を、前記更なる第1セットにおける前記エンコードされた乗数の加重平均に、前記更なる第1セットにおける被導出ハッシュと前記エンコードされた乗数との加重平均を乗算したものとして算出するステップと、
複数のジョイント・エンコーディングの前記更なる第2セットから、ブラインド化されたベース・ハッシュを、前記更なる第2セットにおける前記エンコードされたベース・ハッシュの加重平均として、デ・ブラインディング値を、前記エンコードされたベース・ハッシュと被導出ハッシュとの加重平均として算出するステップと、
前記ブラインド化された乗数の逆数と、デ・ブラインディング値と、前記シグネチャの前記第1コンポーネントにプライベート値を掛けたものに、前記ブラインド化されたベース・ハッシュを合計したものとの積を、前記デバイスのエンコード計算ネットワークで算出するステップと
により算出するように構成されている、請求項10に記載の点乗算デバイス。 - 暗号プロトコルで使用するための楕円曲線におけるベース・ポイントと乗数との間の楕円曲線における点乗算を算出する電子点乗算方法であって、当該方法は
− 前記楕円曲線における複数の事前に算出された補助点と前記ベース・ポイントとを保存するステップと、
− 入力メッセージのベース・ハッシュを受け取るステップと、
− 複数のジョイント・エンコーディングの第1及び第2セットの形式で前記ベース・ハッシュから複数の被導出ハッシュと前記乗数とを導出するステップであって、前記第1セットは、それぞれが前記乗数とジョイント・エンコードされる前記複数の被導出ハッシュを含み、前記第2セットも前記複数の被導出ハッシュを含み、前記第2セット内の前記被導出ハッシュの各々は、前記複数の被導出ハッシュのうち少なくとも1つの他のものとジョイント・エンコードされている、ステップと、
− 複数のジョイント・エンコーディングの前記第1セットから、ブラインド化されたベース乗数を算出するステップと、
− 複数のジョイント・エンコーディングの前記第2セットから、複数のブラインド化された補助乗数を算出するステップであって、前記複数のブラインド化された補助乗数は前記複数の補助点に対応している、ステップと、
− 前記楕円曲線における前記ベース・ポイントと前記ブラインド化されたベース乗数との前記点乗算、及びブラインド化された補助乗数と補助点との前記複数の点乗算の点加算を算出することにより、前記乗数と前記ベース・ポイントとの前記点乗算を求めるために、ブラインド化された楕円曲線計算を実行するステップと
を含む点乗算方法。 - シグネチャの第2コンポーネントを、
複数のジョイント・エンコーディングの更なる第1及び第2セットの形式で前記ベース・ハッシュから、前記乗数と更なる複数の被導出ハッシュとを導出するステップであって、前記更なる第1セットは、それぞれが前記乗数とジョイント・エンコードされる前記複数の被導出ハッシュを含み、前記更なる第2セットは、それぞれが前記ベース・ハッシュとジョイント・エンコードされる前記複数の被導出ハッシュを含む、ステップと、
複数のジョイント・エンコーディングの前記更なる第1セットから、ブラインド化された乗数を、前記更なる第1セットにおける前記エンコードされた乗数の加重平均に、前記更なる第1セットにおける被導出ハッシュと前記エンコードされた乗数との加重平均を乗算したものとして算出するステップと、
複数のジョイント・エンコーディングの前記更なる第2セットから、ブラインド化されたベース・ハッシュを、前記更なる第2セットにおける前記エンコードされたベース・ハッシュの加重平均として、デ・ブラインディング値を、前記エンコードされたベース・ハッシュと被導出ハッシュとの加重平均として算出するステップと、
前記ブラインド化された乗数の逆数と、デ・ブラインディング値と、前記シグネチャの第1コンポーネントにプライベート値を掛けたものに、前記ブラインド化されたベース・ハッシュを合計したものとの積を、デバイスのエンコード計算ネットワークで算出するステップと
により算出するステップを更に含む請求項12に記載の点乗算方法。 - 請求項11に記載の方法をプロセッサ・システムに実行させる命令を表現する一時的又は非一時的なデータを含むコンピュータ読み取り可能な媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP17161578.4A EP3376705A1 (en) | 2017-03-17 | 2017-03-17 | Elliptic curve point multiplication device and method in a white-box context |
EP17161578.4 | 2017-03-17 | ||
PCT/EP2018/056492 WO2018167198A1 (en) | 2017-03-17 | 2018-03-15 | Elliptic curve point multiplication device and method in a white-box context |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020510879A true JP2020510879A (ja) | 2020-04-09 |
JP7123959B2 JP7123959B2 (ja) | 2022-08-23 |
Family
ID=58358484
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019549551A Active JP7123959B2 (ja) | 2017-03-17 | 2018-03-15 | 楕円曲線点乗算デバイス及び方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11290272B2 (ja) |
EP (2) | EP3376705A1 (ja) |
JP (1) | JP7123959B2 (ja) |
CN (1) | CN110663215B (ja) |
WO (1) | WO2018167198A1 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SG11201909013RA (en) * | 2019-03-15 | 2019-10-30 | Alibaba Group Holding Ltd | Authentication based on a recoverd public key |
EP3713148B1 (en) | 2019-03-22 | 2022-08-03 | Giesecke+Devrient Mobile Security GmbH | White-box ecc implementation |
WO2021025631A1 (en) * | 2019-08-05 | 2021-02-11 | Securify Bilisim Teknolojileri Ve Guvenligi Egt. Dan. San. Ve Tic. Ltd. Sti. | A method for generating digital signatures |
CN111314054B (zh) * | 2020-01-21 | 2020-12-15 | 衡阳师范学院 | 一种轻量级eceg分组密码实现方法、系统及存储介质 |
CN111510299B (zh) * | 2020-04-10 | 2021-03-19 | 宁波富万信息科技有限公司 | 联合数字签名生成方法、电子设备和计算机可读介质 |
US11502818B2 (en) * | 2020-05-06 | 2022-11-15 | King Saud University | System to secure encoding and mapping on elliptic curve cryptography (ECC) |
US20240187230A1 (en) * | 2021-12-17 | 2024-06-06 | Pqsecure Technologies, Llc | A low overhead method and architecture for side-channel attack resistance in elliptic curve arithmetic |
CN114338039B (zh) * | 2021-12-28 | 2024-07-30 | 上海市数字证书认证中心有限公司 | 白盒处理后的椭圆曲线签名方法和系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007126049A1 (ja) * | 2006-04-28 | 2007-11-08 | Panasonic Corporation | プログラム難読化システム、プログラム難読化装置及びプログラム難読化方法 |
JP2009515206A (ja) * | 2005-11-03 | 2009-04-09 | サーティコム コーポレイション | 同時スカラー乗算方法 |
JP2010139544A (ja) * | 2008-12-09 | 2010-06-24 | Renesas Electronics Corp | 剰余演算装置、及び剰余演算方法 |
WO2012090284A1 (ja) * | 2010-12-27 | 2012-07-05 | 三菱電機株式会社 | 演算装置、演算装置の楕円スカラー倍算方法、楕円スカラー倍算プログラム、演算装置の剰余演算方法、剰余演算プログラム、演算装置のゼロ判定方法およびゼロ判定プログラム |
JP2013524263A (ja) * | 2010-03-31 | 2013-06-17 | イルデト カナダ コーポレーション | ホワイトボックス攻撃から暗号化資産を保護するためのシステムと方法 |
WO2015153670A1 (en) * | 2014-04-04 | 2015-10-08 | Qualcomm Incorporated | Elliptic curve point multiplication procedure resistant to side-channel information leakage |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7599491B2 (en) | 1999-01-11 | 2009-10-06 | Certicom Corp. | Method for strengthening the implementation of ECDSA against power analysis |
FR2807898B1 (fr) * | 2000-04-18 | 2002-06-28 | Gemplus Card Int | Procede de cryptographie sur courbes elliptiques |
DE10161137B4 (de) * | 2001-12-12 | 2008-02-14 | Siemens Ag | Verfahren und System zum kryptographischen Bearbeiten von Daten |
EP1714420B1 (en) | 2004-02-13 | 2010-12-01 | Certicom Corp. | One way authentication |
CN100414492C (zh) * | 2005-11-04 | 2008-08-27 | 北京浦奥得数码技术有限公司 | 一种椭圆曲线密码系统及实现方法 |
CA2698000C (en) * | 2007-09-04 | 2015-10-27 | Certicom Corp. | Signatures with confidential message recovery |
JP2009182864A (ja) * | 2008-01-31 | 2009-08-13 | Hitachi Kokusai Electric Inc | 署名装置、検証装置、プログラム、署名方法、検証方法及びシステム |
CN101610153A (zh) * | 2008-06-20 | 2009-12-23 | 航天信息股份有限公司 | 基于椭圆曲线签名算法的电子签章认证方法 |
WO2010010430A2 (en) * | 2008-07-25 | 2010-01-28 | Lee Kok-Wah | Methods and systems to create big memorizable secrets and their applications in information engineering |
EP2348452B1 (en) * | 2009-12-18 | 2014-07-02 | CompuGroup Medical AG | A computer implemented method for sending a message to a recipient user, receiving a message by a recipient user, a computer readable storage medium and a computer system |
US8386790B2 (en) | 2010-02-25 | 2013-02-26 | GM Global Technology Operations LLC | Method of using ECDSA with winternitz one time signature |
US9300472B2 (en) | 2011-09-30 | 2016-03-29 | Nokia Technologies Oy | Method and apparatus for improving digital signatures |
WO2013109932A1 (en) * | 2012-01-18 | 2013-07-25 | OneID Inc. | Methods and systems for secure identity management |
WO2013116916A1 (en) * | 2012-02-09 | 2013-08-15 | Irdeto Canada Corporation | System and method for generating and protecting cryptographic keys |
EP2936727A1 (en) | 2012-12-21 | 2015-10-28 | Koninklijke Philips N.V. | Computing device comprising a table network |
CN103475473B (zh) * | 2013-08-26 | 2016-10-05 | 数安时代科技股份有限公司 | 数字签名方法和设备、数字签名中密码运算方法和服务器 |
CN103701598B (zh) * | 2013-12-05 | 2017-07-11 | 武汉信安珞珈科技有限公司 | 一种基于sm2签名算法的复核签名方法和数字签名设备 |
US10256970B2 (en) | 2013-12-20 | 2019-04-09 | Konnklijke Philips N.V. | Secure data transformations |
US9906368B2 (en) * | 2014-12-23 | 2018-02-27 | Nxp B.V. | General encoding functions for modular exponentiation encryption schemes |
US9584320B1 (en) * | 2014-12-23 | 2017-02-28 | EMC IP Holding Company LLC | Blinding function in elliptic curve cryptography |
JP6788610B2 (ja) | 2015-04-30 | 2020-11-25 | コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. | ブロック・サイファーを計算するための暗号装置 |
EP3125145B1 (en) * | 2015-07-31 | 2019-04-03 | Nxp B.V. | White-box elliptic curve point multiplication |
US10243738B2 (en) * | 2015-12-04 | 2019-03-26 | Microsoft Technology Licensing, Llc | Adding privacy to standard credentials |
US10680810B2 (en) * | 2016-10-26 | 2020-06-09 | Nxp B.V. | Method of generating an elliptic curve cryptographic key pair |
-
2017
- 2017-03-17 EP EP17161578.4A patent/EP3376705A1/en not_active Withdrawn
-
2018
- 2018-03-15 WO PCT/EP2018/056492 patent/WO2018167198A1/en active Application Filing
- 2018-03-15 JP JP2019549551A patent/JP7123959B2/ja active Active
- 2018-03-15 CN CN201880032009.7A patent/CN110663215B/zh active Active
- 2018-03-15 US US16/493,116 patent/US11290272B2/en active Active
- 2018-03-15 EP EP18711335.2A patent/EP3596876B1/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009515206A (ja) * | 2005-11-03 | 2009-04-09 | サーティコム コーポレイション | 同時スカラー乗算方法 |
WO2007126049A1 (ja) * | 2006-04-28 | 2007-11-08 | Panasonic Corporation | プログラム難読化システム、プログラム難読化装置及びプログラム難読化方法 |
JP2010139544A (ja) * | 2008-12-09 | 2010-06-24 | Renesas Electronics Corp | 剰余演算装置、及び剰余演算方法 |
JP2013524263A (ja) * | 2010-03-31 | 2013-06-17 | イルデト カナダ コーポレーション | ホワイトボックス攻撃から暗号化資産を保護するためのシステムと方法 |
WO2012090284A1 (ja) * | 2010-12-27 | 2012-07-05 | 三菱電機株式会社 | 演算装置、演算装置の楕円スカラー倍算方法、楕円スカラー倍算プログラム、演算装置の剰余演算方法、剰余演算プログラム、演算装置のゼロ判定方法およびゼロ判定プログラム |
WO2015153670A1 (en) * | 2014-04-04 | 2015-10-08 | Qualcomm Incorporated | Elliptic curve point multiplication procedure resistant to side-channel information leakage |
Also Published As
Publication number | Publication date |
---|---|
JP7123959B2 (ja) | 2022-08-23 |
EP3596876B1 (en) | 2020-07-15 |
CN110663215B (zh) | 2024-03-08 |
EP3596876A1 (en) | 2020-01-22 |
CN110663215A (zh) | 2020-01-07 |
WO2018167198A1 (en) | 2018-09-20 |
US11290272B2 (en) | 2022-03-29 |
US20200119918A1 (en) | 2020-04-16 |
EP3376705A1 (en) | 2018-09-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7123959B2 (ja) | 楕円曲線点乗算デバイス及び方法 | |
US12101415B2 (en) | Method of RSA signature or decryption protected using a homomorphic encryption | |
US7764785B2 (en) | Method for communicating securely over an insecure communication channel | |
CN109661792B (zh) | 计算分组密码的设备和方法 | |
US11818245B2 (en) | Cryptographic device and method | |
US20080240443A1 (en) | Method and apparatus for securely processing secret data | |
WO2003065639A2 (en) | System and method of hiding cryptographic private keys | |
US11063743B2 (en) | Method of RSA signature of decryption protected using assymetric multiplicative splitting | |
EP2813029A1 (en) | System and method for generating and protecting cryptographic keys | |
US8976960B2 (en) | Methods and apparatus for correlation protected processing of cryptographic operations | |
JP6517436B2 (ja) | 暗号化デバイス及び符号化デバイス | |
JP6884284B2 (ja) | キー付きメッセージ認証コードのホワイトボックス計算 | |
EP3477889B1 (en) | Using white-box in a leakage-resilient primitive | |
CN101296076A (zh) | 一种基于ecc的数字签名方案 | |
WO2017114739A1 (en) | System and method for hiding a cryptographic secret using expansion | |
Shirazi et al. | An innovative design of substitution-box using Trigonometric-Multiplicative Functions Using Square Root Arguments: A Data-driven study. | |
Jain et al. | Analysis of Different Cryptographic Algorithms in Cloud-Based Multi-robot Systems | |
Barker et al. | Techniques to Enhance Security of an Authentication Protocol | |
Krämer et al. | Mathematical and Cryptological Background |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190918 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210312 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220126 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220201 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220314 |
|
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: 20220719 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220810 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7123959 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |