TW201215069A - Authentication device, authentication method, and program - Google Patents

Authentication device, authentication method, and program Download PDF

Info

Publication number
TW201215069A
TW201215069A TW100124969A TW100124969A TW201215069A TW 201215069 A TW201215069 A TW 201215069A TW 100124969 A TW100124969 A TW 100124969A TW 100124969 A TW100124969 A TW 100124969A TW 201215069 A TW201215069 A TW 201215069A
Authority
TW
Taiwan
Prior art keywords
algorithm
verifier
prover
public key
challenge
Prior art date
Application number
TW100124969A
Other languages
English (en)
Other versions
TWI455555B (zh
Inventor
Koichi Sakumoto
Taizo Shirai
Harunaga Hiwatari
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Publication of TW201215069A publication Critical patent/TW201215069A/zh
Application granted granted Critical
Publication of TWI455555B publication Critical patent/TWI455555B/zh

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/32Cryptographic 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
    • 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/32Cryptographic 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/3218Cryptographic 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 using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • H04L9/3221Cryptographic 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 using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs interactive zero-knowledge proofs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3093Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving Lattices or polynomial equations, e.g. NTRU scheme
    • 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/32Cryptographic 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/3271Cryptographic 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 using challenge-response
    • 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/32Cryptographic 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/3236Cryptographic 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 using cryptographic hash functions
    • H04L9/3239Cryptographic 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 using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer And Data Communications (AREA)
  • Communication Control (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Description

201215069 六、發明說明: 【發明所屬之技術領域】 本揭露係有關於認證裝置、認證方法、及程式。 【先前技術】 伴隨資訊處理技術或通訊技術的急速發展,無論公文 書、私文書都急速朝著文書的電子化邁進。伴隨於此,許 多個人或企業,對電子文書的安全管理寄與莫大的關心。 受到如此高的關心,在各方面關於電子文書對竊聽或僞造 等之破壞行爲的安全性正被熱烈討論著。電子文書對竊聽 的安全性,係例如藉由電子文書的加密而被確保。又,電 子文書對僞造的安全性,係藉由利用電子簽章而被確保。 但是’加密或電子簽章係被要求要有足夠的破壞耐性。 電子簽章,係被利用來特定電子文書的作成者。因此 ’電子簽章應該是只有電子文書的作成者才能夠生成。假 設惡意第三者可生成相同的電子簽章,則該第三者就可假 冒成電子文書的作成者。亦即,電子文書就被惡意第三者 所僞造。爲了防止此種僞造,關於電子簽章的安全性,有 各種議論正在交流著。目前廣爲利用的電子簽章方式,爲 人熟知的有例如利用R S A簽章方式或D S A簽章方式的方 式。 RS A簽章方式係以「對很大之合成數的質因數分解之 困難性(以下稱作質因數分解問題)」爲安全性之依據。又 ’ DSA簽章方式係以「對離散對數問題之解的導出困難性 -5- 201215069 」爲安全性之依據。這些依據是起因於,利用古典電腦而 能有效率地解出質因數分解問題或離散對數問題的演算法 ,是不存在的。亦即,上記的困難性是意味著,古典電腦 中的計算量之困難性。然而,一般認爲,若使用量子電腦 ,則對質因數分解問題或離散對數問題之解答,是可以有 效率地算出。 目前利用的電子簽章方式或公開金鎗認證方式中,有 許多都是和RSA簽章方式或DSA簽章方式同樣地,以質 因數分解問題或離散對數問題之困難性爲安全性之依據。 因此,如此的電子簽章方式或公開金鑰認證方式,係在量 子電腦被實用化的情況下,就無法確保其安全性。於是, 以與質因數分解問題或離散對數問題等能被夠量子電腦容 易解開之問題不同之問題來作爲安全性之依據的新的電子 簽章方式及公開金鑰認證方式,是被人們所需求。作爲可 被量子電腦容易解開的困難問題,例如有對多變數多項式 之解答的困難性(以下稱作多變數多項式問題)。 其他還有,作爲難以被量子電腦所解開的問題有, Syndrome Decoding 問題、Constrained Linear Equation 問 題、Permuted Kernel 問題、Permuted Perception 問題、 代數曲面上的求區間問題等。 在這些問題當中,代數曲面上的求區間問題以外之問 題係爲NP困難,這是人們所熟知的。作爲其應用例,例 如下記的非專利文獻1、2所揭露,基於Syndrome Decoding問題的公開金鑰認證方式。又,下記的非專利 ⑧ -6- 201215069 文獻3係揭露了,基於Permuted Kernel問題的公開金鑰 認證方式。除此以外,還有基於 Constrained Linear Equations問題的公開金鑰認證方式或基於 Permuted Perceptions問題的公開金鑰認證方式等,已被提出。 [先前技術文獻] [非專利文獻] [非專利文獻 l]Jacques Stern,A New Identification Scheme Based on Syndrome Decoding, CRYPTO 1 993,pl3-2 1 .
[非專利文獻 2]Jacques Stern,A New Paradigm for Public Key Identification, IEEE Transactions on Information Theory, 19 9 6, pl3-21.
[非專利文獻 3]Adi Shamir, An Efficient Identification Scheme Based on Permuted Kernels (Extended Abstract), CRYPTO 1 9 8 9,p 6 0 6 - 6 0 9 . 【發明內容】 [發明所欲解決之課題] 此處,先來探討公開金鍮認證方式的安全性等級。公 開金鑰認證方式的安全性等級,係存在有2個安全性等級 。其1個係爲,對於被動性攻撃(passive attack)的安全性 等級。另1個係爲,對於主動性攻撃(active attack)的安 全性等級。對被動性攻撃的安全性等級,係爲想定了攻撃 201215069 者只能竊聽依照正當協定之證明者與驗證者之對話的安全 性等級。另一方面,對主動性攻撃的安全性等級,係爲想 定了攻撃者能夠直接與證明者執行對話協定之狀況的安全 性等級。亦即,對主動性攻撃的安全性等級,係想定了攻 撃者可任意與證明者進行對話協定。 上記非專利文獻1〜3所記載之先前的公開金鑰認證 方式,係保證了對被動性攻撃的安全性等級。可是,這些 先前的公開金鑰認證方式,在進行了並列式反覆構成的情 況下,是否能夠確實保證對主動性攻撃的安全性等級,則 無從得知。這是因爲,在進行了並列式反覆構成的情況下 ,零知識性係不被保存,這是一般所熟知的。因此,爲了 在並列式反覆構成下確實保證主動性攻撃的安全性等級, 還必須要保證更多其他的性質。 先前的公開金鑰認證方式,係使用1組金鑰配對(公 開金鑰y、祕密金鑰S)而將「針對y可知y = F(s)的s」, 當作證明者對驗證者進行證明的方式。因此,在進行被驗 證所受理之對話時,「進行對話之證明者是使用了 S」此 一資訊,是無法避免不被驗證者所知道。又,此形式的公 開金鑰認證方式的並列式反覆構成中,若F沒有保證碰撞 困難性,則是否能夠確實保證對主動性攻撃的安全性等級 ,是無從得知。實際上,在前述的公開金鑰認證方式中所 使用的函數F’並沒有保證碰撞困難性。 於是,本揭露係有鑑於上述問題而硏發,本揭露的目 的在於提供一種’即使函數F沒有被保證碰撞困難性’即 -8- 201215069 使將對話協定予以並列式反覆執行,仍可保證對主動性攻 撃的安全性等級的新穎且改良過的認證裝置、認證方法、 及程式。 [用以解決課題之手段] 爲了解決上述課題,若依據本揭露之某一觀點,則可 提供一種認證裝置,其係具備:金鑰保持部,係針對L個 (L22)祕密金鑰Sj(i=l〜L)、及η次多變數多項式之組合 F(ng 2),將滿足yi = F(Si)的L個公開金鑰yi加以保持; 和對話協定執行部,係與驗證者之間執行對話協定,用來 證明已知(L-1)個滿足yi = F(Si)之祕密金鑰Si;前記對話協 定執行部,係在與前記驗證者之間執行前記對話協定之際 ,不讓該當驗證者獲知是使用了哪個祕密金鑰Si。 又,前記對話協定執行部係亦可含有:挑戰收訊部, 係從前記驗證者,接收L個挑戰Chi ;和挑戰選擇部,係 從已被前記挑戰收訊部所接收的L個挑戰Chi之中,任意 選擇出(L-1)個挑戰Chi ;和回答生成部,係使用前記祕密 金鑰^,生成對於已被前記挑戰選擇部所選擇之(L-1)個 挑戰Chi之各者的(L-1)個回答RsPi ;和回答送訊部,係 將已被前記回答生成部所生成的(L-1)個回答RsPi,發送 至前記驗證者。 又,前記對話協定執行部係亦可含有:訊息送訊部, 係對前記驗證者,發送L個前記祕密金鑰Si所分別對應 之訊息Cmti。此時,前記挑戰收訊部,係將隨應於已被 -9- 201215069 前記訊息送訊部所發送之各訊息Cmti ’而被前記驗證者 從k種(k 2 2)驗證模態之中所選擇出來的驗證模態加以表 示的挑戰Chi,予以接收。 又,亦可構成爲,若前記訊息Cmti爲!, …,Ci, N),則前記訊息送訊部係使用單向性函數Η而算出 新的訊息 Cmt’ ,…,CmtL) ’然後將該當訊息
Cmt’發送至前記驗證者;前記回答送訊部,係將前記回 答RsPi,連同即使前記驗證者利用該當回答RsPi也無法 復原之前記訊息Cmti的要素,予以發送。 又,亦可爲,前記金錄保持部,係在前記L個祕密金 鑰Si當中,不保存其中1把祕密金鑰si()(l S L)。此時 ,前記對話協定執行部,係基於僞證演算法,而執行在前 記對話協定之中所被執行的關於前記祕密金鑰^ 〇的處理 0 又,爲了解決上述課題,若依據本揭露之另一觀點, 則可提供一種認證裝置,其係具備:金鑰保持部,係針對 L個祕密金鑰s i (i = 1〜L)、η次多變數多項式之組合F (η 2 2),將滿足yi = F(Si)的L個公開金鑰yi加以保持;和挑戰 收訊部,係從驗證者,接收Q組(Q 2 2)之L個挑戰 Chi(j)(j = l〜Q);和挑戰選擇部,係從已被前記挑戰收訊部 所接收的Q組之L個挑戰Chi(j)之中,任意選擇出1組之 L個挑戰Chi(j);和回答生成部,係使用前記祕密金鑰Si ,生成對於已被前記挑戰選擇部所選擇之L個挑戰Chi(j) 之各者的L個回答Rspi ;和回答送訊部,係將已被前記 ⑧ -10- 201215069 回答生成部所生成的L個回答RsPi,發送至前記驗證者 〇 又,前記對話協定執行部係亦可含有:訊息送訊部, 係對前記驗證者,發送L個前記祕密金鑰Si所分別對應 之訊息Cmti。此時,前記挑戰收訊部,係將隨應於已被 前記訊息送訊部所發送之各訊息Cmti,而被前記驗證者 從k種(k 2 2)驗證模態之中所選擇出來的驗證模態加以表 示的挑戰Chi⑴,予以接收。 又,亦可構成爲,若前記訊息Cmti爲Cmtj = (Ci,丨, N),則前記訊息送訊部係使用單向性函數Η而算出 新的訊息Cmt’ =H(Cmt,,…,CmtL),然後將該當訊息 Cmt’發送至前記驗證者;前記回答送訊部,係將前記回 答RsPi,連同即使前記驗證者利用該當回答RsPi也無法 復原之前記訊息Cmti的要素,予以發送。 又,爲了解決上述課題,若依據本揭露之另一觀點, 則可提供一種認證方法,其係含有:金鑰生成步驟,係針 對L個(L3 2)祕密金鑰Si(i = l〜L)、及η次多變數多項式 之組合F(ng 2),生成滿足yi = F(Si)的L個公開金鑰yi ; 和對話協定執行步驟,係與驗證者之間執行對話協定,用 來證明已知(L-1)個滿足yj = F(Si)之祕密金鑰Si;在前記對 話協定執行步驟中,係在與前記驗證者之間執行前記對言舌 協定之際,不讓該當驗證者獲知是使用了哪個祕密金翰Si 〇 又,爲了解決上述課題,若依據本揭露之另一觀點, -11 - 201215069 則可提供一種程式,其係用來使金鑰保持機能’係針對L 個(L 2 2)祕密金鑰s i (i = 1〜L)、及η次多變數多項式.之組 合F(n2 2),將滿足yi = F(Si)的L個公開金鑰yi加以保持 :和對話協定執行機能’係與驗證者之間執彳了對話協定, 用來證明已知(L-1)個滿足yi = F(Si)之祕密金鑰Si;被電腦 實現所需的程式,其中’前記對話協定執行機能’係在與 前記驗證者之間執行前記對話協定之際’不讓該當驗證者 獲知是使用了哪個祕密金鑰Si » 又,爲了解決上述課題,若依據本揭露之另一觀點, 則可提供一種認證方法,其係含有:金鑰生成步驟’係針 對L個祕密金鑰Si(i = l〜L)、η次多變數多項式之組合 F(n22),生成滿足yi = F(Si)的L個公開金鑰yi;和挑戰收 訊步驟,係從驗證者,接收Q組(Q 2 2)之L個挑戰 Chi(j)(j = l〜Q);和挑戰選擇步驟,係從已被前記挑戰收訊 步驟所接收的Q組之L個挑戰Chi⑴之中,任意選擇出1 組之L個挑戰Chi(j);和回答生成步驟,係使用前記祕密 金鑰Si,生成對於已被前記挑戰選擇步驟所選擇之L個挑 戰Chi(j)之各者的L個回答RsPi ;和回答送訊步驟’係將 已被前記回答生成步驟所生成的L個回答Rspi’發送至 前記驗證者》 又,爲了解決上述課題,若依據本揭露之另一觀點’ 則可提供一種程式,其係用來使電腦發揮機能而成爲:金 鑰保持機能,係針對L個祕密金鑰Si(i=l〜L)、η次多變 數多項式之組合F(ng2),將滿足yi = F(Si)的L個公開金 -12- 201215069 鑰yi加以保持;和挑戰收訊機能’係從驗證者,接收Q 組(Q2 2)之L個挑戰Chi(j)(j = l〜Q);和挑戰選擇機能, 係從已被前記挑戰收訊機能所接收的Q組之L個挑戰 (:匕⑴之中,任意選擇出1組之L個挑戰Chi(j);和回答生 成機能,係使用前記祕密金鑰Si,生成對於已被前記挑戰 選擇機能所選擇之L個挑戰Chi(j)之各者的L個回答RsPi :和回答送訊機能,係將已被前記回答生成機能所生成的 L個回答Rspi,發送至前記驗證者。又,爲了解決上述課 題,若依據本揭露之另一觀點,則可提供一種記錄著上記 程式的電腦可讀取之記錄媒體。 [發明效果] 如以上之說明,若依據本揭露,則即使將對話協定予 以並列式反覆執行,仍可保證對主動性攻撃的安全性等級 【實施方式】 以下,一邊參照添附圖面,一邊詳細說明本揭露的理 想實施形態。此外,於本說明書及圖面中,對於實質上具 有相同機能構成的構成要素,係標示同一符號以省略重複 說明。 〔關於說明的流程〕 此處,簡單說明以下所記載之關於本揭露之實施形態 -13- 201215069 的說明流程。首先,一面參照圖1,一面說明公開金鑰認 證方式的演算法構成。接下來,一面參照圖2,一面說明 η回合之公開金鑰認證方式。接下來,一面參照圖3,一 面說明SSHlOa公開金鑰認證方式的對話協定。接下來, 一面參照圖4,一面說明SSHlOb公開金鑰認證方式的對 話協定。接下來,一面參照圖5、圖6,一面說明對話協 定的反覆構成。在此之中,簡單說明對主動性攻撃的安全 性等級。 接下來,一面參照圖7,一面說明針對SSHlOa公開 金鑰認證方式之對話協定的僞證演算法。接下來,一面參 照圖8,一面說明針對SSHlOb公開金鑰認證方式之對話 協定的僞證演算法。接下來,一面參照圖9〜圖12,一面 說明將本揭露之第1實施形態所述之手法(本手法#1),適 用於SSHlOa公開金鑰認證方式之對話協定的方法。接下 來’一面參照圖13、圖14,一面說明將本手法#丨適用於 SSHlOb公開金鑰認證方式之對話協定的方法。 接下來,一面參照圖15、圖16,一面說明將本揭露 之第2實施形態所述之手法(本手法#2),適用於SSHlOa 公開金鑰認證方式之對話協定的方法。接下來,一面參照 圖17、圖18’一面說明將本手法#2適用於SSHlOb公開 金鑰認證方式之對話協定的方法。接下來,一面參照圖 19、圖20’ 一面說明本實施形態所述之對話協定中的通 訊量之削減方法。接下來’一面參照圖21,一面說明可 實現本實施形態所述之對話協定的資訊處理裝置的硬體構 ⑧ -14- 201215069 成例。最後,將同實施形態的技術思想作一總結,簡單說 明可由該當技術思想所獲得之作用效果。 (說明項目) 1 :導論 1 -1 :公開金鑰認證方式的演算法構成 1-2:關於η回合之公開金鑰認證方式 1-3: SSHlOa公開金鑰認證方式的對話協定 1-4: SSHlOb公開金鑰認證方式的對話協定 1-5 :對話協定的反覆構成 1-6 :針對SSH 10a公開金鑰認證方式的僞證演算法 1- 7:針對SSHlOb公開金鑰認證方式的僞證演算法 2 :第1實施形態(本手法#1) 2- 1 :槪要 2-2:對SSHlOa公開金鑰認證方式之適用 2-3:對SSHlOa公開金鑰認證方式之適用(變形例1) 2 -4 :對S S Η 1 0 a公開金鑰認證方式之適用(變形例2 ) 2-5:對SSHlOa公開金鑰認證方式之適用(變形例3) 2-6 :對SSH1 Ob公開金鑰認證方式之適用 2- 7:對SSHlOb公開金鑰認證方式之適用(變形例) 3 :第2實施形態(本手法#2) 3 · 1 :槪要 3- 2:對SSHlOa公開金鑰認證方式之適用 3-3 :對SSHlOa公開金鑰認證方式之適用(變形例) -15- 201215069 3-4:對SSHlOb公開金鑰認證方式之適用 3- 5:對SSHlOb公開金鑰認證方式之適用(變形例) 4 :補充 4- 1:關於方式的擴充 4-2 :關於非對話型之公開金鑰認證方式 4-3 :關於通訊量之削減方法 5 :硬體構成 6 :總結 < 1 :導論> 首先,在詳細說明本揭露所述之實施形態以前,先來 簡單說明一般的公開金鑰認證方式的演算法構成、及η回 合之公開金鑰認證方式。 〔1 -1 :公開金鑰認證方式的演算法構成〕 首先,一面參照圖1,一面說明公開金鑰認證方式的 演算法構成。圖1係用來說明公開金鑰認證方式之演算法 構成的說明圖。 (槪要) 所謂公開金鑰認證方式,係爲某人(證明者)利用公開 金鑰Pk及祕密金鑰Sk,讓他人(驗證者)相信這是本人所 需的認證方式。例如,證明者A的公開金鑰pkA,係被公 開給驗證者。另一方面,證明者A的祕密金鑰skA,係被 -16- 201215069 證明者祕密地管理。在公開金鑰認證方式中’知道公開金 鑰pkA所對應之祕密金鑰SkA的人’是只有證明者A本人 〇 當證明者A想要對驗證者B證明這是本人的時候’ 證明者A係只要與驗證者B執行對話協定’證明自己知 道公開金鑰pkA所對應之祕密金鑰skA即可。然後’當藉 由對話協定,證明者A知道祕密金鑰skA這件事情是被驗 證者B所證明時,就證明了證明者A的正當性(其係本人) 〇 此外,要確保公開金鑰認證方式的安全性,需要以下 所示的2個條件。 第1條件係爲,在執行對話協定之際,被未持有祕密 金鑰sk之僞證者成立僞證的機率越小越好。此第丨條件 之成立’稱作「健全性」。亦即可以說,在具有健全性的 對話協定中,不會發生未持有祕密金鑰sk的僞證者,以 無法忽視之機率成立僞證。第2條件係爲,即使執行對話 協定,證明者A所擁有的祕密金鑰skA的資訊也—律不會 洩漏給驗證者B。此第2條件之成立,稱作「零知識性」 〇 藉由利用具有上記的健全性與零知識性的對話協定, 就可確保公開金鑰認證方式的安全性。 (模型) 在公開金鑰認證方式的模型中,如圖1所示,存在有 -17- 201215069 證明者與驗證者這2個實體。證明者係使用金鑰生成演算 法Gen,生成證明者固有的祕密金鑰sk與公開金鑰pk之 配對。接著,證明者係利用使用金鑰生成演算法Gen所生 成之祕密金鑰sk與公開金鑰pk之配對而與驗證者執行對 話協定。此時,證明者係利用證明者演算法P而執行對話 協定。如上記,在對話協定中,證明者係利用證明者演算 法P,而向驗證者證明自己保有祕密金鑰sk。 另一方面,驗證者係利用驗證者演算法V而執行對 話協定,驗證該證明者是否保有,證明者所公開的公開金 鑰所對應的祕密金鑰。亦即,驗證者係爲驗證證明者是否 保有對應於公開金鑰之祕密金鑰的一個實體。如此,公開 金鑰認證方式的模型,係由證明者與驗證者這2個實體、 及金鑰生成演算法Gen、證明者演算法P、驗證者演算法 V這3個演算法所構成。 此外,於以下的說明中,雖然使用「證明者」「驗證 者」這種表現方式,但這些表現方式僅僅只是意味著「實 體」。因此,執行金鑰生成演算法Gen、證明者演算法P 的主體,係爲對應於「證明者」實體的資訊處理裝置。同 樣地,執行驗證者演算法V的主體,係爲資訊處理裝置 。這些資訊處理裝置的硬體構成,係例如圖21所示。亦 即,金鑰生成演算法Gen、證明者演算法P、驗證者演算 法V,係基於ROM904、RAM906、記憶部920、可移除式 記錄媒體928等中所記錄之程式,而被CPU902所執行。 ⑧ -18- 201215069 (金鑰生成演算法Gen) 金鑰生成演算法Gen,係被證明者所利用。然後,金 鑰生成演算法Gen係爲,生成證明者所固有之祕密金鑰 sk與公開金鑰pk之配對的演算法。被金鑰生成演算法 Gen所生成的公開金鑰pk,係被公開。然後,已被公開的 公開金鑰pk,係被驗證者所利用。另一方面,已被金鑰 生成演算法Gen所生成的祕密金鑰sk,係由證明者祕密 地管理,。然後,被祕密管理的祕密金鑰sk,係在對驗證 者證明自己正保有著對應於公開金鎗pk之祕密金鑰sk時 ,會被利用。形式上,金鑰生成演算法Gen係爲一種輸入 安全參數1 λ ( λ係爲0以上的整數),而輸出祕密金鑰sk 與公開金鑰pk的演算法,可表現如下記式(1)。
(sk,pk) <— Gert{\x) …(1) (證明者演算法P) 證明者演算法P ’係被證明者所利用。然後,證明者 演算法P係爲’用來證明保有對應於公開金鑰pk之祕密 金鑰sk此事的演算法。證明者演算法P係被定義成,將 證明者的祕密金鑰sk與公開金鑰pk予以輸入,執行與驗 證者之對話協定的演算法。 -19 - 201215069 (驗證者演算法V) 驗證者演算法V,係被驗證者所利用。然後,驗證者 演算法V係爲,在對話協定之中,驗證證明者是否保有 對應於公開金鑰pk之祕密金鑰sk的演算法。驗證者演算 法V係被定義成,將證明者的公開金鑰pk予以輸入,與 證明者之間執行對話協定之後,輸出0或l(lbit)的演算 法。此外,輸出0時係視爲證明者爲不當,輸出1時係視 爲證明者爲正當。 (補充) 如上記,公開金鑰認證方式,係爲了確保安全性,而 要求必須滿足健全性與零知識性這2個條件。可是,爲了 讓證明者證明自己保有祕密金鑰sk,必須由證明者執行 依存於祕密金鑰sk的程序,將其結果通知給驗證者,讓 驗證者基於該通知內容而執行驗證。依存於祕密金鑰sk 的程序之執行,係在擔保健全性上爲必須。另一方面,即 使將該程序之結果通知給驗證者,也必須要使祕密金鑰 sk的資訊完全不會洩漏給驗證者。因此,上記的金鑰生 成演算法Gen、證明者演算法P、驗證者演算法V係被設 計成滿足這些要件》 以上說明了公開金鑰認證方式的演算法構成。 〔1-2:關於η回合之公開金鑰認證方式〕 接著,一面參照圖2,一面說明η回合之公開金鑰認 ⑧ -20- 201215069 證方式。圖2係用來說明η回合之公開金鑰認證方式的說 明圖。 如上5己’公開金鏡咸證方式’係在對話協定之中,向 驗證者證明證明者保有對應於公開金鑰pk之祕密金鑰sk 之事實的驗證方式。又’爲了擔保公開金鑰認證方式的安 全性’必須要滿足滿足健全性與零知識性這2個條件。因 此’在對話協定之中,如圖2所示,證明者與驗證者雙方 分別執行處理,同時在證明者與驗證者之間進行n次的資 訊交換。 在η回合之公開金鑰認證方式的情況下,使用證明者 演算法Ρ而由證明者執行處理(Step.1),資訊1^就被發送 至驗證者。接下來,使用驗證者演算法V而由驗證者執 行處理(Step. 2) ’資訊T2就被發送至證明者。同樣地執行 處理(Step.3)〜(Step.n),資訊Τ3,…,Τη就被發送,而執 行處理(Step.η+1)。如此,基於資訊是被收送η次之對話 協定的公開金鑰認證方式,稱作「η回合」的公開金鑰認 證方式。 以上說明了 η回合之公開金鑰認證方式。 〔1-3 : SSH 10a公開金鑰認證方式的對話協定〕 接著,一面參照圖3,一面說明SSH 10a公開金鑰認 證方式的對話協定。圖3係用來說明SSH 10a公開金鑰認 證方式之對話協定的說明圖。此外,所謂S S Η 1 0 a公開金 鑰認證方式,係爲基於本案發明者(作本、白井、樋渡)所 -21 - 201215069 想出的多次多變數聯立方程式的求解問題的公開金鑰認證 方式之一。又,該SSHlOa公開金鑰認證方式,係爲3回 合之公開金鑰認證方式之一例。 此外,所謂多次多變數聯立方程式的求解問題,係指 當給定了環K上的m道之η變數多項式6(Χ|,…,Xn), …,fmU!,…,x„)、和向量y e Km時,求出滿足(1(81, …,sn),…,fm(S|,…,sn)) = y 的向量(s 1,…,sn)eKn2 問題。2次以上的多變數聯立方程式的求解問題,係被稱 作NP困難問題,是屬於非常難以解開的問題之分類。 然後,SSHlOa公開金鑰認證方式的對話協定,係由 金鑰生成演算法Gen、證明者演算法P、驗證者演算法V 所構成。以下說明各演算法之內容。 (金鑰生成演算法Gen) 首先說明金鑰生成演算法Gen的構成。金鑰生成演算 法Gen,係生成在環K上所被定義的m道之η變數2次 多項式 f 1 ( X 1,…,X η ),…,f m ( X 1,…,X η )、和向量 s = ( s 1, …,sn)eKn。接著,金鑰生成演算法Gen係計算y = (yi, …,ym)—(f"i(s),…,f"i(s))。然後,金繪生成演算法Gen 係將(fi,…,fm,y)設定成公開金鑰pk,將S·設定成祕密 金鑰。此外,以下是將η變數的向量(Xi,…,Xn)表示成X ,將m道之η變數2次多項式(fi(x),…,fm(x))表示成 F(x)。 -22- ⑧ 201215069 (證明者演算法P、驗證者演算法v) 接著,一面參照圖3,一面說明證明者演算法P、驗 證者演算法V之構成。SSHi〇a公開金鑰認證方式的對話 協定’係使「證明者知道滿足y = F(S)的s」這件事,在完 全不對驗證者洩漏s之資訊的情況下,讓驗證者證明之。 此外’已被金鎗生成演算法Gen所生成的公開金鏡pk, 係在證明者與驗證者之間被共有。又,已被金鑰生成演算 法G e η所生成的祕密金鑰s k,係由證明者祕密地管理。 此處’先來說明2次多項式的性質。 m道之η變數2次多項式的組(fl(x),…,fm(x)),係 可表現如下gS式(2)。其中’ χ = (Χι,…,Χη)係爲表示η個 變數的向量。又,Α!,…,Am係爲ηχη矩陣。再者,bl, …,bm係爲nxl向量。然後,^係爲mxl向量。 [數2] F(x) = f/M) • • _ » ’ xT A〆 + b【X、 • • • __丨_ •
+ C …(2) 若使用該表現,則多項式的組F,係可表現如下記式 (3)及式(4)。此表現的成立,係可從下記式(5)而容易理解 -23- 201215069 [數3] …(3) 4(AT + Α)χι
Fb (Xj, x2) fi(xl+x2) = (xi ^χι)Τ A^x\ +x2) + bj{xx +x2) + cl =+ xlAjX2 + + x[Afx2 + b/rxl + bfx2 +cz =fl(Xl) + MX2) ~Cl+ X\ AlX2 + X2AlXl =·Ζί (A ) + / ("^2 ) _ G + 工1 (為)"^2 + "^2 為又1 =/ι(χι)+fiM-ci+(ΑΙχ\)τ χι +χζΑχ\ =fl (^1 ) + //(^)-^/+ X2 (AfXl) + Xl Al^l = /ι(Χι) + 4 (4 + Αι)χι +fi(x2)-ci 如此’將FhdxJ分成依存於Xl之部分、依存於x2 之部分、依存於Xl,X2雙方之部分的3者時,依存於X| 與X2雙方之部分Fb(Xl,x2),係對Xl,x2而呈雙線性映射 。此外’以下說明的SSHl〇a公開金鑰認證方式,係利用 如上記的2次多項式之性質。 ⑧ -24- 201215069 再次回到SSHlOa公開金鑰認證方式之對話協定(參照 圖3)中的證明者演算法P、驗證者演算法v之說明。 S tep.1 : 首先,證明者演算法P,係任意選擇一數w。接著, 證明者演算法P係對擬似亂數產生器Gl適用數w而生成 向量re κη與數W’ 。亦即,證明者演算法ρ係計算(Γ, W’ GKw)。接著,證明者演算法Ρ係對擬似亂數產生 器G2適用數w,而生成2個向量tEKn、eEKm。亦即, 證明者演算法P係計算(t,e)— G2(w’ )。接著,證明者演 算法P係計算Z— s-r。該計算係相當於將祕密金鑰s以向 量r進行遮蔽的操作。然後,證明者演算法ρ係計算t’ —r + t。接著,證明者演算法P係計算e’ — F(r)-c + e。 接著,證明者演算法P係基於上記式(3)及(4)所示之 函數Fb之定義而算出Fb(z,t),生成Fb(z,t) + e與ζ的雜 湊値c!。亦即,證明者演算法P係計算Cl — HJFbU, t) + e,ζ)。又,證明者演算法P係生成數w’的雜湊値C2 。亦即,證明者演算法P係計算c2— H2(w’ )》然後,證 明者演算法P係生成2個向量t’與e’的雜湊値C3。亦 即’證明者演算法P係計算c3—H3(t’ ,e’ )。 接著,證明者演算法P係設定St— (F,y,s,r,t,e,z, t’ ,e’ )及 Cmt— (d,c2,c3)。然後 ’ Step.l 所生成的 Cmt ’係被送往驗證者(驗證者演算法v)。此外,上記的 Ηι( ··· )、H2(…)、H3(…),係爲雜湊函數。又,將Step. 1 -25- 201215069 中的上記操作,表現成(Cmt; St)—Pa, “F, y, s; r,t,e)
Step.2 : 收到Cmt的驗證者演算法V,係在3個驗證模態之中 ,選擇要利用哪個驗證模態。然後,驗證者演算法V係 將表示已選擇之驗證模態的挑戰CheR{0,1,2},送往 證明者(證明者演算法P)。
Step.3 : 收到Ch的證明者演算法P,係隨著從驗證者演算法 V所收到的挑戰Ch而生成要回送給驗證者演算法V的回 答Rsp。若是Ch = 0,則證明者演算法P係生成回答Rspe (r,t,e)。又,若是Ch=l,則證明者演算法P係生成回答 Rsp = (z,t,e)。然後,若是Ch = 2,則證明者演算法P係生 成回答Rsp = (z,t’ ,e’ )。此外,將Step.3中的上記操作 ’表現成 Rsp—Pa,2(Ch; St)。又,Step.3 所生成的 Rsp, 係被送往驗證者(驗證者演算法V)。
Step.4 : 收到Rsp的驗證者演算法V,係對所收到的RSP,執 行以下任一驗證。 若Ch = 0 ’則驗證者演算法V係執行(r”,t”,e”)— RsP。接著,驗證者演算法V係驗證c2 = H2(t”,e”)及 -26- 201215069 c3 = H3(r” +t”,F(r”)-c + e”)是否成立。 若Ch=l,則驗證者演算法V係執行(z”,t”,e”)— Rsp。接著,驗證者演算法V係驗證,t”)+ e”,z”)及 c2 = H2(t”,e”)是否成立。 若Ch = 2,則驗證者演算法V係執行(^’,t"’,e"') — Rsp。接著,驗證者演算法V係驗證cfHKFQ”)+ Fb(z” ,t,,,)+ e,’,-y,z”)及 c3 = H3(t,",e·")是否成立。 此外,將Step.4中的驗證操作,表現成0/1 —Deca(F, y ; Cmt,Ch,Rsp)。於該操作中,輸出1係表示驗證成功 ,輸出〇係表示驗證失敗。 以上說明了 SSHlOa公開金鑰認證方式中的證明者演 算法P及驗證者演算法V的處理內容。此外,在上記方 式中,雖然是使用雜湊函數H2, H3來計算Cl,c2, c3, 但亦可取代雜湊函數H!, H2, H3改用承諾函數COM。又 ,如本案所有利用雜湊函數的地方,都亦可置換成承諾函 數 C Ο Μ 〇 承諾函數COM,係將字串S與亂數ρ之2者作爲引 數的函數。作爲承諾函數之例子,係有由Shai Halevi與 Silvio Micali在國際會議CRYPT01996所發表的方式。在 使用承諾函數的時候,在計算C|,C2, C3之前準備亂數ρ ,, p2,p3’取代雜湊函數Ηι(· ),H2(. ),Η3(·)之適用, 改爲適用承諾函數C〇M(·, PihCOMC·,p2),COM( 5 P3)而生成C2,C3。又,係被含在回答中而從 證明者演算法p送往驗證者演算法V。 -27- 201215069 〔1-4: SSHlOb公開金鑰認證方式的對話協定〕 接著,一面參照圖4,一面說明SSH1 Ob公開金鑰認 證方式的對話協定。圖4係用來說明SSHlOb公開金鑰認 證方式之對話協定的說明圖。此外,所謂SSHlOb公開金 鑰認證方式,係爲基於本案發明者(作本、白井、樋渡)所 想出的多次多變數聯立方程式的求解問題的公開金鑰認證 方式之一》又,該SSHlOb公開金鑰認證方式,係爲5回 合之公開金鑰認證方式之一例。 SSHlOb公開金鑰認證方式的對話協定,係和SSH 10a 公開金鑰認證方式的對話協定同樣地,係由金鑰生成演算 法Gen、證明者演算法P、驗證者演算法V所構成。以下 說明各演算法之內容。 (金鎗生成演算法Gen) 首先說明金鑰生成演算法Gen的構成。金鑰生成演算 法Gen,係生成在環κ上所被定義的m道之η變數2次 多項式 f 1 (X 1,…,xn),··· , fm(x 1 ,…,xn)、和向量 S = (S 1, …,sn)eKn。接著’金鑰生成演算法Gen係計算y = (yi, …,ym)—(Ms),…,fm(s))。然後,金鑰生成演算法Gen 係將(fi,…,fm,y)設定成公開金鑰pk,將s設定成祕密
金鎗。此外’以下是將n變數的向量(Xl,…,Χη)表示成X ’將m道之η變數2次多項式(fi(x),…,fm(x))表示成 F(x)。 -28- 201215069 (證明者演算法p、驗證者演算法v) 接著,一面參照圖4’一面說明證明者演算法p、驗 證者演算法V之構成。SSH 10b公開金鑰認證方式的對話 協定,係使「證明者知道滿足y = F(s)的s」這件事,在完 全不對驗證者洩漏s之資訊的情況下,對驗證者做證明。 此外’已被金鑰生成演算法Gen所生成的公開金鑰pk, 係在證明者與驗證者之間被共有。又,已被金鑰生成演算 法Gen所生成的祕密金鑰sk,係由證明者祕密地管理。 SSHlOb公開金鏡認證方式的對話協定,係由圖4所 不的Step.1〜Step.6之處理步驟所構成。以下,說明各步 驟之處理。
Step.1 : 首先,證明者演算法P,係任意選擇~數w。接著, 證明者演算法P係對擬似亂數產生器G適用數w而生成 向量r G Kn、t E Kn ' e €Ξ Km。亦即’證明者演算法p係計 算(r, t,e)— G(W)。接著,證明者演算法P係計算z—S-r 。該計算係相當於將祕密金鑰s以向量r進行遮蔽的操作 〇 接著,證明者演算法P係生成Fb(z,t) + e與z的雜湊 値〜。亦即,證明者演算法p係計算Cl — Hl(F“Z,t) + e, z)。又,證明者演算法P係生成向量r、t、e的雜湊値C2 。亦即,證明者演算法P係計算H2(r,t,e)。此外, 上記的Η!(…)、H2(…),係爲雜湊函數。 -29- 201215069 接著,證明者演算法P係設定StA—(F,y, s,r,t,e, z)及 CmtA«-(Ci,c2)。然後,Step.l 所生成的 CmtA,係被 送往驗證者(驗證者演算法V)。此外,上記的H,(…)、 Η2(…),係爲雜湊函數。又,將Step.l中的上記操作,表 現成(CmtA ; StA)«-Pb, i(F,y,s ; r,t,e)。
Step·2 : 收到Cmta的驗證者演算法V,係根據存在q種的環 K而選擇出1個亂數α。然後,驗證者演算法V係將挑戰 ChA= α,送往證明者(證明者演算法Ρ)。
Step.3 : 收到ChA的證明者演算法P,係計算t’ — a r + t。然 後,證明者演算法P係計算e’ — a (F(r)-c) + e。然後,證 明者演算法P係設定StB—(StA,ChA,t’ ,e’ )及CmtB — (t’ ,e’ )。又,證明者演算法P係將CmtB送往驗證者( 驗證者演算法V)。此外,將Step.3中的上記操作,表現 成(C m t B ; S t B ) — P b,2 ( C h A ; S t A )。
Step.4 : 收到CmtB的驗證者演算法V,係在2個驗證模態之 中,選擇要利用哪個驗證模態。然後,驗證者演算法V 係將表示已選擇之驗證模態的挑戰ChB e R丨0,1 },送往 證明者(證明者演算法P)。 -30- 201215069 S t e p. 5 ·' 收到ChB的證明者演算法P,係隨著從驗證者演算法 V所收到的挑戰ChB,而將要回送給驗證者(驗證者演算法 V)的回答Rsp,生成如下。若ChB = 0,則證明者演算法P 係設定成Rsp— r。若ChB = l,則證明者演算法P係設定成 Rsp—z。然後,證明者演算法P係將回答Rsp送往驗證者 (驗證者演算法V)。此外,將Step.5中的上記操作,表現 成 R s p <-P b,3 (C h b ; S t b )。
Step.6 : 收到回答Rsp的驗證者演算法V,係利用從證明者( 證明者演算法P)所收到的回答Rsp,執行以下的驗證處理 〇 若ChB = 0,則驗證者演算法V係以r” e Rsp的方式 ,驗證 c2 = H2(r”,t’ -ar”,e’ -a(F(r”)-c))是否成立 ο 若ChB=l,則驗證者演算法V係以z” - Rsp的方式 ,驗證 cpHjiMFh”)-y) + Fb(z”,t’ )+ e’ ,z”)是否成 立。 此外,將Step.6中的驗證操作,表現成0/1 —Decb(F, y; CmtA,ChA,CmtB,ChB,Rsp)» 於該操作中,輸出 1 係 表示驗證成功,輸出〇係表示驗證失敗。 以上說明了 SSH 10b公開金鑰認證方式中的證明者演 算法P及驗證者演算法V的處理內容。此外,在上記方 -31 - 201215069 式中,雖然是使用雜湊函數Hi,H2來計算cl5 C2,但亦可 取代雜湊函數H,,H2改用承諾函數COM。 〔1-5:對話協定的反覆構成〕 再來,若適用上記的SSHlOa公開金鑰認證方式的對 話協定,則可將僞證成功之機率抑制成2/3以下。因此, 若將該對話協定執行2次,則可將僞證成功之機率抑制成 (2/3)2以下。同樣地’若該對話協定執行N次,則僞證成 功之機率係爲(2/3)N,若N是非常大的數(例如N=14〇), 則僞證成功之機率係小到可以忽視之程度。 同樣地,若適用上記的SSH1 Ob公開金鑰認證方式的 對話協定,則可將僞證成功之機率抑制成(l/2 + l/2q)以下 。因此,若將該對話協定執行2次,則可將僞證成功之機 率抑制成(l/2 + l/2q)2以下。同樣地,若該對話協定執行N 次,則僞證成功之機率係爲(l/2 + l/2q)N,若N是非常大 的數(例如N = 80),則僞證成功之機率係小到可以忽視之 程度。 此外,不限於SSHlOa公開金鑰認證方式、SSHlOb 公開金鑰認證方式,上記非專利文獻1〜3等所揭露之公 開金鑰認證方式中也是同樣地,若對話協定執行1次時的 僞證成功機率並非足夠小的情況下,則必須要反覆執行對 話協定以降低僞證成功機率。反覆執行對話協定的方法, 係有圖5所示的直列式反覆構成、和圖6所示的並列式反 覆構成。 ⑧ -32- 201215069 直列式反覆構成,係如圖5所示,將對話協定執行1 次,第1次結束後執行第2次、第2次結束後執行第3次 的這種方式,逐次執行對話協定的方法。另一方面,並列 式反覆構成,係如圖6所示,是將N次份的第1回合之 訊息mi, i,…,mN,1予以同時發送,接著將N次份的第2 回合之訊息mi, 2,…,mN, 2予以同時發送,接著將N次 份的第3回合之訊息πη, 3,…,mN, 3予以同時發送的方 式,在各回合中將N次份的訊息予以同時發送的方法。 再者’上記非專利文獻1〜3所揭露之公開金鑰認證 方式、SSHlOa公開金鑰認證方式、及SSHlOb公開金鑰 認證方式,係保證了對被動性攻撃的安全性等級。可是, 這些公開金鑰認證方式,在進行了並列式反覆構成的情況 下,是否能夠確實保證對主動性攻撃的安全性等級,則無 從得知。這些公開金鑰認證方式,係使用1組金鑰配對( 公開金鑰y、祕密金鑰s)而將「針對y可知y = F(s)的s」 ,當作證明者對驗證者進行證明的方式。 因此,在進行被驗證所受理之對話時,「進行對話之 證明者是使用了 s」此一資訊’是無法避免不被驗證者所 知道。又,這些方式中所用的F,係未保證碰撞困難性。 其結果爲,這些公開金鑰認證方式,在進行了並列式反覆 構成的情況下,是否能夠確實保證對主動性攻撃的安全性 等級’則無從得知。尤其是’將這些公開金鑰認證方式以 上記的並列式反覆構成來實施時,用來保證對主動性攻撃 的安全性等級所需的手法,係沒有人知道。 -33- 201215069 於是,本案發明人係想出了,在將這些公開金鑰認證 方式以上記的並列式反覆構成來實施之際,能夠保證對主 動性攻撃的安全性等級的機制。關於此機制(本手法#1、 #2),在後段中,舉出 SSHlOa公開金鑰認證方式、 SSH 10b公開金鑰認證方式爲例來詳細說明。 〔1-6 :針對SSH 10a公開金鑰認證方式的僞證演算法〕 此處’一面參照圖7,一面試圖考慮在SSHlOa公開 金鑰認證方式(1次的對話協定)中以2/3之機率成功的僞 證演算法。圖7係用來說明在S SH 1 0a公開金鑰認證方式 (1次的對話協定)中以2/3之機率成功的僞證演算法的說 明圖。此僞證演算法,係僞證者對驗證者「假裝知道滿足 y = F(s)之s」的演算法。但是,即使適用該僞證演算法, 僞證仍會以1/3之機率失敗。
Step.1 : 首先,僞證者(僞證演算法)係生成向量s,r,t£Kn、e EKm。接著,僞證演算法係任意地選擇Ch-e {0,1,2} 。該Ch*,係對應於僞證演算法所無法回答的驗證模態。 此外,此處所用的s並非正當的祕密金鑰。可是,證明者 (證明者演算法P),係若爲Ch*以外的驗證模態,則可不 利用正當的祕密金鑰就能正當地回答。 接著,僞證演算法係計算z—s-r、t’ — r + t。又,僞 證演算法係爲,若Ch*=0,則計算e’ — y-F(s) + F(r)-c + e -34- 201215069 。另一方面,若Ch*=l,2,則僞證演算法係 F(r)-c + e。接著,僞證演算法係爲,若ch*=〇 cj — HiiFbCz,t) + e,z)。另一方面,若 Ch*=l, 法係 S十算 Ci<—Hi(F(z) + Fb(z,t’ )+ e’ -y, z)。 接著,僞證演算法係計算c2— H2(t,e)、c e’ )。然後,僞證演算法係設定St—(Ch*,F, z,t’,e’ )及 Cmt—(c丨,C2,C3)。接著,僞證 Cmt送往驗證者(驗證者演算法v)。此外,將 上記操作,表現成(Cmt ; St) — Ma, i(F, y ; Ch
Step.2 : 收到Cmt的驗證者演算法V,係在3個驗 ’選擇要利用哪個驗證模態。然後,驗證者損 將表示已選擇之驗證模態的挑戰Che r{〇,1 僞證者(僞證演算法)。 S t e p . 3 :
收到Ch的僞證演算法,係隨著從驗證者 收到的挑戰Ch而生成要回送給驗證者演算沒 Rsp。此外,若Ch = Ch*,則僞證演算法係輸 結束對話協定。若Ch尹Ch*且Ch = 0,則僞證 成回答Rsp—(r,t,e)。又,若是ch=l,則僞 生成回答Rsp = (z,t,e)。然後,若是Ch = 2,貝IJ 計算 e ’ — ,2,則計算 則僞證演算 3—H3(t’ , y, s, r, t, e, 演算法係將 Step.1中的 k , s, r, t, e) 證模態之中 算法V係 ,2 },送往 寅算法V所 :V的回答 出錯誤然後 演算法係生 證演算法係 僞證演算法 -35- 201215069 係生成回答Rsp = (z,t’ ,e’ )。 此外’將Step.3中的上記操作,表現成Rsp— Ma, 2(Ch ; St)。又’ Step.3所生成的RSp,係被送往驗證者( 驗證者演算法V)。 S t e p. 4 : 若Ch尹Ch#,則回答Rsp係被送至驗證者演算法V, 藉由驗證者演算法V而實施驗證處理0/1 — Deca(F,y; Cmt,Ch,Rsp)。 以上說明了針對SSHlOa公開金鎗認證方式的僞證演 算法。如此,即使任意選擇s,仍可將2/3機率(Ch夫Ch* 的機率)通過驗證的Rsp,回送給驗證者。因此,在1次 的對話協定中,僞證會有2/3機率成功。於是,適用之前 所說明的反覆構成。 〔1-7:針對SSH1 Ob公開金鑰認證方式的僞證演算法〕 接著,一面參照圖8,一面試圖考慮在SSHlOb公開 金鑰認證方式(1次的對話協定)中以1/2之機率成功的僞 證演算法。圖8係用來說明在SSHlOb公開金鑰認證方式 (1次的對話協定)中以1/2之機率成功的僞證演算法的說 明圖。此僞證演算法,係僞證者對驗證者「假裝知道滿足 y = F(s)之S」的演算法。但是,即使適用該僞證演算法, 僞證仍會以1/2之機率失敗。 ⑧ -36- 201215069
Step.1 : 首先,僞證演算法係生成向量s,r,te κη、ee Km。 接著,僞證演算法係選擇Ch*Be {0,1}。該Ch*B係對 應於,針對i〇之數列而無法由僞證者(僞證演算法)所回答 的驗證模態。此外,此處所用的sm雖然不是正當的祕密 金鑰,但僞證演算法係對Ch*B以外的驗證模態’可以不 利用正當的祕密金鑰就能正確回答。 接著,僞證演算法係計算z— s-r。接著,僞證演算法 係計算 d—HiiFbiz, t) + e,z)及 C2—Kr,t,e)。接著,僞 證演算法係設定 StA—(F,y,Ch*B,s,r,t,e,z)及 CmtA — (q,c2)。然後,Step.l所生成的CmtA ’係被送往驗證者( 驗證者演算法V)。此外,上記的H!(…)、H2(…),係爲 雜湊函數。又,將Step.l中的上記操作,表現成(CmtA ; StA)<-Mb, i(F,y; Ch*B,s,r,t, e)。
Step.2 : 收到CmtA的驗證者演算法V,係根據存在q種的環 K而選擇出1個亂數α。然後,驗證者演算法V係將挑戰 ChA=a,送往僞證者(僞證演算法卜
Step·3 : 收到ChA的僞證演算法,係計算t’ — α r + t。然後, 僞證演算法係爲,若Ch* B=1,則計算e’ a (F(r)-c) + e 。另一方面,若Ch* B = 0 ’則僞證演算法係計算e’ — α -37- 201215069 (y-F(S) + F(r)-C) + e。然後,僞證演算法係設定StB— (StA, ChA,t’ ,e’ )及CmtB—(t,,e,)。又,僞證演算法係將 CmtB送往驗證者(驗證者演算法V)。此外,將Step.3中 的上記操作,表現成(CmtB; StB)—Mb,2(ChA; StA)。
Step.4 : 收到CmtB的驗證者演算法V,係在2個驗證模態之 中,選擇要利用哪個驗證模態。然後,驗證者演算法V 係將表示已選擇之驗證模態的挑戰ChB e R { 0, 1 },送往 僞證者(僞證演算法)。 S t e p · 5 : 收到ChB的僞證演算法,係若ChB = Ch* b,則僞證演 算法係輸出錯誤然後結束對話協定。若ChB夫Ch* b,則僞 證演算法係隨著從驗證者演算法V所收到的挑戰ChB,而 將要回送給驗證者(驗證者演算法V)的回答Rsp,生成如 下。 若ChB = 〇’則僞證演算法係設定成Rsp<-r。若ChB = l ’則僞證演算法係設定成Rsp — z。然後,僞證演算法係 將回答Rsp送往驗證者(驗證者演算法v)。此外,將 Step.5中的上記操作,表現成Rsp—Mb,3(ChB; StB)。
Step.6 :
若ChB# Ch、,則回答Rsp係被送至驗證者演算法V -38- ⑧ 201215069 ,藉由驗證者演算法V而實施驗證處理0/1 — Decb(F,y ; CmtA, ChA,CmtB,ChB,Rsp) 〇 以上說明了針對S S Η 1 0 b公開金鑰認證方式的僞證演 算法》如此,即使任意選擇s,仍可將1/2機率(ChB# Ch*B的機率)通過驗證的Rsp,回送給驗證者。因此,在 1次的對話協定中,僞證會有1/2機率成功。於是,適用 之前所說明的反覆構成。 (補充) 目前爲止係說明了 SSH 10a公開金鑰認證方式、 SSH 10b公開金鑰認證方式、其僞證演算法、及對話協定 的反覆構成。這些公開金鑰認證方式,係使用1組金鑰配 對(公開金鑰y、祕密金綸s)而將「針對y可知y = F(s)的s 」,當作證明者對驗證者進行證明的方式。因此,在進行 被驗證所受理之對話時,「進行驗證之證明者是使用了 s 」此一資訊’是無法避免不被驗證者所知道。又,這些方 式中所用的F,係沒有保證碰撞困難性。其結果爲,這些 公開金鑰認證方式,在進行了並列式反覆構成的情況下, 是否能夠確實保證對主動性攻撃的安全性等級,則無從得 知。 於是,本案發明人係想出了,在將這些公開金鑰認證 方式以上記的並列式反覆構成來實施之際,能夠保證對主 動性攻撃的安全性等級的機制。以下,關於此機制,舉出 具體例來詳細說明。 -39- 201215069 < 2 :第1實施形態(本手法#1)> 首先說明本揭露的第1實施形態(以下稱作本手法#1) 〔2-1 :槪要〕 本手法#1係適用了,即使對SSHl〇a公開金鑰認證方 式、SSHlOb公開金鑰認證方式,進行了並列式反覆構成 的情況下’仍可保證對主動性攻撃的安全性等級的機制^ 雖然反覆,但無從得知對主動性攻撃的安全性等級是否受 到保證的理由是’只要所利用的函數.F的碰撞困難性沒受 到保證’就無法避免「進行驗證的證明者曾用過s」此— 資訊被驗證者所獲知。因此,在對話協定之中,若「進行 驗證的證明者曾用過Sj此一資訊不讓驗證者知道,則可 保證對主動性攻撃的安全性等級。 於是,本案發明人係想出了將祕密金鑰s、公開金鑰 y予以多重化的方式。此方式係把L個(1^2)的Sl,…, SL e Kn當作祕密金鑰,把對於m道之η變數多次多項式’ F(x) = (fi(x),…,fm(x))而滿足(y 1,…,yiJ^FiSi),…, 戶(31))的yi,…,yLe Km,當作公開金鑰。再者,此方式 係爲,將「i=l,…,L當中,針對L-1個的i知道使 yi=F(Si)成立的Si」這件事’是不知道將哪個Si使用於對 話協定之中,就加以證明的方式。若適用此方是,則在對 話協定之中關於「曾利用哪個Si」之資訊係沒有洩漏,因 此可保證對主動性攻撃的安全性等級° -40 - 201215069 本手法# 1之方式,係驗證者針對i= 1,…,L而將挑 戰Ch,…,ChL(驗證模態)對證明者發送,收到挑戰Chi, …,ChL的證明者係選擇L-1個挑戰Chi而進行回答。若 採用此方式,則知道s t,…,s L的證明者係可針對L個所 有的挑戰Chi進行回答,但是不知道Sl,…,SL的僞證者 就會以某種程度的機率導致僞證失敗。又,由於證明者係 只要對L-1個挑戰Chi進行回答即可,因此針對某1個挑 戰Chi係可不使用Si就可使認證成立。亦即,在對話協定 之中,驗證者係不知道某個Si是否有被使用。 〔2-2 :對SSHlOa公開金鑰認證方式之適用〕 首先,一面參照圖9,一面說明將本手法#1之方式適 用於SSHlOa公開金鑰認證方式時的對話協定。圖9係用 來說明,將本手法#1之方式適用於SSHlOa公開金鑰認證 方式時的對話協定的說明圖。此對話協定,係由金鑰生成 演算法Gen、證明者演算法P、驗證者演算法V所構成。 以下說明各演算法之內容。 (金錄生成演算法Gen) 首先說明金鑰生成演算法Gen的構成。金鑰生成演算 法Gen,係生成在環K上所被定義的m道之η變數2次 多項fl(Xl,…,Xn),…,fm Ο 1,…,Xn)、和L個向量S 1, …,sLe Kn。此外,將η變數的向量(Xl,…,Xn)表示成X ,將m道之η變數2次多項式(fjx),…,f^x))表示成 -41 - 201215069 F(x)。接著,金鑰生成演算法Gen係計算y^F^),…, yL = F(SL)。然後’金鑰生成演算法Gen係將(F,yi,…, yL)設定成公開金鑰Pk,將(Sl,…,sL)設定成祕密金鑰。 (證明者演算法P、驗證者演算法V) 接著,一面參照圖9,一面說明證明者演算法P、驗 證者演算法V之構成。本手法#1的對話協定,係使「證 明者知道L-1個滿足yi = F(Si)的Si」這件事,在完全不對 驗證者洩漏「哪個Si是否曾經被使用過」此一資訊的情 況下,對驗證者做證明》此外,已被金鑰生成演算法Gen 所生成的公開金鑰pk,係在證明者與驗證者之間被共有 。又,已被金鑰生成演算法Gen所生成的祕密金鑰sk, 係由證明者祕密地管理》 本手法#1的對話協定,係由圖9所示的Step. 1〜 Step. 4之處理步驟所構成。以下,說明各步驟之處理。
Step.1 : 首先,證明者演算法P係針對i=l,…,L,生成向量 n,tiS κη、和向量eiG Km。接著,證明者演算法p係計 算(Cmtj; Sti)—Pa,i(F,yi,Si; n,ti,ei)。然後,證明者 演算法P係將Cmh,…,CmtL送往驗證者(驗證者演算法 V)。
Step.2 : -42- 201215069 收到Cmtu…,CmtL的驗證者演算法V,係在3個驗 證模態之中,選擇要利用哪個驗證模態。然後,驗證者演 算法V係將表示已選擇之驗證模態的挑戰Chl,…,Chlje r{〇,1,2} ’送往證明者(證明者演算法P)。
Step.3 : 收到Chi,…,ChL的證明者演算法P,係從i=l,..., L中隨機地選擇出1個不回答的挑戰Chi的索引i(以下稱 作i * )。接著,證明者演算法P係針對i e { 1,…,L } \ { i* } ’計算RsPi — Pa, 2(Chi ; Sti)。然後,證明者演算 法 P 係將(Rsp!,…,Rspi*.,,Rspi*+1,…,RspL,i*)送往 驗證者(驗證者演算法V)。
Step.4 : 收到(Rspls …,Rspi*」,Rspi*+i,…,RspL,i*)的驗 證者演算法V,係針對i e { 1,…,L } \ { i * },執行 0/1 — Deca(F,yi ; Cmti,Chi,RsPi)。然後,驗證者演算法 V係針對i e { 1,…,L } \ { i* },若全部都被受理(輸出 1 ),則視爲驗證成功。 以上說明了,將本手法#1之方式適用於SSH 10a公開 金鑰認證方式時的對話協定。該對話協定,係藉由 SSH 10a公開金鑰認證方式的安全性,而保證了未持有Si 的僞證者針對i = l,…,L,分別只有2/3以下的機率,可 以對從驗證者所送來之挑戰Chi做正確回答。又,藉由適 -43- 201215069 用本手法#1,由於需要針對L-1個以上的i而針對從驗證 者所送來之挑戰Chi做正確回答,因此僞證成功之機率係 爲(2/3, + 1^(1/3)(2/3)1^ = (2 + 102^^31^ 又,於上記的對話協定中,雖然使用了 Sl,…,sL之 全部,但若LS 3的情況下,即使針對i = l,…,L之1個 不使用Si,仍可完全不讓驗證者知道哪個Si未被使用,就 可進行和證明者完全同樣的舉動。於是,說明不使用1個 si,就可和上記對話協定同樣地實現認證的對話協定(變 形例1〜3 ) » 〔2_3 :對SSHlOa公開金鎗認證方式之適用(變形例1)〕 首先,一面參照圖10,一面說明將本手法#1之方式 適用於SSHlOa公開金鑰認證方式時的對話協定(變形例 1)。圖10係用來說明,將本手法#1之方式適用於SSHlOa 公開金鑰認證方式時的對話協定(變形例1)的說明圖。此 對話協定,係由金鑰生成演算法Gen、證明者演算法P、 驗證者演算法V所構成。但是,於驗證者演算法V中, 是利用了之前所說明過的僞證演算法之構成。又,說明 L = 3之情形。再者,假設未使用的Si的索引係爲^。以下 說明各演算法之內容。 (金鑰生成演算法Gen) 首先說明金鑰生成演算法Gen的構成。金鑰生成演算 法Gen,係生成在環K上所被定義的m道之n變數2次 -44 - ⑧ 201215069 多項fl(Xl,…,xn),…,fm(Xl,…,xn)、和L個向量S !, …,sLe Kn。但是,sic係使用適當選擇的向量。此外’將 η變數的向量(Xl,…,χη)表示成X,將m道之η變數2次 多項式(fKx),…,fm(x))表示成F(x)。接著’金鑰生成演 算法Gen係計算yi = F(si),…,yL = F(sL)。只不過,亦可 不保證會滿足yiQ = F(siQ)。然後,金鑰生成演算法Gen係 將(F,yi,…,yL)設定成公開金鑰pk,將(s |,…,sL)設定 成祕密金鑰。 (證明者演算法P、驗證者演算法V) 接著,一面參照圖10,一面說明證明者演算法P、驗 證者演算法 V之構成。此外,已被金鑰生成演算法Gen 所生成的公開金鑰pk,係在證明者與驗證者之間被共有 。又,已被金鑰生成演算法Gen所生成的祕密金鑰sk, 係由證明者祕密地管理。 本手法#1的對話協定,係由圖10所示的Step.l〜 Step.4之處理步驟所構成。以下,說明各步驟之處理。
Step·1 : 首先,證明者演算法P係針對i=l,2,3,生成向量 ri, tiG Kn、和向量ee Km。接著,證明者演算法P係將 Ch*e {0,1, 2}選擇1個。該Ch*係對應於,針對i〇之 數列而無法由證明者所回答的驗證模態。接著,證明者演 算法P係爲’右1在丨〇’則計算(Cmti,Sti)—*Pa,i(F,yi,Si -45- 201215069 ;Γ i,t i,e i)。另一方面,若i = i ο,則證明者演算法P係計 算(Cmtj; Sti)—Ma,!(F,yi; Ch*,Si,n,tj,ei)。然後,證 明者演算法P係將Cmti,Cmt2,Cmt3送往驗證者(驗證者 演算法V)。
Step.2 : 收到C m 11,C m 12,C m 13的驗證者演算法V,係在3個 驗證模態之中,選擇要利用哪個驗證模態。然後,驗證者 演算法V係將表示已選擇之驗證模態的挑戰Ch,Ch2, Ch3e R { 0,1, 2},送往證明者(證明者演算法P)。 S tep.3 : 收到Chu Ch2,Ch3的證明者演算法P,係如下所示般 地從i=l,…,L中選擇出1個不回答的挑戰Chi的索引 以下稱作)。若ChiQ = Ch* ’則驗證者演算法V係設定 i* — i〇。另一方面,若Chi0# Ch*,則驗證者演算法V係 從{1,2,3} \ {i〇}中隨機選擇i*。若使用該的i* 之設定方法,則無論驗證者來要求哪種驗證模態’ i+係分 別以1/3之機率而取1,2,3之値。亦即,i〇到底是1,2, 3的哪一値,此一資訊是被完全隱匿。 接著,證明者演算法p係針對i E { 1,2,3 } \ { i * } ,計算RsPi如下。若i > i〇,則證明者演算法P係計算 RsPi—Pa,2(Chi ; Sti)。若i = i〇,則證明者演算法P係計算 Rspi—Ma,2(Chi; Sti)。然後’證明者演算法P係將(Rsp,, ⑧ -46- 201215069 …,RsPi*-i, RsPi*+丨,…,RspL,i*)送往驗證者(驗證者演 算法V)。
Step·4 : 收到(Rspi,…,Rspi*·,,Rspi*+i,…,Rspl,i*)的驗 證者演算法V,係針對ie {1,2, 3丨\ ,執行o/i —Deca(F,yi ; Cmti,Chi,RsPi) » 然後,驗證者演算法 V 係針對ie { 1,2, 3 } \ { i* },若全部都被受理(輸出1) ,則視爲驗證成功。 以上說明了,將本手法#1之方式適用於SSHlOa公開 金鑰認證方式時的對話協定(變形例)。此處雖然針對L = 3 的情形做說明,但針對L = 2的情形也是同樣如此。例如, 如以下所示,從i=l,2中設定1個不利用的i(i* )。若 Chi0 = Ch*貝設定成i* =i〇。另一方面,若Chi0尹Ch*則以 1/4之機率設定成厂以3M之機率設定成若 如此設定,則無論驗證者來要求哪種驗證模態,i #係分別 以1/2之機率而取1,2之値。因此,i〇到底是1 , 2的哪一 値,此一資訊是被完全隱匿。 〔2-4 :對SSH 10a公開金鑰認證方式之適用(變形例2)〕 接著,一面參照圖11’ 一面說明將本手法#1之方式 適用於SSH 10a公開金鑰認證方式時的對話協定(變形例 2)。此外,變形例2係爲圖9所示之對話協定的一變形例 。圖11係用來說明,將本手法#1之方式適用於SSHlOa -47- 201215069 公開金鑰認證方式時的對話協定(變形例2)的說明圖》此 對話協定,係由金鑰生成演算法Gen、證明者演算法P、 驗證者演算法V所構成。以下說明各演算法之內容。 (金鑰生成演算法Gen) 首先說明金鑰生成演算法Gen的構成。金鑰生成演算 法Gen,係生成在環K上所被定義的m道之η變數2次 多項fl(Xl,…,Χη),…,fm(X!,…,Χη)、和2個向量Si, s2e κη。此外,將n變數的向量(Xl,…,xn)表示成X,將 m道之η變數2次多項式(f1(x),…,“(χ))表示成F(x)。 接著,金鑰生成演算法Gen係計算yi=F(Sl),y2 = F(s2)。然 後’金鑰生成演算法Gen係將(F,yi,y2)設定成公開金鑰 pk,將(Si,S2)設定成祕密金鑰。 (證明者演算法P、驗證者演算法V) 接著,一面參照圖11,一面說明證明者演算法P、驗 證者演算法V之構成。本手法#1的對話協定,係使「證 明者知道1個滿足yi = F(Si)的Si」這件事,在完全不對驗 證者洩漏「哪個Si是否曾經被使用過」此一資訊的情況 下’對驗證者做證明。此外,已被金鑰生成演算法Gen所 生成的公開金鑰pk,係在證明者與驗證者之間被共有。 又,已被金鑰生成演算法Gen所生成的祕密金鑰sk,係 由證明者祕密地管理。 本手法#1的對話協定,係由圖11所示的Step. 1〜 -48- ⑧ 201215069
Step.4之處理步驟所構成。以下,說明各步驟之處理。 S tep·1 : 首先,證明者演算法P係生成向量tiGK11、和向 量e^K"1。接著,證明者演算法P係計算(Cmti; St!) — p a,1 (F,y 】,S 1 ; r 1,11,e 1)、( C m 12 ; s 12) — p a,1 (F,y 2,S 2 ; r l,11,e t)。其中,C m 11 = ( c 11,c i 2,c 】3 )、C m 12 = (c 2 i,c i 2, c13)。接著,證明者演算法P係將cu,c12, cl3, c21送往驗 證者(驗證者演算法V)。
Step.2 : 收到CH,Cl2,Cl3, C21的驗證者演算法V,係選擇要 利用哪個驗證模態》然後,驗證者演算法V係將表示已 選擇之驗證模態的挑戰之組合(Ch!,Ch2)e { 0,1,2 } X { 〇,1,2 },送往證明者(證明者演算法P)。
Step.3 : 收到Ctu,Ch的證明者演算法P,係隨機地選擇出要 回答的挑戰Chi的索引i。接著,證明者演算法P係針對 已選擇的 i,計算 Rspi—"Pa,2(Chi; Sti,Γ!,t,,ei)。然後 ’證明者演算法P係將(RsPi,i)送往驗證者(驗證者演算法 V)。
Step.4 : -49- 201215069 收到'RSPi,i的驗證者演算法V,係執行0/1 — Deca(F, yi; (Cil5 c12,c13,),Chi,RsPi)。然後’驗證者演算法 V 係當輸出爲1時(已被受理時)則視爲認證成立。 以上說明了,將本手法#1之方式適用於SSH 10a公開 金鑰認證方式時的對話協定(變形例2)。本變形例係將生 成Cmt,、St,、Cmt2、St2之際所使用的亂數的組(n、t,、 與(r2、t2、e2)予以共通化,爲其特徵。藉由將這些亂 數共通化,在 Cmti = (cii,c12,c13)、Cmt2 = (C2i,C22,c23)的 構成要素當中,(c12,c13)與(c22,c23)就會成爲共通的値。 因此,從證明者往驗證者發送Cmti與Cmt2之際,僅需送 出4個値(cn, C12,C13,C21)即可,因此可降低通訊量。此 外,在本變形例的情況下,於第3回合中僅公開了關於一 方之數列的資訊,因此即使如上記般地將亂數之一部分予 以共通化,也無損及零知識性》 〔2-5 :對SSH 10a公開金鑰認證方式之適用(變形例3)〕 接著,一面參照圖12,一面說明將本手法#1之方式 適用於SSHlOa公開金鑰認證方式時的對話協定(變形例 3)。此外,變形例3係爲圖1 1所示之對話協定(變形例2) 的一變形例。圖12係用來說明,將本手法#1之方式適用 於SSHlOa公開金鑰認證方式時的對話協定(變形例3)的 說明圖。此對話協定,係由金鑰生成演算法Gen、證明者 演算法P、驗證者演算法v所構成。以下說明各演算法之 內容。 -50- ⑧ 201215069 (金鑰生成演算法Gen) 首先說明金鑰生成演算法Gen的構成。金鑰生成演算 法Gen,係生成在環K上所被定義的m道之η變數2次 多項f 1 (X 1,…,Χη),…,fm(X !,…,Χη)、和2個向量S 1, s2e Κη。此外,將η變數的向量(Xl,…,χη)表示成X,將 m道之η變數2次多項式(Μχ),…,fm(x))表示成F(x)。 接著,金鑰生成演算法Gen係計算yi = F(Sl),y2 = F(s2)。然 後,金鑰生成演算法Gen係將(F, yi,y2)設定成公開金鑰 P k,將(S 1,S 2 )設定成祕密金鑰。 (證明者演算法P、驗證者演算法V) 接著,一面參照圖12,一面說明證明者演算法P、驗 證者演算法V之構成。本手法#1的對話協定,係使「證 明者知道1個滿足yi = F(Si)的Si」這件事,在完全不對驗 證者洩漏「哪個Si是否曾經被使用過」此一資訊的情況 下,對驗證者做證明。此外’已被金鑰生成演算法Gen所 生成的公開金鑰Pk,係在證明者與驗證者之間被共有。 又,已被金鑰生成演算法Gen所生成的祕密金鑰sk,係 由證明者祕密地管理。 本手法#1的對話協定’係由圖12所示的Step.1〜 Step .4之處理步驟所構成。以下,說明各步驟之處理。 S ΐ e p . 1 '· 首先,證明者演算法P係生成向量ri,tieKn、和向 -51 - 201215069 量eieKm»接著,證明者演算法p係計算(〇11^1;811)—
Pa,1(F,yi,Si ; Γ1,ti,ei)、(Cmt2 ; St2)— pa,1(F,y2,S2 ; Γι,ti,ei)。其中 ’ Cmti = (Cll,Ci2,C13)、Cmt2 = (C21,。12, C13)。接著,證明者演算法P係將Cll,Cl2, C13, c21送往驗 證者(驗證者演算法vp
Step·2 : 收到Cii,Ci2,C13,C21的驗證者演算法V,係選擇要 利用哪個驗證模態。此時,驗證者演算法V係將驗證模 態(挑戰之組合(Chi,Ch2)),從(Ch,,Ch2)e { (0,0),(1, 1),(1,2),(2,1),(2,2)}之中加以選擇◊然後,驗證者 演算法V係將表示已選擇之驗證模態的挑戰之組合(Ch!, Ch2),送往證明者(證明者演算法P)。 S t e p · 3 : 收到Ch】,Ch2的證明者演算法P,係隨機地選擇出要 回答的挑戰Chi的索引i。接著,證明者演算法P係針對 已選擇的 i’ g十算 Rspi<—Pa,2(Chj; Stj,ri,ti,ei).。然後 ’證明者演算法P係將(RsPi,i)送往驗證者(驗證者演算法 V)。 S t e p · 4 : 收到(RsPi,i)的驗證者演算法 V,係執行0/1〜 Deca(F,yi; (Ci 丨,c 丨 2,c丨 3,),Chi,RsPi)。然後,驗證者演 ⑧ -52- 201215069 算法V係當輸出爲1時(已被受理時)則視爲認證成立。 以上說明了,將本手法#1之方式適用於SSHlOa公開 金鑰認證方式時的對話協定(變形例3)。本變形例係爲, 將可利用之驗證模態,限定成(Ch!,Ch2)e { (0,〇),(1, 1),( 1,2),( 2,1),( 2,2) }這5種模態,爲其特徵。 如上記’當Cmt,之要素(Cl2,Cl3)與Cmt2之要素(C22, C23)是被共通化的情況下,對Ch^O之回答(對Cl2,Cl3之 回答)與對Ch2 = 0之回答(對CZ2, c„之回答)係爲共通。因 此’ 「可對(Ch,Ch2) = (〇,〇)做回答」係意味著「可對 Chi = 0與Ch2 = 0雙方做回答」。亦即,可對(ch!,Ch2) = (0, 0)做回答的證明者,係對(Ch,,Ch2) = (0,1),((),2),(1,〇), (2,0)之任一者均可做回答。因此,驗證者係只要針對 (CIm,Ch2) = (0, 0),(1, 1),(1,2),(2,1),(2,2)這 5 種模態 進行驗證,即已足夠。 根據如此理由,只要不知道祕密金鑰sk,就無法保 證對上記5種模態全部都能回答。亦即,不知道祕密金鑰 sk者最多只能回答4個模態,因此僞證機率最大爲4/5。 在圖9所示的對話協定的情況下,L = 2時的僞證機率係爲 8/9。因此’藉由適用變形例3之構成,僞證機率會降低 〔2-6 :對SSH 10b公開金鑰認證方式之適用〕 接著,一面參照圖1 3,一面說明將本手法# 1之方式 適用於SSHlOb公開金鑰認證方式時的對話協定。圖13 -53- 201215069 係用來說明,將本手法#1之方式適用於SSHl Ob公開金鎗 認證方式時的對話協定的說明圖。此對話協定,係由金鑰 生成演算法Gen、證明者演算法P、驗證者演算法V所構 成》以下說明各演算法之內容。 (金鑰生成演算法Gen) 首先說明金鑰生成演算法Gen的構成。金鑰生成演算 法Gen,係生成在環K上所被定義的m道之η變數2次 多項fl(Xl,…,Xn),…,fm(X 1 ,…,Xn)、和L個向量S 1, …,sLeKn。此外,將η變數的向量(XI,…,xn)表示成X ,將m道之η變數2次多項式(f“x),…,fm(x))表示成 F(x)。接著,金鑰生成演算法Gen係計算yi=F(si),…, yL = F(sL)。然後,金鑰生成演算法Gen係將(F, yi,…, yL)設定成公開金鑰pk,將(Sl,…,sL)設定成祕密金鑰。 (證明者演算法P、驗證者演算法V) 接著,一面參照圖13,一面說明證明者演算法P、驗 證者演算法V之構成。本手法#1的對話協定,係使「證 明者知道L-1個滿足yi = F(Si)的Si」這件事,在完全不對 驗證者洩漏「哪個h是否曾經被使用過」此一資訊的情 況下,對驗證者做證明。此外,已被金鑰生成演算法G e η 所生成的公開金鑰pk,係在證明者與驗證者之間被共有 。又,已被金鑰生成演算法Gen所生成的祕密金鑰sk, 係由證明者祕密地管理。 -54- ⑧ 201215069 本手法#1的對話協定,係由圖13所示的Step.l〜 Step .6之處理步驟所構成。以下,說明各步驟之處理。
Step·1 : 首先,證明者演算法P係針對i=l,…,L,生成向量 n,IG κη、和向量eie Km。接著,證明者演算法p係計 算(CmtA,i ; StA, i) — Pa, ,(F,yi,Si ; ri,ti,ei)。然後,證 明者演算法P係將(CmtA,u…,CmtA, L)送往驗證者(驗證 者演算法V)。
Step.2 : 收到(CmtA,丨,…,CmtA, L)的驗證者演算法V,係根 據存在q種的環K而選擇出L個亂數之組合(α!,…, a L) °然後,驗證者演算法V係將挑戰(ChA, i,…, ChA,L) = (ai,…,aL),送往證明者(證明者演算法P)。
Step.3 : 收到(ChA,,,…,ChA,L)的驗證者演算法P,係針對 卜1,...,L,計算(CmtB, i ; StB,i) — Pb, 2(ChA, i ; StA, i)。 然後’證明者演算法P係將(CmtB,丨,…,CmtB, L)送往驗 證者(驗證者演算法V)。
Step.4 : 收到(CmtB,^…,CmtB, 〇的驗證者演算法V,係在 -55- 201215069 2個驗證模態之中,針對i= 1,…,L之各者,選擇要利用 哪個驗證模態。然後,驗證者演算法V係將表示已選擇 之驗證模態的挑戰ChBj,…,ChB,LeR{〇,1},送往證 明者(證明者演算法P)。 S t e p · 5 : 收到ChB, !,…,ChB,l的證明者演算法p,係從i=1, …,L中隨機地選擇出1個不回答的i(以下稱作丨* )。然後 ,證明者演算法P係計算RsPi—Pb, 3(ChB,i ; StB,〇。然 後,證明者演算法P係將(Rsp丨,…,Rsph.hRspMw,… ,RspL,Γ)送往驗證者(驗證者演算法V)。
Step.6 : 收到(Rspi,…,Rspi*」,RSpi*+1,…,RSpL,i*)的驗 證者演算法V,係針對i e { 1,…,L } \ { i * },執行 0/1 —Decb(F,yi ; CmtA,卜 ChA,丨,CmtB,“ ChB, i,RsPi)。 然後,驗證者演算法v係針對ie{i,._.,L}\{i*}, 若全部都被受理(輸出1),則視爲驗證成功。 以上說明了’將本手法#1之方式適用於SSHlOb公開 金錄認證方式時的對話協定。該對話協定,係藉由 SSHlOb公開金鑰認證方式的安全性,而保證了未持有Sj 的僞證者針對i = l,…,L,分別只有l/2+l/2q以下的機率 ’可以對從驗證者所送來之挑戰Chi做正確回答。又,藉 由適用本手法#1,由於需要針對L-1個以上的i而針對從 ⑧ -56- 201215069 驗證者所送來之挑戰Chi做正確回答,因此僞證成功之機 率係爲(1/2+1/29)41^(1/2-1/29)(1/2 + 1/29)1^1。 又,於上記的對話協定中,雖然使用了 s!,…,sL之 全部,但若L = 2的情況下,即使針對i = i,…,L之1個 不使用Si,仍可完全不讓驗證者知道哪個Si未被使用,就 可進行和證明者完全同樣的舉動。於是,說明不使用1個 si,就可和上記對話協定同樣地實現認證的對話協定(變 形例)。 〔2-7 :對SSHlOb公開金鑰認證方式之適用(變形例)〕 以下,一面參照圖14,一面說明將本手法#1之方式 適用於SSHlOb公開金鑰認證方式時的對話協定(變形例) 。圖14係用來說明,將本手法#1之方式適用於SSHlOb 公開金鑰認證方式時的對話協定(變形例)的說明圖。此對 話協定,係由金鑰生成演算法Gen、證明者演算法P、驗 證者演算法V所構成。但是,於驗證者演算法V中,是 利用了之前所說明過的僞證演算法之構成。又,說明L = 2 之情形。再者,假設未使用的Si的索引係爲i〇。以下說 明各演算法之內容。 (金鑰生成演算法Gen) 首先說明金鑰生成演算法Gen的構成。金鑰生成演算 法Gen,係生成在環K上所被定義的m道之η變數2次 多項fl(Xl,…,Xn),…,fm〇l,…,Xn)、和L個向量Si, -57- 201215069 …,SLSKn。但是,Si()係使用適當選擇的向量。此外,將 n變數的向量(Xl,…,Xn)表示成X,將m道之n變數2次 多項式(f,(x),…,fm(x))表示成F(x)。接著,金鑰生成演 算法Gen係計算ypFOi),…,yL = F(sL)。只不過,亦可 不保證會滿足yiQ = F(Si())e然後,金鑰生成演算法Gen係 將(F,yi,...,yL)設定成公開金錄pk,將(s 1,…,sL)設定 成祕密金鑰。 (證明者演算法P、驗證者演算法V) 接著,一面參照圖14,一面說明證明者演算法P、驗 證者演算法V之構成。此外,已被金鑰生成演算法Gen 所生成的公開金鑰pk,係在證明者與驗證者之間被共有 。又,已被金鑰生成演算法Gen所生成的祕密金鑰Sk, 係由證明者祕密地管理》 本手法#1的對話協定,係由圖14所示的Step.1〜 Step .6之處理步驟所構成。以下,說明各步驟之處理。
Step.1 : 首先’證明者演算法P係針對i=l,2,生成向量ri,ti e κη、和向量ei£ Km。接著,證明者演算法p係將ChB* e { 〇,1 }選擇1個。該chBM系對應於,針對i〇之數列 而無法由證明者所回答的驗證模態。接著,證明者演算法 P係針對i关i〇的情況,計算(CmtA, i ; StA, i) — Pb,丨(F,yi, Si : n, ti,ei)。又,針對i = iG的情況,證明者演算法P係 ⑧ -58- 201215069 計算(CmtA,…StA,i)—Mb,i(F,yi; ChB*,Si,n,ti, ej)。 然後’證明者演算法P係將(CmtA,丨,CmtA, 2)送往驗證者( 驗證者演算法V)。
Step.2 : 收到(CmtA,^ CmtA,2)的驗證者演算法 V,係根據存 在q種的環K而選擇出2個亂數之組合(α,, α2)。然後 ,驗證者演算法V係將挑戰(ChA,i,ChA, 2) = (α i, α 2), 送往證明者(證明者演算法Ρ)。
Step·3 : 收到(ChA, ,, ChA, 2)的證明者演算法P,係針對i = l,2 ’計算CmtB,;如下。若iG,則證明者演算法P係計算 (CmtB, i ; StB, 〇 — Pb,2(ChA,i ; StA,〇。另一方面,若 i = i〇 ’則證明者演算法P係計算(CmtB, ; ; StB, Mb, 2(ChA, i ;StA,丨)。然後,證明者演算法P係將(CmtB,丨,CmtB, 2) 送往驗證者(驗證者演算法V)。
Step.4 : 收到(CmtB, ,,CmtB, 2)的驗證者演算法V,係在2個 驗證模態之中,選擇要利用哪個驗證模態。然後,驗證者 演算法V係將表示已選擇之驗證模態的挑戰(ChB, !,
ChB) 2)e R { 0, 1 },送往證明者(證明者演算法P)。 -59- 201215069
Step.5 : 收到(ChB,,,ChB, 2)的證明者演算法P ’係從i=l, 2 中,如下選擇出1個不回答的i(以下稱作i*)。若 Chi0 = Ch*,則證明者演算法P係設定成Chi0尹Ch#。另一 方面,若i尹丨〇,則證明者演算法P係隨機設定成•尹i〇 。若使用該的i +之設定方法,則無論驗證者來要求哪種 驗證模態,係分別以1 /2之機率而取1,2之値。亦即, i〇到底是1,2的哪一値,此一資訊是被完全隱匿。 接著,證明者演算法P係針對ie{l,2}\{P}, 計算RsPi如下》若iG,則證明者演算法P係計算RsPi —Pb, 3(Chi ; Sti)。若i = i〇,則證明者演算法P係計算 RsPi—Mb, 3(Chi; Sti)。然後,證明者演算法P係將(RsPl, Rsp2, i#)送往驗證者(驗證者演算法V)。
Step.6 : 收到(RsPl,Rsp2,Γ)的驗證者演算法V,係針對iE { 1,2} \ { i* },執行 0/1 —Decb(F,yi ; CmtA,i,ChA,), CmtB, i,ChB, u RsPi)。然後,驗證者演算法V係針對ie { 1, 2 } \ { i* },若全部都被受理(輸出1),則視爲驗證 成功。 以上說明了,將本手法#1之方式適用於SSHlOb公開 金鑰認證方式時的對話協定(變形例)。此處雖然針對L = 2 的情形做說明,但針對L 2 3的情形也是可實現同樣的機 制。 ⑧ -60- 201215069 以上說明了本揭露的第1實施形態。在上記說明中, 雖然舉出SSHlOa公開金鑰認證方式、sSHlOb公開金鎗 認證方式爲例來描述,但本手法的適用範圍係不限定 於此。即使對SSHlOa公開金鑰認證方式或SSHlOb公開 金鑰認證方式的變形例、及其他公開金鑰認證方式,仍可 適用。例如,雖然在上記例子中是將公開金鑰設定成(F, y),但由於F是不隨祕密金鑰而變化的參數,因此亦可不 將該F對每位證明者做設定,而是設計成系統全體皆共通 的參數。此情況下,應個別公開的公開金鑰係只有y,可 縮小公開金鑰的大小。又,在上記的對話協定中,雖然針 對i = l,…,L個別地選擇亂數α ,,…,a l,但這些亂數 係亦可共通化成1個。此情況下,可削減在發送挑戰 ChA, i時的通訊成本。 < 3 :第2實施形態(本手法#2)> 接著’說明本揭露的第2實施形態(本手法# 2)。 〔3 -1 :槪要〕 本手法#2係適用了,對SSHlOa公開金鑰認證方式、 SSHlOb公開金鑰認證方式,可保證對主動性攻撃的安全 性等級的機制。雖然反覆,但無從得知對主動性攻撃的安 全性等級是否受到保證的理由是,只要所利用的函數F的 碰撞困難性沒受到保證,就無法避免「進行驗證的證明者 曾用過s」此一資訊被驗證者所獲知。因此,在對話協定 -61 - 201215069 之中,若「進行驗證的證明者曾用過S」此一資訊不讓驗 證者知道,則可保證對主動性攻撃的安全性等級。 於是’本案發明人係想出了將祕密金鑰S、公開金錄 y予以多重化的方式。此方式係把L個(L 2 2)的Sl,... sLeKn當作祕密金鑰,把對於m道之η變數多次多項式 Ρ(χ) = (1^(χ),…,1(χ))而滿足(yi,…,yL) = (F(Sl), ..., 戶(81))的yi,…,yLe Km,當作公開金鑰。甚至,此方式 係爲,讓人不知道曾在對話協定之中使用過哪個Si而進 行證明的方式。若適用此方式,則在對話協定之中關於「 曾利用哪個Si」之資訊係沒有洩漏,因此可保證對主動,性 攻撃的安全性等級。 本手法#2之方式,係驗證者針對i = l,…,L而將挑 戰之組合(Ch/11),…,ChL(Q))及(Ch/1),…,Ch^1))送往證 明者,證明者係選擇其中一種挑戰之組合而進行回答。此 手法係爲,一般是將Q(Q 2 2)組的挑戰之組合送往證明者 ,證明者選擇1個挑戰之組合而進行回答,但此處針對 Q = 2的情形加以說明。知道Sl,…,sL的證明者係可對雙 方之挑戰之組合做回答,但不知道s !,…,s L的僞證者只 能以某種程度之機率對任一挑戰做回答而導致認證失敗。 此外,證明者係針對1個i係即使不利用Si仍可對其中一 個挑戰之組合進行回答,因此即使執行了驗證被受理之對 話協定,在該對話協定之中’驗證者仍不會得知曾經利用 哪個s i。 -62- 201215069 〔3-2 :對SSHlOa公開金鑰認證方式之適用〕 首先,一面參照圖15,一面說明將本手法#2之方式 適用於SSHlOa公開金鑰認證方式時的對話協定。圖15 係用來說明,將本手法#2之方式適用於SSHlOa公開金鑰 認證方式時的對話協定的說明圖。此對話協定,係由金鑰 生成演算法Gen、證明者演算法P、驗證者演算法V所構 成。以下說明各演算法之內容。 (金鑰生成演算法Gen) 首先說明金鑰生成演算法Gen的構成。金鑰生成演算 法Gen,係生成在環K上所被定義的m道之n變數2次 多項 fl (X 1,…,Xn),…,fm(X i,.···,Xn)、和 L 個向量 S I, …,S L E Kn。此外,將η變數的向量(X i,…,X n)表示成X ,將m道之η變數2次多項式(f,(x),…,fm(x))表示成 F(x)。接著,金錄生成演算法Gen係計算yi=F(si),…, yL = F(SL)。然後,金鑰生成演算法Gen係將(F,yi,…, yL)設定成公開金鑰pk,將(Sl,…,sL)設定成祕密金鑰。 接著,一面參照圖1 5,一面說明證明者演算法P、驗 證者演算法V之構成》本手法#1的對話協定,係使「證 明者知道L-1個滿足yi = F(Si)的Si」這件事,在完全不對 驗證者洩漏「哪個Si是否曾經被使用過」此一資訊的情 況下,對驗證者做證明。此外,已被金鑰生成演算法Gen 所生成的公開金鑰pk,係在證明者與驗證者之間被共有 。又,已被金鑰生成演算法Gen所生成的祕密金鑰Sk, -63- 201215069 係由證明者祕密地管理。 本手法#2的對話協定,係由圖15所示的Step」 Step.4之處理步驟所構成。以下,說明各步驟之處理。 S t e p . 1 : 首先,證明者演算法P係針對i=l,…,L,生成向量 n,tie κη、和向量eie Km。接著,證明者演算法P係計 算(Cmtj; Sti)<-Pa,i(F,yi,Sj; ri,ti,ei)。然後’證明者 演算法P係將Cmt,,…,CmtL送往驗證者(驗證者演算法 V)。
Step.2 : 收到Cml,…,CmtL的驗證者演算法V,係在3個驗 證模態之中,選擇要利用哪個驗證模態。此時,驗證者演 算法V係選擇2組驗證模態之組合。然後,驗證者演算 法V係將表示已選擇之驗證模態的挑戰之組合(Ch/^,... ,ChL(())),(Ch/1),…,ChL(1))eR { 0,1,2},送往證明者 (證明者演算法P)。其中,关Chi(1>» S t ep . 3 : 收到(Ch/。),…,ChL(G)),(Ch/1),…,ChL(1>)的證明 者演算法P,係隨機地選擇要對哪一挑戰之組合進行回答 。此外,將該選擇結果表現成d e r { 0,1 }。然後,證明 者演算法P係針對ie { 1,…,L},計算RsPi — ⑧ -64- 201215069 pa,2((:11(% ; Sti)。其後,證明者演算法p係將(Rspi,…, Rspl,d)送往驗證者(驗證者演算法V)。
Step.4 : 收到(Rspi,…,RspL, d)的驗證者演算法v,係針對i E {1,…,L},執行 0/1 — Deca(F,yj; cmti, Ch(d)i,
RsPi)。然後,驗證者演算法V係針對ie { i,…,L }, 若全部都被受理(輸出1 ),則視爲驗證成功。 以上說明了,將本手法#2之方式適用於sSHlOa公開 金鑰認證方式時的對話協定。該對話協定,係藉由 SSH 10a公開金鑰認證方式的安全性,而保證了未持有〜 的僞證者針對i = l,…,L,分別只有2/3以下的機率,可 以對從驗證者所送來之挑戰Chi做正確回答。又,藉由適 用本手法#2’針對2個挑戰之組合的其中一方,由於需要 針對L個的i而對從驗證者所送來之挑戰chi做正確回答 ,因此僞證成功之機率係爲(2/3)L+(2/3)L-(l/3)L=(2L+1-1)/3l 〇 又’於上記的對話協定中,雖然使用了 Sl,…,SL之 全部’但若L $ 3的情況下,即使針對丨,…,L之1個 不使用Si ’仍可完全不讓驗證者知道哪個Si未被使用,就 可進行和證明者完全同樣的舉動。於是,說明不使用丨個 si ’就可和上記對話協定同樣地實現認證的對話協定(變 形例)。 -65- 201215069 〔3-3 :對SSHlOa公開金鑰認證方式之適用(變形例)〕 以下,一面參照圖16,~面說明將本手法#2之方式 適用於SSHlOa公開金鑰認證方式時的對話協定(變形例) 。圖16係用來說明,將本手法#2之方式適用於SSHlOa 公開金鑰認證方式時的對話協定(變形例)的說明圖。此對 話協定,係由金鑰生成演算法Gen、證明者演算法P'驗 證者演算法V所構成。但是,於驗證者演算法V中,是 利用了之前所說明過的僞證演算法之構成。又,假設未使 用的Si的索引係爲iQ。以下說明各演算法之內容。 (金鑰生成演算法Gen) 首先說明金鎗生成演算法Gen的構成。金鑰生成演算 法Gen,係生成在環K上所被定義的m道之η變數2次 多項fl(Xl,…,Xn),…,fm(Xi,…,Xn)、和L個向量Si, …,sLe Kn。但是,siQ係使用適當選擇的向量。此外,將 η變數的向量(X,,…,xn)表示成X,將m道之η變數2次 多項式(fi(x),…,fm(x))表示成F(xP接著,金鑰生成演 算法Gen係計算yi = F(Sl),…,yL = F(sL)。只不過,亦可 不保證會滿足yi〇 = F(si())。然後,金鑰生成演算法Gen係 將(F,yi,…,yL)設定成公開金鑰pk,將(Sl,…,sL)設定 成祕密金鑰。 (證明者演算法P、驗證者演算法V) 接著,一面參照圖1 6,一面說明證明者演算法P、驗 -66- ⑧ 201215069 證者演算法V之構成。此外,已被金鑰生成演算法Gen 所生成的公開金鑰pk,係在證明者與驗證者之間被共有 。又,已被金鑰生成演算法Gen所生成的祕密金鑰sk, 係由證明者祕密地管理。 本手法#2的對話協定,係由圖16所示的Step.i〜 Step. 4之處理步驟所構成。以下,說明各步驟之處理。
Step.i: 首先,證明者演算法p係針對i=1,…,L,生成向量 n,tieKn、和向量eieKm。接著,證明者演算法p係將 Ch* e { 〇,1,2 }選擇1個。該Ch*係對應於,針對i〇之 數列而無法由證明者所回答的驗證模態。接著,證明者演 算法 P 係爲,若 i # i〇,則計算(Cmti ; Sti) — Pa, !(F, yi, Si ;ri,tu ei)。另一方面,若i = iQ,則證明者演算法P係計 算(Cmti; Sti)—Ma,i(F,yi; Ch*,Si,n,tj,e〇。然後,證 明者演算法P係將Cmh,…,CmtL送往驗證者(驗證者演. 算法V)。
Step.2 : 收到Cmt,,…,CmtL的驗證者演算法V,係在3個驗 證模態之中,選擇要利用哪個驗證模態。此時,驗證者演 算法V係選擇2組驗證模態之組合。然後,驗證者演算 法V係將表示已選擇之驗證模態的挑戰之組合(Ch/M,… ,ChL(〇))5 (Ch,(1)s …,ChL(1))e R { 0,1,2 } ’ 送往證明者 -67- 201215069 (證明者演算法P)。其中,Chi⑻共Chi(1)。
Step.3 : 收到(Chi(0),…,ChL(0)),(Ch/1),…,chL⑴)的證明 者演算法P ’係選擇要對哪一挑戰之組合進行回答如下。 此外’將該罐擇結果表現成deR{ 〇, 1}。若Chi〇(0) =
Ch* (條件1)’則證明者演算法P係設定成del。另一方 面’若ChiQ(1) = Ch* (條件2),則證明者演算法p係設定成 d— 〇。條件1、2以外的情況,證明者演算法p係隨機地 設定d E { 〇,1 }。若採取此種設定方法,則無論驗證者 要求了哪種驗證模態,d係以1/2之機率而爲0,1之値, 因此“到底是1,…,L的哪一値,此一資訊是被完全隱匿 〇 在設定了 d之後,證明者演算法P係針對ie{i, …,L },計算RsPi如下。若i共iG,則證明者演算法P係 計算 Rspi—Pa,2(Ch(d)i: Stj)。另一方面’若 i = i〇’ 則證 明者演算法P係計算RsPi—Ma, 2((:11(4 ; Sti)。其後,證 明者演算法P係將(Rspi,…,RspL,d)送往驗證者(驗證者 演算法V)。
Step.4 : 收到(Rsp丨,…,RspL,d)的驗證者演算法V’係針對1 e { 1,…,L },執行 0/1 Deca(F,yi ; Cmti,Ch⑷i,
RsPi)。然後,驗證者演算法V係針對丨e ( 1,···,[}, -68- ⑧ 201215069 若全部都被受理(輸出1),則視爲驗證成功。 以上說明了,將本手法#2之方式適用於SSHlOa公開 金鑰認證方式時的對話協定(變形例)。此外|於上記說明 中,雖然是將2個挑戰之組合從驗證者送往證明者,但例 如亦可預先決定第2個挑戰係爲(:1^(1) = (:1^(<))+1 mod 3。 此情況下,由於其中一方之挑戰之組合不必送出,因此可 削減通訊量。 〔3-4 :對SSH 10b公開金鑰認證方式之適用〕 接著,一面參照圖17,一面說明將本手法#2之方式 適用於SSHlOb公開金鑰認證方式時的對話協定。圖17 係用來說明,將本手法#2之方式適用於SSH 10b公開金鑰 認證方式時的對話協定的說明圖。此對話協定,係由金鑰 生成演算法Gen、證明者演算法P、驗證者演算法V所構 成。以下說明各演算法之內容。 (金鑰生成演算法Gen) 首先說明金鑰生成演算法Gen的構成。金鑰生成演算 法Gen,係生成在環K上所被定義的m道之η變數2次 多項f 1 (X 1,…,X η),…,fm (X ,,…,X η )、和L個向量s 1, …,SlEK11。此外,將η變數的向量(Χι,…,Χη)表不成X ,將m道之η變數2次多項式(Μχ),…,fm(x))表示成 F(x)。接著,金鑰生成演算法Gen係計算yi=F(Sl),…, yL = F(sL)。然後,金鑰生成演算法Gen係將(F, yi,…, -69- 201215069 yL)設定成公開金鑰pk,將(Sl,…,SL)設定成祕密金鑰。 (證明者演算法P、驗證者演算法V) 接著’一面參照圖135,一面說明證明者演算法P、 驗證者演算法V之構成。本手法#2的對話協定,係使「 證明者知道L-1個滿足yi = F(Si)的Si」這件事,在完全不 對驗證者洩漏「哪個Si是否曾經被使用過」此一資訊的 情況下,對驗證者做證明。此外,已被金鎗生成演算法 Gen所生成的公開金鑰pk,係在證明者與驗證者之間被共 有。又’已被金鑰生成演算法Gen所生成的祕密金鑰sk ,係由證明者祕密地管理。 本手法#2的對話協定,係由圖17所示的Step.1〜 Step_6之處理步驟所構成。以下,說明各步驟之處理。
Step.1 : 首先,證明者演算法P係針對i=l,…,L,生成向量 ri,tiG Kn、和向量eie Km。接著,證明者演算法P係計 算(CmtA, i; StA, i)—Pa, i(F,yi,Si; n,ti,ei)。然後,證 明者演算法P係將(CmtA, 1,…,CmtA, L)送往驗證者(驗證 者演算法V)。
Step.2 : 收到(CmtA, !,…,CmtA, L)的驗證者演算法V,係根 據存在q種的環K而選擇出L個亂數之組合(α |,…, ⑧ -70- 201215069 aL)。然後,驗證者演算法V係將挑戰(ChA,,,…,
ChA,L) = (ai,…,OIL),送往證明者(證明者演算法P)。
Step.3 : 收到(ChA, !,…,ChA,L)的驗證者演算法P,係針對 i=l,…,L,計算(CmtB> i ; StB,i) — Pb, 2(ChA,i ; StA,〇。 然後,證明者演算法p係將(CmtB,丨,…,CmtB, L)送往驗 證者(驗證者演算法V)。 S t e p , 4 : 收到(CmtB,丨,…,CmtB,l)的驗證者演算法V,係在 3個驗證模態之中,選擇要利用哪個驗證模態。此時,驗 證者演算法V係選擇2組驗證模態之組合。然後,驗證 者演算法V係將表示已選擇之驗證模態的挑戰之組合 (ChB,丨(0>,…,ChB,L(°)),(ChB,丨⑴,…,ChB, l(")e R { 〇 1 } L,送往證明者(證明者演算法P)。其中,ChB /0)4 ChB,。
Step.5 : 收到(ChB,,(◦),…,ChB,L(0)),(ChB,1(1)… , 5 Π b ] L(U)的證明者演算法P ’係隨機地選擇要對哪_挑戰之組 合進行回答。此外’將該選擇結果表現成; n ,, 、R { 0, 1 } ο 然後,證明者演算法ρ係針對i Ε { 1, ... τ χ » L } ’ g十算
StB,i)。其後
RsPi— Pb,2(ChB,i⑷ 證明者演算法P係將 -71 - 201215069 (Rspi,…,Rspl,d)送往驗證者(驗證者演算法V)〇 S t e p · 6 : 收到(RsPl,···,RspL, d)的驗證者演算法V,係針對i G { 1,…,L},執行 0/1 — Decb(F,; CmtA,i,ChA,i, CmtB,i,ChB, i(d),Rspi)。然後’驗證者演算法V係針對i e { 1,…,L },若全部都被受理(輸出1 ),則視爲驗證 成功。 以上說明了,將本手法#2之方式適用於SSHlOb公開 金鑰認證方式時的對話協定。該對話協定,係藉由 SSH 10b公開金鑰認證方式的安全性,而保證了未持有Si 的僞證者針對i = l,…,L,分別只有l/2+l/2q以下的機率 ,可以對從驗證者所送來之挑戰做正確回答。又,藉由適 用本手法#2,由於對2個挑戰之組合之一方,需要針對L 個的i而對從驗證者所送來之挑戰做正確回答,因此僞證 成功之機率係爲(l/2 + l/2q)L + (l/2 + l/2q)L = 2(l/2+l/2q)L。 又,於上記的對話協定中,雖然使用了 Sl,…,之 全部,但即使針對i = l,…,L之1個不使用Si,仍可完全 不讓驗證者知道哪個Si未被使用,就可進行和證明者完 全同樣的舉動。於是,說明不使用1個si,就可和上記對 話協定同樣地實現認證的對話協定(變形例)。 〔3-5 :對SSHlOb公開金鑰認證方式之適用(變形例)〕 以下,一面參照圖18,一面說明將本手法#2之方式 -72- ⑧ 201215069 適用於SSHlOb公開金鑰認證方式時的對話協淀 。圖18係用來說明,將本手法#2之方式適用东 公開金鑰認證方式時的對話協定(變形例)的說明 話協定’係由金鑰生成演算法Gen、證明者演算 證者演算法V所構成。但是,於驗證者演算法 利用了之前所說明過的僞證演算法之構成。又, 用的Si的索引係爲iG。以下說明各演算法之內容 (金鑰生成演算法Gen) 首先說明金鑰生成演算法Gen的構成。金鑰 法Gen,係生成在環K上所被定義的m道之η 多項 fi(xl5 …,xn),…,fm(x i,…,xn)、和 L il …,sLe κη。但是,SiQ係使用適當選擇的向量。 Π變數的向量(Xl,…,xn)表示成X,將m道之η 多項式(fKx),…,fm(x))表示成F(x)。接著,金 算法Gen係計算ypFh),…,yL = F(sL)。只不 不保證會滿足yipF^cO。然後,金鑰生成演算容 將(F,yi,…,yL)設定成公開金鑰pk,將(s 1,… 成祕密金鑰。 (證明者演算法P、驗證者演算法V) 接著,一面參照圖18,一面說明證明者演算 證者演算法V之構成。此外,已被金鑰生成演 所生成的公開金鑰pk,係在證明者與驗證者之 :(變形例) I- SSHlOb 圖。此對 法P、驗 V中,是 假設未使 生成演算 變數2次 面向量s1} 此外,將 變數2次 鑰生成演 過,亦可 ;G e η 係 ,sL)設定 法P、驗 算法Gen 間被共有 -73- 201215069 。又,已被金鑰生成演算法Gen所生成的祕密金鑰sk, 係由證明者祕密地管理。 本手法#2的對話協定,係由圖18所示的Step.1〜 Step. 6之處理步驟所構成。以下,說明各步驟之處理。
Step.1 : 首先,證明者演算法P係針對i = l,…,L,生成向量 n,he κη、和向量eie Km。接著,證明者演算法P係將 ChB# e { 〇,1 }選擇1個。該Ch+係對應於,針對iQ之數 列而無法由證明者所回答的驗證模態。接著,證明者演算 法P係針對i=^i〇的情況,計算(〇111“,;;3“,〇<-P b,1 (F,y j,s j ; r i,t i,e i)。又,針對 i = i 〇 的情況,證明者 演算法 P 係計算(CmtA, i ; StA, i) — Mb, KF,yi ; ChB*,Si, Π,h,ei)。然後,證明者演算法P係將(CmtA, u …, CmtA, L)送往驗證者(驗證者演算法V)。
Step.2 : 收到(CmtA,丨,…,CmtA, L)的驗證者演算法V,係根 據存在q種的環K而選擇出L個亂數之組合(a!,…, a L)。然後,驗證者演算法V係將挑戰(ChA, i,…,
ChA, L) = (ai,…,aL),送往證明者(證明者演算法P)。
Step.3 : 收到(ChA,,,…,ChA, L)的證明者演算法P,係針對 ⑧ -74- 201215069 i=l,…,L ’計算CmtB,i如下。首先,針對i〇之情形 ’則證明者演算法P係計算(CmtB, ; ; StB,Pb 2(ChA , ;StA, i) »另一方面’針對i = i〇之情形,則證明者演算法 P 係計算(CmtB,i; StB, i)eMb, 2(ChA, j; StA, i)。然後, 證明者演算法P係將(CmtB,u…,CmtB, L)送往驗證者(驗 證者演算法V)。
Step.4 : 收到(CmtB,丨,…,CmtB, L)的驗證者演算法V,係在 3個驗證模態之中,選擇要利用哪個驗證模態。此時,驗 證者演算法V係選擇2組驗證模態之組合。然後,驗證 者演算法V係將表示已選擇之驗證模態的挑戰之組合 (ChB,1(0),…,ChB,L( )),(ChB,1(丨),…,ChB,L(")e r { 〇, 1} L,送往證明者(證明者演算法P)。其中,ChB, i(0)关 ChB, i(1)。
Step .5 : 收到(ChB,/' …,
ChB, L(1〉)的證明者演算法P,係如下般地選擇要對哪一挑 戰之組合進行回答。此外’將該選擇結果表現成d G R { 〇, U 。若ChB, ,則證明者演算法P係設定成d — i。另一方面,若ChB,iQ(1) = ChB*,則證明者演算法P係 設定成d — 〇 °若使用該設定方法’則無論驗證者來要求 哪種驗證模態’ d係分別以1 /2之機率而取〇,1之値。亦 -75- 201215069 即,d到底是〇,1的哪一値,此一資訊是被完全隱匿。 接著,證明者演算法P係針對i=l,…,L,計算RsPi 如下。針對i矣iQ之情形,則證明者演算法P係計算RsPi —Pb, 3(ChB, i(d> ; StB, i)。又,針對 i = i〇 之情形,則證明 者演算法 P 係計算 RsPi — Mb, 3(ChB, i(d) ; StB, i)。其後, 證明者演算法P係將(RsPl,…,RspL,d)送往驗證者(驗證 者演算法V)。
Step.6 : 收到(Rsp丨,…,RSPl,d)的驗證者演算法V,係針對 i=l,…,L ’ 執行 0/1 —Decb(F,yi ; CmtA, i, ChA,(,
CmtB,i,ChB, i(d>, Rspi)。然後,驗證者演算法V係針對 i = l,…,L·,若全部都被受理(輸出1),則視爲驗證成功 〇 以上說明了,將本手法#2之方式適用於SSHlOb公開 金鑰認證方式時的對話協定(變形例)。此外,於上記說明 中,雖然是將2個挑戰之組合從驗證者送往證明者,但例 如亦可預先決定第2個挑戰係爲= 1 mod 2。 此情況下,由於其中一方之挑戰之組合不必送出,因此可 削減通訊量。 以上說明了本揭露的第2實施形態。在上記說明中, 雖然舉出SSH 10a公開金鑰認證方式、sshi 〇b公開金鑰 認證方式爲例來描述,但本手法#2的適用範圍係不限定 於此。即使對SSHlOa公開金鑰認證方式或SSH1〇b公開
-76- 201215069 金鑰認證方式的變形例、及其他公開金鑰認證方式,仍可 適用。例如,雖然在上記例子中是將公開金鑰設定成(F, y) ’但由於F是不隨祕密金鑰而變化的參數,因此亦可不 將該F對每位證明者做設定,而是設計成系統全體皆共通 的參數。此情況下,應個別公開的公開金鑰係只有y,可 縮小公開金鑰的大小。又,在上記的對話協定中,雖然針 對i=l,…,L個別地選擇亂數a ls…,α L,但這些亂數 係亦可共通化成1個。此情況下,可削減在發送挑戰 ChA, i時的通訊成本。 < 4 :補充> 此處,補充說明本手法#1、#2。 〔4_1 :關於方式的擴充〕 目前爲止是針對以多次多變數聯立方程式的求解問題 爲基礎的公開金鑰認證方式來進行說明。可是,本手法#1 、#2的思考方式,係即使對其他公開金鑰認證方式,仍 可同樣適用。於是,作爲一例,介紹對基於Syndrome Decoding問題之公開金鑰認證方式的適用方法、對基於 Constrained Linear Equations問題之公開金鑰認證方式的 適用方法、對基於Permuted Kernel問題之公開金錄認證 方式的適用方法、對基於代數曲面上的求區間問題之公開 金鑰認證方式的適用方法、對基於Permuted Perceptrons 問題之公開金鑰認證方式的適用方法。 -77- 201215069 (對Syndrome Decoding問題之適用) 基於Syndrome Decoding問題的公開金鑰認證方式, 係被記載於例如「Jacques Stern, A New Identification Scheme Based on Syndrome Decoding, CRYPTO 1 9 9 3, p 1 3 -21.」或「Jacques Stern, A New Paradigm for Public Key Identification, IEEE Transactions on Information Theory, 1996,pl3-21·」。據此,該公開金鑰認證方式係有3回合 方式和5回合方式。 3回合方式,係和SSH 10a公開金鑰認證方式同樣地 ,驗證模態係爲3模態,存在有可對應至其中2模態爲止 的僞證演算法。又,5回合方式也是,和SSHlOb公開金 鑰認證方式同樣地,驗證模態係爲2模態,存在有可對應 至其中1模態爲止的僞證演算法。因此,對3回合方式係 可適用之前針對SSHlOa公開金鑰認證方式所說明的方法 ,對5回合方式係可適用之前針對SSHlOb公開金鑰認證 方式所說明的方法。 (對 Constrained Linear Equations 問題之適用) 基於Constrained Linear Equations問題的公開金鑰認 證方式,係記載於例如「Jacques Stern, Designing Identification Schemes with Keys of Short Size, CRYPTO 1 994,P 1 64- 1 73.」。據此,該公開金鑰認證方式係亦有3 回合方式和5回合方式。 3回合方式,係和SSHlOa公開金鑰認證方式同樣地 ⑧ -78- 201215069 ,驗證模態係爲3模態,存在有可對應至其中2模態爲止 的僞證演算法。又,5回合方式也是,和SSH1 Ob公開金 鑰認證方式同樣地,驗證模態係爲2模態,存在有可對應 至其中1模態爲止的僞證演算法。因此,對3回合方式係 可適用之前針對SSHlOa公開金鑰認證方式所說明的方法 ,對5回合方式係可適用之前針對SSH 10b公開金鑰認證 方式所說明的方法。 (對Permuted Kernel問題之適用) 基於Permuted Kernel問題的公開金鑰認證方式,係 記載於例如「Adi Shamir,An Efficient Identification Scheme Based on Permuted Kernels (Extended Abstract), CRYPTO 1 989,ρ606·609·」。據此,該公開金鑰認證方式 係爲驗證模態是2模態,存在有可對應至其中1模態爲止 的僞證演算法。因此,對該公開金鑰認證方式係可適用之 前針對SSH 10b公開金鑰認證方式所說明的方法。 (對代數曲面上的求區間問題之適用) 基於代數曲面上的求區間問題的公開金鑰認證方式中 ’係有3回合與5回合方式(例如參照日本特願2010-125026號等)。3回合方式,係和SSHlOa公開金鑰認證方 式同樣地,驗證模態係爲3模態,存在有可對應至其中2 模態爲止的偽證演算法。又,5回合方式也是,和 SSH 1 0b公開金鑰認證方式同樣地,驗證模態係爲2模態 -79- 201215069 ,存在有可對應至其中1模態爲止的僞證演算法。因此, 對3回合方式係可適用之前針對SSHlOa公開金鑰認證方 式所說明的方法,對5回合方式係可適用之前針對 SSH 10b公開金鑰認證方式所說明的方法。 (對 Permuted Perceptrons 問題之適用) 基於Permuted Perceptrons問題的公開金输認證方式 ,係被記載於例如「David Pointcheval, A New Identification Scheme Based on the Perceptrons Problem, EUROCRYPT 1 995,p3 1 9-3 2 8.」或「David Pointcheval and Guillaume Poupard, A New NP-Complete Problem and Public-Key Identification, D e s. Codes Cryptography, 2003,p5-31·」。據此,該公開金鑰認證方式係有3回合 方式和5回合方式。 3回合方式係爲驗證模態是4模態,存在有可對應至 其中3模態爲止的僞證演算法。另一方面,5回合方式係 爲驗證模態是3模態,存在有可對應至其中2模態爲止的 僞證演算法。因此,和SSHlOa公開金鑰認證方式或 SSHlOb公開金鑰認證方式同樣地,對此公開金鑰認證方 式也是可適用本手法#1、#2之技術。只不過,對該公開 金鑰認證方式適用本手法#1之際,需要以下的變更》 對驗證模態爲k模態之方式,將祕密金鑰多重化成 L = k個而適用本手法#1的情況下,必須要從i=1,…,[ 中,如下所示般地選擇出1個不回答的i(以下稱作i* )。 201215069 亦即,i*的選擇方法係爲,若Chit^CV則選擇i*—i〇, 若Chi0关Ch*則從i* e { 1,…,L } \ { i0 }中隨機選擇 • * 1 〇 又,對驗證模態爲k模態之方式,將祕密金鑰多重化 成L(L<k)個而適用本手法#1的情況下,必須要從i=1, …,L中,如下所示般地選擇出1個不回答的i(以下稱作 Γ)。亦即,i"的選擇方法係爲,若ChifCh*則選擇广― i〇,若 Chi0 古 Ch* 則以機率 U-l/kV^l/L-l/k)選擇 i* — i〇 ,且以機率1-(1-1/1〇-1(1/1^1/1〇從1*6{1,…,L } \ { i0 }中隨機選擇广。 若依據上記方法,則無論驗證者要求了哪種驗證模態 ,Ρ係以1/L之機率而取1,…,L之値,因此i〇到底是 1,…,L的哪一値,此一資訊是被完全隱匿。 如以上所說明,本手法#1、#2係不限於SSH 10a公開 金鑰認證方式、SSH 10b公開金鑰認證方式,可適用於各 種公開金鑰認證方式。 〔4-2 :關於非對話型之公開金鑰認證方式〕 適用了上記的本手法#1、#2的公開金鑰認證方式, 係爲驗證者只會發送亂數的方式,因此可變形成爲1回合 (非對話型)的公開金鑰認證方式。例如,只要將在N次的 並列式反覆構成中與驗證者之間交換的內容裡適用了雜湊 函數者’當作從驗證者所發送之亂數的替代來使用即可。 又’亦可對雜湊函數的引數,加入證明者所選擇的亂數。 -81 - 201215069 如此,藉由取代由驗證者選擇亂數而改爲證明者本身利用 雜湊函數,就可實現和由驗證者選擇亂數之情形同樣的舉 動。只不過,利用理想的雜湊函數爲較佳。又,爲了使僞 證變成不可能,將反覆的次數N增加至非常大,較爲理 想。藉由這些設計,就可變形成非對話型的公開金鑰認證 方式。 〔4-3 :關於通訊量之削減方法’〕 此處,一面參照圖19、圖20,一面簡單補充說明對 話協定中的通訊量之削減方法。 如已經說明過的,在SSHlOa公開金鑰認證方式的第 1回合中,從證明者向驗證者會發送訊息之組合(Cl,C2, c3)。但是,於上記說明中是使用Cmt這種表現。在N次 的並列式反覆構成時,該訊息之組合,係如圖1 9所示, 會變成(Cl, 1,Cl, 2,Cl, 3,…,CN,1,CN, 2,CN, 3),通訊量會 變得非常大。於是,本案發明人係想出了將這些訊息總結 成1個雜湊値而發送的構成。 如圖19所示,若適用此構成,則第1回合所送出的 訊息係變成只有1個雜湊値,可大幅削減通訊量。但是, 關於該雜湊値、及從對證明者所送來之挑戰的回答而無法 復原之雜湊値,係要連同回答而一起從證明者送來。若採 取此構成,則在N次之並列式反覆構成的情況下,所應 發送之資訊的數量,可削減2N-1個。如圖20所示,即使 對SSHlOb公開金鑰認證方式也可適用同樣的構成。此情 -82- ⑧ 201215069 況下’應發送之資訊的數量可削減Ν-l個。 以上補充說明了本手法#1、#2。 < 5 :硬體構成> 上記各演算法’係例如可使用圖21所示之資訊處理 裝置的硬體構成來執行。亦即,該當各演算法之處理,係 使用電腦程式來控制圖21所示之硬體,而加以實現。此 外,該硬體的形態係爲任意,例如,個人電腦、行動電話 、PHS、PDA等之行動資訊終端、遊戲機、接觸式或非接 觸式的1C晶片、接觸式或非接觸式的1C卡、或各種資訊 家電,係可包含於其中。其中,上記的PHS係爲Personal Handy-phone System 之簡稱。又,上記的 PDA係爲 Personal Digital Assistant 之簡稱。 如圖 21所示,該硬體係主要具有:CPU902、 ROM904、RAM906、主匯流排 908、橋接器 910。再者, 該硬體係還具有:外部匯流排912、介面914、輸入部 916、輸出部918、記憶部920、驅動機922、連接埠924 、通訊部 92 6。其中,上記的 CPU係爲 Central Processing Unit之簡稱。又,上記的ROM係爲Read Only Memory之簡稱。然後,上記的RAM係爲Random Access Memory之簡稱" CPU902係例如作爲演算處理裝置或控制裝置而發揮 機能,基於ROM904、RAM906、記憶部920、或可移除式 記錄媒體928中所記錄之各種程式,而控制各構成要素的 -83- 201215069 整體動作或其一部分》ROM904,係用來儲存被CPU902 所讀取之程式或演算時所用之資料等的一種手段。 RAM906中’例如,被CPU902所讀取的程式、或該程式 執行之際會適宜變化的各種參數等,是被暫時或永久性地 儲存。 這些構成要素,係例如透過可高速傳輸資料的主匯流 排908而彼此連接。另一方面,主匯流排908係例如透過 橋接器910而和資料傳輸速度較低的外部匯流排912連接 ‘。又’作爲輸入部916係採用例如滑鼠、鍵盤、觸控面板 、按紐、開關、及搖桿等。甚至,作爲輸入部916係亦可 採用,可利用紅外線或其他電波來發送控制訊號的遙控器 〇 作爲輸出部91 8,係爲例如CRT、LCD、PDP、或 ELD等之顯示裝置、揚聲器、耳機等之音訊輸出裝置、印 表機、行動電話、或傳真機等,可將已取得之資訊對利用 者以視覺性或聽覺性進行通知的裝置。其中,上記的CRT 係爲Cathode Ray Tube之簡稱。又,上記的LCD係爲 Liquid Crystal Display之簡稱。然後,上記的PDP係爲 Plasma DisplayPanel之簡稱。再者,上記的 ELD係爲 Electro-Luminescence Display 之簡稱。 記億部920,係爲用來儲存各種資料的裝置。作爲記 憶部920,係可使用例如硬碟機(HDD)等之磁性記憶裝置 、半導體記憶裝置、光記憶裝置、或光磁性記憶裝置等。 其中,上記的HDD係爲Hard Disk Drive之簡稱。 ⑧ -84- 201215069 驅動機922,係例如將磁碟、光碟、光磁碟、或半導 體記憶體等之可移除式記錄媒體9 2 8中所記錄的資訊予以 讀出’或將資訊寫入至可移除式記錄媒體928。可移除式 記錄媒體928,係例如爲DVD媒體、Blu-ray媒體、HD DVD媒體、各種半導體記憶媒體等。當然,可移除式記 錄媒體9 2 8,係亦可爲例如搭載有非接觸型j c晶片的IC 卡、或電子機器寺。其中’上g己的1C係爲Integrated Circuit之簡稱。 連接埠924,係爲例如USB埠、IEEE1394埠、SCSI 、RS-23 2C埠、或光音訊端子等之類的用來連接外部連接 機器93 0的埠。外部連接機器93 0,係例如爲印表機、攜 帶型音樂播放機、數位相機、數位視訊攝影機、或1C錄 音機等。其中,上記的USB係爲Universal Serial Bus之 簡稱。又’上記的 SCSI 係爲 Small Computer System Interface 之簡稱。 通訊部926,係爲用來連接網路93 2所需的通訊裝置 ,例如爲有線或無線 LAN、Bluetooth(註冊商標)、或 WUSB用的通訊卡、光通訊用的路由器、ADSL用的路由 器、或是接觸或非接觸通訊用的裝置等。又,被連接至通 訊部926的網路932,係由有線或無線所連接的網路所構 成’例如爲網際網路、家庭內LAN、紅外線通訊、可見 光通訊、廣播、或衛星通訊等。其中,上記的LAN係爲 Local Area Network之簡稱。又,上記的 WUSB係爲 Wireless USB 之簡稱。然後,上記的 ADSL係爲 -85- 201215069
Asymmetric Digital Subscriber Line 之簡稱。 < 6 :總結> 最後,簡單總結本揭露的實施形態所述之技術內容。 此處所述之技術內容,例如可對PC、行動電話、攜帶型 遊戲機、攜帶型資訊終端、資訊家電、行車導航系統等各 種資訊處理技術做適用。 上記資訊處理裝置的機能構成係可表現如下。該當資 訊處理裝置,係具有如下的金鑰保持部、和對話協定執行 部。該當金鑰保持部,係針對L個(L22)祕密金鑰Si(i = l 〜L)、及η次多變數多項式之組合F(n 2 2),將滿足 yi = F(Si)的L個公開金鑰)^加以保持。又,上記的對話協 定執行部,係與驗證者之間,執行用來證明已知(L-1)個 滿足yi = F(Si)之祕密金鑰Si所需之對話協定。又,前記對 話協定執行部,係與前記驗證者之間執行前記對話協定之 際,不讓該當驗證者獲知是使用了哪個祕密金鑰Si。 如上記,將祕密金鑰Si多重化,執行對話協定之際 ,利用其中一部分祕密金鑰,然後在對話協定之中不讓人 知道哪個祕密金鑰Si有被利用,藉此,即使在並列式反 覆構成的情況下,仍可保證對主動性攻撃的安全性等級。 亦即,即使僞證者假扮驗證者而試圖取得認證時所利用的 祕密金鑰Si,在對話協定之中,驗證者仍無法得知哪個祕 密金鑰Si是被利用。亦即,即使是可執行任意次數的對 話協定的狀況下,由於祕密金鑰Si之資訊不會從證明者 -86- ⑧ 201215069 洩漏’因此可保證對主動性攻撃的安全性等級。 (備註) 上記的資訊處理裝置,係爲證明者側及驗證者側的認 證裝置之一例。又,上記的ROM904、RAM906、記憶部 920、可移除式記錄媒體92 8,係爲金鑰保持部之一例。 此外,該金鑰保持部中所保持的祕密金鑰si、公開金鑰yi ’係由金鑰生成演算法Gen所產生。又,證明者演算法P 、驗證者演算法V,係爲對話協定執行部之一例。此外, 實際上’證明者演算法P、驗證者演算法V是藉由 CPU902的機能而被執行,以實現對話協定執行部的機能 。又,藉由證明者演算法P所實現的機能,而實現了 .挑戰 收訊部、挑戰選擇部、回答生成部、回答送訊部、訊息送 訊部之機能。此外,在資訊的收送訊中,是利用了通訊部 926的機能。 以上雖然一面參照添附圖面一面說明了本揭露的理想 實施形態,但本揭露當然不限定於所述例子。只要是當業 者,在申請專利範圍所記載之範疇內,自然可以想到各種 變更例或修正例,而這些當然也都屬於本揭露的技術範圍 ,這點必須了解。 【圖式簡單說明】 [圖1 ]用來說明公開金鑰認證方式之演算法構成的說 明圖。 -87- 201215069 [圖+ 2]用來說明η回合之公開金鑰認證方式的說明圖 〇 [圖3]用來說明SSHlOa公開金鑰認證方式之對話協 定的說明圖。 [圖4]用來說明SSHlOb公開金鑰認證方式之對話協 定的說明圖。 [圖5]用來說明對話協定之直列式反覆構成的說明圖 〇 [圖6]用來說明對話協定之並列式反覆構成的說明圖 〇 [圖7]用來說明針對SSHlOa公開金鑰認證方式之對 話協定的僞證演算法的說明圖。 [圖8】用來說明針對SSHlOb公開金鑰認證方式之對 話協定的僞證演算法的說明圖。 [圖9]用來說明針對SSHlOa公開金鑰認證方式之對 話協定的本手法#1之適用方法的說明圖。 [圖10]用來說明針對SSHlOa公開金鑰認證方式之對 話協定的本手法#1之適用方法(變形例1)的說明圖》 [圖11]用來說明針對SSHlOa公開金鑰認證方式之對 話協定的本手法#1之適用方法(變形例2)的說明圖。 [圖12]用來說明針對SSHlOa公開金鑰認證方式之對 話協定的本手法#1之適用方法(變形例3)的說明圖。 [圖13]用來說明針對SSHlOb公開金鑰認證方式之對 話協定的本手法#1之適用方法的說明圖。 -88- 201215069 [圖14]用來說明針對SSHlOb公開金鑰認證方式之對 話協定的本手法#1之適用方法(變形例)的說明圖。 [圖15]用來說明針對SSHlOa公開金鑰認證方式之對 話協定的本手法#2之適用方法的說明圖。 [圖16]用來說明針對SSHlOa公開金鑰認證方式之對 話協定的本手法#2之適用方法(變形例)的說明圖。 [圖17]用來說明針對SSHlOb公開金鑰認證方式之對 話協定的本手法#2之適用方法的說明圖。 [圖18]用來說明針對SSHlOb公開金鑰認證方式之對 話協定的本手法#2之適用方法(變形例)的說明圖。 [圖19]用來說明SSHlOa公開金鑰認證方式之對話協 定中的通訊量之削減方法的說明圖。 [圖20]用來說明SSHlOb公開金鑰認證方式之對話協 定中的通訊量之削減方法的說明圖。 [圖21]用來說明可實現本實施形態所述之對話協定的 資訊處理裝置的硬體構成例的說明圖。 【主要元件符號說明】
902 : CPU
904 : ROM
906 : RAM 9 0 8 :主匯流排 9 1 0 .橋接器 9 1 2 :外部匯流排 -89- 201215069 9 1 4 :介面 9 1 6 :輸入部 918 :輸出部 920 :記憶部 9 2 2 :驅動機 924 :連接埠 926 :通訊部 92 8:可移除式記錄媒體 93 0 :外部連接機器 93 2 :網路
Gen :金鑰生成演算法 P :證明者演算法 V :驗證者演算法 -90

Claims (1)

  1. 201215069 七、申請專利範園: I—種認證裝置,其特徵爲, 具備: 金鑰保持部,係針對L個(L22)祕密金鑰Si(i=l〜L) 、及η次多變數多項式之組合F(n^2)’將滿足yi = F(Si)的 L個公開金鑰yi加以保持;和 對話協定執行部,係與驗證者之間執行對話協定,用 來證明已知(L-1)個滿足yi = F(Si)之祕密金鑰Si ; 前記對話協定執行部係含有: 挑戰收訊部,係從前記驗證者,接收L個挑戰 Chi ;和 挑戰選擇部,係從已被前記挑戰收訊部所接收的 L個挑戰Chi之中,任意選擇出(L-1)個挑戰Chi ;和 回答生成部,係使用前記祕密金鑰^,生成對於 已被前記挑戰選擇部所選擇之(L-1)個挑戰C hi之各者的 (L-1)個回答Rspi ;和 回答送訊部,係將已被前記回答生成部所生成的 (L-1)個回答RsPi,發送至前記驗證者。 2.如請求項1所記載之認證裝置,其中, 前記對話協定執行部係還含有: 訊息送訊部,係對前記驗證者,發送L個前記祕密金 鑰Si所分別對應之訊息Cmti ; 前記挑戰收訊部,係將隨應於已被前記訊息送訊部所 發送之各訊息Cmti,而被前記驗證者從k種(kg 2)驗證模 -91 - 201215069 態之中所選擇出來的驗證模態加以表示的挑戰Chi,予以 接收。 3 .如請求項2所記載之認證裝置,其中, 若前記訊息Cmtj爲Cmti = (cj, 1,…,Ci,μ),貝!J 前記訊息送訊部係使用單向性函數Η而算出新的訊息 Cmt’ ,…,CmtL),然後將該當訊息Cmt’發送 至前記驗證者; 前記回答送訊部,係將前記回答RsPi,連同即使前記 驗證者利用該當回答RsPi也無法復原之前記訊息Cmti的 要素,予以發送。 4 .如請求項2所記載之認證裝置,其中, 前記金鑰保持部,係在前記L個祕密金鑰Si當中,不 保存其中1把祕密金鑰si()(l S L); 前記對話協定執行部,係基於僞證演算法,而執行在 前記對話協定之中所被執行的關於前記祕密金鑰siG的處 理。 5.—種認證裝置,其特徵爲, 具備: 金鑰保持部,係針對L個祕密金鑰Si(i=l〜L)、η次 多變數多項式之組合F(n22),將滿足yi = F(Si)的L個公開 金鑰yi加以保持;和 挑戰收訊部,係從驗證者,接收Q組(Q 2 2)之L個挑 戰Chi⑴(j = l〜Q);和 挑戰選擇部,係從已被前記挑戰收訊部所接收的Q組 -92- ⑧ 201215069 之L個挑戰Chi⑴之中,任意選擇出1組之L個挑戰Chi⑴ :和 回答生成部,係使用前記祕密金繪S i ’ :生成對於已被 前記挑戰選擇部所選擇之L個挑戰ChiQ)之各者的L個回 答RsPi ;和 回答送訊部,係將已被前記回答生:成部所生:成@ L個 回答Rspi,發送至前記驗證者。 6.如請求項5所記載之認證裝置’其中’ 前記對話協定執行部係還含有: 訊息送訊部,係對前記驗證者’發送L個前記祕密金 鑰Si所分別對應之訊息Cmti ; 前記挑戰收訊部,係將隨應於已被前記訊息送訊部所 發送之各訊息Cmti,而被前記驗證者從k種(kg 2)驗證模 態之中所選擇出來的驗證模態加以表示的挑戰Chi(j),予 以接收。 7 .如請求項6所記載之認證裝置,其中, 若前記訊息C m t i爲C m t i = (c i,1,…,c i, N),貝IJ 前記訊息送訊部係使用單向性函數H而算出新的訊息 Cmt’ ···,CmtL),然後將該當訊息cmt’發送 至前記驗證者: 前記回答送訊部,係將前記回答Rspi,連同即使前記 驗證者利用該當回答Rspi也無法復原之前記訊息Cmti的 要素,予以發送。 8.—種認證方法,其特徵爲, -93- 201215069 包含有: 針對L個(L22)祕密金鑰Si(i = l〜L)、及η次多變數 多項式之組合F(ng2),將滿足yi = F(Si)的L個公開金鑰yi 加以生成:和 與驗證者之間執行對話協定,用來證明已知(L-1)個滿 足y i = F (s i)之祕密金鏡s i ; 前記執行係包含有: 從前記驗證者,接收L個挑戰Chi ;和 從已被接收的L個挑戰Chi之中,任意選擇出(L-1)個挑戰Chi ;和 使用前記祕密金鑰Si,生成對於已被選擇之(L-1) 個挑戰Chi之各者的(L-1)個回答RsPi :和 將已被生成的(L-1)個回答RsPi,發送至前記驗 證者。 9.一種程式,其特徵爲, 係用來使: 金鑰保持機能,係針對L個(L22)祕密金鑰Si(i=l〜 L)、及η次多變數多項式之組合F(n22),將滿足yi = F(Si) 的L個公開金鑰yi加以保持;和 對話協定執行機能,係與驗證者之間執行對話協定’ 用來證明已知(L-1)個滿足yi = F(Si)之祕密金鑰Si ; 被電腦實現所需的程式,其中, 前記對話協定執行機能係含有: 挑戰收訊機能,係從前記驗證者,接收L個挑戰 -94- ⑧ 201215069 Chi ;和 挑戰選擇機能,係從已被前記挑戰收訊機能所接 收的L個挑戰C h i之中,任意選擇出(L -1)個挑戰C h i ;和 回答生成機能,係使用前記祕密金鑰^,生成對 於已被前記挑戰選擇機能所選擇之(L-1)個挑戰Chi之各者 的(L-1)個回答Rspi;和 回答送訊機能,係將已被前記回答生成機能所生 成的(L-1)個回答RsPi,發送至前記驗證者。 1〇.—種認證方法,其特徵爲, 包含有: 針對L個祕密金鑰Si(i = l〜L)、η次多變數多項式之 組合F(n2 2),生成滿足yi = F(Si)的L個公開金鑰yi ;和 從驗證者,接收Q組(Q22)之L個挑戰Chi(j)(j = l〜 Q);和 從已被接收的Q組之L個挑戰Chi(j)之中,任意選擇 出1組之L個挑戰Chi(j);和 使用前記祕密金鑰Si,生成對於已被選擇之L個挑戰 Ch/b各者的L個回答RsPi ;和 將已被生成的L個回答RsPi,發送至前記驗證者° 11.—種程式,其特徵爲,係用來使電腦實現: 金鑰保持機能,係針對L個祕密金鑰Si(i=l〜Μ ' η 次多變數多項式F(ng 2),將滿足yi = F(Si)的L個公開金鑰 W加以保持;和 挑戰收訊機能,係從驗證者,接收Q組(Q 2 2)之L β -95- 201215069 挑戰 Chi(j)(j = l 〜Q);和 挑戰選擇機能,係從已被前記挑戰收訊機能所接收的 Q組之L個挑戰Chi⑴之中,任意選擇出1組之L個挑戰 Chi(j);和 回答生成機能,係使用前記祕密金鑰Si,生成對於已 被前記挑戰選擇機能所選擇之L個挑戰Chi⑴之各者的L 個回答Rspi ;和 回答送訊機能’係將已被前記回答生成機能所生成的 L個回答Rspi,發送至前記驗證者。 -96-
TW100124969A 2010-07-30 2011-07-14 Authentication device, authentication method, and program TWI455555B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010171940 2010-07-30
JP2010224752A JP5594034B2 (ja) 2010-07-30 2010-10-04 認証装置、認証方法、及びプログラム

Publications (2)

Publication Number Publication Date
TW201215069A true TW201215069A (en) 2012-04-01
TWI455555B TWI455555B (zh) 2014-10-01

Family

ID=45529885

Family Applications (1)

Application Number Title Priority Date Filing Date
TW100124969A TWI455555B (zh) 2010-07-30 2011-07-14 Authentication device, authentication method, and program

Country Status (13)

Country Link
US (2) US9076000B2 (zh)
EP (1) EP2600563A4 (zh)
JP (1) JP5594034B2 (zh)
KR (1) KR101808363B1 (zh)
CN (1) CN103155480B (zh)
AU (1) AU2011283888B2 (zh)
BR (1) BR112013001733A2 (zh)
CA (2) CA3000137A1 (zh)
MY (1) MY181936A (zh)
RU (1) RU2573772C2 (zh)
SG (1) SG187039A1 (zh)
TW (1) TWI455555B (zh)
WO (1) WO2012014669A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5790289B2 (ja) * 2011-08-12 2015-10-07 ソニー株式会社 情報処理装置、情報処理方法、プログラム、及び記録媒体
JP5790287B2 (ja) 2011-08-12 2015-10-07 ソニー株式会社 情報処理装置、情報処理方法、プログラム、及び記録媒体
TW201351195A (zh) * 2012-03-02 2013-12-16 Sony Corp 演算裝置、控制方法、及程式
WO2014087738A1 (ja) * 2012-12-05 2014-06-12 ソニー株式会社 情報処理装置、検証処理装置、情報処理方法、検証処理方法、およびプログラム
US10447475B1 (en) * 2018-11-08 2019-10-15 Bar Ilan University System and method for managing backup of cryptographic keys
CN110650160B (zh) * 2019-10-29 2022-01-04 北京天威诚信电子商务服务有限公司 一种身份认证方法及系统
JP7273742B2 (ja) * 2020-02-07 2023-05-15 株式会社東芝 暗号化装置、復号装置、暗号方法、復号方法、暗号化プログラム及び復号プログラム

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5375170A (en) * 1992-11-13 1994-12-20 Yeda Research & Development Co., Ltd. Efficient signature scheme based on birational permutations
FR2737370B1 (fr) 1995-07-27 1997-08-22 Bull Cp8 Procede de communication cryptographique
US5710814A (en) * 1996-07-23 1998-01-20 Cheyenne Property Trust Cryptographic unit touch point logic
JPH1165439A (ja) * 1996-08-09 1999-03-05 Nippon Telegr & Teleph Corp <Ntt> N進表現暗号による通信および認証方法、ならびにそれらの装置、およびn進表現暗号による通信および認証プログラムを格納した記憶媒体
US6307936B1 (en) * 1997-09-16 2001-10-23 Safenet, Inc. Cryptographic key management scheme
US6076163A (en) * 1997-10-20 2000-06-13 Rsa Security Inc. Secure user identification based on constrained polynomials
US6411715B1 (en) * 1997-11-10 2002-06-25 Rsa Security, Inc. Methods and apparatus for verifying the cryptographic security of a selected private and public key pair without knowing the private key
US6959085B1 (en) * 1999-05-03 2005-10-25 Ntru Cryptosystems, Inc. Secure user identification based on ring homomorphisms
US7243236B1 (en) * 1999-07-29 2007-07-10 Intertrust Technologies Corp. Systems and methods for using cryptography to protect secure and insecure computing environments
JP2003511899A (ja) 1999-10-01 2003-03-25 フランス テレコム エンティティの真正性及びメッセージの完全性を証明するための特定のキーのセット
US20020136401A1 (en) * 2000-07-25 2002-09-26 Jeffrey Hoffstein Digital signature and authentication method and apparatus
US7181017B1 (en) * 2001-03-23 2007-02-20 David Felsher System and method for secure three-party communications
US7114178B2 (en) * 2001-05-22 2006-09-26 Ericsson Inc. Security system
WO2003050998A1 (en) * 2001-12-07 2003-06-19 Ntru Cryptosystems, Inc. Digital signature and authentication method and apparatus
KR20040093128A (ko) * 2002-03-13 2004-11-04 코닌클리케 필립스 일렉트로닉스 엔.브이. 다항식을 기반으로 한 다수-사용자 키 생성 및 인증 방법및 시스템
US8046832B2 (en) * 2002-06-26 2011-10-25 Microsoft Corporation Spam detector with challenges
JP4457651B2 (ja) * 2003-11-27 2010-04-28 日本電気株式会社 証明装置及び証明方法並びにプログラム
FR2865590A1 (fr) * 2004-01-23 2005-07-29 France Telecom Procede pour etablir, a partir d'un jeu de grands nombres premiers, un jeu de cles destine a prouver l'authenticite d'une entite ou l'integrite d'un message
JP4282546B2 (ja) * 2004-05-19 2009-06-24 株式会社東芝 暗号装置、復号装置、鍵生成装置、プログラム及び方法
TWI280026B (en) * 2004-07-02 2007-04-21 Univ Chang Gung RSA with personalized secret
US8645694B2 (en) 2004-09-30 2014-02-04 Koninklijke Philips N.V. Method of authentication based on polyomials
US20060245587A1 (en) * 2005-04-28 2006-11-02 Binyamin Pinkas System and method for private information matching
US7958362B2 (en) * 2005-10-11 2011-06-07 Chang Gung University User authentication based on asymmetric cryptography utilizing RSA with personalized secret
US20080013721A1 (en) * 2005-11-30 2008-01-17 Jing-Jang Hwang Asymmetric cryptography with discretionary private key
CN101410847B (zh) 2006-06-30 2011-11-09 国际商业机器公司 在移动设备处的消息处理方法以及移动设备和智能卡
JP4197710B2 (ja) * 2006-07-19 2008-12-17 株式会社東芝 暗号装置、復号装置、プログラム及び方法
US8006300B2 (en) * 2006-10-24 2011-08-23 Authernative, Inc. Two-channel challenge-response authentication method in random partial shared secret recognition system
WO2009083109A1 (en) * 2008-01-02 2009-07-09 National University Of Ireland, Galway A method and apparatus for authenticating a user
US8713655B2 (en) * 2008-04-21 2014-04-29 Indian Institute Of Technology Method and system for using personal devices for authentication and service access at service outlets
JP2010049215A (ja) * 2008-08-25 2010-03-04 Toshiba Corp パラメータ生成装置、暗号処理システム、方法およびプログラム
JP4756067B2 (ja) 2008-11-27 2011-08-24 株式会社サンセイアールアンドディ 遊技機

Also Published As

Publication number Publication date
CA3000137A1 (en) 2012-02-02
CN103155480A (zh) 2013-06-12
AU2011283888A1 (en) 2012-12-13
JP5594034B2 (ja) 2014-09-24
US9076000B2 (en) 2015-07-07
SG187039A1 (en) 2013-02-28
CA2804394A1 (en) 2012-02-02
JP2012050053A (ja) 2012-03-08
RU2013103035A (ru) 2014-07-27
MY181936A (en) 2021-01-14
TWI455555B (zh) 2014-10-01
CN103155480B (zh) 2015-11-25
US20150256342A1 (en) 2015-09-10
BR112013001733A2 (pt) 2016-05-31
KR101808363B1 (ko) 2017-12-12
RU2573772C2 (ru) 2016-01-27
CA2804394C (en) 2018-05-22
WO2012014669A1 (ja) 2012-02-02
EP2600563A1 (en) 2013-06-05
EP2600563A4 (en) 2016-10-19
KR20130100959A (ko) 2013-09-12
US9602285B2 (en) 2017-03-21
US20130089201A1 (en) 2013-04-11
AU2011283888B2 (en) 2015-10-29

Similar Documents

Publication Publication Date Title
JP5736816B2 (ja) 認証装置、認証方法、プログラム、及び署名生成装置
Wang et al. Security analysis of a single sign-on mechanism for distributed computer networks
TWI455555B (zh) Authentication device, authentication method, and program
JP5593850B2 (ja) 認証装置、認証方法、プログラム、及び署名生成装置
JP2013042315A (ja) 情報処理装置、及び情報処理方法
TWI511517B (zh) Information processing apparatus, information processing method, program and recording medium
JP5790289B2 (ja) 情報処理装置、情報処理方法、プログラム、及び記録媒体
JP5790291B2 (ja) 情報処理装置、署名提供方法、署名検証方法、プログラム、及び記録媒体
JP5790286B2 (ja) 情報処理装置、署名生成装置、情報処理方法、署名生成方法、及びプログラム
JP5790290B2 (ja) 情報処理装置、情報処理方法、プログラム、及びプログラムを記録したコンピュータ読み取り可能な記録媒体
JP5790288B2 (ja) 情報処理装置、及び情報処理方法
WO2013024628A1 (ja) 情報処理装置、及び情報処理方法

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees