KR101431412B1 - 서명 처리 시스템, 키 생성 장치, 서명 장치, 검증 장치, 서명 처리 방법 및 서명 처리 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 - Google Patents

서명 처리 시스템, 키 생성 장치, 서명 장치, 검증 장치, 서명 처리 방법 및 서명 처리 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 Download PDF

Info

Publication number
KR101431412B1
KR101431412B1 KR1020137022196A KR20137022196A KR101431412B1 KR 101431412 B1 KR101431412 B1 KR 101431412B1 KR 1020137022196 A KR1020137022196 A KR 1020137022196A KR 20137022196 A KR20137022196 A KR 20137022196A KR 101431412 B1 KR101431412 B1 KR 101431412B1
Authority
KR
South Korea
Prior art keywords
signature
key
integer
vector
verification
Prior art date
Application number
KR1020137022196A
Other languages
English (en)
Other versions
KR20130130810A (ko
Inventor
가츠유키 다카시마
다츠아키 오카모토
Original Assignee
미쓰비시덴키 가부시키가이샤
니폰덴신뎅와 가부시키가이샤
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 미쓰비시덴키 가부시키가이샤, 니폰덴신뎅와 가부시키가이샤 filed Critical 미쓰비시덴키 가부시키가이샤
Publication of KR20130130810A publication Critical patent/KR20130130810A/ko
Application granted granted Critical
Publication of KR101431412B1 publication Critical patent/KR101431412B1/ko

Links

Images

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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • 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/3066Public 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
    • H04L9/3073Public 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 involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/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/3247Cryptographic 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/3255Cryptographic 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 group based signatures, e.g. ring or threshold signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Algebra (AREA)
  • Computing Systems (AREA)
  • Storage Device Security (AREA)
  • Collating Specific Patterns (AREA)
  • Complex Calculations (AREA)

Abstract

설계의 자유도가 높은 논모노톤 술어를 서포트한 속성 베이스 서명 방식을 제공하는 것을 목적으로 한다. 논모노톤 스팬 프로그램에 속성 벡터의 내적을 적용하는 것에 의해 액세스 스트럭쳐를 구성했다. 이 액세스 스트럭쳐는, 스팬 프로그램의 설계와, 속성 벡터의 설계에 자유도가 있고, 액세스 제어의 설계에 큰 자유도를 갖는다. 그리고, 이 액세스 스트럭쳐에 대하여 비밀 분산의 개념을 이용함으로써, 논모노톤 술어를 서포트한 속성 베이스 서명 방식을 실현했다.

Description

서명 처리 시스템, 키 생성 장치, 서명 장치, 검증 장치, 서명 처리 방법 및 서명 처리 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체{SIGNATURE PROCESSING SYSTEM, KEY GENERATION DEVICE, SIGNATURE DEVICE, VERIFICATION DEVICE, SIGNATURE PROCESSING METHOD AND COMPUTER READABLE RECORDING MEDIUM STORING SIGNATURE PROCESSING PROGRAM}
본 발명은, 속성 베이스 서명(Attribute-Based Signatures, ABS) 방식에 관한 것이다.
비특허 문헌 26, 29, 30, 34-37, 45, 51에는, 속성 베이스 서명 방식에 관한 기재가 있다. 특히, 비특허 문헌 36, 37에는, 모노톤 술어를 서포트한 속성 베이스 서명 방식에 대한 기재가 있다.
(선행 기술 문헌)
(비특허 문헌)
(비특허 문헌 1) Beimel, A., Secure schemes for secret sharing and key distribution. PhD Thesis, Israel Institute of Tech-nology, Technion, Haifa, Israel, 1996.
(비특허 문헌 2) Belenkiy, M., Camenisch, J., Chase, M., Kohlweiss, M., Lysyanskaya, A. and Shacham, H. : Randomizable proofs and delegatable anonymous credentials. CRYPTO 2009. LNCS, Springer Heidelberg (2009)
(비특허 문헌 3) Belenkiy, M., Chase, M., Kohlweiss, M. and Lysyanskaya, A. : P-signatures and noninteractive anonymous credentials. TCC 2008, LNCS, Springer Heidelberg (2008)
(비특허 문헌 4) Bethencourt, J., Sahai, A., Waters, B. : Ciphertext-policy attribute-based encryption. In : 2007 IEEE Sym-posium on Security and Privacy, pp. 321. 334. IEEE Press (2007)
(비특허 문헌 5) Boneh, D., Boyen, X. : Efficient selective-ID secure identity based encryption without random oracles. In : Cachin, C., Camenisch, J. (eds.) EUROCRYPT 2004. LNCS, vol. 3027, pp. 223. 238. Springer Heidelberg (2004)
(비특허 문헌 6) Boneh, D., Boyen, X. : Secure identity based encryption without random oracles. In : Franklin, M. K. (ed.) CRYPTO 2004. LNCS, vol. 3152, pp. 443. 459. Springer Heidelberg (2004)
(비특허 문헌 7) Boneh, D., Boyen, X., Goh, E. : Hierarchical identity based encryption with constant size ciphertext. In : Cramer, R. (ed.) EUROCRYPT 2005. LNCS, vol. 3494, pp. 440. 456. Springer Heidelberg (2005)
(비특허 문헌 8) Boneh, D., Franklin, M. : Identity-based encryption from the Weil pairing. In : Kilian, J. (ed.) CRYPTO 2001. LNCS, vol. 2139, pp. 213. 229. Springer Heidelberg (2001)
(비특허 문헌 9) Boneh, D., Hamburg, M. : Generalized identity based and broadcast encryption scheme. In : Pieprzyk, J.(ed.) ASIACRYPT 2008. LNCS, vol. 5350, pp. 455. 470. Springer Heidelberg (2008)
(비특허 문헌 10) Boneh, D., Katz, J., Improved efficiency for CCA-secure cryptosystems built using identity based encryp-tion. RSA-CT 2005, LNCS, Springer Verlag (2005)
(비특허 문헌 11) Boneh, D., Waters, B. : Conjunctive, subset, and range queries on encrypted data. In : Vadhan, S. P. (ed.) TCC 2007. LNCS, vol. 4392, pp. 535. 554. Springer Heidelberg (2007)
(비특허 문헌 12) X. Boyen : Mesh signatures. EUROCRYPT, LNCS, vol. 4515, pp. 210. 227. Springer (2007).
(비특허 문헌 13) Boyen, X., Waters, B. : Anonymous hierarchical identity-based encryption (without random oracles). In : Dwork, C. (ed.) CRYPTO 2006. LNCS, vol. 4117, pp. 290. 307. Springer Heidelberg (2006)
(비특허 문헌 14) Camenisch, J. and Gross, T. : Efficient attributes for anonymous credentials. CCS 2008.
(비특허 문헌 15) Camenisch, J. and Lysyanskaya, A. : An efficient system for non-transferable anonymous credentials with optinal anonymity revocation. Eurocrypt 2001.
(비특허 문헌 16) Camenisch, J. and Lysyanskaya, A. : Signature schemes and anonymous credentials from bilinear maps. Crypto 2004.
(비특허 문헌 17) Canetti, R., Halevi S., Katz J., Chosen-ciphertext security from identity-based encryption. EUROCRYPT 2004, LNCS, Springer-Verlag (2004)
(비특허 문헌 18) Chaum, D. : Security without identification : Transaction systems to make big brother obsolete. CACM (1985).
(비특허 문헌 19) D. Chaum and E. van Heyst : Group signatures. In proceedings of EUROCRYPT’91, LNCS, vol. 547, pp.257. 265 (1991).
(비특허 문헌 20) Cocks, C. : An identity based encryption scheme based on quadratic residues. In : Honary, B. (ed.) IMA Int. Conf. LNCS, vol. 2260, pp. 360. 363. Springer Heidelberg (2001)
(비특허 문헌 21) Gentry, C. : Practical identity-based encryption without random oracles. In : Vaudenay, S. (ed.) EURO-CRYPT 2006. LNCS, vol. 4004, pp. 445. 464. Springer Heidelberg (2006)
(비특허 문헌 22) Gentry, C., Halevi, S. : Hierarchical identity-based encryption with polynomially many levels. In : Reingold, O. (ed.) TCC 2009. LNCS, vol. 5444, pp. 437. 456. Springer Heidelberg (2009)
(비특허 문헌 23) Gentry, C., Silverberg, A. : Hierarchical ID-based cryptography. In : Zheng, Y. (ed.) ASIACRYPT 2002. LNCS, vol. 2501, pp. 548. 566. Springer Heidelberg (2002)
(비특허 문헌 24) Goyal, V., Pandey, O., Sahai, A., Waters, B. : Attribute-based encryption for fine-grained access control of encrypted data. In : ACM Conference on Computer and Communication Security 2006, pp. 89. 98, ACM (2006)
(비특허 문헌 25) Groth, J., Sahai, A. : Efficient non-interactive proof systems for bilinear groups. In : Smart, N. P. (ed.) EUROCRYPT 2008. LNCS, vol. 4965, pp. 415. 432. Springer Heidelberg (2008)
(비특허 문헌 26) S. Guo and Y. Zeng : Attribute-based Signature Scheme, In ISA’08, pp. 509. 511 (2008).
(비특허 문헌 27) Horwitz, J., Lynn, B. : Towards hierarchical identity-based encryption. In : Knudsen, L. R. (ed.) EURO-CRYPT 2002. LNCS, vol. 2332, pp. 466. 481. Springer Heidelberg (2002)
(비특허 문헌 28) Katz, J., Sahai, A., Waters, B. : Predicate encryption supporting disjunctions, polynomial equations, and inner products. In : Smart, N. P. (ed.) EUROCRYPT 2008. LNCS, vol. 4965, pp. 146. 162. Springer Heidel-berg (2008)
(비특허 문헌 29) D. Khader : Attribute Based Group Signatures, Cryptology ePrint Archive, Report 2007/159 (2007). http://eprint.iacr.org/2007/159.
(비특허 문헌 30) D. Khader : Attribute Based Group Signature with Revocation. Cryptology ePrint Archive, Report 2007/241, (2007). http://eprint.iacr.org/2007/241.
(비특허 문헌 31) Lewko, A., Okamoto, T., Sahai, A., Takashima, K. and Waters, B. : Fully Secure Functional Encryption : Attribute-Based Encryption and (Hierarchical) Inner Product Encryption, EUROCRYPT 2010. LNCS, Springer Heidelberg (2010)
(비특허 문헌 32) Lewko, A. B., Waters, B. : Fully secure HIBE with short ciphertexts. ePrint, IACR, http://eprint.iacr.org/2009/482
(비특허 문헌 33) Lewko, A. B., Waters, B. : Decentralizing Attribute-Based Encryption, ePrint, IACR, http://eprint.iacr.org/2010/351.
(비특허 문헌 34) Jin Li, Man Ho Au, Willy Susilo, Dongqing Xie, Kui Ren : Attribute-based Signature and its Application, ASIACCS’ 2010, ACM (2010)
(비특허 문헌 35) J. Li and K. Kim : Attribute-based ring signatures. 2008. Available at http://eprint.iacr.org/2008/394. To appear in Journal of Information Sciences.
(비특허 문헌 36) Maji, H., Prabhakaran, M., Rosulek, M. : Attribute-Based Signatures : Achieving Attribute-Privacy and Collusion-Resistance. ePrint, IACR, http://eprint.iacr.org/2008/328
(비특허 문헌 37) Maji, H., Prabhakaran, M., Rosulek, M. : Attribute-Based Signatures. http://www.cs.uiuc.edu/ mmp/research.html
(비특허 문헌 38) Okamoto, T., Takashima, K. : Homomorphic encryption and signatures from vector decomposition. In : Galbraith, S. D., Paterson, K. G. (eds.) Pairing 2008. LNCS, vol. 5209, pp. 57. 74. Springer Heidelberg (2008)
(비특허 문헌 39) Okamoto, T., Takashima, K. : Hierarchical predicate encryption for Inner-Products, In : ASIACRYPT 2009, Springer Heidelberg (2009)
(비특허 문헌 40) Okamoto, T., Takashima, K. : Fully Secure Functional Encryption with General Relations from the Deci-sional Linear Assumption, In : CRYPTO 2010, Springer Heidelberg (2010)
(비특허 문헌 41) Ostrovsky, R., Sahai, A., Waters, B. : Attribute-based encryption with non-monotonic access structures. In : ACM Conference on Computer and Communication Security 2007, pp. 195. 203, ACM (2007)
(비특허 문헌 42) Pirretti, M., Traynor, P., McDaniel, P., Waters, B. : Secure attribute-based systems. In : ACM Conference on Computer and Communication Security 2006, pp. 99. 112, ACM, (2006)
(비특허 문헌 43) Pirretti, M., Traynor, P., McDaniel, P., Waters, B. : Secure attribute-based systems. In : ACM Conference on Computer and Communication Security 2006, pp. 99. 112, ACM, (2006)
(비특허 문헌 44) Sahai, A., Waters, B. : Fuzzy identity-based encryption. In : Cramer, R. (ed.) EUROCRYPT 2005. LNCS, vol. 3494, pp. 457. 473. Springer Heidelberg (2005)
(비특허 문헌 45) S. F. Shahandashti and R. Safavi-Naini : Threshold attribute-based signatures and their application to anonymous credential systems. In AFRICACRYPT’09, pp. 198. 216 (2009).
(비특허 문헌 46) A. Shamir : Identity-based cryptosystems and signature schemes. In CRYPTO’84, pp. 47. 53 (1984).
(비특허 문헌 47) Shi, E., Waters, B. : Delegating capability in predicate encryption systems. In : Aceto, L., Damg°ard, I., Goldberg, L. A., Halldorsson, M. M., Ingolfsdottir, A., Walukiewicz, I. (eds.) ICALP (2) 2008. LNCS, vol.5126, pp. 560. 578. Springer Heidelberg (2008)
(비특허 문헌 48) Shi, E., Waters, B. : Delegating capability in predicate encryption systems. In : Aceto, L., Damg°ard, I., Goldberg, L. A., Halldorsson, M. M., Ingolfsdottir, A., Walukiewicz, I. (eds.) ICALP (2) 2008. LNCS, vol.5126, pp. 560. 578. Springer Heidelberg (2008)
(비특허 문헌 49) Waters, B. : Ciphertext-policy attribute-based encryption : an expressive, efficient, and provably secure realization. ePrint, IACR, http://eprint.iacr.org/2008/290
(비특허 문헌 50) Waters, B. : Dual system encryption : Realizing fully secure IBE and HIBE under simple assumptions. In : Halevi, S. (ed.) CRYPTO 2009. LNCS, vol. 5677, pp. 619. 636. Springer Heidelberg (2009)
(비특허 문헌 51) Waters, B. : Dual system encryption : Realizing fully secure IBE and HIBE under simple assumptions. In : Halevi, S. (ed.) CRYPTO 2009. LNCS, vol. 5677, pp. 619. 636. Springer Heidelberg (2009)
종래의 속성 베이스 서명 방식에서는, 논모노톤 술어를 서포트하고 있지 않았다.
본 발명은, 논모노톤 술어를 서포트한 속성 베이스 서명 방식을 제공하는 것을 목적으로 한다.
본 발명에 따른 서명 처리 시스템은, 키 생성 장치와 서명 장치와 검증 장치를 구비하고, t=0, …, d+1(d는 1 이상의 정수)의 각 정수 t에 대한 기저 Bt와 기저 B* t를 이용하여 서명 처리를 실행하는 서명 처리 시스템이고, 상기 키 생성 장치는, t=1, …, d의 적어도 하나 이상의 정수 t에 대하여, 식별 정보 t와, 속성 정보 xt를 포함하는 속성 집합 Γ를 입력하는 제 1 정보 입력부와, 기저 B* 0의 기저 벡터 b* 0, 1의 계수로서 소정의 값 δ를 설정한 키 요소 k* 0을 생성하는 키 요소 0 생성부와, 상기 제 1 정보 입력부가 입력한 속성 집합 Γ에 포함되는 각 식별 정보 t에 대하여, 기저 B* t의 기저 벡터 b* t, 1의 계수로서 상기 소정의 값 δ를 설정하고, 기저 벡터 b* t, 2의 계수로서 속성 정보 xt에 상기 소정의 값 δ를 곱한 δxt를 설정한 키 요소 k* t를 생성하는 키 요소 t 생성부와, 기저 B* d+1의 기저 벡터 b* d+1, 1의 계수로서 상기 소정의 값 δ를 설정한 키 요소 k* d+1, 1과, 기저 B* d+1의 기저 벡터 b* d+1, 2의 계수로서 상기 소정의 값 δ를 설정한 키 요소 k* d+1, 2를 생성하는 키 요소 d+1 생성부와, 상기 키 요소 0 생성부가 생성한 키 요소 k* 0과, 상기 키 요소 t 생성부가 생성한 상기 속성 집합 Γ에 포함되는 각 식별 정보 t에 대한 키 요소 k* t와, 상기 키 요소 d+1 생성부가 생성한 키 요소 k* d+1, 1 및 키 요소 k* d+1, 2와, 상기 속성 집합 Γ를 포함하는 서명 키 skΓ를 상기 서명 장치에 송신하는 서명 키 송신부를 구비하고, 상기 서명 장치는, i=1, …, L(L은 1 이상의 정수)의 각 정수 i에 대한 변수 ρ(i)로서, 식별 정보 t(t=1, …, d의 어느 하나의 정수)와, 속성 정보 vi의 긍정형의 조 (t, vi) 또는 부정형의 조 ¬(t, vi)의 어느 하나인 변수 ρ(i)와, L행 r열(r은 1 이상의 정수)의 소정의 행렬 M과, 메시지 m을 입력하는 제 2 정보 입력부와, 상기 서명 키 송신부가 송신한 서명 키 skΓ를 취득하는 서명 키 취득부와, 상기 제 2 정보 입력부가 입력한 변수 ρ(i)와, 상기 서명 키 취득부가 취득한 서명 키 skΓ에 포함되는 속성 집합 Γ에 근거하여, i=1, …, L의 각 정수 i 중, 변수 ρ(i)가 긍정형의 조 (t, vi)이고, 또한, 그 조의 vi와, 그 조의 식별 정보 t가 나타내는 속성 집합 Γ에 포함되는 xt가 같은 i와, 변수 ρ(i)가 부정형의 조 ¬(t, vi)이고, 또한, 그 조의 vi와, 그 조의 식별 정보 t가 나타내는 속성 집합 Γ에 포함되는 xt가 같지 않은 i의 집합 I를 특정함과 아울러, 특정한 집합 I에 포함되는 i에 대하여, 상기 제 2 정보 입력부가 입력한 행렬 M의 i행째의 요소인 Mi에 근거하여, αiMi를 합계한 경우에 소정의 벡터 h가 되는 보완 계수 αi를 계산하는 보완 계수 계산부와, 상기 서명 키 skΓ에 포함되는 키 요소 k* 0을 포함하는 서명 요소 s*0을 생성하는 서명 요소 0 생성부와, i=1, …, L의 각 정수 i에 대하여, 상기 보완 계수 계산부가 특정한 집합 I에 포함되는 정수 i이고, 또한, 변수 ρ(i)가 긍정형의 조 (t, vi)인 경우에는 값 γi:=αi로 하고, 상기 집합 I에 포함되는 i이고, 또한, 변수 ρ(i)가 부정형의 조 ¬(t, vi)인 경우에는 값 γi:=αi/(vi-xt)로 하고, 상기 집합 I에 포함되지 않는 정수 i의 경우에는 값 γi:=0으로 하여, 상기 서명 키 skΓ에 포함되는 키 요소 k* t에 상기 값 γi를 곱한 γik* t를 포함하는 서명 요소 s* i를 생성하는 서명 요소 i 생성부와, 상기 서명 키 skΓ에 포함되는 키 요소 k* d+1, 1과, 상기 메시지 m을 이용하여 생성되는 값 m’를 상기 키 요소 k* d+1, 2에 곱한 m’ㆍk* d+1, 2의 합을 포함하는 서명 요소 s* L+1을 생성하는 서명 요소 L+1 생성부와, 상기 서명 요소 0 생성부가 생성한 서명 요소 s* 0과, 상기 서명 요소 i 생성부가 생성한 i=1, …, L의 각 정수 i에 대한 서명 요소 s* i와, 상기 서명 요소 L+1 생성부가 생성한 서명 요소 s* L+1과, 상기 메시지 m과, 상기 변수 ρ(i)와, 상기 행렬 M을 포함하는 서명 데이터 σ를 상기 검증 장치에 송신하는 서명 데이터 송신부를 구비하고, 상기 검증 장치는, 상기 서명 데이터 송신부가 송신한 서명 데이터 σ를 취득하는 데이터 취득부와, r개의 요소를 갖는 벡터 f와 상기 벡터 h를 이용하여 생성되는 값 s0:=hㆍf→T와, 소정의 값 sL +1로부터 계산되는 -s0-sL +1을, 기저 B0의 기저 벡터 b0 , 1의 계수로서 설정하여 검증 요소 c0을 생성하는 검증 요소 0 생성부와, 상기 벡터 f와 상기 데이터 취득부가 취득한 서명 데이터 σ에 포함되는 행렬 M에 근거하여 생성되는 열벡터 s→T:=(s1, …, sL)T:=Mㆍf→T와, i=1, …, L의 각 정수 i에 대한 소정의 값 θi를 이용하여, i=1, …, L의 각 정수 i에 대하여, 변수 ρ(i)가 긍정형의 조 (t, vi)인 경우에는, 그 조의 식별 정보 t가 나타내는 기저 Bt의 기저 벡터 bt , 1의 계수로서 siivi를 설정하고, 기저 벡터 bt , 2의 계수로서 -θi를 설정하여 검증 요소 ci를 생성하고, 변수 ρ(i)가 부정형의 조 ¬(t, vi)인 경우에는, 그 조의 식별 정보 t가 나타내는 기저 벡터 bt , 1의 계수로서 sivi를 설정하고, 기저 벡터 bt , 2의 계수로서 -si를 설정하여 검증 요소 ci를 생성하는 검증 요소 i 생성부와, 기저 Bd+1의 기저 벡터 bd +1, 1의 계수로서, 상기 소정의 값 sL +1과 상기 값 m’와 소정의 값 θL+1로부터 계산되는 sL +1L+1m’를 설정하고, 기저 벡터 bd +1, 2의 계수로서 상기 소정의 값 θL+1을 설정하여 검증 요소 cL +1을 생성하는 검증 요소 L+1 생성부와, 상기 검증 요소 0 생성부가 생성한 검증 요소 c0과, 상기 검증 요소 i 생성부가 생성한 검증 요소 ci와, 상기 검증 요소 L+1 생성부가 생성한 검증 요소 cL +1과, 상기 서명 데이터 σ에 포함되는 서명 요소 s* 0, s* i, s* L+1에 대하여, 페어링 연산 Πi=0 L+1e(ci, s* i)를 행하고, 상기 서명 데이터 σ의 정당성을 검증하는 페어링 연산부를 구비하는 것을 특징으로 한다.
본 발명에 따른 속성 베이스 서명 방식에서는, 논모노톤 술어를 서포트하고 있다. 그 때문에, 이용 범위가 넓은 속성 베이스 서명 방식을 실현하고 있다.
도 1은 행렬 M^의 설명도.
도 2는 행렬 Mδ의 설명도.
도 3은 s0의 설명도.
도 4는 s→T의 설명도.
도 5는 속성 베이스 서명 방식을 실행하는 서명 처리 시스템(10)의 구성도.
도 6은 키 생성 장치(100)의 기능을 나타내는 기능 블록도.
도 7은 서명 장치(200)의 기능을 나타내는 기능 블록도.
도 8은 검증 장치(300)의 기능을 나타내는 기능 블록도.
도 9는 Setup 알고리즘의 처리를 나타내는 플로차트.
도 10은 KeyGen 알고리즘의 처리를 나타내는 플로차트.
도 11은 Sig 알고리즘의 처리를 나타내는 플로차트.
도 12는 Ver 알고리즘의 처리를 나타내는 플로차트.
도 13은 다관리자의 설명도.
도 14는 분산 다관리자 속성 베이스 서명 방식을 실행하는 서명 처리 시스템(10)의 구성도.
도 15는 각 키 생성 장치(100)의 기능을 나타내는 기능 블록도.
도 16은 서명 장치(200)의 기능을 나타내는 기능 블록도.
도 17은 검증 장치(300)의 기능을 나타내는 기능 블록도.
도 18은 GSetup 알고리즘의 처리를 나타내는 플로차트.
도 19는 ASetup 알고리즘의 처리를 나타내는 플로차트.
도 20은 AttrGen 알고리즘의 처리를 나타내는 플로차트.
도 21은 Sig 알고리즘의 처리를 나타내는 플로차트.
도 22는 Ver 알고리즘의 처리를 나타내는 플로차트.
도 23은 키 생성 장치(100), 서명 장치(200), 검증 장치(300)의 하드웨어 구성의 일례를 나타내는 도면.
이하, 도면에 근거하여, 발명의 실시의 형태를 설명한다.
이하의 설명에 있어서, 처리 장치는 후술하는 CPU(911) 등이다. 기억 장치는 후술하는 ROM(913), RAM(914), 자기 디스크(920) 등이다. 통신 장치는 후술하는 통신 보드(915) 등이다. 입력 장치는 후술하는 키보드(902), 통신 보드(915) 등이다. 다시 말해, 처리 장치, 기억 장치, 통신 장치, 입력 장치는 하드웨어이다.
이하의 설명에 있어서의 표기법에 대하여 설명한다.
A가 랜덤의 변수 또는 분포일 때, 수학식 101은, A의 분포에 따라 A로부터 y를 랜덤으로 선택하는 것을 나타낸다. 다시 말해, 수학식 101에 있어서, y는 난수이다.
[수학식 101]
Figure 112013076321591-pct00001
A가 집합일 때, 수학식 102는, A로부터 y를 균등하게 선택하는 것을 나타낸다. 다시 말해, 수학식 102에 있어서, y는 균등 난수이다.
[수학식 102]
Figure 112013076321591-pct00002
수학식 103은, y가 z에 의해 정의된 집합인 것, 또는 y가 z가 대입된 집합인 것을 나타낸다.
[수학식 103]
Figure 112013076321591-pct00003
a가 상수일 때, 수학식 104는, 기계(알고리즘) A가 입력 x에 대하여 a를 출력하는 것을 나타낸다.
[수학식 104]
Figure 112013076321591-pct00004
수학식 105, 다시 말해 Fq는, 위수 q의 유한체를 나타낸다.
[수학식 105]
Figure 112013076321591-pct00005
벡터 표기는, 유한체 Fq에 있어서의 벡터 표시를 나타낸다. 다시 말해, 수학식 106이다.
[수학식 106]
Figure 112013076321591-pct00006
수학식 107은, 수학식 108에 나타내는 2개의 벡터 x와 v의 수학식 109에 나타내는 내적을 나타낸다.
[수학식 107]
Figure 112013076321591-pct00007
[수학식 108]
Figure 112013076321591-pct00008
[수학식 109]
Figure 112013076321591-pct00009
XT는, 행렬 X의 전치 행렬을 나타낸다.
bi(i=1, …, n)가 공간 V의 벡터의 요소일 때, 다시 말해, 수학식 110일 때, 수학식 111은, 수학식 112에 의해 생성되는 부분 공간을 나타낸다.
[수학식 110]
Figure 112013076321591-pct00010
[수학식 111]
Figure 112013076321591-pct00011
[수학식 112]
Figure 112013076321591-pct00012
수학식 113에 나타내는 기저 B와 기저 B*에 대하여, 수학식 114이다.
[수학식 113]
Figure 112013076321591-pct00013
[수학식 114]
Figure 112013076321591-pct00014
또한, 이하의 설명에 있어서, paramVt에 있어서의 Vt는 Vt이다.
마찬가지로, Fq nt에 있어서의 nt는 nt이다.
마찬가지로, skgid, (t, xt )에 있어서의 xt는 xt이다.
마찬가지로, “δi, j”가 어깨 글자(superior letter)로 나타나 있는 경우, 이 δi, j는, δi, j를 의미한다.
또한, 벡터를 의미하는 “→”가 다리 글자(inferior letter) 또는 어깨 글자에 붙어 있는 경우, 이 “→”는 다리 글자 또는 어깨 글자에 어깨 글자로 붙어 있는 것을 의미한다.
또한, 이하의 설명에 있어서, 서명 처리란, 키 생성 처리, 서명 처리, 검증 처리를 포함하는 것이다.
실시의 형태 1.
본 실시의 형태에서는, 「속성 베이스 서명 방식」에 대하여 설명한다.
제 1에, 속성 베이스 서명에 대하여 간단히 설명한다.
제 2에, 속성 베이스 서명 방식을 실현하기 위한 공간인 「쌍대 페어링 벡터 공간(Dual Pairing Vector Spaces, DPVS)」이라고 하는 풍부한 수학적 구조를 갖는 공간을 설명한다.
제 3에, 속성 베이스 서명 방식을 실현하기 위한 개념을 설명한다. 여기서는, 「스팬 프로그램(Span Program)」, 「속성 벡터의 내적과 액세스 스트럭쳐」, 「비밀 분산 방식(비밀 공유 방식)」에 대하여 설명한다. 또한, 「충돌 곤란 해시 함수(Collision Resistant Hash Functions)」에 대해서도 설명한다.
제 4에, 본 실시의 형태에 따른 「속성 베이스 서명 방식」을 설명한다. 우선, 「속성 베이스 서명 방식」의 기본 구성에 대하여 설명한다. 다음으로, 「속성 베이스 서명 방식」을 실현하는 「서명 처리 시스템(10)」의 기본 구성에 대하여 설명한다. 그리고, 본 실시의 형태에 따른 「속성 베이스 서명 방식」 및 「서명 처리 시스템(10)」에 대하여 상세히 설명한다.
<제 1. 속성 베이스 서명>
디지털 서명의 개념은, Diffie와 Hellman에 의해 1976년에 논문으로 소개되었다. 여기서는, 디지털 서명의 개념은, 비밀이 되는 서명 키 sk와 공개되는 검증 키 pk의 페어가 서명자에 대하여 생성되고, 서명 키 sk를 이용하여 생성된 메시지 m의 서명 σ가, 대응하는 검증 키 pk에 의해 검증되게 되었다. 다시 말해, 서명 키 sk를 사용하여 서명된 메시지(m, σ)의 서명자가, 검증 키 pk에 의해 확인되게 되었다.
이것은, 디지털 서명의 요건의 하나이기는 하다. 그러나, 서명 키 sk와 검증 키 pk의 관계가 밀접하기 때문에, 서명자와 서명에 의해 증명되는 내용 사이의 관계에 유연성이나 프라이버시가 없다.
서명 키와 검증 키의 관계가 보다 유연하게 되거나 또는 세련되게 됨으로써, 용도가 넓고, 프라이버시가 향상된 디지털 서명의 개량형이 연구되고 있다.
서명의 이 클래스에서는, 서명 키와 검증 키는 각각, 속성 x와 술어 v에 의해 파라미터화되어 있다. 그리고, 서명된 메시지(m, σ)는, 파라미터 x를 동반하는 서명 키 skx에 의해 생성되고, 공개된 키 pk와 파라미터 v에 의해, 술어 v가 속성 x를 수리하는 경우(v(x)가 성립하는 경우)에만, 정확하게 검증된다.
서명의 이 클래스에 있어서의 서명자의 프라이버시란, 서명 키 skx에 의해 생성된 술어 v에 대한 서명이, v(x)가 성립하는 것을 제외하고 속성 x에 관한 정보를 누설하지 않는 것이다.
술어 v가 파라미터 v와의 등호 관계인 경우(다시 말해, x=v의 경우에만 v(x)가 성립하는 경우), 이 술어에 대한 서명의 클래스는 ID 베이스 서명(Identity-Based Signatures, IBS)이다(비특허 문헌 46 참조).
또, ID 베이스 서명에서는, x=v와 같이, 서명자의 비밀 키인 skx의 속성 x를 술어 v가 유일하게 식별한다. 그 때문에, ID 베이스 서명에는 프라이버시의 여지는 없다.
그룹 서명(Group Signatures)은, 서명의 이 클래스에 포함되는 서명이다(비특허 문헌 19 참조). 그룹 서명은, 술어의 파라미터 v가 그룹 식별자이고, 속성 x가 그룹 v의 멤버의 식별자인(또는 pkv가 그룹 v를 식별하는 공개 키이고, skx가 그룹 v의 멤버 x의 비밀 키인) 경우에만, v(x)가 성립한다고 하는 술어 v를 동반하는 서명이다.
프라이버시의 요건에 근거하여, 비밀 키 skx를 사용하여 생성된 서명은 x가 그룹 v의 멤버인 것을 제외하고, 식별자 x에 관한 정보를 누설하지 않는다.
속성 베이스 서명은, 서명의 이 클래스에 포함되는 서명이고, 보다 세련된 술어를 동반하는 서명이다(비특허 문헌 26, 29, 30, 34-36, 45, 51 참조). 속성 베이스 서명은, 서명 키 skx에 대한 x가 속성 (x1, …, xi)의 조이고, 검증을 위한 v가 임계값 또는 액세스 스트럭쳐의 술어이다.
존재하는 속성 베이스 서명 방식에 있어서의 술어가 가장 넓은 클래스는 모노톤 액세스 스트럭쳐이다(비특허 문헌 36, 37 참조). 모노톤 액세스 스트럭쳐에서는, 술어 v는, 속성 (v1, …, vj)의 조를 동반하는 모노톤 스팬 프로그램(M, ρ)(MSP(M, ρ))에 의해 특정되고, MSP(M, ρ)가 (T(xi_1=v1), …, T(xi_j=vj))의 진리값의 벡터를 수리하는 경우만, v(x)가 성립한다. 여기서, φ가 참인 경우, T(φ):=1이고, φ가 거짓인 경우, T(φ):=0이다. 예컨대, x=v인 경우, T(x=v):=1이고, x≠v인 경우, T(x=v):=0이다.
이와 같은 모노톤 술어는, AND, OR, 임계값의 게이트를 표현할 수 있다.
속성 베이스 서명에 대한 모노톤 술어 v의 예를 설명한다.
모노톤 술어 v의 예로서는, (Institute=Univ.A) AND (TH2((Department=Biology), (Gender=Female), (Age=50‘s)) OR (Position=Professor))이다. 여기서, TH2는 임계값의 값이 2인 임계값 게이트(다시 말해, 2개 이상 성립하는 것을 요구하는 게이트)를 의미한다.
앨리스의 속성 xA가, (Institute=Univ.A), (Department=Biology), (Position=Postdoc), (Age=30), (Gender=Female)이고, 밥의 속성 xB가, (Institute=Univ.A), (Department=Mathematics), (Position=Professor), (Age=45), (Gender=Male)인 것으로 한다. 속성 xA와 속성 xB는 전혀 다르지만, v(xA)와 v(xB)가 모두 성립하는 것은 분명하다. 또한, 술어 v를 만족시키는 다른 많은 속성이 있는 것은 분명하다.
그 때문에, 앨리스와 밥은, 이 술어에 있어서의 서명을 생성할 수 있다. 또한, 속성 베이스 서명의 프라이버시 요건에 근거하여, 서명자의 속성이 술어 v를 만족시키는 것을 제외하고, 술어 v에 대한 서명은 서명자, 다시 말해 앨리스와 밥(또는 그 밖)의 속성에 관하여 정보를 누설하지 않는다.
속성 베이스 서명에는, 속성 베이스 메시징(Attributed-Based Messaging, ABM), 속성 베이스 인증(Attributed-Based authentication), trust-negotiation, leaking secrets 등의 많은 어플리케이션이 존재한다(비특허 문헌 36, 37 참조).
그러나, 논모노톤 술어에 대한 속성 베이스 서명 방식은, 안전성이 약한 것이더라도 존재하지 않았다. 논모노톤 술어는, AND, OR, 임계값의 게이트와 마찬가지로, NOT의 게이트를 표현할 수 있다.
다시 말해, 모노톤 술어로는, (Institute=Univ.A)와 같이, 긍정형의 조건은 설정할 수 있지만, (Institute≠Univ.A)(다시 말해, Not(Institute=Univ.A))와 같이 부정형의 조건은 설정할 수 없다. 이것에 비하여, 논모노톤 술어로는, 부정형의 조건을 설정할 수 있다.
대학이 Univ.A 이외에도 다수 존재하는 경우, 긍정형의 조건만을 이용하여, Univ.A 이외라고 하는 부정형의 조건을 설정하는 것은 곤란하다(기술(記述)이 복잡해진다). 이것으로부터도, 논모노톤 술어의 유용성을 알 수 있다.
<제 2. 쌍대 페어링 벡터 공간>
우선, 대칭 쌍선형 페어링군(Symmetric Bilinear Pairing Groups)에 대하여 설명한다.
대칭 쌍선형 페어링군 (q, G, GT, g, e)는, 소수(素數) q와, 위수 q의 순회 가법군(cyclic additive group) G와, 위수 q의 순회 승법군(cyclic multiplicative group) GT와, g≠0∈G와, 다항식 시간으로 계산 가능한 비퇴화 쌍선형 페어링(Nondegenerate Bilinear Pairing) e:G×G→GT 조이다. 비퇴화 쌍선형 페어링은, e(sg, tg)=e(g, g)st이고, e(g, g)≠1이다.
이하의 설명에 있어서, 수학식 115를, 1λ를 입력으로 하여, 시큐리티 파라미터를 λ로 하는 쌍선형 페어링군의 파라미터 paramG:=(q, G, GT, g, e)의 값을 출력하는 알고리즘으로 한다.
[수학식 115]
Figure 112013076321591-pct00015
다음으로, 쌍대 페어링 벡터 공간에 대하여 설명한다.
쌍대 페어링 벡터 공간 (q, V, GT, A, e)는, 대칭 쌍선형 페어링군 (paramG:=(q, G, GT, g, e))의 직적에 의해 구성할 수 있다. 쌍대 페어링 벡터 공간 (q, V, GT, A, e)는, 소수 q, 수학식 116에 나타내는 Fq상의 N차원 벡터 공간 V, 위수 q의 순회군 GT, 공간 V의 표준 기저 A:=(a1, …, aN)의 조이고, 이하의 연산(1), (2)를 갖는다. 여기서, ai는, 수학식 117에 나타내는 것과 같다.
[수학식 116]
Figure 112013076321591-pct00016
[수학식 117]
Figure 112013076321591-pct00017
연산(1) : 비퇴화 쌍선형 페어링
공간 V에 있어서의 페어링은, 수학식 118에 의해 정의된다.
[수학식 118]
Figure 112013076321591-pct00018
이것은, 비퇴화 쌍선형이다. 다시 말해, e(sx, ty)=e(x, y)st이고, 모든 y∈V에 대하여, e(x, y)=1인 경우, x=0이다. 또한, 모든 i와 j에 대하여, e(ai, aj)=e(g, g)δi, j이다. 여기서, i=j이면, δi, j=1이고, i≠j이면, δi, j=0이다. 또한, e(g, g)≠1∈GT이다.
연산(2) : 디스토션 사상
수학식 119에 나타내는 공간 V에 있어서의 선형 변환 φi, j는, 수학식 120을 행할 수 있다.
[수학식 119]
Figure 112013076321591-pct00019
[수학식 120]
Figure 112013076321591-pct00020
여기서, 선형 변환 φi, j를 디스토션 사상이라고 부른다.
이하의 설명에 있어서, 수학식 121을, 1λ(λ∈자연수), N∈자연수, 쌍선형 페어링군의 파라미터 paramG:=(q, G, GT, g, e)의 값을 입력으로 하여, 시큐리티 파라미터가 λ이고, N차원의 공간 V로 하는 쌍대 페어링 벡터 공간의 파라미터 paramV:=(q, V, GT, A, e)의 값을 출력하는 알고리즘으로 한다.
[수학식 121]
Figure 112013076321591-pct00021
또, 여기서는, 상술한 대칭 쌍선형 페어링군에 의해, 쌍대 페어링 벡터 공간을 구성한 경우에 대하여 설명한다. 또, 비대칭 쌍선형 페어링군에 의해 쌍대 페어링 벡터 공간을 구성하는 것도 가능하다. 이하의 설명을, 비대칭 쌍선형 페어링군에 의해 쌍대 페어링 벡터 공간을 구성한 경우에 응용하는 것은 용이하다.
<제 3. 속성 베이스 서명 방식을 실현하기 위한 개념>
<제 3-1. 스팬 프로그램>
도 1은 행렬 M^의 설명도이다.
{p1, …, pn}을 변수의 집합으로 한다. M^:=(M, ρ)는, 레이블링(labeling)된 행렬이다. 여기서, 행렬 M은, Fq상의 (L행×r열)의 행렬이다. 또한, ρ는, 행렬 M의 각 행에 부여된 레이블이고, {p1, …, pn, ¬p1, …, ¬pn}의 어느 하나의 리터럴(literal)에 대응된다. 또, M의 모든 행에 부여된 레이블 ρi(i=1, …, L)가 어느 하나의 리터럴에 대응된다. 다시 말해, ρ:{1, …, L}→{p1, …, pn, ¬p1, …, ¬pn}이다.
모든 입력열 δ∈{0, 1}n에 대하여, 행렬 M의 부분 행렬 Mδ는 정의된다. 행렬 Mδ는, 입력열 δ에 의해 레이블 ρ에 값 “1”이 대응된 행렬 M의 행으로 구성되는 부분 행렬이다. 다시 말해, 행렬 Mδ는, δi=1인 pi에 대응된 행렬 M의 행과, δi=0인 ¬pi에 대응된 행렬 M의 행으로 이루어지는 부분 행렬이다.
도 2는 행렬 Mδ의 설명도이다. 또, 도 2에서는, n=7, L=6, r=5로 하고 있다. 다시 말해, 변수의 집합은, {p1, …, p7}이고, 행렬 M은 (6행×5열)의 행렬이다. 또한, 도 2에 있어서, 레이블 ρ는, ρ1이 ¬p2에, ρ2가 p1에, ρ3이 p4에, ρ4가 ¬p5에, ρ5가 ¬p3에, ρ6이 p5에 각각 대응되어 있는 것으로 한다.
여기서, 입력열 δ∈{0, 1}7이, δ1=1, δ2=0, δ3=1, δ4=0, δ5=0, δ6=1, δ7=1인 것으로 한다. 이 경우, 파선으로 둘러싼 리터럴 (p1, p3, p6, p7, ¬p2, ¬p4, ¬p5)에 대응되어 있는 행렬 M의 행으로 이루어지는 부분 행렬이 행렬 Mδ이다. 다시 말해, 행렬 M의 1행째(M1), 2행째(M2), 4행째(M4)로 이루어지는 부분 행렬이 행렬 Mδ이다.
바꿔 말하면, 사상 γ:{1, …, L}→{0, 1}이, [ρ(j)=pi]∧[δi=1] 또는 [ρ(j)=¬pi]∧[δi=0]인 경우, γ(j)=1이고, 다른 경우, γ(j)=0인 것으로 한다. 이 경우에, Mδ:=(Mj)γ(j)=1이다. 여기서, Mj는, 행렬 M의 j번째의 행이다.
다시 말해, 도 2에서는, 사상 γ(j)=1(j=1, 2, 4)이고, 사상 γ(j)=0(j=3, 5, 6)이다. 따라서, (Mj)γ(j)=1은, M1, M2, M4이고, 행렬 Mδ이다.
즉, 사상 γ(j)의 값이 “0”인지 “1”인지에 따라, 행렬 M의 j번째의 행이 행렬 Mδ에 포함될지 여부가 결정된다.
1∈span<Mδ>인 경우에 한해, 스팬 프로그램 M^는 입력열 δ를 수리하고, 다른 경우에는 입력열 δ를 거절한다. 다시 말해, 입력열 δ에 의해 행렬 M^로부터 얻어지는 행렬 Mδ의 행을 선형 결합하여 1가 얻어지는 경우에 한해, 스팬 프로그램 M^는 입력열 δ를 수리한다. 또, 1란, 각 요소가 값 “1”인 행벡터이다.
예컨대, 도 2의 예이면, 행렬 M의 1, 2, 4행째로 이루어지는 행렬 Mδ의 각 행을 선형 결합하여 1가 얻어지는 경우에 한해, 스팬 프로그램 M^는 입력열 δ를 수리한다. 다시 말해, α1(M1)+α2(M2)+α4(M4)=1가 되는 α1, α2, α4가 존재하는 경우에는, 스팬 프로그램 M^는 입력열 δ를 수리한다.
여기서, 레이블 ρ가 정의 리터럴 {p1, …, pn}에만 대응되어 있는 경우, 스팬 프로그램은 모노톤이라고 불린다. 한편, 레이블 ρ가 리터럴 {p1, …, pn, ¬p1, …, ¬pn}에 대응되어 있는 경우, 스팬 프로그램은 논모노톤이라고 불린다. 여기서는, 스팬 프로그램은 논모노톤으로 한다. 그리고, 논모노톤 스팬 프로그램을 이용하여, 액세스 스트럭쳐(논모노톤 액세스 스트럭쳐)를 구성한다.
상술한 바와 같이, 스팬 프로그램이 모노톤이 아니고, 논모노톤인 것에 의해, 스팬 프로그램을 이용하여 구성하는 속성 베이스 서명 방식의 이용 범위가 넓어진다.
<제 3-2. 속성 벡터의 내적과 액세스 스트럭쳐>
여기서는, 속성 벡터의 내적을 이용하여 상술한 사상 γ(j)를 계산한다. 다시 말해, 속성 벡터의 내적을 이용하여, 행렬 M의 어느 행을 행렬 Mδ에 포함시킬지를 결정한다.
Ut(t=1, …, d이고 Ut⊂{0, 1}*)는, 부분 전집합(sub-universe)이고, 속성의 집합이다. 그리고, Ut는, 각각 부분 전집합의 식별 정보 (t)와, nt차원 벡터 (v)를 포함한다. 다시 말해, Ut는, (t, v)이다. 여기서, t∈{1, …, d}이고, v∈Fq nt이다.
Ut:=(t, v)를 스팬 프로그램 M^:=(M, ρ)에 있어서의 변수 p로 한다. 다시 말해, p:=(t, v)이다. 그리고, 변수 (p:=(t, v), (t’, v’), …)로 한 스팬 프로그램 M^:=(M, ρ)를 액세스 스트럭쳐 S로 한다.
다시 말해, 액세스 스트럭쳐 S:=(M, ρ)이고, ρ:{1, …, L}→{(t, v), (t’, v’), …, ¬(t, v), ¬(t’, v’), …}이다.
다음으로, Γ를 속성의 집합으로 한다. 다시 말해, Γ:={(t, x t)|x t∈Fq nt, 1≤t≤d}이다.
액세스 스트럭쳐 S에 Γ가 주어진 경우, 스팬 프로그램 M^:=(M, ρ)에 대한 사상 γ:{1, …, L}→{0, 1}은, 이하와 같이 정의된다. i=1, …, L의 각 정수 i에 대하여, [ρ(i)=(t, v i)]∧[(t, x t)∈Γ]∧[v iㆍx t=0], 또는, [ρ(i)=¬(t, v i)]∧[(t, x t)∈Γ]∧[v iㆍx t≠0]인 경우, γ(i)=1이고, 다른 경우, γ(i)=0으로 한다.
다시 말해, 속성 벡터 v와 x의 내적에 근거하여, 사상 γ가 계산된다. 그리고, 상술한 바와 같이, 사상 γ에 의해, 행렬 M의 어느 행을 행렬 Mδ에 포함시킬지가 결정된다. 즉, 속성 벡터 v와 x의 내적에 의해, 행렬 M의 어느 행을 행렬 Mδ에 포함시킬지가 결정되고, 1∈span<(Mi)γ(i)=1>인 경우에 한해, 액세스 스트럭쳐 S:=(M, ρ)는 Γ를 수리한다.
t∈{1, …, d}의 모든 정수 t에 대하여, nt=2로 하고, x:=(1, x), v:=(v, -1)로 한 경우, 이 액세스 스트럭쳐에 있어서의 내적 술어의 관계가 보다 간단한 형식이 된다.
이 경우, (t, x t):=(t, (1, x)), (t, v i):=(t, (vi, -1))이다. 그러나, 이들을 간단화하여 (t, xt), (t, vi)로 나타낸다. 그러면, 액세스 스트럭쳐 S는, ρ:={1, …, L}→{(t, v), (t’, v’), …, ¬(t, v), ¬(t’, v’), …}(v, v’, …∈Fq)인 S:=(M, ρ)가 된다. 또한, 속성의 집합 Γ는, Γ:={(t, xt)|xt∈Fq, 1≤t≤d}가 된다.
그리고, 액세스 스트럭쳐 S에 Γ가 주어진 경우, 스팬 프로그램 M^:=(M, ρ)에 대한 사상 γ:{1, …, L}→{0, 1}은, 이하와 같이 정의된다. i=1, …, L의 각 정수 i에 대하여, [ρ(i)=(t, vi)]∧[(t, xt)∈Γ]∧[vi=xt], 또는, [ρ(i)=¬(t, vi)]∧[(t, xt)∈Γ]∧[vi≠xt]인 경우, γ(i)=1이고, 다른 경우, γ(i)=0으로 한다.
<제 3-3. 비밀 분산 방식>
액세스 스트럭쳐 S:=(M, ρ)에 대한 비밀 분산 방식에 대하여 설명한다.
또, 비밀 분산 방식이란, 비밀 정보를 분산시켜, 의미가 없는 분산 정보로 하는 것이다. 예컨대, 비밀 정보 s를 10개로 분산시켜, 10개의 분산 정보를 생성한다. 여기서, 10개의 분산 정보 각각은, 비밀 정보 s의 정보를 갖고 있지 않다. 따라서, 어느 하나의 분산 정보를 손에 넣더라도 비밀 정보 s에 관하여 조금도 정보를 얻을 수는 없다. 한편, 10개의 분산 정보를 모두 손에 넣으면, 비밀 정보 s를 복원할 수 있다.
또한, 10개의 분산 정보를 모두 손에 넣지 않더라도, 일부만(예컨대, 8개) 손에 넣으면 비밀 정보 s를 복원할 수 있는 비밀 분산 방식도 있다. 이와 같이, 10개의 분산 정보 중 8개로 비밀 정보 s를 복원할 수 있는 경우를, 8-out-of-10이라고 부른다. 다시 말해, n개의 분산 정보 중 t개로 비밀 정보 s를 복원할 수 있는 경우를, t-out-of-n이라고 부른다. 이 t를 임계값이라고 부른다.
또한, d1, …, d10의 10개의 분산 정보를 생성한 경우에, d1, …, d8까지의 8개의 분산 정보이면 비밀 정보 s를 복원할 수 있지만, d3, …, d10까지의 8개의 분산 정보이면 비밀 정보 s를 복원할 수 없다고 하는 비밀 분산 방식도 있다. 다시 말해, 손에 넣은 분산 정보의 수뿐만 아니라, 분산 정보의 조합에 따라 비밀 정보 s를 복원할 수 있는지 여부를 제어하는 비밀 분산 방식도 있다.
도 3은 s0의 설명도이다. 도 4는 s→T의 설명도이다.
행렬 M을 (L행×r열)의 행렬로 한다. f→T를 수학식 122에 나타내는 열벡터로 한다.
[수학식 122]
Figure 112013076321591-pct00022
수학식 123에 나타내는 s0을 공유되는 비밀 정보로 한다.
[수학식 123]
Figure 112013076321591-pct00023
또한, 수학식 124에 나타내는 s→T를 s0의 L개의 분산 정보의 벡터로 한다.
[수학식 124]
Figure 112013076321591-pct00024
그리고, 분산 정보 si를 ρ(i)에 속하는 것으로 한다.
액세스 스트럭쳐 S:=(M, ρ)가 Γ를 수리하는 경우, 다시 말해 γ:{1, …, L}→{0, 1}에 대하여 1∈span<(Mi)γ(i)=1>인 경우, I⊆{i∈{1, …, L}|γ(i)=1}인 상수 {αi∈Fq|i∈I}가 존재한다.
이것은, 도 2의 예에서, α1(M1)+α2(M2)+α4(M4)=1가 되는 α1, α2, α4가 존재하는 경우에는, 스팬 프로그램 M^는 입력열 δ를 수리한다고 설명한 것으로부터도 분명하다. 다시 말해, α1(M1)+α2(M2)+α4(M4)=1가 되는 α1, α2, α4가 존재하는 경우에는, 스팬 프로그램 M^가 입력열 δ를 수리하는 것이면, α1(M1)+α2(M2)+α4(M4)=1가 되는 α1, α2, α4가 존재한다.
그리고, 수학식 125이다.
[수학식 125]
Figure 112013076321591-pct00025
또, 상수 {αi}는, 행렬 M의 사이즈에 있어서의 다항식 시간으로 계산 가능하다.
본 실시의 형태 및 이하의 실시의 형태에 따른 속성 베이스 서명 방식은, 상술한 바와 같이, 스팬 프로그램에 내적 술어와 비밀 분산 방식을 적용하여 액세스 스트럭쳐를 구성한다. 그 때문에, 스팬 프로그램에 있어서의 행렬 M이나, 내적 술어에 있어서의 속성 정보 x 및 속성 정보 v(술어 정보)를 설계하는 것에 의해, 액세스 제어를 자유롭게 설계할 수 있다. 다시 말해, 매우 높은 자유도로 액세스 제어의 설계를 행할 수 있다. 또, 행렬 M의 설계는, 비밀 분산 방식의 임계값 등의 조건 설계에 상당한다.
특히, 본 실시의 형태 및 이하의 실시의 형태에 따른 속성 베이스 서명 방식에 있어서의 액세스 스트럭쳐는, 논모노톤 스팬 프로그램을 이용한 논모노톤 액세스 스트럭쳐를 구성한다. 다시 말해, 본 실시의 형태 및 이하의 실시의 형태에 따른 속성 베이스 서명 방식은, 논모노톤 술어를 동반하는 서명 방식이다. 그 때문에, 액세스 제어의 설계의 자유도가 보다 높아진다.
<제 3-4. 충돌 곤란 해시 함수>
충돌 곤란 해시 함수란, 출력이 같아지는 2개의 입력을 찾는 것이 곤란한 해시 함수이다.
자연수 λ를 시큐리티 파라미터로 한다. 알고리즘 Gbpg에 관한 충돌 곤란 해시 함수계 H와, 다항식 poly(λ)에 대하여 이하의 2가지를 말할 수 있다.
1. 키 공간계는, λ에 의해 색인이 만들어진다. 각 키 공간은, KHλ에 의해 나타나는 비트열에 있어서의 확률 공간이다. 1λ를 입력으로 한 경우의 출력 분포가 KHλ와 같은 확률적 다항식 시간 알고리즘이 존재한다.
2. 해시 함수계는, λ와, KHλ로부터 랜덤으로 선택된 hk와, D:={0, 1}poly (λ)에 의해 색인이 만들어진다. 여기서, 각 함수 Hhk λ, D는, D의 요소로부터 Fq X로의 사상이다. 또, q는, 알고리즘 Gbpg(1λ)의 출력 paramG의 최초의 요소이다. 1λ와 hk와 d∈D를 입력으로 하여, Hhk λ, D(d)를 출력하는 결정적 다항식 시간 알고리즘이 있다.
ε을 확률적 다항식 시간 기계인 것으로 한다. 모든 λ에 대하여, 수학식 126을 정의한다.
[수학식 126]
Figure 112013076321591-pct00026
어떠한 확률적 다항식 시간 공격자 ε에 대해서도, Advε H, CR(λ)가 무시할 수 있을 정도이기 때문에, H는 충돌 곤란 해시 함수계이다.
<제 4. 속성 베이스 서명 방식의 구성>
<제 4-1. 속성 베이스 서명 방식의 기본 구성>
속성 베이스 서명 방식은, Setup, KeyGen, Sig, Ver의 4개의 알고리즘을 구비한다.
(Setup)
Setup 알고리즘은, 시큐리티 파라미터 λ와, 속성의 포맷 n:=((d; nt, ut, wt, zt(t=1, …, d))를 입력으로 하여, 공개 파라미터 pk와, 마스터 키 sk를 출력하는 확률적 알고리즘이다.
(KeyGen)
KeyGen 알고리즘은, 속성의 집합인 Γ:={(t, x t)|x t∈Fq nt\{0}, 1≤t≤d}와, 공개 파라미터 pk와, 마스터 키 sk를 입력으로 하여, 서명 키 skΓ를 출력하는 확률적 알고리즘이다.
(Sig)
Sig 알고리즘은, 메시지 m과, 속성의 집합 Γ를 수리하는 액세스 스트럭쳐 S:=(M, ρ)와, 서명 키 skΓ와, 공개 파라미터 pk를 입력으로 하여, 서명 s→*와 메시지 m과 액세스 스트럭쳐 S를 포함하는 서명 데이터 σ를 출력하는 확률적 알고리즘이다.
(Ver)
Ver 알고리즘은, 서명 데이터 σ와, 공개 파라미터 pk를 입력으로 하여, 불값(Boolean value) 1(수리) 또는 0(거절)을 출력하는 알고리즘이다.
속성 베이스 서명 방식은, 수학식 127에 나타내는 모든 공개 파라미터 pk 및 마스터 키 sk와, 모든 메시지 m과, 모든 속성의 집합 Γ와, 수학식 128에 나타내는 모든 서명 키 skΓ와, 속성의 집합 Γ를 수리하는 모든 액세스 스트럭쳐 S와, 수학식 129에 나타내는 모든 서명 데이터 σ에 대하여, 확률 1로 1=Ver(pk, m, S, σ)가 성립한다.
[수학식 127]
Figure 112013076321591-pct00027
[수학식 128]
Figure 112013076321591-pct00028
[수학식 129]
Figure 112013076321591-pct00029
<제 4-2. 서명 처리 시스템(10)>
상술한 속성 베이스 서명 방식의 알고리즘을 실행하는 서명 처리 시스템(10)에 대하여 설명한다.
도 5는 속성 베이스 서명 방식의 알고리즘을 실행하는 서명 처리 시스템(10)의 구성도이다.
서명 처리 시스템(10)은, 키 생성 장치(100), 서명 장치(200), 검증 장치(300)를 구비한다.
키 생성 장치(100)는, 시큐리티 파라미터 λ와, 속성의 포맷 n:=((d; nt, ut, wt, zt(t=1, …, d))를 입력으로 하여 Setup 알고리즘을 실행하여, 공개 파라미터 pk와 마스터 키 sk를 생성한다. 그리고, 키 생성 장치(100)는, 생성한 공개 파라미터 pk를 공개한다. 또한, 키 생성 장치(100)는, 속성의 집합인 Γ:={(t, x t)|x t∈Fq nt\{0}, 1≤t≤d}와, 공개 파라미터 pk와, 마스터 키 sk를 입력으로 하여 KeyGen 알고리즘을 실행하여, 서명 키 skΓ를 생성하여 서명 장치(200)에 비밀리에 배포한다.
서명 장치(200)는, 메시지 m과, 속성의 집합 Γ를 수리하는 액세스 스트럭쳐 S:=(M, ρ)와, 서명 키 skΓ와, 공개 파라미터 pk를 입력으로 하여 Sig 알고리즘을 실행하여, 서명 s→*와 메시지 m과 액세스 스트럭쳐 S를 포함하는 서명 데이터 σ를 생성한다. 서명 장치(200)는, 생성한 서명 데이터 σ를 검증 장치(300)에 송신한다.
검증 장치(300)는, 서명 데이터 σ와, 공개 파라미터 pk를 입력으로 하여 Ver 알고리즘을 실행하여, 불값 1(수리) 또는 0(거절)을 출력한다.
<제 4-3. 속성 베이스 서명 방식 및 서명 처리 시스템(10)의 상세>
도 6으로부터 도 12에 근거하여, 속성 베이스 서명 방식 및 속성 베이스 서명 방식을 실행하는 서명 처리 시스템(10)의 기능과 동작에 대하여 설명한다.
도 6은 키 생성 장치(100)의 기능을 나타내는 기능 블록도이다. 도 7은 서명 장치(200)의 기능을 나타내는 기능 블록도이다. 도 8은 검증 장치(300)의 기능을 나타내는 기능 블록도이다.
도 9와 도 10은 키 생성 장치(100)의 동작을 나타내는 플로차트이다. 또, 도 9는 Setup 알고리즘의 처리를 나타내는 플로차트이고, 도 10은 KeyGen 알고리즘의 처리를 나타내는 플로차트이다. 도 11은 서명 장치(200)의 동작을 나타내는 플로차트이고, Sig 알고리즘의 처리를 나타내는 플로차트이다. 도 12는 검증 장치(300)의 동작을 나타내는 플로차트이고, Ver 알고리즘의 처리를 나타내는 플로차트이다.
키 생성 장치(100)의 기능과 동작에 대하여 설명한다.
도 6에 나타내는 바와 같이, 키 생성 장치(100)는, 마스터 키 생성부(110), 마스터 키 기억부(120), 정보 입력부(130)(제 1 정보 입력부), 서명 키 생성부(140), 키 배포부(150)(서명 키 송신부)를 구비한다.
또한, 서명 키 생성부(140)는, 난수 생성부(141), 키 요소 0 생성부(142), 키 요소 t 생성부(143), 키 요소 d+1 생성부(144)를 구비한다.
또, 이하의 설명에 있어서, H:=(KHλ, Hhk λ, D)는, 상술한 충돌 곤란 해시 함수계이다.
우선, 도 9에 근거하여, 키 생성 장치(100)가 실행하는 Setup 알고리즘의 처리에 대하여 설명한다.
(S101 : 정규 직교 기저 생성 단계)
마스터 키 생성부(110)는, 처리 장치에 의해, 수학식 130을 계산하여, paramn→와, t=0, …, d+1의 각 정수 t에 대하여 기저 Bt 및 기저 B* t를 랜덤으로 생성한다.
[수학식 130]
Figure 112013076321591-pct00030
다시 말해, 마스터 키 생성부(110)는 이하의 처리를 실행한다.
(1) 마스터 키 생성부(110)는, 입력 장치에 의해, 시큐리티 파라미터 λ(1λ)와, 속성의 포맷 n:=((d; nt, ut, wt, zt(t=0, …, d+1))를 입력한다. 여기서, d는 1 이상의 정수이다. t=0에 대하여 nt는 1이고, t=1, …, d까지의 각 정수 t에 대하여 nt는 1 이상의 정수이고, t=d+1에 대하여 nt는 2이다. t=0, …, d+1까지의 각 정수 t에 대하여 ut, wt, zt는 1 이상의 정수이다.
(2) 마스터 키 생성부(110)는, 처리 장치에 의해, (1)에서 입력한 시큐리티 파라미터 λ(1λ)를 입력으로 하여 알고리즘 Gbpg를 실행하여, 랜덤으로 쌍선형 페어링군의 파라미터 paramG:=(q, G, GT, g, e)의 값을 생성한다.
(3) 마스터 키 생성부(110)는, 처리 장치에 의해, 난수 ψ를 생성한다. 또한, 마스터 키 생성부(110)는, t=0, …, d+1의 각 정수 t에 대하여 Nt에 nt+ut+wt+zt를 설정한다.
계속해서, 마스터 키 생성부(110)는, t=0, …, d+1의 각 정수 t에 대하여 이하의 (4)로부터 (8)까지의 처리를 실행한다.
(4) 마스터 키 생성부(110)는, 처리 장치에 의해, (1)에서 입력한 시큐리티 파라미터 λ(1λ)와, (3)에서 설정한 Nt와, (2)에서 생성한 paramG:=(q, G, GT, g, e)의 값을 입력으로 하여 알고리즘 Gdpvs를 실행하여, 쌍대 페어링 벡터 공간의 파라미터 paramVt:=(q, Vt, GT, At, e)의 값을 생성한다.
(5) 마스터 키 생성부(110)는, 처리 장치에 의해, (3)에서 설정한 Nt와, Fq를 입력으로 하여, 선형 변환 Xt:=(χt, i, j)i, j를 랜덤으로 생성한다. 또, GL은, General Linear를 나타낸다. 다시 말해, GL은, 일반 선형군이고, 행렬식이 0이 아닌 정방 행렬의 집합이고, 승법에 관한 군이다. 또한, (χt, i, j)i, j는, 행렬 χt, i, j의 첨자 i, j에 관한 행렬이라고 하는 의미이고, 여기서는, i, j=1, …, nt이다.
(6) 마스터 키 생성부(110)는, 처리 장치에 의해, 난수 ψ와 선형 변환 Xt에 근거하여, (νt, i, j)i, j:=ψㆍ(Xt T)-1을 생성한다. 또, (νt, i, j)i, j도 (χt, i, j)i, j와 마찬가지로, 행렬 νt, i, j의 첨자 i, j에 관한 행렬이라고 하는 의미이고, 여기서는, i, j=1, …, nt이다.
(7) 마스터 키 생성부(110)는, 처리 장치에 의해, (5)에서 생성한 선형 변환 Xt에 근거하여, (4)에서 생성한 표준 기저 At로부터 기저 Bt를 생성한다.
(8) 마스터 키 생성부(110)는, 처리 장치에 의해, (6)에서 생성한 (νt, i, j)i, j에 근거하여, (4)에서 생성한 표준 기저 At로부터 기저 B* t를 생성한다.
(9) 마스터 키 생성부(110)는, 처리 장치에 의해, gT에 e(g, g)ψ를 설정한다. 또한, 마스터 키 생성부(110)는, paramn 에 (4)에서 생성한 {paramVt}t=0, …, d+1과, gT를 설정한다. 또, t=0, …, d+1과 i=1, …, Nt의 각 정수 t, i에 대하여, gT=e(bt, i, b* t, i)이다.
즉, (S101)에서, 마스터 키 생성부(110)는, 수학식 131에 나타내는 알고리즘 Gob를 실행하여, paramn 와, t=0, …, d+1의 각 정수 t에 대하여 기저 Bt 및 기저 B* t를 생성한다.
[수학식 131]
Figure 112013076321591-pct00031
(S102 : 해시 키 생성 단계)
마스터 키 생성부(110)는, 처리 장치에 의해, 수학식 132를 계산하여, 해시 키 hk를 랜덤으로 생성한다.
[수학식 132]
Figure 112013076321591-pct00032
(S103 : 공개 파라미터 생성 단계)
마스터 키 생성부(110)는, 처리 장치에 의해, 기저 B0의 부분 기저 B^ 0과, t=1, …, d의 각 정수 t에 대하여 기저 Bt의 부분 기저 B^ t와, 기저 Bd +1의 부분 기저 B^ d+1을 수학식 133에 나타내는 바와 같이 생성한다.
[수학식 133]
Figure 112013076321591-pct00033
또한, 마스터 키 생성부(110)는, 처리 장치에 의해, t=1, …, d의 각 정수 t에 대하여 기저 B* t의 부분 기저 B^* t와, 기저 B* d+1의 부분 기저 B^* d+1을 수학식 134에 나타내는 바와 같이 생성한다.
[수학식 134]
Figure 112013076321591-pct00034
마스터 키 생성부(110)는, 생성한 부분 기저 B^ t(t=0, …, d+1)와 부분 기저 B^* t(t=1, …, d+1)와, (S101)에서 입력된 시큐리티 파라미터 λ(1λ)와, (S101)에서 생성한 paramn 와, (S102)에서 생성한 해시 키 hk와, 기저 벡터 b* 0, 1+ u0 +1, …, b* 0, 1+u0+w0(여기서 u0, w0은, u0, w0이다)을 합쳐, 공개 파라미터 pk로 한다.
(S104 : 마스터 키 생성 단계)
마스터 키 생성부(110)는, 기저 B* 0의 기저 벡터 b* 0, 1을 마스터 키 sk로 한다.
(S105 : 마스터 키 기억 단계)
마스터 키 기억부(120)는, (S103)에서 생성한 공개 파라미터 pk를 기억 장치에 기억한다. 또한, 마스터 키 기억부(120)는, (S104)에서 생성한 마스터 키 sk를 기억 장치에 기억한다.
다시 말해, (S101)로부터 (S104)에 있어서, 키 생성 장치(100)는 수학식 135에 나타내는 Setup 알고리즘을 실행하여, 공개 파라미터 pk와 마스터 키 sk를 생성한다. 그리고, (S105)에서, 키 생성 장치(100)는 생성된 공개 파라미터 pk와 마스터 키 sk를 기억 장치에 기억한다.
또, 공개 파라미터는, 예컨대, 네트워크를 통하여 공개되고, 서명 장치(200)나 검증 장치(300)가 취득 가능한 상태가 된다.
[수학식 135]
Figure 112013076321591-pct00035
다음으로, 도 10에 근거하여, 키 생성 장치(100)가 실행하는 KeyGen 알고리즘의 처리에 대하여 설명한다.
(S201 : 정보 입력 단계)
정보 입력부(130)는, 입력 장치에 의해, 속성의 집합 Γ:={(t, x t:=(xt , i)(i=1, …, nt))|1≤t≤d}를 입력한다. t는, 1 이상 d 이하의 모든 정수일 필요는 없고, 1 이상 d 이하의 적어도 일부의 정수이더라도 좋다.
(S202 : 난수 생성 단계)
난수 생성부(141)는, 처리 장치에 의해, 난수 δ와, 난수 φ0, φt, ι, φd+1, 1, ι, φd+1, 2, ι(t=1, …, d; ι=1, …, wt)를 수학식 136에 나타내는 바와 같이 생성한다.
[수학식 136]
Figure 112013076321591-pct00036
(S203 : 키 요소 0 생성 단계)
키 요소 0 생성부(142)는, 처리 장치에 의해, 서명 키 skΓ의 요소인 키 요소 k* 0을 수학식 137에 나타내는 바와 같이 생성한다.
[수학식 137]
Figure 112013076321591-pct00037
또, 상술한 바와 같이, 수학식 113에 나타내는 기저 B와 기저 B*에 대하여, 수학식 114이다. 따라서, 수학식 137은, 이하와 같이, 기저 B* 0의 기저 벡터의 계수가 설정되는 것을 의미한다. 여기서는, 표기를 간략화하여, 기저 벡터 b* 0, i 중, i의 부분만으로 기저 벡터를 특정한다. 예컨대, 기저 벡터 1이면, 기저 벡터 b* 0, 1을 의미한다. 또한, 기저 벡터 1, …, 3이면, 기저 벡터 b* 0, 1, …, b* 0, 3을 의미한다.
기저 B* 0의 기저 벡터 1의 계수로서 난수 δ가 설정된다. 기저 벡터 1+1, …, 1+u0의 계수로서 0이 설정된다. 기저 벡터 1+u0+1, …, 1+u0+w0의 계수로서 난수 φ0, 1, …, φ0, wo(여기서, w0은 w0이다)이 설정된다. 기저 벡터 1+u0+w0+1, …, 1+u0+w0+z0의 계수로서 0이 설정된다.
(S204 : 키 요소 t 생성 단계)
키 요소 t 생성부(143)는, 처리 장치에 의해, 속성의 집합 Γ에 포함되는 (t, x t)의 각 정수 t에 대하여, 서명 키 skΓ의 요소인 키 요소 k* t를 수학식 138에 나타내는 바와 같이 생성한다.
[수학식 138]
Figure 112013076321591-pct00038
다시 말해, 수학식 138은, 수학식 137과 마찬가지로, 이하와 같이, 기저 B* t의 기저 벡터의 계수가 설정되는 것을 의미한다. 또, 여기서는, 표기를 간략화하여, 기저 벡터 b* t, i 중, i의 부분만으로 기저 벡터를 특정한다. 예컨대, 기저 벡터 1이면, 기저 벡터 b* t, 1을 의미한다. 또한, 기저 벡터 1, …, 3이면, 기저 벡터 b* t, 1, …, b* t, 3을 의미한다.
기저 벡터 1, …, nt의 계수로서 δxt , 1, …, δxt , nt(여기서, nt는 nt이다)가 설정된다. 기저 벡터 nt+1, …, nt+ut의 계수로서 0이 설정된다. 기저 벡터 nt+ut+1, …, nt+ut+wt의 계수로서 난수 φt, 1, …, φt, wt(여기서, wt는 wt이다)가 설정된다. 기저 벡터 nt+ut+wt+1, …, nt+ut+wt+zt의 계수로서 0이 설정된다.
(S205 : 키 요소 d+1 생성 단계)
키 요소 d+1 생성부(144)는, 처리 장치에 의해, 서명 키 skΓ의 요소인 키 요소 k* d+1, 1과 키 요소 k* d+1, 2를 수학식 139에 나타내는 바와 같이 생성한다.
[수학식 139]
Figure 112013076321591-pct00039
다시 말해, 수학식 139는, 수학식 137과 마찬가지로, 이하와 같이, 기저 B* d+1의 기저 벡터의 계수가 설정되는 것을 의미한다. 또, 여기서는, 표기를 간략화하여, 기저 벡터 b* d+1, i 중, i의 부분만으로 기저 벡터를 특정한다. 예컨대, 기저 벡터 1이면, 기저 벡터 b* d+1, 1을 의미한다. 또한, 기저 벡터 1, …, 3이면, 기저 벡터 b* d+1, 1, …, b* d+1, 3을 의미한다.
우선, 키 요소 k* d+1, 1에 대해서는, 기저 벡터 1의 계수로서 난수 δ가 설정된다. 기저 벡터 2의 계수로서 0이 설정된다. 기저 벡터 2+1, …, 2+ud +1의 계수로서 0이 설정된다. 기저 벡터 2+ud +1+1, …, 2+ud +1+wd +1의 계수로서 난수 φd+1, 1, 1, …, φd+1, 1, wd +1(여기서, wd+1은 wd +1이다)이 설정된다. 기저 벡터 2+ud +1+wd +1+1, …, 2+ud+1+wd+1+zd+1의 계수로서 0이 설정된다.
또한, 키 요소 k* d+1, 2에 대해서는, 기저 벡터 1의 계수로서 0이 설정된다. 기저 벡터 2의 계수로서 난수 δ가 설정된다. 기저 벡터 2+1, …, 2+ud +1의 계수로서 0이 설정된다. 기저 벡터 2+ud +1+1, …, 2+ud +1+wd +1의 계수로서 난수 φd+1, 2, 1, …, φd+1, 2, wd +1(여기서, wd+1은 wd +1이다)이 설정된다. 기저 벡터 2+ud +1+wd +1+1, …, 2+ud+1+wd+1+zd+1의 계수로서 0이 설정된다.
(S206 : 키 배포 단계)
키 배포부(150)는, 속성의 집합 Γ와, 키 요소 k* 0과, 키 요소 k* t(t는 속성의 집합 Γ에 포함되는 (t, x t)에 있어서의 t)와, 키 요소 k* d+1, 1 및 키 요소 k* d+1, 2를 요소로 하는 서명 키 skΓ를, 예컨대 통신 장치에 의해 네트워크를 통하여 비밀리에 서명 장치(200)에 배포한다. 물론, 서명 키 skΓ는, 다른 방법에 의해 서명 장치(200)에 배포되더라도 좋다.
다시 말해, (S201)로부터 (S205)에 있어서, 키 생성 장치(100)는 수학식 140에 나타내는 KeyGen 알고리즘을 실행하여, 서명 키 skΓ를 생성한다. 그리고, (S206)에서, 키 생성 장치(100)는 생성된 서명 키 skΓ를 서명 장치(200)에 배포한다.
[수학식 140]
Figure 112013076321591-pct00040
서명 장치(200)의 기능과 동작에 대하여 설명한다.
도 7에 나타내는 바와 같이, 서명 장치(200)는, 서명 키 취득부(210), 정보 입력부(220)(제 2 정보 입력부), 스팬 프로그램 계산부(230), 보완 계수 계산부(240), 서명 데이터 생성부(250), 서명 데이터 송신부(260)(서명 데이터 출력부)를 구비한다.
또한, 정보 입력부(220)는, 술어 정보 입력부(221), 메시지 입력부(222)를 구비한다. 또한, 서명 데이터 생성부(250)는, 난수 생성부(251), 서명 요소 0 생성부(252), 서명 요소 i 생성부(253), 서명 요소 L+1 생성부(254)를 구비한다.
도 11에 근거하여, 서명 장치(200)가 실행하는 Sig 알고리즘의 처리에 대하여 설명한다.
(S301 : 서명 키 취득 단계)
서명 키 취득부(210)는, 예컨대, 통신 장치에 의해 네트워크를 통하여, 키 생성 장치(100)가 생성한 서명 키 skΓ를 취득한다. 또한, 서명 키 취득부(210)는, 키 생성 장치(100)가 생성한 공개 파라미터 pk를 취득한다.
(S302 : 정보 입력 단계)
술어 정보 입력부(221)는, 입력 장치에 의해, 액세스 스트럭쳐 S:=(M, ρ)를 입력한다. 또, 행렬 M은, L행×r열의 행렬이다. L, r은, 1 이상의 정수이다.
또한, 메시지 입력부(222)는, 입력 장치에 의해, 서명을 첨부하는 메시지 m을 입력한다.
또, 액세스 스트럭쳐 S의 행렬 M의 설정에 대해서는, 실현하고 싶은 시스템의 조건에 따라 설정되는 것이다.
(S303 : 스팬 프로그램 계산 단계)
스팬 프로그램 계산부(230)는, 처리 장치에 의해, (S302)에서 입력한 액세스 스트럭쳐 S가, (S301)에서 취득한 서명 키 skΓ에 포함되는 속성의 집합 Γ를 수리하는지 여부를 판정한다.
또, 액세스 스트럭쳐가 속성의 집합을 수리하는지 여부의 판정 방법은, 「제 3. 속성 베이스 서명 방식을 실현하기 위한 개념」에서 설명한 것과 같다.
스팬 프로그램 계산부(230)는, 액세스 스트럭쳐 S가 속성의 집합 Γ를 수리하는 경우(S303에서 수리), 처리를 (S304)로 진행시킨다. 한편, 액세스 스트럭쳐 S가 속성의 집합 Γ를 거절하는 경우(S303에서 거절), 처리를 종료한다.
(S304 : 보완 계수 계산 단계)
보완 계수 계산부(430)는, 처리 장치에 의해, 수학식 141이 되는 I와, I에 포함되는 각 정수 i에 대하여 상수(보완 계수) αi를 계산한다.
[수학식 141]
Figure 112013076321591-pct00041
또, Mi란, 행렬 M의 i행째이다.
(S305 : 난수 생성 단계)
난수 생성부(251)는, 처리 장치에 의해, 난수 ξ와, 난수 βi(i=1, …, L)를 수학식 142에 나타내는 바와 같이 생성한다.
[수학식 142]
Figure 112013076321591-pct00042
(S306 : 서명 요소 0 생성 단계)
서명 요소 0 생성부(252)는, 처리 장치에 의해, 서명 데이터 σ의 요소인 서명 요소 s* 0을 수학식 143에 나타내는 바와 같이 생성한다.
[수학식 143]
Figure 112013076321591-pct00043
여기서, r* 0은, 수학식 144(수학식 110으로부터 수학식 112 및 이들의 수학식의 설명을 참조)이다.
[수학식 144]
Figure 112013076321591-pct00044
(S307 : 서명 요소 i 생성 단계)
서명 요소 i 생성부(253)는, 처리 장치에 의해, i=1, …, L의 각 정수 i에 대하여, 서명 데이터 σ의 요소인 서명 요소 s* i를 수학식 145에 나타내는 바와 같이 생성한다.
[수학식 145]
Figure 112013076321591-pct00045
여기서, r* i는, 수학식 146(수학식 110으로부터 수학식 112 및 이들의 수학식의 설명을 참조)이다.
[수학식 146]
Figure 112013076321591-pct00046
또한, γi와 y i:=(yi , i’(i’=1, …, nt)는, 수학식 147이다.
[수학식 147]
Figure 112013076321591-pct00047
(S308 : 서명 요소 L+1 생성 단계)
서명 요소 L+1 생성부(254)는, 처리 장치에 의해, 서명 데이터 σ의 요소인 서명 요소 s* L+1을 수학식 148에 나타내는 바와 같이 생성한다.
[수학식 148]
Figure 112013076321591-pct00048
여기서, r* L+1은, 수학식 149(수학식 110으로부터 수학식 112 및 이들의 수학식의 설명을 참조)이다.
[수학식 149]
Figure 112013076321591-pct00049
(S309 : 데이터 송신 단계)
서명 데이터 송신부(260)는, 서명 요소 s* 0과, 서명 요소 s* i(i=1, …, L)와, 서명 요소 s* L+1과, 메시지 m과, 액세스 스트럭쳐 S:=(M, ρ)를 포함하는 서명 데이터 σ를, 예컨대 통신 장치에 의해 네트워크를 통하여 검증 장치(300)에 송신한다. 물론, 서명 데이터 σ는, 다른 방법에 의해 검증 장치(300)에 송신되더라도 좋다.
다시 말해, (S301)로부터 (S308)에 있어서, 서명 장치(200)는 수학식 150에 나타내는 Sig 알고리즘을 실행하여, 서명 데이터 σ를 생성한다. 그리고, (S309)에서, 서명 장치(200)는 생성된 서명 데이터 σ를 검증 장치(300)에 배포한다.
[수학식 150]
Figure 112013076321591-pct00050
검증 장치(300)의 기능과 동작에 대하여 설명한다.
도 8에 나타내는 바와 같이, 검증 장치(300)는, 공개 파라미터 취득부(310), 데이터 수신부(320), 검증키 생성부(330), 페어링 연산부(340)를 구비한다.
또한, 검증키 생성부(330)는, 난수 생성부(331), f 벡터 생성부(332), s 벡터 생성부(333), 검증 요소 0 생성부(334), 검증 요소 i 생성부(335), 검증 요소 L+1 생성부(336)를 구비한다.
도 12에 근거하여, 검증 장치(300)가 실행하는 Ver 알고리즘의 처리에 대하여 설명한다.
(S401 : 공개 파라미터 취득 단계)
공개 파라미터 취득부(310)는, 예컨대, 통신 장치에 의해 네트워크를 통하여, 키 생성 장치(100)가 생성한 공개 파라미터 pk를 취득한다.
(S402 : 서명 데이터 수신 단계)
데이터 수신부(320)는, 예컨대, 통신 장치에 의해 네트워크를 통하여, 서명 장치(200)가 송신한 서명 데이터 σ를 수신한다.
(S403 : f 벡터 생성 단계)
f 벡터 생성부(332)는, 처리 장치에 의해, r개의 요소를 갖는 벡터 f를 수학식 151에 나타내는 바와 같이 랜덤으로 생성한다.
[수학식 151]
Figure 112013076321591-pct00051
(S404 : s 벡터 생성 단계)
s 벡터 생성부(333)는, 처리 장치에 의해, (S402)에서 수신한 서명 데이터 σ에 포함되는 액세스 스트럭쳐 S의 (L행×r열)의 행렬 M과, (S403)에서 생성한 r개의 요소를 갖는 벡터 f에 근거하여, 벡터 s→T를 수학식 152에 나타내는 바와 같이 생성한다.
[수학식 152]
Figure 112013076321591-pct00052
또한, s 벡터 생성부(333)는, 처리 장치에 의해, (S403)에서 생성한 벡터 f에 근거하여, 값 s0을 수학식 153에 나타내는 바와 같이 생성한다. 또, 1는, 모든 요소가 값 1인 벡터이다.
[수학식 153]
Figure 112013076321591-pct00053
(S405 : 난수 생성 단계)
난수 생성부(331)는, 처리 장치에 의해, i=1, …, z0의 각 정수 i에 대하여 난수 η0, i와, i=1, …, zd +1의 각 정수 i에 대하여 난수 ηL+1, i와, 난수 θL+1과, 난수 sL +1을 수학식 154에 나타내는 바와 같이 생성한다.
[수학식 154]
Figure 112013076321591-pct00054
(S406 : 검증 요소 0 생성 단계)
검증 요소 0 생성부(334)는, 처리 장치에 의해, 검증 키의 요소인 검증 요소 c0을 수학식 155에 나타내는 바와 같이 생성한다.
[수학식 155]
Figure 112013076321591-pct00055
또, 상술한 바와 같이, 수학식 113에 나타내는 기저 B와 기저 B*에 대하여, 수학식 114이다. 따라서, 수학식 155는, 이하와 같이, 기저 B0의 기저 벡터의 계수가 설정되는 것을 의미한다. 여기서는, 표기를 간략화하여, 기저 벡터 b0, i 중, i의 부분만으로 기저 벡터를 특정한다. 예컨대, 기저 벡터 1이면, 기저 벡터 b0, 1을 의미한다. 또한, 기저 벡터 1, …, 3이면, 기저 벡터 b0, 1, …, b0, 3을 의미한다.
기저 B0의 기저 벡터 1의 계수로서 -s0-sL +1이 설정된다. 기저 벡터 1+1, …, 1+u0+w0의 계수로서 0이 설정된다. 기저 벡터 1+u0+w0+1, …, 1+u0+w0+z0의 계수로서 난수 η0, 1, …, η0, z0(여기서, z0은 z0이다)이 설정된다.
(S407 : 검증 요소 i 생성 단계)
검증 요소 i 생성부(335)는, 처리 장치에 의해, i=1, …, L의 각 정수 i에 대하여, 검증 키의 요소인 검증 요소 ci를 수학식 156에 나타내는 바와 같이 생성한다.
[수학식 156]
Figure 112013076321591-pct00056
다시 말해, 수학식 156은, 수학식 155와 마찬가지로, 이하와 같이, 기저 Bt의 기저 벡터의 계수가 설정되는 것을 의미한다. 또, 여기서는, 표기를 간략화하여, 기저 벡터 bt , i 중, i의 부분만으로 기저 벡터를 특정한다. 예컨대, 기저 벡터 1이면, 기저 벡터 bt , 1을 의미한다. 또한, 기저 벡터 1, …, 3이면, 기저 벡터 bt , 1, …, bt , 3을 의미한다.
ρ(i)가 긍정형의 조 (t, v i)인 경우에는, 기저 벡터 1의 계수로서 siivi, 1이 설정된다. 기저 벡터 2, …, nt의 계수로서 θivi , 2, …, θivi , nt(여기서, nt는 nt이다)가 설정된다. 기저 벡터 nt+1, …, nt+ut+wt의 계수로서 0이 설정된다. 기저 벡터 nt+ut+wt+1, …, nt+ut+wt+zt의 계수로서 ηi, 1, …, ηi, zt(여기서, zt는 zt이다)가 설정된다.
한편, ρ(i)가 부정형의 조 ¬(t, v i)인 경우에는, 기저 벡터 1, …, nt의 계수로서 sivi, 1, …, sivi, nt(여기서, nt는 nt이다)가 설정된다. 기저 벡터 nt+1, …, nt+ut+wt의 계수로서 0이 설정된다. 기저 벡터 nt+ut+wt+1, …, nt+ut+wt+zt의 계수로서 ηi, 1, …, ηi, zt(여기서, zt는 zt이다)가 설정된다.
또, θi 및 ηi, i’(i’=1, …, zt)는 난수 생성부(233)에 의해 생성되는 균등 난수이다.
(S408 : 서명 요소 L+1 생성 단계)
검증 요소 L+1 생성부(336)는, 처리 장치에 의해, 검증 키의 요소인 검증 요소 cL +1을 수학식 157에 나타내는 바와 같이 생성한다.
[수학식 157]
Figure 112013076321591-pct00057
다시 말해, 수학식 157은, 수학식 155와 마찬가지로, 이하와 같이, 기저 Bd +1의 기저 벡터의 계수가 설정되는 것을 의미한다. 또, 여기서는, 표기를 간략화하여, 기저 벡터 bd +1, i 중, i의 부분만으로 기저 벡터를 특정한다. 예컨대, 기저 벡터 1이면, 기저 벡터 bd +1, 1을 의미한다. 또한, 기저 벡터 1, …, 3이면, 기저 벡터 bd+1, 1, …, bd +1, 3을 의미한다.
기저 벡터 1의 계수로서 sL +1L+1ㆍHhk λ, D(m||S)가 설정된다. 기저 벡터 2의 계수로서 θL+1이 설정된다. 기저 벡터 2+1, …, 2+ud +1+wd +1의 계수로서 0이 설정된다. 기저 벡터 2+ud +1+wd +1+1, …, 2+ud +1+wd +1+zd +1의 계수로서 난수 ηL+1, 1, …, ηL+1, zd +1(여기서, zd+1은 zd +1이다)이 설정된다.
(S409 : 제 1 페어링 연산 단계)
페어링 연산부(340)는, 처리 장치에 의해, 페어링 연산 e(b0 , 1, s* 0)을 계산한다.
페어링 연산 e(b0 , 1, s* 0)을 계산한 결과가 값 1이면, 페어링 연산부(340)는, 서명의 검증에 실패한 것을 나타내는 값 0을 출력하여, 처리를 종료한다. 한편, 페어링 연산 e(b0 , 1, s* 0)을 계산한 결과가 값 1이 아니면, 페어링 연산부(340)는, 처리를 S410으로 진행시킨다.
(S410 : 제 2 페어링 연산 단계)
페어링 연산부(340)는, 처리 장치에 의해, 수학식 158에 나타내는 페어링 연산을 계산한다.
[수학식 158]
Figure 112013076321591-pct00058
수학식 158에 나타내는 페어링 연산을 계산한 결과가 값 1이면, 페어링 연산부(340)는, 서명의 검증에 성공한 것을 나타내는 값 1을 출력한다. 한편, 그밖의 값이면, 페어링 연산부(340)는, 서명의 검증에 실패한 것을 나타내는 값 0을 출력한다.
또, 수학식 159에 나타내는 바와 같이, 수학식 158을 계산하는 것에 의해, 서명 데이터 σ가 정당한 것이면, 값 1이 얻어진다.
[수학식 159]
Figure 112013076321591-pct00059
다시 말해, (S401)로부터 (S410)에 있어서, 검증 장치(300)는, 수학식 160에 나타내는 Ver 알고리즘을 실행하여, 서명 데이터 σ를 검증한다.
[수학식 160]
Figure 112013076321591-pct00060
이상과 같이, 실시의 형태 1에 따른 서명 처리 시스템(10)은, 스팬 프로그램과 내적 술어와 비밀 분산을 이용하여 구성한 액세스 스트럭쳐 S를 이용하여, 속성 베이스 서명 방식을 실현한다. 특히, 실시의 형태 1에 따른 서명 처리 시스템(10)은, 논모노톤 스팬 프로그램을 이용하기 때문에, 논모노톤 술어를 동반하는 속성 베이스 서명 방식을 실현한다.
실시의 형태 1에 따른 서명 처리 시스템(10)이 실현하는 속성 베이스 서명 방식은, 안전성이 높고, 프라이버시 요건을 만족시키고 있다. 또, 안전성이 높다고 하는 것은, 서명이 타인에게 위조될 가능성이 낮다고 하는 것이다.
또, (S409)에서 페어링 연산 e(b0 , 1, s* 0)을 행하는 것은, 서명 데이터 σ가, 비밀인(마스터 키 sk인) 기저 벡터 b* 0, 1을 이용하는 일 없이 생성된 서명 데이터가 아닌 것을 확인하기 위해서이다.
페어링 연산 e(b0 , 1, s* 0)은, 서명 요소 s* 0에 기저 벡터 b* 0, 1이 포함되어 있는지, 다시 말해 기저 벡터 b* 0, 1의 계수로서 0 이외의 값이 설정되어 있는지를 확인하는 연산이다. 페어링 연산 e(b0 , 1, s* 0)=1이면, 서명 요소 s* 0에서는 기저 벡터 b* 0, 1의 계수로서 0이 설정되어 있고, 서명 데이터 σ는, 기저 벡터 b* 0, 1을 이용하는 일 없이 생성된 서명 데이터라는 것을 의미한다. 따라서, 이 경우, 서명 데이터 σ는 부정한 것이라고 판단된다.
또, 상기 설명에 있어서, ut, wt, zt(t=0, …, d+1)의 차원은, 안전성을 높이기 위해 마련한 차원이다. 따라서, 안전성이 낮아져 버리지만, ut, wt, zt(t=0, …, d+1)를 각각 0으로 하여, ut, wt, zt(t=0, …, d+1)의 차원을 마련하지 않더라도 좋다.
또한, 상기 설명에서는, (S101)에서 Nt에 nt+ut+wt+zt를 설정했다. 그러나, nt+ut+wt+zt를 nt+nt+nt+1로 하여, Nt에 3nt+1을 설정하더라도 좋다. 여기서, n0은 1이고, nt(t=1, …, d+1)는 2이다.
이 경우, 수학식 135에 나타내는 Setup 알고리즘은, 수학식 161과 같이 다시 쓸 수 있다. 또, Gob는 수학식 162와 같이 다시 쓸 수 있다.
[수학식 161]
Figure 112013076321591-pct00061
[수학식 162]
Figure 112013076321591-pct00062
또한, 수학식 140에 나타내는 KeyGen 알고리즘은, 수학식 163과 같이 다시 쓸 수 있다.
[수학식 163]
Figure 112013076321591-pct00063
또한, 수학식 150에 나타내는 Sig 알고리즘은, 수학식 164와 같이 다시 쓸 수 있다.
[수학식 164]
Figure 112013076321591-pct00064
또한, 수학식 159에 나타내는 Ver 알고리즘은, 수학식 165와 같이 다시 쓸 수 있다.
[수학식 165]
Figure 112013076321591-pct00065
또한, Setup 알고리즘은, 서명 처리 시스템(10)을 셋업할 때에 한 번 실행하면 되고, 서명 키를 생성할 때마다 실행할 필요는 없다. 또한, 상기 설명에서는, Setup 알고리즘과 KeyGen 알고리즘을 키 생성 장치(100)가 실행하는 것으로 했지만, Setup 알고리즘과 KeyGen 알고리즘을 각각 다른 장치가 실행하는 것으로 하더라도 좋다.
실시의 형태 2.
본 실시의 형태에서는, 「분산 다관리자 속성 베이스 서명 방식」에 대하여 설명한다.
제 1에, 「분산 다관리자(Decentralized Multi-Authority)」라고 하는 개념에 대하여 설명한다.
제 2에, 본 실시의 형태에 따른 「분산 다관리자 속성 베이스 서명 방식」을 설명한다. 우선, 「분산 다관리자 속성 베이스 서명 방식」의 기본 구성에 대하여 설명한다. 다음으로, 「분산 다관리자 속성 베이스 서명 방식」을 실현하는 「서명 처리 시스템(10)」의 기본 구성에 대하여 설명한다. 그리고, 본 실시의 형태에 따른 「분산 다관리자 속성 베이스 서명 방식」 및 「서명 처리 시스템(10)」에 대하여 상세히 설명한다.
<제 1. 분산 다관리자라고 하는 개념>
우선, 「다관리자」에 대하여 설명한다. 다관리자란, 서명 키를 생성하는 관리자가 복수 존재한다고 하는 의미이다.
일반적인 서명 처리 시스템에서는, 시스템 전체의 시큐리티는 어느 하나의 기관(관리자)에 의존하고 있다. 예컨대, 실시의 형태 1에서 설명한 서명 처리 시스템(10)이면, 시스템 전체의 시큐리티는, 마스터 키 sk를 생성하는 키 생성 장치(100)에 의존하고 있다. 키 생성 장치(100)의 시큐리티가 뚫리거나, 마스터 키 sk가 누설된 경우, 서명 처리 시스템(10)은 전체가 기능하지 않게 된다.
그러나, 다관리자로 함으로써, 일부의 관리자의 시큐리티가 뚫리거나, 일부의 관리자의 비밀 키(마스터 키)가 누설된 경우에도, 서명 처리 시스템의 일부만이 기능하지 않게 될 뿐이고, 다른 부분에 대해서는 정상적으로 기능하는 상태로 할 수 있다.
도 13은 다관리자의 설명도이다.
도 13에서는, 관공서가, 주소, 전화번호, 연령 등의 속성에 대하여 관리한다. 또한, 경찰이, 운전면허의 종별 등의 속성에 대하여 관리한다. 또한, 회사 A가, 회사 A에 있어서의 직무, 회사 A에 있어서의 소속 등의 속성에 대하여 관리한다. 그리고, 관공서가 관리하는 속성을 나타내기 위한 서명 키 1은 관공서가 발행하고, 경찰이 관리하는 속성을 나타내기 위한 서명 키 2는 경찰이 발행하고, 회사 A가 관리하는 속성을 나타내기 위한 서명 키 3은 회사 A가 발행한다.
서명을 하는 서명자는, 관공서, 경찰, 회사 A 등의 각 관리자가 발행한 서명 키 1, 2, 3을 합친 서명 키를 이용하여, 서명 데이터를 생성한다. 다시 말해, 서명자로부터 본 경우, 각 관리자로부터 발행된 서명 키를 합친 것이, 자신에게 발행된 하나의 서명 키가 된다.
예컨대, 회사 A의 마스터 키가 누설된 경우, 서명 처리 시스템은, 회사 A의 속성에 관해서는 기능하지 않게 되지만, 다른 관리자가 관리하는 속성에 관해서는 기능한다. 다시 말해, 서명 데이터의 검증이 된 경우, 회사 A가 관리하는 속성에 대해서는 신뢰할 수 없지만, 다른 속성에 대해서는 신뢰할 수 있다.
또한, 도 13의 예로부터도 알 수 있듯이, 속성 베이스 서명에서는, 복수의 관리자가 존재하고, 각 관리자가 속성에 있어서의 어느 카테고리(부분 공간) 또는 정의역을 관리하고, 그 카테고리에 있어서의 사용자의 속성에 대한 서명 키(의 일부)를 발행하는 것이 자연스럽다.
다음으로, 「분산(Decentralized)」에 대하여 설명한다. 분산이란, 어떤 기관도 관리자가 될 수 있고, 다른 기관과 상호 작용하는 일 없이, 서명 키(의 일부)를 발행할 수 있고, 각 사용자가 다른 기관과 상호 작용하는 일 없이, 관리자로부터 서명 키(의 일부)를 취득할 수 있는 것이다.
예컨대, 중앙 관리자가 있는 경우, 분산이라고는 말할 수 없다. 중앙 관리자란, 다른 관리자보다 상위의 관리자이다. 중앙 관리자의 시큐리티가 뚫린 경우, 모든 관리자의 시큐리티가 뚫려 버린다.
<제 2. 분산 다관리자 속성 베이스 서명 방식의 구성>
<제 2-1. 분산 다관리자 속성 베이스 서명 방식의 기본 구성>
분산 다관리자 속성 베이스 서명 방식은, GSetup, ASetup, AttrGen, Sig, Ver의 5개의 알고리즘을 구비한다.
(GSetup)
GSetup 알고리즘은, 시큐리티 파라미터 λ가 입력되고, 공개 파라미터 gparam을 출력하는 확률적 알고리즘이다.
(ASetup)
ASetup 알고리즘은, 공개 파라미터 gparam과, 관리자의 식별 정보 t를 입력으로 하여, 관리자 비밀 키 askt와, 관리자 공개 파라미터 apkt를 출력하는 확률적 알고리즘이다.
(AttrGen)
AttrGen 알고리즘은, 공개 파라미터 gparam과, 관리자의 식별 정보 t와, 관리자 비밀 키 askt와, 사용자의 식별 정보 gid와, 속성 x t:=(xt , i)(i=1, …, nt)∈Fq를 입력으로 하여, 서명 키 uskgid, (t, xt )를 출력하는 확률적 알고리즘이다.
(Sig)
Sig 알고리즘은, 공개 파라미터 gparam과, 서명 키 uskgid, (t, xt )와, 메시지 m과, 액세스 스트럭쳐 S:=(M, ρ)를 입력으로 하여, 서명 s→*와 메시지 m과 액세스 스트럭쳐 S를 포함하는 서명 데이터 σ를 출력하는 확률적 알고리즘이다.
(Ver)
Ver 알고리즘은, 서명 데이터 σ와, 공개 파라미터 gparam과, 관리자 공개 파라미터 apkt를 입력으로 하여, 불값 1(수리) 또는 0(거절)을 출력하는 알고리즘이다.
<제 2-2. 서명 처리 시스템(10)>
상술한 분산 다관리자 속성 베이스 서명 방식의 알고리즘을 실행하는 서명 처리 시스템(10)에 대하여 설명한다.
도 14는 분산 다관리자 속성 베이스 서명 방식의 알고리즘을 실행하는 서명 처리 시스템(10)의 구성도이다.
서명 처리 시스템(10)은, 복수의 키 생성 장치(100), 서명 장치(200), 검증 장치(300)를 구비한다.
어느 하나의 키 생성 장치(100)는, 시큐리티 파라미터 λ를 입력으로 하여 GSetup 알고리즘을 실행하여, 공개 파라미터 gparam을 생성한다. 그리고, 그 키 생성 장치(100)는, 생성한 공개 파라미터 gparam을 공개한다.
각 키 생성 장치(100)는, 공개 파라미터 gparam과, 그 키 생성 장치(100)에 할당된 식별 정보 t를 입력으로 하여 ASetup 알고리즘을 실행하여, 관리자 비밀 키 askt와, 관리자 공개 파라미터 apkt를 생성한다. 그리고, 각 키 생성 장치(100)는, 공개 파라미터 gparam과, 그 키 생성 장치(100)에 할당된 식별 정보 t와, 관리자 비밀 키 askt와, 사용자의 식별 정보 gid와, 속성 x t:=(xt, i)(i=1, …, nt)∈Fq를 입력으로 하여 AttrGen 알고리즘을 실행하여, 서명 키 uskgid, (t, xt)를 생성하여 서명 장치(200)에 비밀리에 배포한다.
서명 장치(200)는, 공개 파라미터 gparam과, 서명 키 uskgid, (t, xt )와, 메시지 m과, 액세스 스트럭쳐 S:=(M, ρ)를 입력으로 하여 Sig 알고리즘을 실행하여, 서명 s→*와 메시지 m과 액세스 스트럭쳐 S를 포함하는 서명 데이터 σ를 생성한다. 서명 장치(200)는, 생성한 서명 데이터 σ를 검증 장치(300)에 송신한다.
검증 장치(300)는, 서명 데이터 σ와, 공개 파라미터 gparam과, 관리자 공개 파라미터 apkt를 입력으로 하여 Ver 알고리즘을 실행하여, 불값 1(수리) 또는 0(거절)을 출력한다.
<제 2-3. 분산 다관리자 속성 베이스 서명 방식 및 서명 처리 시스템(10)의 상세>
도 15로부터 도 22에 근거하여, 분산 다관리자 속성 베이스 서명 방식 및 분산 다관리자 속성 베이스 서명 방식을 실행하는 서명 처리 시스템(10)의 기능과 동작에 대하여 설명한다.
도 15는 각 키 생성 장치(100)의 기능을 나타내는 기능 블록도이다. 도 16은 서명 장치(200)의 기능을 나타내는 기능 블록도이다. 도 17은 검증 장치(300)의 기능을 나타내는 기능 블록도이다.
도 18로부터 도 20은 키 생성 장치(100)의 동작을 나타내는 플로차트이다. 또, 도 18은 GSetup 알고리즘의 처리를 나타내는 플로차트이고, 도 19는 ASetup 알고리즘의 처리를 나타내는 플로차트이고, 도 20은 AttrGen 알고리즘의 처리를 나타내는 플로차트이다. 도 21은 서명 장치(200)의 동작을 나타내는 플로차트이고, Sig 알고리즘의 처리를 나타내는 플로차트이다. 도 22는 검증 장치(300)의 동작을 나타내는 플로차트이고, Ver 알고리즘의 처리를 나타내는 플로차트이다.
키 생성 장치(100)의 기능과 동작에 대하여 설명한다.
도 15에 나타내는 바와 같이, 키 생성 장치(100)는, 마스터 키 생성부(110), 마스터 키 기억부(120), 정보 입력부(130)(제 1 정보 입력부), 서명 키 생성부(140), 키 배포부(150)(서명 키 송신부)를 구비한다.
또한, 마스터 키 생성부(110)는, 글로벌 파라미터 생성부(111), 관리자 비밀 키 생성부(112)를 구비한다. 서명 키 생성부(140)는, 난수 생성부(141), 키 요소 생성부(145)를 구비한다.
우선, 도 18에 근거하여, 키 생성 장치(100)가 실행하는 GSetup 알고리즘의 처리에 대하여 설명한다. 또, 상술한 바와 같이, GSetup 알고리즘은, 복수의 키 생성 장치(100) 중 하나의 키 생성 장치(100)가 실행하면 된다.
(S501 : 시큐리티 파라미터 입력 단계)
글로벌 파라미터 생성부(111)는, 입력 장치에 의해, 시큐리티 파라미터 λ(1λ)를 입력한다.
(S502 : 쌍선형 페어링군 생성 단계)
글로벌 파라미터 생성부(111)는, 처리 장치에 의해, S501에서 입력한 시큐리티 파라미터 λ(1λ)를 입력으로 하여 알고리즘 Gbpg를 실행하여, 랜덤으로 쌍선형 페어링군의 파라미터 paramG:=(q, G, GT, g, e)의 값을 생성한다.
(S503 : 파라미터 생성 단계)
해시 함수 H1과 H2를, 수학식 166에 나타내는 해시 함수로 한다.
[수학식 166]
Figure 112013076321591-pct00066
글로벌 파라미터 생성부(111)는, 처리 장치에 의해, 수학식 167에 나타내는 글로벌 파라미터 gparam의 요소 G0, G1, G2, G3, G4를 생성한다.
[수학식 167]
Figure 112013076321591-pct00067
또한, 글로벌 파라미터 생성부(111)는, gt:=e(G0, G1), g4:=e(G0, G4)로 한다.
(S504 : 파라미터 기억 단계)
마스터 키 기억부(120)는, (S502)에서 생성한 paramG와, (S503)에서 글로벌 파라미터 생성부(111)가 설정한 해시 함수 H1, H2와, 생성한 요소 G0, G1, G2, G3, G4와, 설정한 값 gt, g4를, 글로벌 파라미터 gparam으로서 기억 장치에 기억한다.
다시 말해, (S501)로부터 (S503)에 있어서, 키 생성 장치(100)는 수학식 168에 나타내는 GSetup 알고리즘을 실행하여, 글로벌 파라미터 gparam을 생성한다. 그리고, (S504)에서, 키 생성 장치(100)는 생성된 글로벌 파라미터 gparam을 기억 장치에 기억한다.
또, 글로벌 파라미터 gparam은, 예컨대, 네트워크를 통하여 공개되고, 다른 키 생성 장치(100)나 서명 장치(200)나 검증 장치(300)가 취득 가능한 상태가 된다.
[수학식 168]
Figure 112013076321591-pct00068
다음으로, 도 19에 근거하여, 키 생성 장치(100)가 실행하는 ASetup 알고리즘의 처리에 대하여 설명한다. 또, 상술한 바와 같이, ASetup 알고리즘은, 복수의 키 생성 장치(100) 모두가 실행하더라도 좋고, 복수의 키 생성 장치(100) 중 일부의 키 생성 장치(100)만이 실행하더라도 좋다.
(S601 : 정보 입력 단계)
정보 입력부(130)는, 입력 장치에 의해, 자기(그 키 생성 장치(100))에 할당된 식별 정보 t를 입력한다. 또, 각 키 생성 장치(100)에는, 각각 다른 식별 정보 t가 할당되어 있다.
또한, 정보 입력부(130)는, 예컨대, 통신 장치에 의해 네트워크를 통하여, 글로벌 파라미터 gparam을 취득한다. 또, 자기가 글로벌 파라미터 gparam을 생성한 키 생성 장치(100)인 경우에는, 글로벌 파라미터 gparam을 마스터 키 기억부(120)로부터 읽어내면 된다.
(S602 : 공간 생성 단계)
관리자 비밀 키 생성부(112)는, 처리 장치에 의해, 시큐리티 파라미터 λ(1λ)와, Nt=2nt+2+ut+wt+zt와, paramG:=(q, G, GT, g, e)의 값을 입력으로 하여 알고리즘 Gdpvs를 실행하여, 쌍대 페어링 벡터 공간의 파라미터 paramVt:=(q, Vt, GT, At, e)의 값을 생성한다.
또, nt, ut, wt, zt는, 1 이상의 정수이다.
(S603 : 기저 U 생성 단계)
관리자 비밀 키 생성부(112)는, 처리 장치에 의해, l=1, …, 4의 각 정수 l에 대하여, 기저 Ul을 수학식 169에 나타내는 바와 같이 생성한다.
[수학식 169]
Figure 112013076321591-pct00069
(S604 : 선형 변환 생성 단계)
관리자 비밀 키 생성부(112)는, 처리 장치에 의해, nt+ut+wt+zt와, Fq를 입력으로 하여, 선형 변환 Xt:=(χt, i, j)i, j를 수학식 170에 나타내는 바와 같이 랜덤으로 생성한다.
[수학식 170]
Figure 112013076321591-pct00070
(S605 : 기저 B 생성 단계)
관리자 비밀 키 생성부(112)는, 처리 장치에 의해, 기저 Bt 및 기저 B* t를 수학식 171에 나타내는 바와 같이 생성한다.
[수학식 171]
Figure 112013076321591-pct00071
또한, 관리자 비밀 키 생성부(112)는, π, π’, μ∈Fq를, G2=πG1, G3=π’G1, G3=μG1이 되는 값으로 한다. 그러면, 수학식 172가 된다.
[수학식 172]
Figure 112013076321591-pct00072
(S606 : 기저 B^ 생성 단계)
관리자 비밀 키 생성부(112)는, 처리 장치에 의해, 기저 Bt의 부분 기저 B^ t와, 기저 B*의 부분 기저 B^* t를 수학식 173에 나타내는 바와 같이 생성한다.
[수학식 173]
Figure 112013076321591-pct00073
(S607 : 마스터 키 기억 단계)
마스터 키 기억부(120)는, (S602)에서 생성한 파라미터 paramVt와, (S606)에서 생성한 부분 기저 B^ t 및 부분 기저 B^* t를 관리자 공개 파라미터 apkt로서 기억 장치에 기억한다. 또한, 마스터 키 기억부(120)는, (S604)에서 생성한 선형 변환 Xt를 관리자 비밀 키 askt로서 기억 장치에 기억한다.
다시 말해, (S601)로부터 (S606)에 있어서, 키 생성 장치(100)는 수학식 174에 나타내는 ASetup 알고리즘을 실행하여, 관리자 공개 파라미터 apkt와 관리자 비밀 키 askt를 생성한다. 그리고, (S607)에서, 키 생성 장치(100)는 생성된 관리자 공개 파라미터 apkt와 관리자 비밀 키 askt를 기억 장치에 기억한다.
또, 관리자 공개 파라미터 apkt는, 예컨대, 네트워크를 통하여 공개되고, 서명 장치(200)나 검증 장치(300)가 취득 가능한 상태가 된다.
[수학식 174]
Figure 112013076321591-pct00074
다음으로, 도 20에 근거하여, 키 생성 장치(100)가 실행하는 AttrGen 알고리즘의 처리에 대하여 설명한다. 또, 상술한 바와 같이, AttrGen 알고리즘은, 복수의 키 생성 장치(100) 중, ASetup 알고리즘을 실행한 키 생성 장치(100)가 실행한다.
(S701 : 정보 입력 단계)
정보 입력부(130)는, 입력 장치에 의해, 자기(그 키 생성 장치(100))에 할당된 식별 정보 t와, 서명 키를 발행하는 사용자의 식별 정보 gid와, 속성 정보 x t:=(xt, i)(i=1, …, nt)를 입력한다.
또한, 정보 입력부(130)는, 예컨대, 통신 장치에 의해 네트워크를 통하여, 글로벌 파라미터 gparam을 취득한다. 또, 자기가 글로벌 파라미터 gparam을 생성한 키 생성 장치(100)인 경우에는, 글로벌 파라미터 gparam을 마스터 키 기억부(120)로부터 읽어내면 된다.
또한, 정보 입력부(130)는, 마스터 키 기억부(120)로부터 관리자 비밀 키 askt를 읽어낸다.
(S702 : 난수 생성 단계)
난수 생성부(141)는, 처리 장치에 의해, 식별 정보 t와 j=1, 2의 각 정수 j에 대하여, 난수 φ t, j를 수학식 175에 나타내는 바와 같이 생성한다.
[수학식 175]
Figure 112013076321591-pct00075
(S703 : 키 요소 생성 단계)
수학식 176인 것으로 한다.
[수학식 176]
Figure 112013076321591-pct00076
키 요소 생성부(145)는, 처리 장치에 의해, 식별 정보 t와 j=1, 2의 각 정수 j에 대하여, 서명 키 uskgid, (t, xt )의 요소인 키 요소 k* t, j를 수학식 177에 나타내는 바와 같이 생성한다.
[수학식 177]
Figure 112013076321591-pct00077
또, 상술한 바와 같이, 수학식 113에 나타내는 기저 B와 기저 B*에 대하여, 수학식 114이다. 따라서, 수학식 177은, 이하와 같이, 기저 B* t의 기저 벡터의 계수가 설정되는 것을 의미한다. 여기서는, 표기를 간략화하여, 기저 벡터 b* t, i 중, i의 부분만으로 기저 벡터를 특정한다. 예컨대, 기저 벡터 1이면, 기저 벡터 b* t, 1을 의미한다. 또한, 기저 벡터 1, …, 3이면, 기저 벡터 b* t, 1, …, b* t, 3을 의미한다.
기저 벡터 1, …, nt의 계수로서 (δj+1)xt, 1, …, (δj+1)xt, nt(여기서, nt는 nt이다)가 설정된다. 기저 벡터 nt+1, …, 2nt의 계수로서 -δjxt, 1, …, -δjxt, nt(여기서, nt는 nt이다)가 설정된다. 기저 벡터 2nt+1, …, 2nt+2+ut의 계수로서 0이 설정된다. 기저 벡터 2nt+2+ut+1, …, 2nt+2+ut+wt의 계수로서 난수 φt, j, 1, …, φt, j, wt(여기서, wt는 wt이다)가 설정된다. 기저 벡터 2nt+2+ut+wt+1, …, 2nt+2+ut+wt+zt의 계수로서 0이 설정된다.
(S704 : 키 배포 단계)
키 배포부(150)는, 사용자의 식별 정보 gid와, 식별 정보 t 및 속성 정보 x t와, 키 요소 k* t, j를 요소로 하는 서명 키 uskgid, (t, xt )를, 예컨대 통신 장치에 의해 네트워크를 통하여 비밀리에 서명 장치(200)에 배포한다. 물론, 서명 키 uskgid, (t, xt )는, 다른 방법에 의해 서명 장치(200)에 배포되더라도 좋다.
다시 말해, (S701)로부터 (S703)에 있어서, 키 생성 장치(100)는 수학식 178에 나타내는 AttrGen 알고리즘을 실행하여, 서명 키 uskgid, (t, xt )를 생성한다. 그리고, (S704)에서, 키 생성 장치(100)는 생성된 서명 키 uskgid, (t, xt )를 서명 장치(200)에 배포한다.
[수학식 178]
Figure 112013076321591-pct00078
서명 장치(200)의 기능과 동작에 대하여 설명한다.
도 16에 나타내는 바와 같이, 서명 장치(200)는, 서명 키 취득부(210), 정보 입력부(220)(제 2 정보 입력부), 스팬 프로그램 계산부(230), 보완 계수 계산부(240), 서명 데이터 생성부(250), 서명 데이터 송신부(260)(서명 데이터 출력부)를 구비한다.
또한, 정보 입력부(220)는, 술어 정보 입력부(221), 메시지 입력부(222)를 구비한다. 또한, 서명 데이터 생성부(250)는, 난수 생성부(251), 서명 요소 생성부(255)를 구비한다.
도 21에 근거하여, 서명 장치(200)가 실행하는 Sig 알고리즘의 처리에 대하여 설명한다.
(S801 : 서명 키 취득 단계)
서명 키 취득부(210)는, 예컨대, 통신 장치에 의해 네트워크를 통하여, 각 키 생성 장치(100)가 생성한 서명 키 uskgid, (t, xt )를 취득한다. 또한, 서명 키 취득부(210)는, 키 생성 장치(100)가 생성한 글로벌 파라미터 gparam을 취득한다.
(S802 : 정보 입력 단계)
술어 정보 입력부(221)는, 입력 장치에 의해, 액세스 스트럭쳐 S:=(M, ρ)를 입력한다. 또, 행렬 M은, L행×r열의 행렬이다. L, r은, 1 이상의 정수이다.
또한, 메시지 입력부(222)는, 입력 장치에 의해, 서명을 첨부하는 메시지 m을 입력한다.
또, 액세스 스트럭쳐 S의 행렬 M의 설정에 대해서는, 실현하고 싶은 시스템의 조건에 따라 설정되는 것이다.
(S803 : 스팬 프로그램 계산 단계)
스팬 프로그램 계산부(230)는, 처리 장치에 의해, (S802)에서 입력한 액세스 스트럭쳐 S가, (S801)에서 취득한 서명 키 uskgid, (t, xt )에 포함되는 속성 정보 x t의 집합 Γ를 수리하는지 여부를 판정한다.
또, 액세스 스트럭쳐가 속성의 집합을 수리하는지 여부의 판정 방법은, 실시의 형태 1에 있어서의 「제 3. 속성 베이스 서명 방식을 실현하기 위한 개념」에서 설명한 것과 같다.
스팬 프로그램 계산부(230)는, 액세스 스트럭쳐 S가 속성의 집합 Γ를 수리하는 경우(S803에서 수리), 처리를 (S804)로 진행시킨다. 한편, 액세스 스트럭쳐 S가 속성 정보 x t의 집합 Γ를 거절하는 경우(S803에서 거절), 처리를 종료한다.
(S804 : 보완 계수 계산 단계)
보완 계수 계산부(430)는, 처리 장치에 의해, 수학식 179가 되는 I와, I에 포함되는 각 정수 i에 대하여 상수(보완 계수) αi를 계산한다.
[수학식 179]
Figure 112013076321591-pct00079
또, Mi란, 행렬 M의 i행째이다.
(S805 : 난수 생성 단계)
난수 생성부(251)는, 처리 장치에 의해, 난수 ξ1, ξ2와, 난수 βi, βi’(i=1, …, L)를 수학식 180에 나타내는 바와 같이 생성한다.
[수학식 180]
Figure 112013076321591-pct00080
(S806 : 서명 요소 생성 단계)
서명 요소 생성부(255)는, 처리 장치에 의해, i=1, …, L의 각 정수 i에 대하여, 서명 데이터 σ의 요소인 서명 요소 s* i를 수학식 181에 나타내는 바와 같이 생성한다.
[수학식 181]
Figure 112013076321591-pct00081
여기서, r* i는, 수학식 182(수학식 110으로부터 수학식 112 및 이들의 수학식의 설명을 참조)이다.
[수학식 182]
Figure 112013076321591-pct00082
또한, γi와 y i:=(yi , i’)(i’=1, …, nt)와 y’ i:=(y’i, i’)(i’=1, …, nt)는, 수학식 183이다.
[수학식 183]
Figure 112013076321591-pct00083
(S807 : 데이터 송신 단계)
서명 데이터 송신부(260)는, 서명 요소 s* i(i=1, …, L)와, 메시지 m과, 액세스 스트럭쳐 S:=(M, ρ)와, g0:=g4 ξ2(여기서, ξ2는 ξ2이다)를 포함하는 서명 데이터 σ를, 예컨대 통신 장치에 의해 네트워크를 통하여 검증 장치(300)에 송신한다. 물론, 서명 데이터 σ는, 다른 방법에 의해 검증 장치(300)에 송신되더라도 좋다.
다시 말해, (S801)로부터 (S806)에 있어서, 서명 장치(200)는 수학식 184에 나타내는 Sig 알고리즘을 실행하여, 서명 데이터 σ를 생성한다. 그리고, (S807)에서, 서명 장치(200)는 생성된 서명 데이터 σ를 검증 장치(300)에 배포한다.
[수학식 184]
Figure 112013076321591-pct00084
검증 장치(300)의 기능과 동작에 대하여 설명한다.
도 17에 나타내는 바와 같이, 검증 장치(300)는, 공개 파라미터 취득부(310), 데이터 수신부(320)(데이터 취득부), 검증키 생성부(330), 페어링 연산부(340)를 구비한다.
또한, 검증키 생성부(330)는, 난수 생성부(331), f 벡터 생성부(332), s 벡터 생성부(333), 검증 요소 생성부(337)를 구비한다.
도 22에 근거하여, 검증 장치(300)가 실행하는 Ver 알고리즘의 처리에 대하여 설명한다.
(S901 : 공개 파라미터 취득 단계)
공개 파라미터 취득부(310)는, 예컨대, 통신 장치에 의해 네트워크를 통하여, 각 키 생성 장치(100)가 생성한 글로벌 파라미터 gparam과, 관리자 공개 파라미터 apkt를 취득한다.
(S902 : 서명 데이터 수신 단계)
데이터 수신부(320)는, 예컨대, 통신 장치에 의해 네트워크를 통하여, 서명 장치(200)가 송신한 서명 데이터 σ를 수신한다.
(S903 : f 벡터 생성 단계)
f 벡터 생성부(332)는, 처리 장치에 의해, r개의 요소를 갖는 벡터 f를 수학식 185에 나타내는 바와 같이 랜덤으로 생성한다.
[수학식 185]
Figure 112013076321591-pct00085
(S904 : s 벡터 생성 단계)
s 벡터 생성부(333)는, 처리 장치에 의해, (S902)에서 수신한 서명 데이터 σ에 포함되는 액세스 스트럭쳐 S의 (L행×r열)의 행렬 M과, (S903)에서 생성한 r개의 요소를 갖는 벡터 f에 근거하여, 벡터 s→T를 수학식 186에 나타내는 바와 같이 생성한다.
[수학식 186]
Figure 112013076321591-pct00086
또한, s 벡터 생성부(333)는, 처리 장치에 의해, (S903)에서 생성한 벡터 f에 근거하여, 값 s0을 수학식 187에 나타내는 바와 같이 생성한다. 또, 1는, 모든 요소가 값 1인 벡터이다.
[수학식 187]
Figure 112013076321591-pct00087
(S905 : f’ 벡터 생성 단계)
f 벡터 생성부(332)는, 처리 장치에 의해, r개의 요소를 갖는 벡터 f’를 수학식 188에 나타내는 바와 같이 랜덤으로 생성한다.
[수학식 188]
Figure 112013076321591-pct00088
(S906 : s’ 벡터 생성 단계)
s 벡터 생성부(333)는, 처리 장치에 의해, (L행×r열)의 행렬 M과, r개의 요소를 갖는 벡터 f’에 근거하여, 벡터 (s’)T를 수학식 189에 나타내는 바와 같이 생성한다.
[수학식 189]
Figure 112013076321591-pct00089
(S907 : 난수 생성 단계)
난수 생성부(331)는, 처리 장치에 의해, 난수 σ와 값 σ0을 수학식 190에 나타내는 바와 같이 생성한다.
[수학식 190]
Figure 112013076321591-pct00090
(S908 : 검증 요소 생성 단계)
검증 요소 생성부(337)는, 처리 장치에 의해, i=1, …, L의 각 정수 i에 대하여, 검증 키의 요소인 검증 요소 ci를 수학식 191에 나타내는 바와 같이 생성한다.
[수학식 191]
Figure 112013076321591-pct00091
또, 상술한 바와 같이, 수학식 113에 나타내는 기저 B와 기저 B*에 대하여, 수학식 114이다. 따라서, 수학식 191은, 이하와 같이, 기저 Bt의 기저 벡터의 계수가 설정되는 것을 의미한다. 여기서는, 표기를 간략화하여, 기저 벡터 bt , i 중, i의 부분만으로 기저 벡터를 특정한다. 예컨대, 기저 벡터 1이면, 기저 벡터 bt , 1을 의미한다. 또한, 기저 벡터 1, …, 3이면, 기저 벡터 bt , 1, …, bt , 3을 의미한다.
ρ(i)가 긍정형의 조 (t, v i)인 경우에는, 기저 벡터 1의 계수로서 siivi, 1이 설정된다. 기저 벡터 2, …, nt의 계수로서 θivi , 2, …, θivi , nt(여기서, nt는 nt이다)가 설정된다. 기저 벡터 nt+1의 계수로서 si’+θi’vi , 1이 설정된다. 기저 벡터 nt+2, …, 2nt의 계수로서 θi’vi , 2, …, θi’vi , nt(여기서, nt는 nt이다)가 설정된다. 기저 벡터 2nt+1의 계수로서 σii’’H2(m, S)가 설정된다. 또, H2(m, S)란, 해시 함수 H2의 입력으로서, 메시지 m과 액세스 스트럭쳐 S가 주어지는 것을 의미한다. 예컨대, H2(m||S)로 하더라도 좋다. 기저 벡터 2nt+2의 계수로서 θi’’가 설정된다. 기저 벡터 2nt+2+1, …, 2nt+2+ut+wt의 계수로서 0이 설정된다. 기저 벡터 2nt+2+ut+wt+1, …, 2nt+2+ut+wt+zt의 계수로서 ηi, 1, …, ηi, zt(여기서, zt는 zt이다)가 설정된다.
한편, ρ(i)가 부정형의 조 ¬(t, v i)인 경우에는, 기저 벡터 1, …, nt의 계수로서 sivi , 1, …, sivi , nt(여기서, nt는 nt이다)가 설정된다. 기저 벡터 nt+1, …, 2nt의 계수로서 si’vi , 1, …, si’vi , nt(여기서, nt는 nt이다)가 설정된다. 기저 벡터 2nt+1의 계수로서 σii’’H2(m, S)가 설정된다. 기저 벡터 2nt+2의 계수로서 θi’’가 설정된다. 기저 벡터 2nt+2+1, …, 2nt+2+ut+wt의 계수로서 0이 설정된다. 기저 벡터 2nt+2+ut+wt+1, …, 2nt+2+ut+wt+zt의 계수로서 ηi, 1, …, ηi, zt(여기서, zt는 zt이다)가 설정된다.
(S909 : 페어링 연산 단계)
페어링 연산부(340)는, 처리 장치에 의해, 수학식 192에 나타내는 페어링 연산을 계산한다.
[수학식 192]
Figure 112013076321591-pct00092
수학식 192에 나타내는 페어링 연산을 계산한 결과가 값 gT s0g0 σ0(여기서 s0은 s0이고, σ0은 σ0이다)이면, 페어링 연산부(340)는, 서명의 검증에 성공한 것을 나타내는 값 1을 출력한다. 한편, 그 밖의 값이면, 페어링 연산부(340)는, 서명의 검증에 실패한 것을 나타내는 값 0을 출력한다.
또, 수학식 193에 나타내는 바와 같이, 수학식 192를 계산하는 것에 의해, 서명 데이터 σ가 정당한 것이면, 값 1이 얻어진다.
[수학식 193]
Figure 112013076321591-pct00093
다시 말해, (S901)로부터 (S909)에 있어서, 검증 장치(300)는, 수학식 194에 나타내는 Ver 알고리즘을 실행하여, 서명 데이터 σ를 검증한다.
[수학식 194]
Figure 112013076321591-pct00094
이상과 같이, 실시의 형태 2에 따른 서명 처리 시스템(10)은, 복수의 키 생성 장치(100)가 서명 키를 생성하는 다관리자 속성 베이스 서명 방식을 실현한다. 특히, 서명 처리 시스템(10)이 실현하는 서명 방식은, 중앙 관리자가 없는 분산 다관리자 속성 베이스 서명 방식이다.
또, 실시의 형태 2에 따른 서명 처리 시스템(10)은, 실시의 형태 1에 따른 서명 처리 시스템(10)과 마찬가지로, 논모노톤 술어를 동반하는 속성 베이스 서명 방식을 실현한다.
실시의 형태 2에 따른 서명 처리 시스템(10)이 실현하는 속성 베이스 서명 방식은, 안전성이 높고, 프라이버시 요건을 만족시키고 있다.
또, 상기 설명에 있어서, ut, wt, zt(t=1, …, d)의 차원은, 안전성을 높이기 위해 마련한 차원이다. 따라서, 안전성이 낮아져 버리지만, ut, wt, zt(t=1, …, d)를 각각 0으로 하여, ut, wt, zt(t=1, …, d)의 차원을 마련하지 않더라도 좋다.
또한, 상기 설명에서는, 기저 Bt 및 기저 B* t의 차원수를 2nt+2+ut+wt+zt로 설정했다. 그러나, 2nt+2+ut+wt+zt를 2+2+2+6+4+1로 하여, 기저 Bt 및 기저 B* t의 차원수를 17로 하더라도 좋다.
이 경우, 수학식 168에 나타내는 GSetup 알고리즘은, 수학식 195와 같이 다시 쓸 수 있다.
[수학식 195]
Figure 112013076321591-pct00095
또한, 수학식 174에 나타내는 ASetup 알고리즘은, 수학식 196과 같이 다시 쓸 수 있다.
[수학식 196]
Figure 112013076321591-pct00096
또한, 수학식 178에 나타내는 AttrGen 알고리즘은, 수학식 197과 같이 다시 쓸 수 있다.
[수학식 197]
Figure 112013076321591-pct00097
또한, 수학식 184에 나타내는 Sig 알고리즘은, 수학식 198과 같이 다시 쓸 수 있다.
[수학식 198]
Figure 112013076321591-pct00098
또한, 수학식 194에 나타내는 Ver 알고리즘은, 수학식 199와 같이 다시 쓸 수 있다.
[수학식 199]
Figure 112013076321591-pct00099
또한, GSetup 알고리즘은, 서명 처리 시스템(10)을 셋업할 때에 어느 하나의 키 생성 장치(100)가 한 번 실행하면 되고, 서명 키를 생성할 때마다 실행할 필요는 없다. 마찬가지로, ASetup 알고리즘은, 서명 처리 시스템(10)을 셋업할 때에 각 키 생성 장치(100)가 한 번 실행하면 되고, 서명 키를 생성할 때마다 실행할 필요는 없다.
또한, 상기 설명에서는, GSetup 알고리즘과 ASetup 알고리즘과 KeyGen 알고리즘을 키 생성 장치(100)가 실행하는 것으로 했지만, GSetup 알고리즘과 ASetup 알고리즘과 KeyGen 알고리즘을 각각 다른 장치가 실행하는 것으로 하더라도 좋다.
실시의 형태 3.
이상의 실시의 형태에서는, 쌍대 벡터 공간에 있어서 서명 처리를 실현하는 방법에 대하여 설명했다. 본 실시의 형태에서는, 쌍대 가군에 있어서 서명 처리를 실현하는 방법에 대하여 설명한다.
다시 말해, 이상의 실시의 형태에서는, 소수 위수 q의 순회군에 있어서 서명 처리를 실현했다. 그러나, 합성수 M을 이용하여 수학식 200과 같이 환 R을 나타낸 경우, 환 R을 계수로 하는 가군에 있어서도, 상기 실시의 형태에서 설명한 서명 처리를 적용할 수 있다.
[수학식 200]
Figure 112013076321591-pct00100
실시의 형태 1에서 설명한 속성 베이스 서명 방식을, 환 R을 계수로 하는 가군에 있어서 실현하면 수학식 201로부터 수학식 205와 같이 된다.
[수학식 201]
Figure 112013076321591-pct00101
[수학식 202]
Figure 112013076321591-pct00102
[수학식 203]
Figure 112013076321591-pct00103
[수학식 204]
Figure 112013076321591-pct00104
[수학식 205]
Figure 112013076321591-pct00105
실시의 형태 2에서 설명한 분산 다관리자 속성 베이스 서명 방식을, 환 R을 계수로 하는 가군에 있어서 실현하면 수학식 206으로부터 수학식 210과 같이 된다.
[수학식 206]
Figure 112013076321591-pct00106
[수학식 207]
Figure 112013076321591-pct00107
[수학식 208]
Figure 112013076321591-pct00108
[수학식 209]
Figure 112013076321591-pct00109
[수학식 210]
Figure 112013076321591-pct00110
또, 안전성의 증명의 관점으로부터, 이상의 실시의 형태에 있어서, i=1, …, L의 각 정수 i에 대한 ρ(i)는, 각각 다른 식별 정보 t에 대한 긍정형의 조 (t, v i) 또는 부정형의 조 ¬(t, v i)인 것으로 한정하더라도 좋다.
바꿔 말하면, ρ(i)=(t, v i) 또는 ρ(i)=¬(t, v i)인 경우에, 함수 ρ~를, ρ~(i)=t인 {1, …, L}→{1, …, d}의 사상인 것으로 한다. 이 경우, ρ~가 단사인 것으로 한정하더라도 좋다. 또, ρ(i)는, 상술한 액세스 스트럭쳐 S:=(M, ρ(i))의 ρ(i)이다.
또한, 상기 설명에서는, 스팬 프로그램 M^는, 입력열 δ에 의해 행렬 M^로부터 얻어지는 행렬 Mδ의 행을 선형 결합하여 1가 얻어지는 경우에 한해, 입력열 δ를 수리하는 것으로 했다. 그러나, 스팬 프로그램 M^는, 1가 아니고, 다른 벡터 h가 얻어지는 경우에 한해, 입력열 δ를 수리하는 것으로 하더라도 좋다.
이 경우, KeyGen 알고리즘에 있어서, s0:=1ㆍf→T가 아니고, s0:=hㆍf→T로 하면 된다.
다음으로, 실시의 형태에 있어서의 서명 처리 시스템(10)(키 생성 장치(100), 서명 장치(200), 검증 장치(300))의 하드웨어 구성에 대하여 설명한다.
도 23은 키 생성 장치(100), 서명 장치(200), 검증 장치(300)의 하드웨어 구성의 일례를 나타내는 도면이다.
도 23에 나타내는 바와 같이, 키 생성 장치(100), 서명 장치(200), 검증 장치(300)는, 프로그램을 실행하는 CPU(911)(Central Processing Unit, 중앙 처리 장치, 처리 장치, 연산 장치, 마이크로프로세서, 마이크로컴퓨터, 프로세서라고도 한다)를 구비하고 있다. CPU(911)는, 버스(912)를 통하여 ROM(913), RAM(914), LCD(901)(Liquid Crystal Display), 키보드(902)(K/B), 통신 보드(915), 자기 디스크 장치(920)와 접속되고, 이들의 하드웨어 디바이스를 제어한다. 자기 디스크 장치(920)(고정 디스크 장치) 대신, 광 디스크 장치, 메모리카드 읽기/쓰기 장치 등의 기억 장치라도 좋다. 자기 디스크 장치(920)는, 소정의 고정 디스크 인터페이스를 통하여 접속된다.
ROM(913), 자기 디스크 장치(920)는, 비휘발성 메모리의 일례이다. RAM(914)은, 휘발성 메모리의 일례이다. ROM(913)과 RAM(914)과 자기 디스크 장치(920)는, 기억 장치(메모리)의 일례이다. 또한, 키보드(902), 통신 보드(915)는, 입력 장치의 일례이다. 또한, 통신 보드(915)는, 통신 장치의 일례이다. 또한, LCD(901)는, 표시 장치의 일례이다.
자기 디스크 장치(920) 또는 ROM(913) 등에는, 오퍼레이팅 시스템(921)(OS), 윈도우 시스템(922), 프로그램군(923), 파일군(924)이 기억되어 있다. 프로그램군(923)의 프로그램은, CPU(911), 오퍼레이팅 시스템(921), 윈도우 시스템(922)에 의해 실행된다.
프로그램군(923)에는, 상기의 설명에 있어서 「마스터 키 생성부(110)」, 「마스터 키 기억부(120)」, 「정보 입력부(130)」, 「서명 키 생성부(140)」, 「키 배포부(150)」, 「서명 키 취득부(210)」, 「정보 입력부(220)」, 「스팬 프로그램 계산부(230)」, 「보완 계수 계산부(240)」, 「서명 데이터 생성부(250)」, 「서명 데이터 송신부(260)」, 「공개 파라미터 취득부(310)」, 「데이터 수신부(320)」, 「검증키 생성부(330)」, 「페어링 연산부(340)」 등으로서 설명한 기능을 실행하는 소프트웨어나 프로그램이나 그 밖의 프로그램이 기억되어 있다. 프로그램은, CPU(911)에 의해 판독되어 실행된다.
파일군(924)에는, 상기의 설명에 있어서 「공개 파라미터」, 「마스터 키」, 「서명 데이터 σ」, 「서명 키」, 「액세스 스트럭쳐 S」, 「속성 정보」, 「속성의 집합 Γ」, 「메시지 m」 등의 정보나 데이터나 신호값이나 변수값이나 파라미터가, 「파일」이나 「데이터베이스」의 각 항목으로서 기억된다. 「파일」이나 「데이터베이스」는, 디스크나 메모리 등의 기록 매체에 기억된다. 디스크나 메모리 등의 기억 매체에 기억된 정보나 데이터나 신호값이나 변수값이나 파라미터는, 읽기/쓰기 회로를 통하여 CPU(911)에 의해 메인메모리나 캐시메모리에 판독되고, 추출ㆍ검색ㆍ참조ㆍ비교ㆍ연산ㆍ계산ㆍ처리ㆍ출력ㆍ인쇄ㆍ표시 등의 CPU(911)의 동작에 이용된다. 추출ㆍ검색ㆍ참조ㆍ비교ㆍ연산ㆍ계산ㆍ처리ㆍ출력ㆍ인쇄ㆍ표시의 CPU(911)의 동작 동안, 정보나 데이터나 신호값이나 변수값이나 파라미터는, 메인메모리나 캐시메모리나 버퍼메모리에 일시적으로 기억된다.
또한, 상기의 설명에 있어서의 플로차트의 화살표의 부분은 주로 데이터나 신호의 입출력을 나타내고, 데이터나 신호값은, RAM(914)의 메모리, 그 밖의 광 디스크 등의 기록 매체나 IC칩에 기록된다. 또한, 데이터나 신호는, 버스(912)나 신호선이나 케이블, 그 밖의 전송 매체나 전파에 의해 온라인 전송된다.
또한, 상기의 설명에 있어서 「~부」로서 설명하는 것은, 「~회로」, 「~장치」, 「~기기」, 「~수단」, 「~기능」이더라도 좋고, 또한, 「~단계」, 「~수순」, 「~처리」이더라도 좋다. 또한, 「~장치」로서 설명하는 것은, 「~회로」, 「~기기」, 「~수단」, 「~기능」이더라도 좋고, 또한, 「~단계」, 「~수순」, 「~처리」이더라도 좋다. 또한, 「~처리」로서 설명하는 것은 「~단계」이더라도 상관없다. 즉, 「~부」로서 설명하는 것은, ROM(913)에 기억된 펌웨어로 실현되고 있더라도 상관없다. 혹은, 소프트웨어만, 혹은, 소자ㆍ디바이스ㆍ기판ㆍ배선 등의 하드웨어만, 혹은, 소트프웨어와 하드웨어의 조합, 또한, 펌웨어와의 조합으로 실시되더라도 상관없다. 펌웨어와 소프트웨어는, 프로그램으로서, ROM(913) 등의 기록 매체에 기억된다. 프로그램은 CPU(911)에 의해 판독되고, CPU(911)에 의해 실행된다. 즉, 프로그램은, 상기에서 말한 「~부」로서 컴퓨터 등을 기능시키는 것이다. 혹은, 상기에서 말한 「~부」의 수순이나 방법을 컴퓨터 등에 실행시키는 것이다.
10 : 서명 처리 시스템 100 : 키 생성 장치
110 : 마스터 키 생성부 111 : 글로벌 파라미터 생성부
112 : 관리자 비밀 키 생성부 120 : 마스터 키 기억부
130 : 정보 입력부 140 : 서명 키 생성부
141 : 난수 생성부 142 : 키 요소 0 생성부
143 : 키 요소 t 생성부 144 : 키 요소 d+1 생성부
145 : 키 요소 생성부 150 : 키 배포부
200 : 서명 장치 210 : 서명 키 취득부
220 : 정보 입력부 221 : 술어 정보 입력부
222 : 메시지 입력부 230 : 스팬 프로그램 계산부
240 : 보완 계수 계산부 250 : 서명 데이터 생성부
251 : 난수 생성부 252 : 서명 요소 0 생성부
253 : 서명 요소 i 생성부 254 : 서명 요소 L+1 생성부
255 : 서명 요소 생성부 260 : 서명 데이터 송신부
300 : 검증 장치 310 : 공개 파라미터 취득부
320 : 데이터 수신부 330 : 검증키 생성부
331 : 난수 생성부 332 : f 벡터 생성부
333 : s 벡터 생성부 334 : 검증 요소 0 생성부
335 : 검증 요소 i 생성부 336 : 검증 요소 L+1 생성부
337 : 검증 요소 생성부 340 : 페어링 연산부

Claims (16)

  1. 키 생성 장치와 서명 장치와 검증 장치를 구비하고, t=0, …, d+1(d는 1 이상의 정수)의 각 정수 t에 대한 기저 Bt와 기저 B* t를 이용하여 서명 처리를 실행하는 서명 처리 시스템으로서,
    상기 키 생성 장치는,
    t=1, …, d의 적어도 하나 이상의 정수 t에 대하여, 식별 정보 t와, 속성 정보 x t:=(xt, i)(i=1, …, nt, nt는 1 이상의 정수)를 포함하는 속성 집합 Γ를 입력하는 제 1 정보 입력부와,
    기저 B* 0의 기저 벡터 b* 0, 1의 계수로서 소정의 값 δ를 설정한 키 요소 k* 0을 생성하는 키 요소 0 생성부와,
    상기 제 1 정보 입력부가 입력한 속성 집합 Γ에 포함되는 각 식별 정보 t에 대하여, 기저 B* t의 기저 벡터 b* t, i(i=1, …, nt)의 계수로서 속성 정보 x t에 상기 소정의 값 δ를 곱한 δxt, i(i=1, …, nt)를 설정한 키 요소 k* t를 생성하는 키 요소 t 생성부와,
    기저 B* d+1의 기저 벡터 b* d+1, 1의 계수로서 상기 소정의 값 δ를 설정한 키 요소 k* d+1, 1과, 기저 B* d+1의 기저 벡터 b* d+1, 2의 계수로서 상기 소정의 값 δ를 설정한 키 요소 k* d+1, 2를 생성하는 키 요소 d+1 생성부와,
    상기 키 요소 0 생성부가 생성한 키 요소 k* 0과, 상기 키 요소 t 생성부가 생성한 상기 속성 집합 Γ에 포함되는 각 식별 정보 t에 대한 키 요소 k* t와, 상기 키 요소 d+1 생성부가 생성한 키 요소 k* d+1, 1 및 키 요소 k* d+1, 2와, 상기 속성 집합 Γ를 포함하는 서명 키 skΓ를 상기 서명 장치에 송신하는 서명 키 송신부
    를 구비하고,
    상기 서명 장치는,
    i=1, …, L(L은 1 이상의 정수)의 각 정수 i에 대한 변수 ρ(i)로서, 식별 정보 t(t=1, …, d의 어느 하나의 정수)와, 속성 정보 v i:=(vi, i’)(i’=1, …, nt)의 긍정형의 조 (t, v i) 또는 부정형의 조 ¬(t, v i)의 어느 하나인 변수 ρ(i)와, L행 r열(r은 1 이상의 정수)의 소정의 행렬 M과, 메시지 m을 입력하는 제 2 정보 입력부와,
    상기 서명 키 송신부가 송신한 서명 키 skΓ를 취득하는 서명 키 취득부와,
    상기 제 2 정보 입력부가 입력한 변수 ρ(i)와, 상기 서명 키 취득부가 취득한 서명 키 skΓ에 포함되는 속성 집합 Γ에 근거하여, i=1, …, L의 각 정수 i 중, 변수 ρ(i)가 긍정형의 조 (t, v i)이고, 또한, 그 조의 v i와, 그 조의 식별 정보 t가 나타내는 속성 집합 Γ에 포함되는 x t의 내적이 0이 되는 i와, 변수 ρ(i)가 부정형의 조 ¬(t, v i)이고, 또한, 그 조의 v i와, 그 조의 식별 정보 t가 나타내는 속성 집합 Γ에 포함되는 x t의 내적이 0이 되지 않는 i의 집합 I를 특정함과 아울러, 특정한 집합 I에 포함되는 i에 대하여, 상기 제 2 정보 입력부가 입력한 행렬 M의 i행째의 요소인 Mi에 근거하여, αiMi를 합계한 경우에 소정의 벡터 h가 되는 보완 계수 αi를 계산하는 보완 계수 계산부와,
    상기 서명 키 skΓ에 포함되는 키 요소 k* 0을 포함하는 서명 요소 s* 0을 생성하는 서명 요소 0 생성부와,
    i=1, …, L의 각 정수 i에 대하여, 상기 보완 계수 계산부가 특정한 집합 I에 포함되는 정수 i이고, 또한, 변수 ρ(i)가 긍정형의 조 (t, v i)인 경우에는 값 γi:=αi로 하고, 상기 집합 I에 포함되는 i이고, 또한, 변수 ρ(i)가 부정형의 조 ¬(t, v i)인 경우에는 값 γi:=αi/(v iㆍx t)로 하고, 상기 집합 I에 포함되지 않는 정수 i의 경우에는 값 γi:=0으로 하여, 상기 서명 키 skΓ에 포함되는 키 요소 k* t에 상기 값 γi를 곱한 γik* t를 포함하는 서명 요소 s* i를 생성하는 서명 요소 i 생성부와,
    상기 서명 키 skΓ에 포함되는 키 요소 k* d+1, 1과, 상기 메시지 m을 이용하여 생성되는 값 m’를 상기 키 요소 k* d+1, 2에 곱한 m’ㆍk* d+1, 2의 합을 포함하는 서명 요소 s* L+1을 생성하는 서명 요소 L+1 생성부와,
    상기 서명 요소 0 생성부가 생성한 서명 요소 s* 0과, 상기 서명 요소 i 생성부가 생성한 i=1, …, L의 각 정수 i에 대한 서명 요소 s* i와, 상기 서명 요소 L+1 생성부가 생성한 서명 요소 s* L+1과, 상기 메시지 m과, 상기 변수 ρ(i)와, 상기 행렬 M을 포함하는 서명 데이터 σ를 상기 검증 장치에 송신하는 서명 데이터 송신부
    를 구비하고,
    상기 검증 장치는,
    상기 서명 데이터 송신부가 송신한 서명 데이터 σ를 취득하는 데이터 취득부와,
    r개의 요소를 갖는 벡터 f와 상기 벡터 h를 이용하여 생성되는 값 s0:=hㆍf→T와, 소정의 값 sL+1로부터 계산되는 -s0-sL+1을, 기저 B0의 기저 벡터 b0, 1의 계수로서 설정하여 검증 요소 c0을 생성하는 검증 요소 0 생성부와,
    상기 벡터 f와 상기 데이터 취득부가 취득한 서명 데이터 σ에 포함되는 행렬 M에 근거하여 생성되는 열벡터 s→T:=(s1, …, sL)T:=Mㆍf→T와, i=1, …, L의 각 정수 i에 대한 소정의 값 θi를 이용하여, i=1, …, L의 각 정수 i에 대하여, 변수 ρ(i)가 긍정형의 조 (t, v i)인 경우에는, 그 조의 식별 정보 t가 나타내는 기저 Bt의 기저 벡터 bt, 1의 계수로서 siivi, 1을 설정하고, 기저 벡터 bt, i’(i’=2, …, nt)의 계수로서 θivi, i’(i’=2, …, nt)를 설정하여 검증 요소 ci를 생성하고, 변수 ρ(i)가 부정형의 조 ¬(t, v i)인 경우에는, 그 조의 식별 정보 t가 나타내는 기저 벡터 bt, i’(i’=1, …, nt)의 계수로서 sivi, i’(i’=1, …, nt)를 설정하여 검증 요소 ci를 생성하는 검증 요소 i 생성부와,
    기저 Bd+1의 기저 벡터 bd+1, 1의 계수로서, 상기 소정의 값 sL+1과 상기 값 m’와 소정의 값 θL+1로부터 계산되는 sL+1L+1m’를 설정하고, 기저 벡터 bd+1, 2의 계수로서 상기 소정의 값 θL+1을 설정하여 검증 요소 cL+1을 생성하는 검증 요소 L+1 생성부와,
    상기 검증 요소 0 생성부가 생성한 검증 요소 c0과, 상기 검증 요소 i 생성부가 생성한 검증 요소 ci와, 상기 검증 요소 L+1 생성부가 생성한 검증 요소 cL+1과, 상기 서명 데이터 σ에 포함되는 서명 요소 s* 0, s* i, s* L+1에 대하여, 페어링 연산 Πi=0 L+1e(ci, s* i)를 행하여, 상기 서명 데이터 σ의 정당성을 검증하는 페어링 연산부
    를 구비하는 것을 특징으로 하는 서명 처리 시스템.
  2. 제 1 항에 있어서,
    상기 서명 처리 시스템은,
    적어도 기저 벡터 bt , i(i=1, …, 1+u0, …, 1+u0+w0, …, 1+u0+w0+z0)를 갖는 기저 B0과,
    적어도 기저 벡터 bt , i(i=1, …, nt, …, nt+ut, …, nt+ut+wt, …, nt+ut+wt+zt)(ut, wt, zt는 1 이상의 정수)를 갖는 기저 Bt(t=1, …, d)와,
    적어도 기저 벡터 bt , i(i=1, 2, …, 2+ud +1, …, 2+ud +1+wd +1, …, 2+ud+1+wd+1+zd+1)를 갖는 기저 Bd +1과,
    적어도 기저 벡터 b* t, i(i=1, …, 1+u0, …, 1+u0+w0, …, 1+u0+w0+z0)를 갖는 기저 B* 0과,
    적어도 기저 벡터 b* t, i(i=1, …, nt, …, nt+ut, …, nt+ut+wt, …, nt+ut+wt+zt)(ut, wt, zt는 1 이상의 정수)를 갖는 기저 B* t(t=1, …, d)와,
    적어도 기저 벡터 b* t, i(i=1, 2, …, 2+ud +1, …, 2+ud +1+wd +1, …, 2+ud+1+wd+1+zd+1)를 갖는 기저 B* d+1
    을 이용하여 서명 처리를 실행하고,
    상기 키 생성 장치에서는,
    상기 키 요소 0 생성부는, 난수 δ와 난수 φ0, i(i=1, …, w0)에 근거하여, 수학식 1에 나타내는 키 요소 k* 0을 생성하고,
    상기 키 요소 t 생성부는, 상기 난수 δ와 난수 φt, i(i=1, …, wt)에 근거하여, 상기 속성 집합 Γ에 포함되는 각 식별 정보 t에 대하여, 수학식 2에 나타내는 키 요소 k* t를 생성하고,
    상기 키 요소 d+1 생성부는, 상기 난수 δ와 난수 φd+1, 1, i(i=1, …, wd +1)와 난수 φd+1, 2, i(i=1, …, wd +1)에 근거하여, 수학식 3에 나타내는 키 요소 k* d+1, 1과 키 요소 k* d+1, 2를 생성하고,
    상기 서명 장치에서는,
    상기 서명 요소 0 생성부는, 난수 ξ에 근거하여, 수학식 4에 나타내는 서명 요소 s* 0을 생성하고,
    상기 서명 요소 i 생성부는, i=1, …, L의 각 정수 i에 대하여, 상기 난수 ξ에 근거하여, 수학식 5에 나타내는 서명 요소 s* i를 생성하고,
    상기 서명 요소 L+1 생성부는, 상기 난수 ξ와 상기 값 m’에 근거하여, 수학식 6에 나타내는 서명 요소 s* L+1을 생성하고,
    상기 검증 장치에서는,
    상기 검증 요소 0 생성부는, 상기 값 s0과 난수 sL +1과 난수 η0, i(i=1, …, z0)에 근거하여, 수학식 7에 나타내는 검증 요소 c0을 생성하고,
    상기 검증 요소 i 생성부는, 상기 열벡터 s→T와 난수 θi와 난수 ηi, i’(i=1, …, L; i’=1, …, zt)에 근거하여, i=1, …, L의 각 정수 i에 대하여, 수학식 8에 나타내는 검증 요소 ci를 생성하고,
    상기 검증 요소 L+1 생성부는, 상기 난수 sL +1과 난수 θL+1과 난수 ηL+1, i’(i’=1, …, zd +1)와 상기 값 m’에 근거하여, 수학식 9에 나타내는 검증 요소 cL +1을 생성하는
    것을 특징으로 하는 서명 처리 시스템.
    [수학식 1]
    Figure 112013076321591-pct00111

    [수학식 2]
    Figure 112013076321591-pct00112

    [수학식 3]
    Figure 112013076321591-pct00113

    [수학식 4]
    Figure 112013076321591-pct00114

    [수학식 5]
    Figure 112013076321591-pct00115

    [수학식 6]
    Figure 112013076321591-pct00116

    [수학식 7]
    Figure 112013076321591-pct00117

    [수학식 8]
    Figure 112013076321591-pct00118

    [수학식 9]
    Figure 112013076321591-pct00119

  3. 제 1 항 또는 제 2 항에 있어서,
    상기 서명 장치에서는, 상기 서명 요소 L+1 생성부는, 상기 메시지 m과, 상기 행렬 M과, i=1, …, L의 각 정수 i에 대한 상기 변수 ρ(i)를 입력으로 한 해시값을 상기 값 m’로서 이용하여, 서명 요소 s* L+1을 생성하고,
    상기 검증 장치에서는, 상기 검증 요소 L+1 생성부는, 상기 해시값을 상기 값 m’로서 이용하여, 검증 요소 cL +1을 생성하는
    것을 특징으로 하는 서명 처리 시스템.
  4. t=0, …, d+1(d는 1 이상의 정수)의 각 정수 t에 대한 기저 Bt와 기저 B* t를 이용하여 서명 처리를 실행하는 서명 처리 시스템에 있어서, 서명 키 skΓ를 생성하는 키 생성 장치로서,
    t=1, …, d의 적어도 하나 이상의 정수 t에 대하여, 식별 정보 t와, 속성 정보 x t:=(xt , i)(i=1, …, nt, nt는 1 이상의 정수)를 포함하는 속성 집합 Γ를 입력하는 제 1 정보 입력부와,
    기저 B* 0의 기저 벡터 b* 0, 1의 계수로서 소정의 값 δ를 설정한 키 요소 k* 0을 생성하는 키 요소 0 생성부와,
    상기 제 1 정보 입력부가 입력한 속성 집합 Γ에 포함되는 각 식별 정보 t에 대하여, 기저 B* t의 기저 벡터 b* t, i(i=1, …, nt)의 계수로서 속성 정보 x t에 상기 소정의 값 δ를 곱한 δxt , i(i=1, …, nt)를 설정한 키 요소 k* t를 생성하는 키 요소 t 생성부와,
    기저 B* d+1의 기저 벡터 b* d+1, 1의 계수로서 상기 소정의 값 δ를 설정한 키 요소 k* d+1, 1과, 기저 B* d+1의 기저 벡터 b* d+1, 2의 계수로서 상기 소정의 값 δ를 설정한 키 요소 k* d+1, 2를 생성하는 키 요소 d+1 생성부와,
    상기 키 요소 0 생성부가 생성한 키 요소 k* 0과, 상기 키 요소 t 생성부가 생성한 상기 속성 집합 Γ에 포함되는 각 식별 정보 t에 대한 키 요소 k* t와, 상기 키 요소 d+1 생성부가 생성한 키 요소 k* d+1, 1 및 키 요소 k* d+1, 2와, 상기 속성 집합 Γ를 포함하는 서명 키 skΓ를 서명 장치에 송신하는 서명 키 송신부
    를 구비하는 것을 특징으로 하는 키 생성 장치.
  5. t=0, …, d+1(d는 1 이상의 정수)의 각 정수 t에 대한 기저 Bt와 기저 B* t를 이용하여 서명 처리를 실행하는 서명 처리 시스템에 있어서, 서명 데이터 σ를 생성하는 서명 장치로서,
    t=1, …, d의 적어도 하나 이상의 정수 t에 대하여, 식별 정보 t와, 속성 정보 x t:=(xt, i)(i=1, …, nt, nt는 1 이상의 정수)를 포함하는 속성 집합 Γ와,
    기저 B* 0의 기저 벡터 b* 0, 1의 계수로서 소정의 값 δ가 설정된 키 요소 k* 0과,
    상기 속성 집합 Γ에 포함되는 각 식별 정보 t에 대하여, 기저 B* t의 기저 벡터 b* t, i(i=1, …, nt)의 계수로서 속성 정보 x t에 상기 소정의 값 δ를 곱한 δxt, i(i=1, …, nt)가 설정된 키 요소 k* t와,
    기저 B* d+1의 기저 벡터 b* d+1, 1의 계수로서 상기 소정의 값 δ가 설정된 키 요소 k* d+1, 1과,
    기저 B* d+1의 기저 벡터 b* d+1, 2의 계수로서 상기 소정의 값 δ가 설정된 키 요소 k* d+1, 2
    를 서명 키 skΓ로서 취득하는 서명 키 취득부와,
    i=1, …, L(L은 1 이상의 정수)의 각 정수 i에 대한 변수 ρ(i)로서, 식별 정보 t(t=1, …, d의 어느 하나의 정수)와, 속성 정보 v i:=(vi, i’)(i’=1, …, nt)의 긍정형의 조 (t, v i) 또는 부정형의 조 ¬(t, v i)의 어느 하나인 변수 ρ(i)와, L행 r열(r은 1 이상의 정수)의 소정의 행렬 M과, 메시지 m을 입력하는 제 2 정보 입력부와,
    상기 제 2 정보 입력부가 입력한 변수 ρ(i)와, 상기 서명 키 취득부가 취득한 서명 키 skΓ에 포함되는 속성 집합 Γ에 근거하여, i=1, …, L의 각 정수 i 중, 변수 ρ(i)가 긍정형의 조 (t, v i)이고, 또한, 그 조의 v i와, 그 조의 식별 정보 t가 나타내는 속성 집합 Γ에 포함되는 x t의 내적이 0이 되는 i와, 변수 ρ(i)가 부정형의 조 ¬(t, v i)이고, 또한, 그 조의 v i와, 그 조의 식별 정보 t가 나타내는 속성 집합 Γ에 포함되는 x t의 내적이 0이 되지 않는 i의 집합 I를 특정함과 아울러, 특정한 집합 I에 포함되는 i에 대하여, 상기 제 2 정보 입력부가 입력한 행렬 M의 i행째의 요소인 Mi에 근거하여, αiMi를 합계한 경우에 소정의 벡터 h가 되는 보완 계수 αi를 계산하는 보완 계수 계산부와,
    상기 서명 키 skΓ에 포함되는 키 요소 k* 0을 포함하는 서명 요소 s* 0을 생성하는 서명 요소 0 생성부와,
    i=1, …, L의 각 정수 i에 대하여, 상기 보완 계수 계산부가 특정한 집합 I에 포함되는 정수 i이고, 또한, 변수 ρ(i)가 긍정형의 조 (t, v i)인 경우에는 값 γi:=αi로 하고, 상기 집합 I에 포함되는 i이고, 또한, 변수 ρ(i)가 부정형의 조 ¬(t, v i)인 경우에는 값 γi:=αi/(v iㆍx t)로 하고, 상기 집합 I에 포함되지 않는 정수 i의 경우에는 값 γi:=0으로 하여, 상기 서명 키 skΓ에 포함되는 키 요소 k* t에 상기 값 γi를 곱한 γik* t를 포함하는 서명 요소 s* i를 생성하는 서명 요소 i 생성부와,
    상기 서명 키 skΓ에 포함되는 키 요소 k* d+1, 1과, 상기 메시지 m을 이용하여 생성되는 값 m’를 상기 키 요소 k* d+1, 2에 곱한 m’ㆍk* d+1, 2의 합을 포함하는 서명 요소 s* L+1을 생성하는 서명 요소 L+1 생성부와,
    상기 서명 요소 0 생성부가 생성한 서명 요소 s* 0과, 상기 서명 요소 i 생성부가 생성한 i=1, …, L의 각 정수 i에 대한 서명 요소 s* i와, 상기 서명 요소 L+1 생성부가 생성한 서명 요소 s* L+1과, 상기 메시지 m과, 상기 변수 ρ(i)와, 상기 행렬 M을 포함하는 서명 데이터 σ를 검증 장치에 송신하는 서명 데이터 송신부
    를 구비하는 것을 특징으로 하는 서명 장치.
  6. t=0, …, d+1(d는 1 이상의 정수)의 각 정수 t에 대한 기저 Bt와 기저 B* t를 이용하여 서명 처리를 실행하는 서명 처리 시스템에 있어서, 서명 데이터 σ를 검증하는 검증 장치로서,
    서명 요소 s* 0과, i=1, …, L의 각 정수 i에 대한 서명 요소 s* i와, 서명 요소 s* L+1과, 메시지 m과, i=1, …, L(L은 1 이상의 정수)의 각 정수 i에 대한 변수 ρ(i)로서, 식별 정보 t(t=1, …, d의 어느 하나의 정수)와, 속성 정보 v i:=(vi, i’)(i’=1, …, nt)의 긍정형의 조 (t, v i) 또는 부정형의 조 ¬(t, v i)의 어느 하나인 변수 ρ(i)와, L행 r열(r은 1 이상의 정수)의 소정의 행렬 M을 포함하는 서명 데이터 σ를 취득하는 데이터 취득부와,
    r개의 요소를 갖는 벡터 f와 r개의 요소를 갖는 벡터 h를 이용하여 생성되는 값 s0:=hㆍf→T와, 소정의 값 sL+1로부터 계산되는 -s0-sL+1을, 기저 B0의 기저 벡터 b0, 1의 계수로서 설정하여 검증 요소 c0을 생성하는 검증 요소 0 생성부와,
    상기 벡터 f와 상기 데이터 취득부가 취득한 서명 데이터 σ에 포함되는 행렬 M에 근거하여 생성되는 열벡터 s→T:=(s1, …, sL)T:=Mㆍf→T와, i=1, …, L의 각 정수 i에 대한 소정의 값 θi를 이용하여, i=1, …, L의 각 정수 i에 대하여, 변수 ρ(i)가 긍정형의 조 (t, v i)인 경우에는, 그 조의 식별 정보 t가 나타내는 기저 Bt의 기저 벡터 bt, 1의 계수로서 siivi, 1을 설정하고, 기저 벡터 bt, i’(i’=2, …, nt)의 계수로서 θivi, i’(i’=2, …, nt)를 설정하여 검증 요소 ci를 생성하고, 변수 ρ(i)가 부정형의 조 ¬(t, v i)인 경우에는, 그 조의 식별 정보 t가 나타내는 기저 벡터 bt, i’(i’=1, …, nt)의 계수로서 sivi, i’(i’=1, …, nt)를 설정하여 검증 요소 ci를 생성하는 검증 요소 i 생성부와,
    기저 Bd+1의 기저 벡터 bd+1, 1의 계수로서, 상기 소정의 값 sL+1과 상기 메시지 m으로부터 계산되는 값 m’와 소정의 값 θL+1로부터 계산되는 sL+1L+1m’를 설정하고, 기저 벡터 bd+1, 2의 계수로서 상기 소정의 값 θL+1을 설정하여 검증 요소 cL+1을 생성하는 검증 요소 L+1 생성부와,
    상기 검증 요소 0 생성부가 생성한 검증 요소 c0과, 상기 검증 요소 i 생성부가 생성한 검증 요소 ci와, 상기 검증 요소 L+1 생성부가 생성한 검증 요소 cL+1과, 상기 서명 데이터 σ에 포함되는 서명 요소 s* 0, s* i, s* L+1에 대하여, 페어링 연산 Πi=0 L+1e(ci, s* i)를 행하여, 상기 서명 데이터 σ의 정당성을 검증하는 페어링 연산부
    를 구비하는 것을 특징으로 하는 검증 장치.
  7. d개(d는 1 이상의 정수)의 키 생성 장치와, 서명 장치와, 검증 장치를 구비하고, t=1, …, d의 적어도 하나 이상의 정수 t에 대한 기저 Bt와 기저 B* t를 이용하여 서명 처리를 실행하는 서명 처리 시스템으로서,
    상기 d개의 키 생성 장치의 각 키 생성 장치는,
    t=1, …, d 중 키 생성 장치마다 미리 정해진 정수 t에 대한 속성 정보 x t:=(xt, i)(i=1, …, nt, nt는 1 이상의 정수)를 입력하는 제 1 정보 입력부와,
    상기 정수 t와, j=1, 2의 각 정수 j에 대하여, 상기 제 1 정보 입력부가 입력한 속성 정보 x t와, 소정의 값 δj와, 기저 B* t의 기저 벡터 b* t, i(i=1, …, 2nt)에 근거하여, 수학식 10에 나타내는 벡터를 포함하는 키 요소 k* t, j를 생성하는 키 요소 생성부와,
    상기 키 요소 생성부가 생성한 키 요소 k* t, j와, 상기 속성 정보 x t를 포함하는 서명 키 usk를 상기 서명 장치에 송신하는 서명 키 송신부
    를 구비하고,
    상기 서명 장치는,
    i=1, …, L(L은 1 이상의 정수)의 각 정수 i에 대한 변수 ρ(i)로서, 식별 정보 t(t=1, …, d의 어느 하나의 정수)와, 속성 정보 v i:=(vi, i’)(i’=1, …, nt)의 긍정형의 조 (t, v i) 또는 부정형의 조 ¬(t, v i)의 어느 하나인 변수 ρ(i)와, L행 r열(r은 1 이상의 정수)의 소정의 행렬 M과, 메시지 m을 입력하는 제 2 정보 입력부와,
    상기 d개의 키 생성 장치 중, 적어도 하나 이상의 키 생성 장치의 서명 키 송신부가 송신한 서명 키 usk를 취득하는 서명 키 취득부와,
    상기 제 2 정보 입력부가 입력한 변수 ρ(i)와, 상기 서명 키 취득부가 취득한 서명 키 usk에 포함되는 속성 정보 x t에 근거하여, i=1, …, L의 각 정수 i 중, 변수 ρ(i)가 긍정형의 조 (t, v i)이고, 또한, 그 조의 식별 정보 t가 나타내는 x t를 포함하는 서명 키 usk를 상기 서명 키 취득부가 취득하고 있고, 또한, 그 조의 v i와, 그 조의 식별 정보 t가 나타내는 속성 정보 x t의 내적이 0이 되는 i와, 변수 ρ(i)가 부정형의 조 ¬(t, v i)이고, 또한, 그 조의 식별 정보 t가 나타내는 x t를 포함하는 서명 키 usk를 상기 서명 키 취득부가 취득하고 있고, 또한, 그 조의 v i와, 그 조의 식별 정보 t가 나타내는 속성 정보 x t의 내적이 0이 되지 않는 i의 집합 I를 특정함과 아울러, 특정한 집합 I에 포함되는 i에 대하여, 상기 제 2 정보 입력부가 입력한 행렬 M의 i행째의 요소인 Mi에 근거하여, αiMi를 합계한 경우에 소정의 벡터 h가 되는 보완 계수 αi를 계산하는 보완 계수 계산부와,
    상기 서명 키 usk에 포함되는 키 요소 k* t, 1 및 키 요소 k* t, 2와, 소정의 값 ξ1, Ε, μ와, 상기 메시지 m으로부터 계산되는 값 m’에 근거하여, i=1, …, L의 각 정수 i에 대하여, 상기 보완 계수 계산부가 특정한 집합 I에 포함되는 정수 i이고, 또한, 변수 ρ(i)가 긍정형의 조 (t, v i)인 경우에는 값 γi:=αi로 하고, 상기 집합 I에 포함되는 i이고, 또한, 변수 ρ(i)가 부정형의 조 ¬(t, v i)인 경우에는 값 γi:=αi/(viㆍxt)로 하고, 상기 집합 I에 포함되지 않는 정수 i의 경우에는 값 γi:=0으로 하여, 기저 B* t의 기저 벡터 b* t, i(i=2nt+1, 2nt+2)를 이용하여, 수학식 11에 나타내는 벡터를 포함하는 서명 요소 s* i를 생성하는 서명 요소 생성부와,
    상기 서명 요소 생성부가 생성한 i=1, …, L의 각 정수 i에 대한 서명 요소 s* i와, 상기 메시지 m과, 상기 변수 ρ(i)와, 상기 행렬 M을 포함하는 서명 데이터 σ를 상기 검증 장치에 송신하는 서명 데이터 송신부
    를 구비하고,
    상기 검증 장치는,
    상기 서명 데이터 송신부가 송신한 서명 데이터 σ를 취득하는 데이터 취득부와,
    r개의 요소를 갖는 벡터 f와, 상기 데이터 취득부가 취득한 서명 데이터 σ에 포함되는 행렬 M에 근거하여 열벡터 s→T:=(s1, …, sL)T:=Mㆍf→T를 생성함과 아울러, s0:=hㆍf→T로 하여, s0=hㆍ(f’)T인 r개의 요소를 갖는 벡터 f’와, 상기 행렬 M에 근거하여 열벡터 (s’)T:=(s1’, …, sL’)T:=Mㆍ(f’)T를 생성하는 벡터 생성부와,
    상기 벡터 생성부가 생성한 열벡터 s→T 및 열벡터 (s’)T와, i=1, …, L의 각 정수 i에 대한 소정의 값 θi, θi’, θi’’, σi에 근거하여, i=1, …, L의 각 정수 i에 대하여, 변수 ρ(i)가 긍정형의 조 (t, v i)인 경우에는, 그 조의 식별 정보 t가 나타내는 기저 Bt의 기저 벡터 bt, i’(i’=1, …, 2nt+2)를 이용하여, 수학식 12에 나타내는 벡터를 포함하는 검증 요소 ci를 생성하고, 변수 ρ(i)가 부정형의 조 ¬(t, v i)인 경우에는, 그 조의 식별 정보 t가 나타내는 기저 벡터 bt, i(i=1, …, 2nt+2)를 이용하여, 수학식 13에 나타내는 벡터를 포함하는 검증 요소 ci를 생성하는 검증 요소 생성부와,
    상기 검증 요소 생성부가 생성한 검증 요소 ci와, 상기 서명 데이터 σ에 포함되는 서명 요소 s* i에 대하여, 페어링 연산 Πi=1 Le(ci, s* i)를 행하여, 상기 서명 데이터 σ의 정당성을 검증하는 페어링 연산부
    를 구비하는 것을 특징으로 하는 서명 처리 시스템.
    [수학식 10]
    Figure 112013076519275-pct00120

    [수학식 11]
    Figure 112013076519275-pct00121

    [수학식 12]
    Figure 112013076519275-pct00122

    [수학식 13]
    Figure 112013076519275-pct00123

  8. 제 7 항에 있어서,
    상기 서명 처리 시스템은, t=1, …, d의 적어도 하나 이상의 정수 t에 대하여, 적어도 기저 벡터 bt , i(i=1, …, 2nt+2, …, 2nt+2+ut, …, 2nt+2+ut+wt, …, 2nt+2+ut+wt+zt)(ut, wt, zt는 1 이상의 정수)를 갖는 기저 Bt와, 적어도 기저 벡터 b* t, i(i=1, …, 2nt+2, …, 2nt+2+ut, …, 2nt+2+ut+wt, …, 2nt+2+ut+wt+zt)를 갖는 기저 B* t를 이용하여 서명 처리를 실행하고,
    상기 키 생성 장치에서는, 상기 속성 정보 x t와 상기 소정의 값 δj, Δ와 난수 φt, j, i(j=1, 2; i=1, …, wt)에 근거하여, 상기 정수 t와, j=1, 2의 각 정수 j에 대하여, 수학식 14에 나타내는 키 요소 k* t, j를 생성하고,
    상기 서명 장치에서는, 상기 서명 요소 생성부는, 상기 키 요소 k* t, 1 및 상기 키 요소 k* t, 2와 난수 ξ1, ξ2와 소정의 값 Ε, π, π’, μ와 상기 값 m’에 근거하여, i=1, …, L의 각 정수 i에 대하여, 수학식 15에 나타내는 r* i, γi, y i:=(yi, i)(i=1, …, nt), y’ i:=(y’i, i)(i=1, …, nt)를 이용하여, 수학식 16에 나타내는 서명 요소 s* i를 생성하고,
    상기 검증 장치에서는, 상기 검증 요소 생성부는, 상기 열벡터 s→T 및 상기 열벡터 (s’)T와 난수 θi, θi’, θi’’와 상기 소정의 값 σi와 난수 ηi, i’(i=1, …, L; i’=1, …, zt)에 근거하여, i=1, …, L의 각 정수 i에 대하여, 변수 ρ(i)가 긍정형의 조 (t, v i)인 경우에는, 수학식 17에 나타내는 검증 요소 ci를 생성하고, 변수 ρ(i)가 부정형의 조 ¬(t, v i)인 경우에는, 수학식 18에 나타내는 검증 요소 ci를 생성하는
    것을 특징으로 하는 서명 처리 시스템.
    [수학식 14]
    Figure 112013076321591-pct00124

    [수학식 15]
    Figure 112013076321591-pct00125

    [수학식 16]
    Figure 112013076321591-pct00126

    [수학식 17]
    Figure 112013076321591-pct00127

    [수학식 18]
    Figure 112013076321591-pct00128

  9. 제 7 항 또는 제 8 항에 있어서,
    상기 서명 장치에서는, 상기 서명 요소 생성부는, 상기 메시지 m과, 상기 행렬 M과, i=1, …, L의 각 정수 i에 대한 상기 변수 ρ(i)를 입력으로 한 해시값을 상기 값 m’로서 이용하여, 서명 요소 s* i를 생성하고,
    상기 검증 장치에서는, 상기 검증 요소 생성부는, 상기 해시값을 상기 값 m’로서 이용하여, 검증 요소 ci를 생성하는
    것을 특징으로 하는 서명 처리 시스템.
  10. t=1, …, d의 적어도 하나 이상의 정수 t에 대한 기저 Bt와 기저 B* t를 이용하여 서명 처리를 실행하는 서명 처리 시스템에 있어서, 서명 키 usk를 생성하는 키 생성 장치로서,
    t=1, …, d 중 소정의 정수 t에 대하여, 속성 정보 x t:=(xt, i)(i=1, …, nt)를 입력하는 제 1 정보 입력부와,
    상기 정수 t와, j=1, 2의 각 정수 j에 대하여, 상기 제 1 정보 입력부가 입력한 속성 정보 x t와, 소정의 값 δj와, 기저 B* t의 기저 벡터 b* t, i(i=1, …, 2nt)에 근거하여, 수학식 19에 나타내는 벡터를 포함하는 키 요소 k* t, j를 생성하는 키 요소 생성부와,
    상기 키 요소 생성부가 생성한 키 요소 k* t, j와, 상기 속성 정보 x t를 포함하는 서명 키 usk를 서명 장치에 송신하는 서명 키 송신부
    를 구비하는 것을 특징으로 하는 키 생성 장치.
    [수학식 19]
    Figure 112013076519275-pct00129

  11. t=1, …, d의 적어도 하나 이상의 정수 t에 대한 기저 Bt와 기저 B* t를 이용하여 서명 처리를 실행하는 서명 처리 시스템에 있어서, 서명 데이터 σ를 생성하는 서명 장치로서,
    t=1, …, d 중 적어도 일부의 정수 t와, j=1, 2의 각 정수 j에 대하여, 속성 정보 x t:=(xt, i)(i=1, …, nt)와, 소정의 값 δj와, 기저 B* t의 기저 벡터 b* t, i(i=1, …, 2nt)에 근거하여, 수학식 20에 나타내는 벡터를 포함하도록 생성된 키 요소 k* t, j와, 상기 속성 정보 x t를 포함하는 서명 키 usk를 취득하는 서명 키 취득부와,
    i=1, …, L(L은 1 이상의 정수)의 각 정수 i에 대한 변수 ρ(i)로서, 식별 정보 t(t=1, …, d의 어느 하나의 정수)와, 속성 정보 v i:=(vi, i’)(i’=1, …, nt)의 긍정형의 조 (t, v i) 또는 부정형의 조 ¬(t, v i)의 어느 하나인 변수 ρ(i)와, L행 r열(r은 1 이상의 정수)의 소정의 행렬 M과, 메시지 m을 입력하는 제 2 정보 입력부와,
    상기 제 2 정보 입력부가 입력한 변수 ρ(i)와, 상기 서명 키 취득부가 취득한 서명 키 usk에 포함되는 속성 정보 x t에 근거하여, i=1, …, L의 각 정수 i 중, 변수 ρ(i)가 긍정형의 조 (t, v i)이고, 또한, 그 조의 식별 정보 t가 나타내는 x t를 포함하는 서명 키 usk를 상기 서명 키 취득부가 취득하고 있고, 또한, 그 조의 v i와, 그 조의 식별 정보 t가 나타내는 속성 정보 x t의 내적이 0이 되는 i와, 변수 ρ(i)가 부정형의 조 ¬(t, v i)이고, 또한, 그 조의 식별 정보 t가 나타내는 x t를 포함하는 서명 키 usk를 상기 서명 키 취득부가 취득하고 있고, 또한, 그 조의 v i와, 그 조의 식별 정보 t가 나타내는 속성 정보 x t의 내적이 0이 되지 않지만 같지 않은 i의 집합 I를 특정함과 아울러, 특정한 집합 I에 포함되는 i에 대하여, 상기 제 2 정보 입력부가 입력한 행렬 M의 i행째의 요소인 Mi에 근거하여, αiMi를 합계한 경우에 소정의 벡터 h가 되는 보완 계수 αi를 계산하는 보완 계수 계산부와,
    상기 서명 키 usk에 포함되는 키 요소 k* t, 1 및 키 요소 k* t, 2와, 소정의 값 ξ1, Ε, μ와, 상기 메시지 m으로부터 계산되는 값 m’에 근거하여, i=1, …, L의 각 정수 i에 대하여, 상기 보완 계수 계산부가 특정한 집합 I에 포함되는 정수 i이고, 또한, 변수 ρ(i)가 긍정형의 조 (t, v i)인 경우에는 값 γi:=αi로 하고, 상기 집합 I에 포함되는 i이고, 또한, 변수 ρ(i)가 부정형의 조 ¬(t, v i)인 경우에는 값 γi:=αi/(v iㆍx t)로 하고, 상기 집합 I에 포함되지 않는 정수 i의 경우에는 값 γi:=0으로 하여, 기저 B* t의 기저 벡터 b* t, i(i=2nt+1, 2nt+2)를 이용하여, 수학식 21에 나타내는 벡터를 포함하는 서명 요소 s* i를 생성하는 서명 요소 생성부와,
    상기 서명 요소 생성부가 생성한 i=1, …, L의 각 정수 i에 대한 서명 요소 s* i와, 상기 메시지 m과, 상기 변수 ρ(i)와, 상기 행렬 M을 포함하는 서명 데이터 σ를 검증 장치에 송신하는 서명 데이터 송신부
    를 구비하는 것을 특징으로 하는 서명 장치.
    [수학식 20]
    Figure 112013076519275-pct00130

    [수학식 21]
    Figure 112013076519275-pct00131

  12. t=1, …, d의 적어도 하나 이상의 정수 t에 대한 기저 Bt와 기저 B* t를 이용하여 서명 처리를 실행하는 서명 처리 시스템에 있어서, 서명 데이터 σ를 검증하는 검증 장치로서,
    i=1, …, L의 각 정수 i에 대한 서명 요소 s* i와, 메시지 m과, i=1, …, L(L은 1 이상의 정수)의 각 정수 i에 대한 변수 ρ(i)로서, 식별 정보 t(t=1, …, d의 어느 하나의 정수)와, 속성 정보 v i:=(vi, i’)(i’=1, …, nt)의 긍정형의 조 (t, v i) 또는 부정형의 조 ¬(t, v i)의 어느 하나인 변수 ρ(i)와, L행 r열(r은 1 이상의 정수)의 소정의 행렬 M을 포함하는 서명 데이터 σ를 취득하는 데이터 취득부와,
    r개의 요소를 갖는 벡터 f와, 상기 데이터 취득부가 취득한 서명 데이터 σ에 포함되는 행렬 M에 근거하여 열벡터 s→T:=(s1, …, sL)T:=Mㆍf→T를 생성함과 아울러, s0:=hㆍf→T로 하여, s0=hㆍ(f’)T인 r개의 요소를 갖는 벡터 f’와, 상기 행렬 M에 근거하여 열벡터 (s’)T:=(s1’, …, sL’)T:=Mㆍ(f’)T를 생성하는 벡터 생성부와,
    상기 벡터 생성부가 생성한 열벡터 s→T 및 열벡터 (s’)T와, i=1, …, L의 각 정수 i에 대한 소정의 값 θi, θi’, θi’’, σi에 근거하여, i=1, …, L의 각 정수 i에 대하여, 변수 ρ(i)가 긍정형의 조 (t, v i)인 경우에는, 그 조의 식별 정보 t가 나타내는 기저 Bt의 기저 벡터 bt, i’(i’=1, …, 2nt+2)를 이용하여, 수학식 22에 나타내는 벡터를 포함하는 검증 요소 ci를 생성하고, 변수 ρ(i)가 부정형의 조 ¬(t, v i)인 경우에는, 그 조의 식별 정보 t가 나타내는 기저 벡터 bt, i(i=1, …, 2nt+2)를 이용하여, 수학식 23에 나타내는 벡터를 포함하는 검증 요소 ci를 생성하는 검증 요소 생성부와,
    상기 검증 요소 생성부가 생성한 검증 요소 ci와, 상기 서명 데이터 σ에 포함되는 서명 요소 s* i에 대하여, 페어링 연산 Πi=1 Le(ci, s* i)를 행하여, 상기 서명 데이터 σ의 정당성을 검증하는 페어링 연산부
    를 구비하는 것을 특징으로 하는 검증 장치.
    [수학식 22]
    Figure 112013076519275-pct00132

    [수학식 23]
    Figure 112013076519275-pct00133

  13. t=0, …, d+1(d는 1 이상의 정수)의 각 정수 t에 대한 기저 Bt와 기저 B* t를 이용하여 서명 처리를 실행하는 서명 처리 방법으로서,
    키 생성 장치가, t=1, …, d의 적어도 하나 이상의 정수 t에 대하여, 식별 정보 t와, 속성 정보 x t:=(xt, i)(i=1, …, nt, nt는 1 이상의 정수)를 포함하는 속성 집합 Γ를 입력하는 제 1 정보 입력 공정과,
    상기 키 생성 장치가, 기저 B* 0의 기저 벡터 b* 0, 1의 계수로서 소정의 값 δ를 설정한 키 요소 k* 0을 생성하는 키 요소 0 생성 공정과,
    상기 키 생성 장치가, 상기 제 1 정보 입력 공정에서 입력된 속성 집합 Γ에 포함되는 각 식별 정보 t에 대하여, 기저 B* t의 기저 벡터 b* t, i(i=1, …, nt)의 계수로서 속성 정보 x t에 상기 소정의 값 δ를 곱한 δxt, i(i=1, …, nt)를 설정한 키 요소 k* t를 생성하는 키 요소 t 생성 공정과,
    상기 키 생성 장치가, 기저 B* d+1의 기저 벡터 b* d+1, 1의 계수로서 상기 소정의 값 δ를 설정한 키 요소 k* d+1, 1과, 기저 B* d+1의 기저 벡터 b* d+1, 2의 계수로서 상기 소정의 값 δ를 설정한 키 요소 k* d+1, 2를 생성하는 키 요소 d+1 생성 공정과,
    상기 키 생성 장치가, 상기 키 요소 0 생성 공정에서 생성된 키 요소 k* 0과, 상기 키 요소 t 생성 공정에서 생성된 상기 속성 집합 Γ에 포함되는 각 식별 정보 t에 대한 키 요소 k* t와, 상기 키 요소 d+1 생성 공정에서 생성된 키 요소 k* d+1, 1 및 키 요소 k* d+1, 2와, 상기 속성 집합 Γ를 포함하는 서명 키 skΓ를 서명 장치에 송신하는 서명 키 송신 공정과,
    상기 서명 장치가, i=1, …, L(L은 1 이상의 정수)의 각 정수 i에 대한 변수 ρ(i)로서, 식별 정보 t(t=1, …, d의 어느 하나의 정수)와, 속성 정보 v i:=(vi, i’)(i’=1, …, nt)의 긍정형의 조 (t, v i) 또는 부정형의 조 ¬(t, v i)의 어느 하나인 변수 ρ(i)와, L행 r열(r은 1 이상의 정수)의 소정의 행렬 M과, 메시지 m을 입력하는 제 2 정보 입력 공정과,
    상기 서명 장치가, 상기 서명 키 송신 공정에서 송신된 서명 키 skΓ를 취득하는 서명 키 취득 공정과,
    상기 서명 장치가, 상기 제 2 정보 입력 공정에서 입력된 변수 ρ(i)와, 상기 서명 키 취득 공정에서 취득된 서명 키 skΓ에 포함되는 속성 집합 Γ에 근거하여, i=1, …, L의 각 정수 i 중, 변수 ρ(i)가 긍정형의 조 (t, v i)이고, 또한, 그 조의 v i와, 그 조의 식별 정보 t가 나타내는 속성 집합 Γ에 포함되는 x t의 내적이 0이 되는 i와, 변수 ρ(i)가 부정형의 조 ¬(t, v i)이고, 또한, 그 조의 v i와, 그 조의 식별 정보 t가 나타내는 속성 집합 Γ에 포함되는 x t의 내적이 0이 되지 않는 i의 집합 I를 특정함과 아울러, 특정된 집합 I에 포함되는 i에 대하여, 상기 제 2 정보 입력 공정에서 입력된 행렬 M의 i행째의 요소인 Mi에 근거하여, αiMi를 합계한 경우에 소정의 벡터 h가 되는 보완 계수 αi를 계산하는 보완 계수 계산 공정과,
    상기 서명 장치가, 상기 서명 키 skΓ에 포함되는 키 요소 k* 0을 포함하는 서명 요소 s* 0을 생성하는 서명 요소 0 생성 공정과,
    상기 서명 장치가, i=1, …, L의 각 정수 i에 대하여, 상기 보완 계수 계산 공정에서 특정된 집합 I에 포함되는 정수 i이고, 또한, 변수 ρ(i)가 긍정형의 조 (t, v i)인 경우에는 값 γi:=αi로 하고, 상기 집합 I에 포함되는 i이고, 또한, 변수 ρ(i)가 부정형의 조 ¬(t, v i)인 경우에는 값 γi:=αi/(v iㆍx t)로 하고, 상기 집합 I에 포함되지 않는 정수 i의 경우에는 값 γi:=0으로 하여, 상기 서명 키 skΓ에 포함되는 키 요소 k* t에 상기 값 γi를 곱한 γik* t를 포함하는 서명 요소 s* i를 생성하는 서명 요소 i 생성 공정과,
    상기 서명 장치가, 상기 서명 키 skΓ에 포함되는 키 요소 k* d+1, 1과, 상기 메시지 m을 이용하여 생성되는 값 m’를 상기 키 요소 k* d+1, 2에 곱한 m’ㆍk* d+1, 2의 합을 포함하는 서명 요소 s* L+1을 생성하는 서명 요소 L+1 생성 공정과,
    상기 서명 장치가, 상기 서명 요소 0 생성 공정에서 생성된 서명 요소 s* 0과, 상기 서명 요소 i 생성 공정에서 생성된 i=1, …, L의 각 정수 i에 대한 서명 요소 s* i와, 상기 서명 요소 L+1 생성 공정에서 생성된 서명 요소 s* L+1과, 상기 메시지 m과, 상기 변수 ρ(i)와, 상기 행렬 M을 포함하는 서명 데이터 σ를 검증 장치에 송신하는 서명 데이터 송신 공정과,
    상기 검증 장치가, 상기 서명 데이터 송신 공정에서 송신된 서명 데이터 σ를 취득하는 데이터 취득 공정과,
    상기 검증 장치가, r개의 요소를 갖는 벡터 f와 상기 벡터 h를 이용하여 생성되는 값 s0:=hㆍf→T와, 소정의 값 sL+1로부터 계산되는 -s0-sL+1을, 기저 B0의 기저 벡터 b0, 1의 계수로서 설정하여 검증 요소 c0을 생성하는 검증 요소 0 생성 공정과,
    상기 검증 장치가, 상기 벡터 f와 상기 데이터 취득 공정에서 취득된 서명 데이터 σ에 포함되는 행렬 M에 근거하여 생성되는 열벡터 s→T:=(s1, …, sL)T:=Mㆍf→T와, i=1, …, L의 각 정수 i에 대한 소정의 값 θi를 이용하여, i=1, …, L의 각 정수 i에 대하여, 변수 ρ(i)가 긍정형의 조 (t, v i)인 경우에는, 그 조의 식별 정보 t가 나타내는 기저 Bt의 기저 벡터 bt, 1의 계수로서 siivi, 1을 설정하고, 기저 벡터 bt, i’(i’=2, …, nt)의 계수로서 θivi, i’(i’=2, …, nt)를 설정하여 검증 요소 ci를 생성하고, 변수 ρ(i)가 부정형의 조 ¬(t, v i)인 경우에는, 그 조의 식별 정보 t가 나타내는 기저 벡터 bt, i’(i’=1, …, nt)의 계수로서 sivi, i’(i’=1, …, nt)를 설정하여 검증 요소 ci를 생성하는 검증 요소 i 생성 공정과,
    상기 검증 장치가, 기저 Bd+1의 기저 벡터 bd+1, 1의 계수로서, 상기 소정의 값 sL+1과 상기 값 m’와 소정의 값 θL+1로부터 계산되는 sL+1L+1m’를 설정하고, 기저 벡터 bd+1, 2의 계수로서 상기 소정의 값 θL+1을 설정하여 검증 요소 cL+1을 생성하는 검증 요소 L+1 생성 공정과,
    상기 검증 장치가, 상기 검증 요소 0 생성 공정에서 생성된 검증 요소 c0과, 상기 검증 요소 i 생성 공정에서 생성된 검증 요소 ci와, 상기 검증 요소 L+1 생성 공정에서 생성된 검증 요소 cL+1과, 상기 서명 데이터 σ에 포함되는 서명 요소 s* 0, s* i, s* L+1에 대하여, 페어링 연산 Πi=0 L+1e(ci, s* i)를 행하여, 상기 서명 데이터 σ의 정당성을 검증하는 페어링 연산 공정
    을 구비하는 것을 특징으로 하는 서명 처리 방법.
  14. 키 생성 장치에서 동작시키는 키 생성 프로그램과 서명 장치에서 동작시키는 서명 프로그램과 검증 장치에서 동작시키는 검증 프로그램을 구비하고, t=0, …, d+1(d는 1 이상의 정수)의 각 정수 t에 대한 기저 Bt와 기저 B* t를 이용하여 서명 처리를 실행하는 서명 처리 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체로서,
    상기 키 생성 프로그램은,
    t=1, …, d의 적어도 하나 이상의 정수 t에 대하여, 식별 정보 t와, 속성 정보 x t:=(xt, i)(i=1, …, nt, nt는 1 이상의 정수)를 포함하는 속성 집합 Γ를 입력하는 제 1 정보 입력 처리와,
    기저 B* 0의 기저 벡터 b* 0, 1의 계수로서 소정의 값 δ를 설정한 키 요소 k* 0을 생성하는 키 요소 0 생성 처리와,
    상기 제 1 정보 입력 처리에서 입력된 속성 집합 Γ에 포함되는 각 식별 정보 t에 대하여, 기저 B* t의 기저 벡터 b* t, i(i=1, …, nt)의 계수로서 속성 정보 x t에 상기 소정의 값 δ를 곱한 δxt, i(i=1, …, nt)를 설정한 키 요소 k* t를 생성하는 키 요소 t 생성 처리와,
    기저 B* d+1의 기저 벡터 b* d+1, 1의 계수로서 상기 소정의 값 δ를 설정한 키 요소 k* d+1, 1과, 기저 B* d+1의 기저 벡터 b* d+1, 2의 계수로서 상기 소정의 값 δ를 설정한 키 요소 k* d+1, 2를 생성하는 키 요소 d+1 생성 처리와,
    상기 키 요소 0 생성 처리에서 생성된 키 요소 k* 0과, 상기 키 요소 t 생성 처리에서 생성된 상기 속성 집합 Γ에 포함되는 각 식별 정보 t에 대한 키 요소 k* t와, 상기 키 요소 d+1 생성 처리에서 생성된 키 요소 k* d+1, 1 및 키 요소 k* d+1, 2와, 상기 속성 집합 Γ를 포함하는 서명 키 skΓ를 상기 서명 장치에 송신하는 서명 키 송신 처리
    를 컴퓨터에 실행시키고,
    상기 서명 프로그램은,
    i=1, …, L(L은 1 이상의 정수)의 각 정수 i에 대한 변수 ρ(i)로서, 식별 정보 t(t=1, …, d의 어느 하나의 정수)와, 속성 정보 v i:=(vi, i’)(i’=1, …, nt)의 긍정형의 조 (t, v i) 또는 부정형의 조 ¬(t, v i)의 어느 하나인 변수 ρ(i)와, L행 r열(r은 1 이상의 정수)의 소정의 행렬 M과, 메시지 m을 입력하는 제 2 정보 입력 처리와,
    상기 서명 키 송신 처리에서 송신된 서명 키 skΓ를 취득하는 서명 키 취득 처리와,
    상기 제 2 정보 입력 처리에서 입력된 변수 ρ(i)와, 상기 서명 키 취득 처리에서 취득된 서명 키 skΓ에 포함되는 속성 집합 Γ에 근거하여, i=1, …, L의 각 정수 i 중, 변수 ρ(i)가 긍정형의 조 (t, v i)이고, 또한, 그 조의 v i와, 그 조의 식별 정보 t가 나타내는 속성 집합 Γ에 포함되는 x t의 내적이 0이 되는 i와, 변수 ρ(i)가 부정형의 조 ¬(t, v i)이고, 또한, 그 조의 v i와, 그 조의 식별 정보 t가 나타내는 속성 집합 Γ에 포함되는 x t의 내적이 0이 되지 않는 i의 집합 I를 특정함과 아울러, 특정된 집합 I에 포함되는 i에 대하여, 상기 제 2 정보 입력 처리에서 입력된 행렬 M의 i행째의 요소인 Mi에 근거하여, αiMi를 합계한 경우에 소정의 벡터 h가 되는 보완 계수 αi를 계산하는 보완 계수 계산 처리와,
    상기 서명 키 skΓ에 포함되는 키 요소 k* 0을 포함하는 서명 요소 s* 0을 생성하는 서명 요소 0 생성 처리와,
    i=1, …, L의 각 정수 i에 대하여, 상기 보완 계수 계산 처리에서 특정된 집합 I에 포함되는 정수 i이고, 또한, 변수 ρ(i)가 긍정형의 조 (t, v i)인 경우에는 값 γi:=αi로 하고, 상기 집합 I에 포함되는 i이고, 또한, 변수 ρ(i)가 부정형의 조 ¬(t, v i)인 경우에는 값 γi:=αi/(v iㆍx t)로 하고, 상기 집합 I에 포함되지 않는 정수 i의 경우에는 값 γi:=0으로 하여, 상기 서명 키 skΓ에 포함되는 키 요소 k* t에 상기 값 γi를 곱한 γik* t를 포함하는 서명 요소 s* i를 생성하는 서명 요소 i 생성 처리와,
    상기 서명 키 skΓ에 포함되는 키 요소 k* d+1, 1과, 상기 메시지 m을 이용하여 생성되는 값 m’를 상기 키 요소 k* d+1, 2에 곱한 m’ㆍk* d+1, 2의 합을 포함하는 서명 요소 s* L+1을 생성하는 서명 요소 L+1 생성 처리와,
    상기 서명 요소 0 생성 처리에서 생성된 서명 요소 s* 0과, 상기 서명 요소 i 생성 처리에서 생성된 i=1, …, L의 각 정수 i에 대한 서명 요소 s* i와, 상기 서명 요소 L+1 생성 처리에서 생성된 서명 요소 s* L+1과, 상기 메시지 m과, 상기 변수 ρ(i)와, 상기 행렬 M을 포함하는 서명 데이터 σ를 상기 검증 장치에 송신하는 서명 데이터 송신 처리
    를 컴퓨터에 실행시키고,
    상기 검증 프로그램은,
    상기 서명 데이터 송신 처리에서 송신된 서명 데이터 σ를 취득하는 데이터 취득 처리와,
    r개의 요소를 갖는 벡터 f와 상기 벡터 h를 이용하여 생성되는 값 s0:=hㆍf→T와, 소정의 값 sL+1로부터 계산되는 -s0-sL+1을, 기저 B0의 기저 벡터 b0, 1의 계수로서 설정하여 검증 요소 c0을 생성하는 검증 요소 0 생성 처리와,
    상기 벡터 f와 상기 데이터 취득 처리에서 취득된 서명 데이터 σ에 포함되는 행렬 M에 근거하여 생성되는 열벡터 s→T:=(s1, …, sL)T:=Mㆍf→T와, i=1, …, L의 각 정수 i에 대한 소정의 값 θi를 이용하여, i=1, …, L의 각 정수 i에 대하여, 변수 ρ(i)가 긍정형의 조 (t, v i)인 경우에는, 그 조의 식별 정보 t가 나타내는 기저 Bt의 기저 벡터 bt, 1의 계수로서 siivi, 1을 설정하고, 기저 벡터 bt, i’(i’=2, …, nt)의 계수로서 θivi, i’(i’=2, …, nt)를 설정하여 검증 요소 ci를 생성하고, 변수 ρ(i)가 부정형의 조 ¬(t, v i)인 경우에는, 그 조의 식별 정보 t가 나타내는 기저 벡터 bt, i’(i’=1, …, nt)의 계수로서 sivi, i’(i’=1, …, nt)를 설정하여 검증 요소 ci를 생성하는 검증 요소 i 생성 처리와,
    기저 Bd+1의 기저 벡터 bd+1, 1의 계수로서, 상기 소정의 값 sL+1과 상기 값 m’와 소정의 값 θL+1로부터 계산되는 sL+1L+1m’를 설정하고, 기저 벡터 bd+1, 2의 계수로서 상기 소정의 값 θL+1을 설정하여 검증 요소 cL+1을 생성하는 검증 요소 L+1 생성 처리와,
    상기 검증 요소 0 생성 처리에서 생성된 검증 요소 c0과, 상기 검증 요소 i 생성 처리에서 생성된 검증 요소 ci와, 상기 검증 요소 L+1 생성 처리에서 생성된 검증 요소 cL+1과, 상기 서명 데이터 σ에 포함되는 서명 요소 s* 0, s* i, s* L+1에 대하여, 페어링 연산 Πi=0 L+1e(ci, s* i)를 행하여, 상기 서명 데이터 σ의 정당성을 검증하는 페어링 연산 처리
    를 컴퓨터에 실행시키는
    것을 특징으로 하는 서명 처리 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
  15. t=1, …, d(d는 1 이상의 정수)의 적어도 하나 이상의 정수 t에 대한 기저 Bt와 기저 B* t를 이용하여 서명 처리를 실행하는 서명 처리 방법으로서,
    d개의 키 생성 장치의 적어도 하나 이상의 키 생성 장치가, t=1, …, d 중 키 생성 장치마다 미리 정해진 정수 t에 대한 속성 정보 x t:=(xt, i)(i=1, …, nt)를 입력하는 제 1 정보 입력 공정과,
    상기 적어도 하나 이상의 키 생성 장치가, 상기 정수 t와, j=1, 2의 각 정수 j에 대하여, 상기 제 1 정보 입력 공정에서 입력된 속성 정보 x t와, 소정의 값 δj와, 기저 B* t의 기저 벡터 b* t, i(i=1, …, 2nt)에 근거하여, 수학식 24에 나타내는 벡터를 포함하는 키 요소 k* t, j를 생성하는 키 요소 생성 공정과,
    상기 적어도 하나 이상의 키 생성 장치가, 상기 키 요소 생성 공정에서 생성된 키 요소 k* t, j와, 상기 속성 정보 x t를 포함하는 서명 키 usk를 서명 장치에 송신하는 서명 키 송신 공정과,
    상기 서명 장치가, i=1, …, L(L은 1 이상의 정수)의 각 정수 i에 대한 변수 ρ(i)로서, 식별 정보 t(t=1, …, d의 어느 하나의 정수)와, 속성 정보 v i:=(vi, i’)(i’=1, …, nt)의 긍정형의 조 (t, v i) 또는 부정형의 조 ¬(t, v i)의 어느 하나인 변수 ρ(i)와, L행 r열(r은 1 이상의 정수)의 소정의 행렬 M과, 메시지 m을 입력하는 제 2 정보 입력 공정과,
    상기 서명 장치가, 상기 d개의 키 생성 장치 중, 적어도 하나 이상의 키 생성 장치의 서명 키 송신 공정에서 송신된 서명 키 usk를 취득하는 서명 키 취득 공정과,
    상기 서명 장치가, 상기 제 2 정보 입력 공정에서 입력된 변수 ρ(i)와, 상기 서명 키 취득 공정에서 취득된 서명 키 usk에 포함되는 속성 정보 x t에 근거하여, i=1, …, L의 각 정수 i 중, 변수 ρ(i)가 긍정형의 조 (t, v i)이고, 또한, 그 조의 식별 정보 t가 나타내는 x t를 포함하는 서명 키 usk를 상기 서명 키 취득 공정에서 취득하고 있고, 또한, 그 조의 v i와, 그 조의 식별 정보 t가 나타내는 속성 정보 x t의 내적이 0이 되는 i와, 변수 ρ(i)가 부정형의 조 ¬(t, v i)이고, 또한, 그 조의 식별 정보 t가 나타내는 x t를 포함하는 서명 키 usk를 상기 서명 키 취득 공정에서 취득하고 있고, 또한, 그 조의 v i와, 그 조의 식별 정보 t가 나타내는 속성 정보 x t의 내적이 0이 되지 않는 i의 집합 I를 특정함과 아울러, 특정된 집합 I에 포함되는 i에 대하여, 상기 제 2 정보 입력 공정에서 입력된 행렬 M의 i행째의 요소인 Mi에 근거하여, αiMi를 합계한 경우에 소정의 벡터 h가 되는 보완 계수 αi를 계산하는 보완 계수 계산 공정과,
    상기 서명 장치가, 상기 서명 키 usk에 포함되는 키 요소 k* t, 1 및 키 요소 k* t, 2와, 소정의 값 ξ1, Ε, μ와, 상기 메시지 m으로부터 계산되는 값 m’에 근거하여, i=1, …, L의 각 정수 i에 대하여, 상기 보완 계수 계산 공정에서 특정된 집합 I에 포함되는 정수 i이고, 또한, 변수 ρ(i)가 긍정형의 조 (t, v i)인 경우에는 값 γi:=αi로 하고, 상기 집합 I에 포함되는 i이고, 또한, 변수 ρ(i)가 부정형의 조 ¬(t, v i)인 경우에는 값 γi:=αi/(v iㆍx t)로 하고, 상기 집합 I에 포함되지 않는 정수 i의 경우에는 값 γi:=0으로 하여, 기저 B* t의 기저 벡터 b* t, i(i=2nt+1, 2nt+2)를 이용하여, 수학식 25에 나타내는 벡터를 포함하는 서명 요소 s* i를 생성하는 서명 요소 생성 공정과,
    상기 서명 장치가, 상기 서명 요소 생성 공정에서 생성된 i=1, …, L의 각 정수 i에 대한 서명 요소 s* i와, 상기 메시지 m과, 상기 변수 ρ(i)와, 상기 행렬 M을 포함하는 서명 데이터 σ를 검증 장치에 송신하는 서명 데이터 송신 공정과,
    상기 검증 장치가, 상기 서명 데이터 송신 공정에서 송신된 서명 데이터 σ를 취득하는 데이터 취득 공정과,
    상기 검증 장치가, r개의 요소를 갖는 벡터 f와, 상기 데이터 취득 공정에서 취득된 서명 데이터 σ에 포함되는 행렬 M에 근거하여 열벡터 s→T:=(s1, …, sL)T:=Mㆍf→T를 생성함과 아울러, s0:=hㆍf→T로 하여, s0=hㆍ(f’)T인 r개의 요소를 갖는 벡터 f’와, 상기 행렬 M에 근거하여 열벡터 (s’)T:=(s1’, …, sL’)T:=Mㆍ(f’)T를 생성하는 벡터 생성 공정과,
    상기 검증 장치가, 상기 벡터 생성 공정에서 생성된 열벡터 s→T 및 열벡터 (s’)T와, i=1, …, L의 각 정수 i에 대한 소정의 값 θi, θi’, θi’’, σi에 근거하여, i=1, …, L의 각 정수 i에 대하여, 변수 ρ(i)가 긍정형의 조 (t, v i)인 경우에는, 그 조의 식별 정보 t가 나타내는 기저 Bt의 기저 벡터 bt, i’(i’=1, …, 2nt+2)를 이용하여, 수학식 26에 나타내는 벡터를 포함하는 검증 요소 ci를 생성하고, 변수 ρ(i)가 부정형의 조 ¬(t, v i)인 경우에는, 그 조의 식별 정보 t가 나타내는 기저 벡터 bt, 1로부터 기저 벡터 bt, i(i’=1, …, 2nt+2)를 이용하여, 수학식 27에 나타내는 벡터를 포함하는 검증 요소 ci를 생성하는 검증 요소 생성 공정과,
    상기 검증 장치가, 상기 검증 요소 생성 공정에서 생성된 검증 요소 ci와, 상기 서명 데이터 σ에 포함되는 서명 요소 s* i에 대하여, 페어링 연산 Πi=1 Le(ci, s* i)를 행하여, 상기 서명 데이터 σ의 정당성을 검증하는 페어링 연산 공정
    을 구비하는 것을 특징으로 하는 서명 처리 방법.
    [수학식 24]
    Figure 112013076519275-pct00134

    [수학식 25]
    Figure 112013076519275-pct00135

    [수학식 26]
    Figure 112013076519275-pct00136

    [수학식 27]
    Figure 112013076519275-pct00137

  16. d개(d는 1 이상의 정수)의 키 생성 장치에서 동작시키는 키 생성 프로그램과, 서명 장치에서 동작시키는 서명 프로그램과, 검증 장치에서 동작시키는 검증 프로그램을 구비하고, t=1, …, d의 적어도 하나 이상의 정수 t에 대한 기저 Bt와 기저 B* t를 이용하여 서명 처리를 실행하는 서명 처리 프로그램으로서,
    상기 키 생성 프로그램은,
    t=1, …, d 중 키 생성 장치마다 미리 정해진 정수 t에 대한 속성 정보 x t:=(xt, i)(i=1, …, nt)를 입력하는 제 1 정보 입력 처리와,
    상기 정수 t와, j=1, 2의 각 정수 j에 대하여, 상기 제 1 정보 입력 처리에서 입력된 속성 정보 x t와, 소정의 값 δj와, 기저 B* t의 기저 벡터 b* t, i(i=1, …, 2nt)에 근거하여, 수학식 28에 나타내는 벡터를 포함하는 키 요소 k* t, j를 생성하는 키 요소 생성 처리와,
    상기 키 요소 생성 처리에서 생성된 키 요소 k* t, j와, 상기 속성 정보 x t를 포함하는 서명 키 usk를 상기 서명 장치에 송신하는 서명 키 송신 처리
    를 컴퓨터에 실행시키고,
    상기 서명 프로그램은,
    i=1, …, L(L은 1 이상의 정수)의 각 정수 i에 대한 변수 ρ(i)로서, 식별 정보 t(t=1, …, d의 어느 하나의 정수)와, 속성 정보 v i:=(vi, i’)(i’=1, …, nt)의 긍정형의 조 (t, v i) 또는 부정형의 조 ¬(t, v i)의 어느 하나인 변수 ρ(i)와, L행 r열(r은 1 이상의 정수)의 소정의 행렬 M과, 메시지 m을 입력하는 제 2 정보 입력 처리와,
    상기 d개의 키 생성 장치 중, 적어도 하나 이상의 키 생성 장치의 서명 키 송신 처리에서 송신된 서명 키 usk를 취득하는 서명 키 취득 처리와,
    상기 제 2 정보 입력 처리에서 입력된 변수 ρ(i)와, 상기 서명 키 취득 처리에서 취득된 서명 키 usk에 포함되는 속성 정보 x t에 근거하여, i=1, …, L의 각 정수 i 중, 변수 ρ(i)가 긍정형의 조 (t, v i)이고, 또한, 그 조의 식별 정보 t가 나타내는 x t를 포함하는 서명 키 usk를 상기 서명 키 취득 처리에서 취득하고 있고, 또한, 그 조의 v i와, 그 조의 식별 정보 t가 나타내는 속성 정보 x t의 내적이 0이 되는 i와, 변수 ρ(i)가 부정형의 조 ¬(t, v i)이고, 또한, 그 조의 식별 정보 t가 나타내는 x t를 포함하는 서명 키 usk를 상기 서명 키 취득 처리에서 취득하고 있고, 또한, 그 조의 v i와, 그 조의 식별 정보 t가 나타내는 속성 정보 x t의 내적이 0이 되지 않는 i의 집합 I를 특정함과 아울러, 특정된 집합 I에 포함되는 i에 대하여, 상기 제 2 정보 입력 처리에서 입력된 행렬 M의 i행째의 요소인 Mi에 근거하여, αiMi를 합계한 경우에 소정의 벡터 h가 되는 보완 계수 αi를 계산하는 보완 계수 계산 처리와,
    상기 서명 키 usk에 포함되는 키 요소 k* t, 1 및 키 요소 k* t, 2와, 소정의 값 ξ1, Ε, μ와, 상기 메시지 m으로부터 계산되는 값 m’에 근거하여, i=1, …, L의 각 정수 i에 대하여, 상기 보완 계수 계산 처리에서 특정된 집합 I에 포함되는 정수 i이고, 또한, 변수 ρ(i)가 긍정형의 조 (t, v i)인 경우에는 값 γi:=αi로 하고, 상기 집합 I에 포함되는 i이고, 또한, 변수 ρ(i)가 부정형의 조 ¬(t, v i)인 경우에는 값 γi:=αi/(v iㆍx t)로 하고, 상기 집합 I에 포함되지 않는 정수 i의 경우에는 값 γi:=0으로 하여, 기저 B* t의 기저 벡터 b* t, i(i=2nt+1, 2nt+2)를 이용하여, 수학식 29에 나타내는 벡터를 포함하는 서명 요소 s* i를 생성하는 서명 요소 생성 처리와,
    상기 서명 요소 생성 처리에서 생성된 i=1, …, L의 각 정수 i에 대한 서명 요소 s* i와, 상기 메시지 m과, 상기 변수 ρ(i)와, 상기 행렬 M을 포함하는 서명 데이터 σ를 상기 검증 장치에 송신하는 서명 데이터 송신 처리
    를 컴퓨터에 실행시키고,
    상기 검증 프로그램은,
    상기 서명 데이터 송신 처리에서 송신된 서명 데이터 σ를 취득하는 데이터 취득 처리와,
    r개의 요소를 갖는 벡터 f와, 상기 데이터 취득 처리에서 취득된 서명 데이터 σ에 포함되는 행렬 M에 근거하여 열벡터 s→T:=(s1, …, sL)T:=Mㆍf→T를 생성함과 아울러, s0:=hㆍf→T로 하여, s0=hㆍ(f’)T인 r개의 요소를 갖는 벡터 f’와, 상기 행렬 M에 근거하여 열벡터 (s’)T:=(s1’, …, sL’)T:=Mㆍ(f’)T를 생성하는 벡터 생성 처리와,
    상기 벡터 생성 처리에서 생성된 열벡터 s→T 및 열벡터 (s’)T와, i=1, …, L의 각 정수 i에 대한 소정의 값 θi, θi’, θi’’, σi에 근거하여, i=1, …, L의 각 정수 i에 대하여, 변수 ρ(i)가 긍정형의 조 (t, v i)인 경우에는, 그 조의 식별 정보 t가 나타내는 기저 Bt의 기저 벡터 bt, i’(i’=1, …, 2nt+2)를 이용하여, 수학식 30에 나타내는 벡터를 포함하는 검증 요소 ci를 생성하고, 변수 ρ(i)가 부정형의 조 ¬(t, v i)인 경우에는, 그 조의 식별 정보 t가 나타내는 기저 벡터 bt, i(i=1, …, 2nt+2)를 이용하여, 수학식 31에 나타내는 벡터를 포함하는 검증 요소 ci를 생성하는 검증 요소 생성 처리와,
    상기 검증 요소 생성 처리에서 생성된 검증 요소 ci와, 상기 서명 데이터 σ에 포함되는 서명 요소 s* i에 대하여, 페어링 연산 Πi=1 Le(ci, s* i)를 행하여, 상기 서명 데이터 σ의 정당성을 검증하는 페어링 연산 처리
    를 컴퓨터에 실행시키는
    것을 특징으로 하는 서명 처리 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
    [수학식 28]
    Figure 112013076519275-pct00138

    [수학식 29]
    Figure 112013076519275-pct00139

    [수학식 30]
    Figure 112013076519275-pct00140

    [수학식 31]
    Figure 112013076519275-pct00141
KR1020137022196A 2011-01-25 2011-12-08 서명 처리 시스템, 키 생성 장치, 서명 장치, 검증 장치, 서명 처리 방법 및 서명 처리 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 KR101431412B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2011-013281 2011-01-25
JP2011013281A JP5606344B2 (ja) 2011-01-25 2011-01-25 署名処理システム、鍵生成装置、署名装置、検証装置、署名処理方法及び署名処理プログラム
PCT/JP2011/078463 WO2012101913A1 (ja) 2011-01-25 2011-12-08 署名処理システム、鍵生成装置、署名装置、検証装置、署名処理方法及び署名処理プログラム

Publications (2)

Publication Number Publication Date
KR20130130810A KR20130130810A (ko) 2013-12-02
KR101431412B1 true KR101431412B1 (ko) 2014-08-19

Family

ID=46580497

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137022196A KR101431412B1 (ko) 2011-01-25 2011-12-08 서명 처리 시스템, 키 생성 장치, 서명 장치, 검증 장치, 서명 처리 방법 및 서명 처리 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체

Country Status (7)

Country Link
US (1) US9106408B2 (ko)
EP (1) EP2670081B1 (ko)
JP (1) JP5606344B2 (ko)
KR (1) KR101431412B1 (ko)
CN (1) CN103348624B (ko)
ES (1) ES2684945T3 (ko)
WO (1) WO2012101913A1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2755158A1 (en) * 2013-01-09 2014-07-16 Thomson Licensing Method and device for privacy-respecting data processing
EP2860904A1 (en) * 2013-10-08 2015-04-15 Thomson Licensing Method for signing a set of binary elements, and updating such signature, corresponding electronic device and computer program product
EP2860905A1 (en) * 2013-10-09 2015-04-15 Thomson Licensing Method for ciphering a message via a keyed homomorphic encryption function, corresponding electronic device and computer program product
JP6087849B2 (ja) * 2014-01-17 2017-03-01 日本電信電話株式会社 代理署名装置、署名検証装置、鍵生成装置、代理署名システム、およびプログラム
JP6053983B2 (ja) 2014-02-24 2016-12-27 三菱電機株式会社 暗号システム、署名システム、暗号プログラム及び署名プログラム
JP6204271B2 (ja) * 2014-06-05 2017-09-27 日本電信電話株式会社 署名システム、鍵生成装置、およびプログラム
WO2016014048A1 (en) * 2014-07-23 2016-01-28 Hewlett-Packard Development Company, L.P. Attribute-based cryptography
WO2019199283A1 (en) * 2018-04-10 2019-10-17 Visa International Service Association Tamper-resistant data encoding for mobile devices
CN109728910A (zh) * 2018-12-27 2019-05-07 北京永恒纪元科技有限公司 一种高效的门限分布式椭圆曲线密钥生成及签名方法和系统
JP7233265B2 (ja) * 2019-03-15 2023-03-06 三菱電機株式会社 署名装置、検証装置、署名方法、検証方法、署名プログラム及び検証プログラム
CN114189340B (zh) * 2021-12-09 2023-05-23 电子科技大学 一种基于素数阶群的基于属性签名方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997016903A1 (en) 1995-11-03 1997-05-09 Stefanus Alfonsus Brands Cryptographic methods for demonstrating satisfiable formulas from propositional logic
WO2007135580A2 (en) 2006-05-21 2007-11-29 International Business Machines Corporation Assertion message signatures
US20100115281A1 (en) 2008-08-28 2010-05-06 International Business Machines Corporation Attributes in cryptographic credentials

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6320966B1 (en) 1996-10-23 2001-11-20 Stefanus A. Brands Cryptographic methods for demonstrating satisfiable formulas from propositional logic
US7181017B1 (en) * 2001-03-23 2007-02-20 David Felsher System and method for secure three-party communications
CN1954548B (zh) * 2005-04-18 2010-07-21 松下电器产业株式会社 签名生成装置及签名验证装置
US8280039B2 (en) * 2005-12-28 2012-10-02 Panasonic Corporation Signature generating device, signature generating method and signature generating program
US8009829B2 (en) * 2006-10-25 2011-08-30 Spyrus, Inc. Method and system for deploying advanced cryptographic algorithms
WO2010123112A1 (ja) * 2009-04-24 2010-10-28 日本電信電話株式会社 暗号化装置、復号装置、暗号化方法、復号方法、セキュリティ方法、プログラム及び記録媒体
JP5253567B2 (ja) * 2009-04-24 2013-07-31 日本電信電話株式会社 暗号システム、暗号通信方法、暗号化装置、鍵生成装置、復号装置、コンテンツサーバ装置、プログラム、記憶媒体
WO2011007697A1 (ja) * 2009-07-13 2011-01-20 日本電気株式会社 匿名認証署名システム、ユーザ装置、検証装置、署名方法、検証方法およびそれらのプログラム
JP5693206B2 (ja) 2010-12-22 2015-04-01 三菱電機株式会社 暗号処理システム、鍵生成装置、暗号化装置、復号装置、暗号処理方法及び暗号処理プログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997016903A1 (en) 1995-11-03 1997-05-09 Stefanus Alfonsus Brands Cryptographic methods for demonstrating satisfiable formulas from propositional logic
WO2007135580A2 (en) 2006-05-21 2007-11-29 International Business Machines Corporation Assertion message signatures
US20100115281A1 (en) 2008-08-28 2010-05-06 International Business Machines Corporation Attributes in cryptographic credentials

Also Published As

Publication number Publication date
EP2670081A1 (en) 2013-12-04
US9106408B2 (en) 2015-08-11
EP2670081B1 (en) 2018-07-11
KR20130130810A (ko) 2013-12-02
CN103348624A (zh) 2013-10-09
WO2012101913A1 (ja) 2012-08-02
US20130322627A1 (en) 2013-12-05
JP5606344B2 (ja) 2014-10-15
ES2684945T3 (es) 2018-10-05
CN103348624B (zh) 2016-04-27
JP2012155088A (ja) 2012-08-16
EP2670081A4 (en) 2017-07-26

Similar Documents

Publication Publication Date Title
KR101431412B1 (ko) 서명 처리 시스템, 키 생성 장치, 서명 장치, 검증 장치, 서명 처리 방법 및 서명 처리 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체
KR101443553B1 (ko) 암호 처리 시스템, 키 생성 장치, 암호화 장치, 복호 장치, 암호 처리 방법 및 암호 처리 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체
KR101386294B1 (ko) 암호 처리 시스템, 키 생성 장치, 암호화 장치, 복호 장치, 서명 처리 시스템, 서명 장치 및 검증 장치
KR101588992B1 (ko) 암호 시스템, 암호 방법 및 암호 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체
KR101359200B1 (ko) 암호 처리 시스템
KR101393899B1 (ko) 암호 처리 시스템, 키 생성 장치, 암호화 장치, 복호 장치, 암호 처리 방법 및 암호 처리 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체
EP2503533A1 (en) Cipher processing system, key generating device, key delegating device, encrypting device, decrypting device, cipher processing method, and cipher processing program
KR101676977B1 (ko) 암호 시스템
KR101432462B1 (ko) 암호 처리 시스템, 키 생성 장치, 암호화 장치, 복호 장치, 키 위양 장치, 암호 처리 방법 및 암호 처리 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체
Doegar et al. On-demand digital signature schemes using Multivariate Polynomial systems
Bande et al. Secure and privacy preserving group signature scheme with verifier local revocation

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170720

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180801

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190730

Year of fee payment: 6