KR20130135018A - Encryption and decryption method and signature method based on method for generating secret key, and recording medium storing program for executing method of the same in computer - Google Patents

Encryption and decryption method and signature method based on method for generating secret key, and recording medium storing program for executing method of the same in computer Download PDF

Info

Publication number
KR20130135018A
KR20130135018A KR1020120128616A KR20120128616A KR20130135018A KR 20130135018 A KR20130135018 A KR 20130135018A KR 1020120128616 A KR1020120128616 A KR 1020120128616A KR 20120128616 A KR20120128616 A KR 20120128616A KR 20130135018 A KR20130135018 A KR 20130135018A
Authority
KR
South Korea
Prior art keywords
secret key
user
sub
uid
root
Prior art date
Application number
KR1020120128616A
Other languages
Korean (ko)
Other versions
KR101827813B1 (en
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 삼성에스디에스 주식회사
Priority to KR1020120128616A priority Critical patent/KR101827813B1/en
Publication of KR20130135018A publication Critical patent/KR20130135018A/en
Application granted granted Critical
Publication of KR101827813B1 publication Critical patent/KR101827813B1/en

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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

Disclosed are encryption and decryption method and signature method based on a private key generation method. An arbitrary random value (r) is selected, a message is encrypted and an encrypt (U, V)(U = g^r, V = m·(S_UID)^r) generated and transmitted by using a user ID (U_ID), which receives an encrypted message, as a public key. The message is decoded using a private key (sk_UID,) corresponding to the U_ID which received the encrypted message. According to the present invention, a client stage is lightened, and the efficiency of private key generation is improved by layering a generation unit. Also, the layered private key generation unit is able to be applied to various fields by appropriately mixing the layered private key generation unit. [Reference numerals] (110) Root private key generation unit;(120) Sub private key generation unit;(AA) Parameter = (N, G, g, H);(BB) Root master key (mk_Root) = (p,q);(CC) Parameter = (G_ID, n, H^I,(g_1,g_2,···,g_n)) (But, g_i = H(G_ID, i)), a first sub master key set (mk_G_ID) = (x_1,x_2,···,x_n) (But, g_i = g^x_i);(DD) User (U_i) → H^I(U_i) = b_i1 || b_i2 || ··· || b_in, user (U_i) private key (sk_ui) = 誇^n_j=1 � _jb_ij;(EE) User 1 (u_1);(FF) User 2 (u_2);(GG) User n (u_n);(HH) User x (u_x)

Description

비밀키 생성 방법을 기반으로 한 암복호화 방법 및 서명 방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체{Encryption and decryption method and signature method based on method for generating secret key, and recording medium storing program for executing method of the same in computer}Encryption and decryption method and signature method based on method for generating secret key, and recording medium storing program for executing method of the same in computer}

본 발명은 비밀키 생성 방법을 기반으로 한 암복호화 방법 및 서명 방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체에 관한 것으로, 더욱 상세하게는, 비밀키 생성부를 계층화하여 비밀키를 생성하는 비밀키 생성 장치 방법을 기반으로 한 암복호화 방법 및 서명 방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체에 관한 것이다. The present invention relates to an encryption / decryption method and a signature method based on a secret key generation method, and a recording medium recording a program for executing the method on a computer. More specifically, the secret key generation unit is layered to create a secret key. An encryption / decryption method and a signature method based on a secret key generating device method to be generated, and a recording medium recording a program for executing the method on a computer.

최근 컴퓨터 기술의 발달과 통신망의 급속한 확장으로 인해 컴퓨터 관련 자원과 전송되는 데이터들에 대한 보안 문제가 큰 이슈로 부각되고 있다. 이러한 문제를 해결할 수 있는 하나의 대안으로 암호 기반 시스템이 이용되고 있다. 현재까지 가장 크게 기여한 암호 시스템은 공개키 암호 시스템인데, 이와 같은 전통적 공개키 시스템에서는 사용자의 공개키를 미리 인증해야 하고 문제가 발생한 인증서는 유효기간 종료 전이라도 폐기해야 하므로 공개키의 인증서 관리에 관한 어려움이 발생한다. 따라서 개인의 아이디(identity, ID)를 기반으로 하는 아이디(ID) 기반 암호 시스템이 제안되었다. Recently, due to the development of computer technology and the rapid expansion of communication network, security issues regarding computer-related resources and transmitted data are emerging as a big issue. As an alternative to solve this problem, a password-based system is used. The most important contributing system to date is the public key cryptosystem, which requires authentication of the user's public key in advance and the revocation of the problem certificate before the end of its validity period. Difficulties arise. Therefore, an ID (ID) based encryption system based on an individual's identity (ID) has been proposed.

공개키 기반 암호 시스템은 비밀키를 먼저 정하고 공개키를 계산하는 방식을 따른다. 반면, 아이디 기반 암호 시스템은 아이디를 먼저 선택하고 이로부터 비밀키를 계산하며, 비밀키 발급은 키 발행기관(PKG, private key generator)이 아이디로부터 계산하여 비밀채널을 통해 발급한다. Public key-based cryptosystems follow a method of first determining a secret key and then calculating the public key. On the other hand, the ID-based encryption system first selects an ID and calculates a secret key from it, and a private key generator (PKG) calculates a secret key from the ID and issues it through a secret channel.

종래 아이디 기반 암호 시스템은 클라이언트 단에서 수행되는 과정이 느린 단점이 있어서, TDL(Trapdoor Discrete Logarithm) 기반의 새로운 아이디 기반 암호 시스템이 제안되었으나, 이 역시 비밀키 발급이 느리다는 단점이 있다. 따라서 본 발명에서는 사용자 단(클라이언트 단)의 효율성과 키 발급의 효율성을 모두 갖출 수 있는 새로운 기술을 제안하고자 한다. The conventional ID-based cryptosystem has a disadvantage that the process performed at the client end is slow, and a new ID-based cryptosystem based on a TDL (Trapdoor Discrete Logarithm) has been proposed, but this also has a disadvantage of slow secret key issuance. Therefore, the present invention is to propose a new technology that can be equipped with both the efficiency of the user terminal (client stage) and the efficiency of key issuance.

이와 관련된 선행기술을 구체적으로 살펴보면, 한국공개공보 제2005-0037723호(발명의 명칭 : 신원정보를 기반으로 하는 암호 시스템에서의 컨퍼런스 세션키 분배방법)에는 서로 다른 두 임시 비밀키를 선택하여 메시지를 생성하고 세션키 생성용 변수를 생성할 때 세션 개시 개체의 임시 비밀키를 사용하는 프로토콜을 제공하는 방법을 개시하고 있다. 이는 신원 정보 기반의 암호 시스템을 구현하는 단계와 키 공유 프로토콜 단계로 이루어져 신원 정보 기반 암호 시스템은 서명을 제공하는 시스템으로 구성된다. 본 발명은 비밀키를 생성하는 주체를 계층화하여 서브 비밀키 생성부의 비밀키 생성시간을 단축하고자 하는 것이므로 상기 선행기술과 구성상 차이가 있다. Looking at the related art in detail, Korean Laid-Open Publication No. 2005-0037723 (name of the invention: a method for distributing a conference session key in a cryptographic system based on identity information) selects two different temporary secret keys and displays a message. Disclosed is a method for providing a protocol that uses a temporary secret key of a session initiation object when generating and generating variables for generating a session key. It consists of implementing an identity-based cryptographic system and a key sharing protocol phase, and the identity-based cryptographic system consists of a system that provides a signature. The present invention is intended to shorten the secret key generation time of the sub-secret key generation unit by stratifying the subject generating the secret key, which is different from the prior art.

또한, 한국공개공보 제2011-0117169호(발명의 명칭 : ID 기반 인증키 프로토콜을 수행하기 위한 방법 및 장치)에는 암호키 에스크로 문제를 겪지 않는 ID 기반 인증키 동의 프로토콜을 개시하고 있다. 이는 ID 기반 인증키 동의 프로토콜에 관련 된 것으로, 비밀키 생성 주체를 계층화하는 본 발명과는 차이가 있다. In addition, Korean Laid-Open Patent Publication No. 2011-0117169 (name and method for performing an ID-based authentication key protocol) discloses an ID-based authentication key agreement protocol that does not suffer from cryptographic key escrow. This is related to the ID-based authentication key agreement protocol, which is different from the present invention which stratifies the secret key generation subject.

본 발명이 이루고자 하는 기술적 과제는, 아이디 기반 암호 기술의 비밀키 생성부를 계층화하여 클라이언트 단의 경량화 및 비밀키 생성의 효율성을 보장할 수 있는 비밀키 생성 방법을 기반으로 한 암복호화 방법 및 서명 방법을 제공하는 데 있다. 또한, 계층화된 비밀키 생성부를 각각 용도에 적합하게 혼합하여 다양한 분야에 활용될 수 있도록 한다.The technical problem to be achieved by the present invention, the encryption and decryption method and the signature method based on the secret key generation method that can ensure the light weight of the client end and the efficiency of secret key generation by layering the secret key generation unit of the ID-based encryption technology To provide. In addition, the hierarchical secret key generation unit can be mixed to suit each purpose so as to be utilized in various fields.

상기의 기술적 과제를 달성하기 위한 본 발명에 따른 암복호화 방법은, (e) 암호화된 메시지를 수신하는 사용자 아이디(UID)를 공개키로 이용해서 임의의 랜덤 값(r)을 선택하여 메세지를 암호화하여 암호문(U, V)(U=gr, V=m·(SUID)r)을 생성하여 전송하는 단계; 및 (f) 상기 암호화된 메시지를 수신한 사용자 아이디(UID)에 대응되는 비밀키(skUID,

Figure pat00001
)를 토대로
Figure pat00002
을 이용하여 메시지를 복원하는 단계;를 포함하며, 상기 사용자 아이디에 대응되는 비밀키는, 루트 마스터 키와 소정의 루트 파라미터를 설정하고 비밀키를 발급할 수 있는 사용자의 수(n)를 설정하여 제1 해쉬 함수를 이용하여 소정의 서브 파라미터를 계산하고 상기 루트 파라미터, 서브 파라미터를 이용하여 상기 설정된 사용자의 수(n)만큼 비밀키 발급이 가능한 제1서브 마스터 키 세트를 생성하고 상기 사용자 아이디에 대해 제2 해쉬 함수를 이용하여 비트 리프리젠테이션 값을 도출하고 상기 제1서브 마스터 키 세트와 선형 결합하여 생성되는 것을 특징으로 한다. The encryption and decryption method according to the present invention for achieving the above technical problem, (e) using a user ID (U ID ) receiving the encrypted message as a public key to select a random random value (r) to encrypt the message Generating and transmitting cipher texts U and V (U = g r , V = m · (S UID ) r ); And (f) a secret key (sk UID , corresponding to the user ID (U ID ) receiving the encrypted message).
Figure pat00001
Based on
Figure pat00002
Restoring the message using a message, wherein the private key corresponding to the user ID includes: setting a root master key and a predetermined root parameter and setting a number n of users who can issue the secret key; Compute a predetermined sub-parameter using a first hash function and generate a first sub-master key set capable of issuing a private key by the set number n of the user by using the root parameter and the sub-parameter, and assigns to the user ID. Deriving the bit representation value using a second hash function for the first sub-master key set is generated by linearly combining.

상기의 다른 기술적 과제를 달성하기 위한 본 발명에 따른 서명 방법은, (g) 사용자 아이디(UID)에 대응되는 비밀키(skUID,

Figure pat00003
)를 토대로 임의의 랜덤 값(r)을 선택하여 e=H2(gr,m)을 계산하여 서명(σUID,m, σUID,m=(gr, r-e·skUID))을 생성하는 단계; 및 (h) 상기 생성된 서명(σUID,m=(U, V))을 수신한 경우, 송신자의 상기 사용자 아이디(UID)를 이용하여 U=gV·(SUID)H3 (U,m)를 토대로 상기 서명의 유효성을 검증하는 단계;를 포함하며, 상기 사용자 아이디에 대응되는 비밀키는, 루트 마스터 키와 소정의 루트 파라미터를 설정하고 비밀키를 발급할 수 있는 사용자의 수(n)를 설정하여 제1 해쉬 함수를 이용하여 소정의 서브 파라미터를 계산하고 상기 루트 파라미터, 서브 파라미터를 이용하여 상기 설정된 사용자의 수(n)만큼 비밀키 발급이 가능한 제1서브 마스터 키 세트를 생성하고 상기 사용자 아이디에 대해 제2 해쉬 함수를 이용하여 비트 리프리젠테이션 값을 도출하고 상기 제1서브 마스터 키 세트와 선형 결합하여 생성되는 것을 특징으로 한다. Signature method according to the present invention for achieving the above another technical problem, (g) a secret key (sk UID , corresponding to the user ID (U ID ))
Figure pat00003
Select a random value r and compute e = H 2 (g r , m) to generate a signature (σ UID, m , σ UID, m = (g r , re · sk UID )). Making; And (h) the generated signature (σ UID, m = (U , V)) when receiving, using the user ID of the sender (U ID) U = g V · (S UID) H3 (U, m) verifying the validity of the signature, wherein the secret key corresponding to the user ID includes the number of users who can set a root master key and a predetermined root parameter and issue a secret key (n ) To calculate a predetermined sub-parameter using the first hash function, and to generate a first sub-master key set capable of issuing a secret key for the set number of users (n) using the root parameter and the sub-parameter. And a bit representation value is derived for the user ID by using a second hash function and is linearly combined with the first sub master key set.

본 발명에 따른 비밀키 생성 방법을 기반으로 한 암복호화 방법 및 서명 방법에 의하면, 비밀키 생성부의 계층화를 통해 클라이언트 단의 경량화와 비밀키 생성의 효율성을 도모할 수 있다. 또한, 계층화된 비밀키 생성부를 각각 용도에 적합하게 혼합하여 다양한 분야에 활용될 수 있다.According to the encryption / decryption method and signature method based on the secret key generation method according to the present invention, it is possible to reduce the weight of the client end and efficiency of secret key generation through the layering of the secret key generation unit. In addition, the hierarchical secret key generation unit may be mixed for each purpose and utilized in various fields.

도 1은 본 발명에 따른 비밀키 생성 장치 구성을 도시한 블록도,
도 2는 본 발명에 따른 비밀키 생성 방법이 구현되는 원리를 간략하게 도시한 도면,
도 3 내지 도 4는 본 발명에 따른 비밀키 생성 방법에 의해 생성된 비밀키를 토대로 암복호화하는 과정과 서명 생성 및 전송 과정을 도시한 도면, 그리고,
도 5는 본 발명에 따른 비밀키 생성 방법을 도시한 도면이다.
1 is a block diagram showing the configuration of a secret key generating device according to the present invention;
2 is a view briefly illustrating a principle of implementing a secret key generation method according to the present invention;
3 to 4 are diagrams illustrating a process of decrypting and decrypting a signature and generating and transmitting a signature based on a secret key generated by a secret key generation method according to the present invention; and
5 is a diagram illustrating a secret key generation method according to the present invention.

이하에서 첨부의 도면들을 참조하여 본 발명에 따른 비밀키 생성 장치 및 방법의 바람직한 실시예에 대해 상세하게 설명한다. Hereinafter, with reference to the accompanying drawings will be described in detail a preferred embodiment of the apparatus and method for secret key generation according to the present invention.

도 1은 본 발명에 따른 비밀키 생성 장치(100)의 구성을 도시한 블록도이고, 도 2는 본 발명에 따른 비밀키 생성 방법이 구현되는 원리를 간략하게 도시한 도면이다. 도 1을 참조하면, 비밀키 생성 장치(100)는 루프 비밀키 생성부(110) 및 서브 비밀키 생성부(120)를 포함할 수 있다.FIG. 1 is a block diagram showing the configuration of a secret key generating apparatus 100 according to the present invention, and FIG. 2 is a diagram briefly showing the principle of implementing a secret key generating method according to the present invention. Referring to FIG. 1, the secret key generating apparatus 100 may include a loop secret key generating unit 110 and a sub secret key generating unit 120.

비밀키 생성 장치(100)는 사용자 아이디에 대응하는 비밀키를 생성한다. 본 발명에 따른 비밀키 생성 장치(100)는 비밀키 생성부가 계층화되어 루트 비밀키 생성부(110), 서브 비밀키 생성부(120)를 갖는다. The secret key generating device 100 generates a secret key corresponding to the user ID. The secret key generating apparatus 100 according to the present invention has a layered secret key generating unit which includes a root secret key generating unit 110 and a sub secret key generating unit 120.

루트 비밀키 생성부(110)는 비밀키를 생성할 수 있는 루트 마스터 키(mkRoot)를 보유한다. 이때 루트 마스터 키(mkRoot)는 (p, q) 형태로 이루어질 수 있으며, 이때 p와 q는

Figure pat00004
를 만족하는 B-스무스(smooth)인 소수로 정의할 수 있다. 루트 마스터 키(mkRoot, (p, q))는 서브 비밀키 생성부(120) 또는 루트 비밀키 생성부(110)로부터 직접 비밀키를 발급받는 사용자들에게 비밀키를 생성해 줄 수 있는 마스터 비밀 정보를 갖고 있다. 따라서 도 2를 참조하면, 루트 비밀키 생성부(110)는 사용자(x)에게 직접 사용자(x) 아이디에 대응하는 비밀키를 생성하여 제공할 수 있다. 이러한 경우, 루트 비밀키 생성부(110)는 사용자로부터 사용자 아이디를 전송받아 사전 계산 테이블 데이터를 참조하여 이산 로그 값을 도출하여 사용자에게 비밀키를 발급한다. The root secret key generation unit 110 holds a root master key (mk Root ) capable of generating a secret key. At this time, the root master key (mk Root ) may be of the form (p, q), where p and q are
Figure pat00004
It can be defined as a prime number that is B-smooth. The root master key (mk Root , (p, q)) is a master that can generate a secret key to users who receive a secret key directly from the sub secret key generator 120 or the root secret key generator 110. Has secret information Therefore, referring to FIG. 2, the root secret key generation unit 110 may generate and provide a secret key corresponding to the user (x) ID directly to the user (x). In this case, the root secret key generation unit 110 receives the user ID from the user, derives a discrete log value by referring to the pre-calculated table data, and issues the secret key to the user.

또한 루트 비밀키 생성부(110)는 루트 비밀키 생성부 파라미터(N, G, g, H1, H2)를 설정하며, 각각의 파라미터는 다음과 같이 정의될 수 있다. N은

Figure pat00005
인 합성수, G는 ZN(ZN={0,1,...n-1}, 유한환)의 최대 순환 부분군, g는 G의 생성원을 말한다. H1은 제1 해쉬 함수로 {0,1}*→G로 정의되는 풀 도메인 해쉬 함수 일 수 있으며, 서브 비밀키 생성부(120)나 루트 비밀키 생성부(110)로부터 직접 비밀키를 발급받는 사용자의 아이디를 입력값으로 하여 이산로그를 풀 수 있는 군 G로 매핑하는 함수이다. 그리고 H2는 제2 해쉬 함수로 {0,1}*→ZN로 정의되는 랜덤 해쉬 함수일 수 있으며, 후술할 서명 방법에서 랜덤 해쉬 함수로 사용될 수 있다. 이러한 루트 비밀키 생성부 파라미터(N, G, g, H1, H2)는 본 아이디 기반 암호화 시스템(100)을 운용하기 위해 공개되는 시스템 파라미터이고, 서브 비밀키 생성부(120) 또는 본 아이디 기반 암호화 시스템을 사용하는 사용자들에게 비밀키를 제공할 수 있는 연산 과정에 이용된다. In addition, the root secret key generator 110 sets the root secret key generator parameters (N, G, g, H 1 , H 2 ), and each parameter may be defined as follows. N is
Figure pat00005
Phosphorus synthesis number, G is the largest cyclic subgroup of Z N (Z N = {0,1, ... n-1}, finite ring), g refers to the source of G. H 1 may be a full domain hash function defined as {0,1} * → G as the first hash function, and issue a secret key directly from the sub secret key generation unit 120 or the root secret key generation unit 110. It is a function that maps the group G that can solve the discrete log with the ID of the receiving user as an input value. H 2 may be a random hash function defined as {0,1} * → Z N as a second hash function, and may be used as a random hash function in a signature method to be described later. These root secret key generation parameters (N, G, g, H 1 , H 2 ) are system parameters that are open to operate the ID-based encryption system 100, sub-secret key generation unit 120 or this ID It is used in the operation process that can provide the secret key to users who use the based encryption system.

루트 비밀키 생성부(110)는 루트 마스터 키 및 소정의 파라미터를 사용하여 사용자 아이디에 대응하는 비밀키를 발급할 수 있는 권한을 가진 서브 비밀키 생성부(120)에게 사전에 설정되어 있는 제한 개수 내에서 비밀키를 생성할 수 있는 제1서브 마스터 키 세트를 발급한다. 이를 위해 루트 비밀키 생성부(110)는 서브 비밀키 생성부(120)로부터 서브 비밀키 생성부 아이디(GID) 및 서비스 사용자 수(n) 정보를 수신하여 서브 비밀키 생성부 아이디(GID)에 대한 인증 작업을 수행한다. 이러한 인증 작업은 공개되지 않은 채널(비밀 채널)에서 수행될 수 있다. The root secret key generation unit 110 limits the number of preset presets to the sub secret key generation unit 120 having the authority to issue a secret key corresponding to the user ID using the root master key and predetermined parameters. Issue a first sub-master key set that can generate a secret key within. Root private key generator 110 for this purpose are from the sub-secret key generation unit 120, the sub-secret key generation unit ID (G ID) and service users (n) to receive the information sub secret key generation unit ID (G ID Perform authentication on). This authentication can be done in an undisclosed channel (secret channel).

도 5를 참조하면, 루트 비밀키 생성부(110)는 상술한 서브 비밀키 생성부 아이디(GID)에 대한 인증을 수행하여 인정되면, 서브 비밀키 생성부 아이디(GID)와 서비스 사용자 수(n)인 (GID, n)을 입력 값으로 소정의 해쉬 함수를 수행하여 나온 결과값들의 이산 로그 값을 계산한다. 이때 (GID, 1)부터 (GID, n)까지 총 n개를 입력값으로 하여 해쉬 함수 수행 결과 n개의 이산 로그 값을 얻게 된다. 이렇게 나온 이산 로그 값들이 제1서브 마스터 키 세트(mkGID)이며, 루트 비밀키 생성부(110)는 제1서브 마스터 키 세트(mkGID)를 서브 비밀키 생성부(120)로 비밀 채널을 통해 전송하게 된다. 여기서 mkGID는 (x1, x2,..., xn)(단, gi=gxi이고, xi=logggi(1≤i≤n))이다. Referring to FIG. 5, if the root secret key generation unit 110 performs authentication on the sub secret key generation unit ID (G ID ) described above, the sub secret key generation unit ID (G ID ) and the number of service users are recognized. (n) a (G ID, n) by performing a predetermined hash function as an input value and calculates the discrete logarithm of the result shown. In this case, n discrete log values are obtained as a result of performing a hash function with a total of n items from (G ID , 1) to (G ID , n). The discrete log values are the first sub master key set (mk GID ), and the root secret key generator 110 uses the first sub master key set (mk GID ) as the sub secret key generator 120 to establish a secret channel. Will be sent through. Where mk GID is (x 1 , x 2 , ..., x n ), where g i = g xi and x i = log g g i (1 ≦ i ≦ n).

이때 소정의 해쉬 함수는 풀 도메인 해쉬 함수를 이용할 수 있고,

Figure pat00006
를 계산하여 서브 비밀키 생성부 파라미터(gi, 1≤i≤n)를 생성할 수 있다. 여기서 H1은 제1 해쉬 함수로 {0, 1}*→G로 정의되는 풀 도메인 해쉬 함수 일 수 있고, GID는 서브 비밀키 생성부(120)의 아이디를 의미한다. In this case, the predetermined hash function may use a full domain hash function.
Figure pat00006
The sub secret key generator (g i , 1 ≦ i ≦ n) may be generated by calculating. Here, H 1 may be a full domain hash function defined as {0, 1} * → G as the first hash function, and G ID may indicate an ID of the sub secret key generation unit 120.

서브 비밀키 생성부(120)는 제1서브 마스터 키 세트를 제공받아 사전에 설정된 사용자의 수 이내로 사용자 아이디에 대응하는 비밀키를 생성하여 사용자에게 발급한다. 서브 비밀키 생성부(120)는 서비스 제공자(service provider)별로 설정될 수 있다. 여기서 서비스 제공자(service provider)는 모바일 단말 상에 구현되는 다양한 어플리케이션일 수 있으나, 이에 한정되지는 않는다. The sub secret key generation unit 120 receives the first sub master key set, generates a secret key corresponding to the user ID within a preset number of users, and issues the same to the user. The sub secret key generation unit 120 may be set for each service provider. Here, the service provider may be various applications implemented on the mobile terminal, but is not limited thereto.

서브 비밀키 생성부(120)는 서브 비밀키 생성부에 할당된 사용자 아이디에 대해 소정의 해쉬 함수를 이용하여 비트 리프리젠테이션 값을 도출하고 제1서브 마스터 키 세트와 선형 결합하여 사용자 아이디에 대응하는 비밀키를 도출하여 사용자에게 전송한다. 즉, 서브 비밀키 생성부(120)는 사용자 아이디(UID)에 대해 랜덤 해쉬 함수(H3)를 이용하여 H3(UID)=b1b2…bn(2진표현, 즉, bi∈{0, 1})을 계산하고, 계산된 값(b1, b2,…, bn )을 제1서브 마스터 키 (x1, x2,..., xn)와 선형 결합하여 사용자 아이디(UID)에 대응하는 비밀키(skUID,

Figure pat00007
)를 계산하여 사용자에게 공개되지 않은 채널(비밀채널)을 통해 전송한다. 여기서, H3는 제3 해쉬 함수로 {0,1}*→{0,1}n로 정의되는 랜덤 해쉬 함수일 수 있다. 이때, 랜덤 해쉬 함수(H3) 결과 값은 계산상의 편의성을 위해 w-스파스(sparse)한 형태로 bi(1≤i≤n) 중 w 개(1≤i≤n)만 '0'이 아닌 값, 즉, '1'이 되도록 할 수 있다. The sub secret key generation unit 120 derives a bit representation value using a predetermined hash function for the user ID assigned to the sub secret key generation unit, and linearly combines with the first sub master key set to correspond to the user ID. The secret key is derived and sent to the user. That is, the sub-secret key generating unit 120 for the user name (U ID) using a random hash function (H 3) H 3 (U ID) = b 1 b 2 ... Calculate b n (binary representation, i.e., b i ∈ {0, 1}), and calculate the calculated values (b 1 , b 2 ,…, b n ) with the first sub-master key (x 1 , x 2 , ..., x n) and the linear combination the secret key corresponding to the user identity (U ID) (sk UID,
Figure pat00007
) Is transmitted over a channel (secret channel) that is not available to the user. Here, H 3 may be a random hash function defined as {0,1} * → {0,1} n as the third hash function. At this time, the result of the random hash function (H3) is w-sparse for convenience of calculation, and only w (1≤i≤n) of b i (1≤i≤n) is '0'. It can be set to a non-value, that is, '1'.

따라서 종래 TDL(Trapdoor Discrete Logarithm) 군에서 정의된 아이디 기반 암호 기술의 경우 사전계산 테이블(pre-computation table)을 참고하여 이산 로그 결과값을 도출하였지만, 본 발명은 서브 비밀키 생성부(120)의 비트 섬메이션(bit summation) 계산으로 비밀키를 생성할 수 있어 비밀키 생성 시간이 단축된다. Accordingly, in the case of the ID-based encryption technology defined in the conventional TDL group, the discrete log result is derived by referring to a pre-computation table. However, the present invention provides a method of sub-secret key generation unit 120. The secret key can be generated by bit summation calculation, which reduces the secret key generation time.

서브 비밀키 생성부(120)는 사전에 설정된 사용자의 수를 초과하여 사용자에게 비밀키를 발급하게 되면 암호학적으로 비밀키가 노출될 우려가 있다. 따라서 사전에 설정된 수를 초과하여 비밀키를 제공하고자 하는 경우 서브 비밀키 생성부(120)는 루트 비밀키 생성부(110)에게 추가적인 서브 마스터 키 세트를 발급해 줄 것을 요청할 수 있다. 루트 비밀키 생성부(110)는 인증된 서브 비밀키 생성부(120)로부터 서브 마스터 키 세트 발급 요청을 수신하면 추가로 요청된 사용자의 수만큼 비밀키를 생성할 수 있는 제2서브 마스터 키 세트를 생성하여 서브 비밀키 생성부(120)로 제공할 수 있다. 이 경우 과금부(미도시)는 제2서브 마스터 키 세트에 대해 과금 할 수 있다. 과금은 비밀키 발급 가능한 사용자 수에 따라 비례해서 설정할 수 있으며, 사용자 수 * 단가의 형태로 책정될 수 있다. 이러한 과금부(미도시)는 루프 비밀키 생성부(110) 내에 포함될 수 있으며, 독립적으로 존재할 수 있다. 이러한 과금의 형태를 통해 서브 비밀키 생성부(120)는 루트 비밀키 생성부(110)의 허락 없이 임의로 사용자 수를 늘릴 수 없으므로 과금 체계를 명확하게 정립할 수 있다. When the sub-secret key generation unit 120 issues a secret key to a user in excess of a preset number of users, there is a fear that the secret key is exposed cryptographically. Accordingly, when the private key is to be provided in excess of a preset number, the sub secret key generator 120 may request the root secret key generator 110 to issue an additional sub master key set. When the root secret key generation unit 110 receives a sub master key set issuance request from the authenticated sub secret key generation unit 120, a second sub master key set that can generate as many private keys as the number of requested users. May be generated and provided to the sub secret key generation unit 120. In this case, the charging unit (not shown) may charge for the second sub master key set. Charging can be set in proportion to the number of users who can issue a private key and can be set in the form of the number of users * unit price. The charging unit (not shown) may be included in the loop secret key generation unit 110 and may exist independently. Through this type of billing, the sub-secret key generation unit 120 cannot arbitrarily increase the number of users without the permission of the root secret key generation unit 110, so that the billing system can be clearly established.

이러한 비밀키 생성 장치(100)를 기반으로 암복호화 장치(미도시)와 서명 장치(미도시)를 구현할 수 있다. 암복호화 장치는 암호화부 및 복호화부를 가지며, 서명 장치는 서명 생성부 및 서명 검증부를 가질 수 있다. An encryption / decryption device (not shown) and a signature device (not shown) may be implemented based on the secret key generation device 100. The encryption / decryption apparatus may have an encryption unit and a decryption unit, and the signature apparatus may have a signature generation unit and a signature verification unit.

암호화부는 메시지(m)에 대하여 사용자 아이디가 UID인 사용자에게 암호화된 메시지를 송신하는 경우, 송신자는 먼저 사용자 아이디(UID)를 입력값으로 해쉬 함수를 계산하여 UID의 비트 리프리젠테이션

Figure pat00008
을 계산한다. 송신자는 송신자 및 수신자(UID)가 포함된 서브 비밀키 생성부(120)의 공개된 시스템 파라미터와 비트 리프리젠테이션 값을 이용하여
Figure pat00009
를 연산한다. 송신자는 임의의 랜덤 값(r)을 선택하여 메시지(m)에 대한 암호문(gr, m·(SUID)r)을 생성하여 이를 수신자(UID)에게 전송한다. When the encryption unit transmits an encrypted message to the user whose user ID is U ID for the message m, the sender first calculates a hash function using the user ID (U ID ) as an input value, thereby bit-representing the U ID .
Figure pat00008
. The sender uses the public system parameters and bit representation values of the sub-secret key generation unit 120 including the sender and the receiver (U ID ).
Figure pat00009
. The sender selects a random random value r , generates a cipher text g r , m · (S UID ) r for the message m, and sends it to the receiver U ID .

암호화된 메시지를 수신한 사용자(UID)의 복호화부는 환 ZN의 두 개의 원소로 이루어진 한 쌍의 암호문 (U, V)를 수신한다. 사용자(UID)는 자신이 포함된 서브 비밀키 생성부(120)로부터 사용자 아이디(UID)에 대응하여 발급받은 비밀키

Figure pat00010
를 이용하여
Figure pat00011
를 계산한다. 이때, 정상적인 암호화 과정을 통해 생성된 암호문이라면 U=gr, V=m·(SUID)r이고, UID에 대응되는 정당한 비밀키를 소유한 사용자라면 비밀키(
Figure pat00012
)는
Figure pat00013
의 밑(base)을 g로 하는 이산로그 값(즉,
Figure pat00014
)이므로, 상기
Figure pat00015
를 계산한 결과는 메시지 m과 같다. The decryption unit of the user (U ID ) receiving the encrypted message receives a pair of ciphertexts (U, V) consisting of two elements of the ring Z N. The user (U ID ) is a secret key issued in response to the user ID (U ID ) from the sub-secret key generation unit 120 that includes it
Figure pat00010
Using
Figure pat00011
. At this time, if the ciphertext generated through the normal encryption process, U = g r , V = m · (S UID ) r, and if the user owns the legitimate secret key corresponding to the U ID , the secret key (
Figure pat00012
)
Figure pat00013
Discrete logarithm to base of g (i.e.
Figure pat00014
), So
Figure pat00015
The result of calculating is equal to the message m.

서명 생성부는 사용자 아이디에 대응되는 비밀키(skUID,

Figure pat00016
)를 토대로 임의의 랜덤 값(r)을 선택하여 e=H2(gr,m)을 계산하여 서명(σUID ,m, σUID ,m=(gr, r-e·skUID))을 생성한다. 서명 검증부는 생성된 서명 (σUID ,m=(U, V))에 대해, 서명을 수신한 수신한 수신자는 송신자의 아이디(UID)를 이용하여 gV·(SUID)H3 (U,m)를 계산하고 이 값이 U와 같은지 확인(U=gV·(SUID)H3 (U,m)성립 여부 확인)하여 서명의 유효성을 검증한다. 여기서, m은 메시지, r은 임의의 랜덤 값으로 r∈ZN,
Figure pat00017
이다. Signature generation unit secret key (sk UID , corresponding to the user ID)
Figure pat00016
Select a random random value r and compute e = H 2 (g r , m) to generate a signature (σ UID , m , σ UID , m = (g r , re · sk UID )). do. For the generated signature (σ UID , m = (U, V)), the signature verification unit uses the sender's ID (U ID ) to receive the signature g V · (S UID ) H3 (U, m) and verify that the value is equal to U (U = g V · (S UID ) H3 (U, m) is established) to validate the signature. Where m is the message, r is any random value, r∈Z N ,
Figure pat00017
to be.

도 3 내지 도 4는 본 발명에 따른 비밀키 생성 방법에 의해 생성된 비밀키를 토대로 암복호화하는 과정과 서명 생성 및 전송 과정을 도시한 도면이고, 도 5는 본 발명에 따른 비밀키 생성 방법을 도시한 도면이다. 3 to 4 illustrate a process of decrypting and decrypting a signature and generating and transmitting a signature based on a secret key generated by the secret key generation method according to the present invention, and FIG. 5 illustrates a secret key generation method according to the present invention. Figure is shown.

도 3 내지 도 5를 참조하면, 비밀키를 생성할 수 있는 루트 마스터 키를 설정하고 소정의 루트 파라미터를 설정하여 사전에 설정되어 있는 제한 개수 내에서 비밀키를 발급할 수 있는 권한을 가진 서브 비밀키 생성부(120)에게 제한 개수 내에서 비밀키를 생성할 수 있는 제1서브 마스터 키 세트를 발급하는 루트 비밀키 생성부(110)를 셋업한다(S310, S410). 3 to 5, a sub-secret having the authority to issue a secret key within a preset limit by setting a root master key capable of generating a secret key and setting a predetermined root parameter. A root secret key generation unit 110 for issuing a first sub master key set capable of generating a secret key within a limited number to the key generation unit 120 is set up (S310 and S410).

또한, 비밀키 발급 권한을 가지고자 하는 사용자의 수를 사전에 설정하여 제1서브 마스터 키 세트를 제공받아 사전에 설정된 개수 내에서 사용자 아이디에 대응하는 비밀키를 생성하여 사용자에게 발급하는 서브 비밀키 생성부(120)를 셋업한다(S320, S420). In addition, by setting the number of users to have the authority to issue a secret key in advance, a sub-secret key that is provided to the first sub master key set, generates a secret key corresponding to the user ID within a preset number, and issues it to the user. Setup unit 120 is set up (S320, S420).

루트 비밀키 생성부(110)는 서브 비밀키 생성부 파라미터로부터 서브 비밀키 생성부의 아이디와 사전에 설정된 사용자의 수를 제공받아 서브 비밀키 생성부 아이디를 인증하고(S330, S430), 소정의 해쉬 함수를 수행하여 나온 출력 값들의 이산로그 값을 계산해서 나온 제1서브 마스터 키 세트를 서브 비밀키 생성부(120)로 전송한다(S340, S440). 서브 비밀키 생성부 아이디에 대한 인증이 실패하는 경우, 서브 비밀키 생성부(120)에 대한 서브 마스터 키 세트 발급을 중지한다.The root secret key generation unit 110 receives the ID of the sub secret key generation unit and the number of users set in advance from the sub secret key generation unit parameters, and authenticates the sub secret key generation unit IDs (S330 and S430). The first sub master key set obtained by calculating the discrete log values of the output values obtained by performing the function is transmitted to the sub secret key generation unit 120 (S340 and S440). If authentication for the sub secret key generation unit fails, issuance of the sub master key set for the sub secret key generation unit 120 is stopped.

서브 비밀키 생성부(120)는 서브 비밀키 생성부(120)에 할당된 사용자 아이디에 대해 소정의 해쉬 함수를 이용하여 비트 리프리젠테이션 값을 도출하고 제1서브 마스터 키 세트와 선형 결합하여 사용자 아이디에 대응하는 비밀키를 도출하여 사용자에게 전송한다(S350, S450).The sub secret key generation unit 120 derives a bit representation value using a predetermined hash function for the user ID assigned to the sub secret key generation unit 120 and linearly combines the first sub master key set with the user. The secret key corresponding to the ID is derived and transmitted to the user (S350 and S450).

이러한 비밀키 발급 방법에 기반하여 암복호화 기술을 구현하는 경우, 수신자 아이디를 이용하여 메세지를 암호화하여 전송한다(S360). 그리고 암호화된 메시지를 수신하게 되면 수신자 아이디에 대응되는 비밀키를 이용하여 암호문을 복호화한다(S370). 또한 이러한 비밀키 발급 방법에 기반하여 서명 기술을 구현하는 경우, 메시지를 송신하고자 하는 사용자 아이디에 대응되는 비밀키를 이용하여 전송하고자 하는 메시지에 서명을 생성하여 전송한다(S460). 그리고 수신된 서명이 메시지를 송신한 사용자 아이디와 메시지에 대해 유효한지 검증하게 된다(S470). When the encryption / decryption technique is implemented based on the secret key issuing method, the message is encrypted and transmitted using the receiver ID (S360). When the encrypted message is received, the cipher text is decrypted using the secret key corresponding to the receiver ID (S370). In addition, when the signature technology is implemented based on the secret key issuing method, the signature is generated and transmitted using the secret key corresponding to the user ID to which the message is to be transmitted (S460). In addition, the received signature is verified whether the user ID and the message that transmit the message are valid (S470).

본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 유무선 통신망으로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. The present invention can also be embodied as computer-readable codes on a computer-readable recording medium. A computer-readable recording medium includes all kinds of recording apparatuses in which data that can be read by a computer system is stored. Examples of the computer-readable recording medium include a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like, and a carrier wave (transmission via the Internet). In addition, the computer-readable recording medium may be distributed to a computer system connected to a wired / wireless communication network, and a computer-readable code may be stored and executed in a distributed manner.

이상에서 본 발명의 바람직한 실시예에 대해 도시하고 설명하였으나, 본 발명은 상술한 특정의 바람직한 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형 실시가 가능한 것은 물론이고, 그와 같은 변경은 청구범위 기재의 범위 내에 있게 된다. While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is clearly understood that the same is by way of illustration and example only and is not to be taken by way of limitation in the embodiment in which said invention is directed. It will be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the scope of the appended claims.

100 : 비밀키 생성 장치 110 : 루트 비밀키 생성부
120 : 서브 비밀키 생성부
100: secret key generator 110: root secret key generator
120: sub secret key generation unit

Claims (4)

(e) 암호화된 메시지를 수신하는 사용자 아이디(UID)를 공개키로 이용해서 임의의 랜덤 값(r)을 선택하여 메세지를 암호화하여 암호문(U, V)(U=gr, V=m·(SUID)r)을 생성하여 전송하는 단계; 및
(f) 상기 암호화된 메시지를 수신한 사용자 아이디(UID)에 대응되는 비밀키(skUID,
Figure pat00018
)를 토대로
Figure pat00019
을 이용하여 메시지를 복원하는 단계;를 포함하며,
상기 사용자 아이디에 대응되는 비밀키는, 루트 마스터 키와 소정의 루트 파라미터를 설정하고 비밀키를 발급할 수 있는 사용자의 수(n)를 설정하여 제1 해쉬 함수를 이용하여 소정의 서브 파라미터를 계산하고 상기 루트 파라미터, 서브 파라미터를 이용하여 상기 설정된 사용자의 수(n)만큼 비밀키 발급이 가능한 제1서브 마스터 키 세트를 생성하고 상기 사용자 아이디에 대해 제2 해쉬 함수를 이용하여 비트 리프리젠테이션 값을 도출하고 상기 제1서브 마스터 키 세트와 선형 결합하여 생성되는 것을 특징으로 하는 암복호화 방법:
여기서 r은 임의의 랜덤 값으로 r∈ZN, U=gr, V=m·(SUID)r), m은 암호화된 메시지, m'은 복호화된 메시지, g는 G의 생성원, G는 ZN(ZN={0,1,...N-1} 유한환)의 최대 순환 부분군, 그리고,
Figure pat00020
이다.
(e) Encrypt the message by selecting a random random value (r) using the user ID (U ID ) receiving the encrypted message as the public key (U = V r (U = g r , V = m ·) Generating and transmitting (S UID ) r ); And
(f) A secret key (sk UID , corresponding to the user ID (U ID ) receiving the encrypted message)
Figure pat00018
Based on
Figure pat00019
Restoring the message using;
In the secret key corresponding to the user ID, a root master key and a predetermined root parameter are set, and a number n of users who can issue the secret key is set to calculate a predetermined subparameter using the first hash function. Generate a first sub-master key set capable of issuing a secret key as many as the set number of users (n) using the root parameter and the sub-parameter, and use a second hash function for the user ID. Decryption method and generated by linear combination with the first sub master key set:
Where r is any random value r∈Z N , U = g r , V = m · (S UID ) r ), m is an encrypted message, m 'is a decrypted message, g is the origin of G, G Is the largest cyclic subgroup of Z N (Z N = {0,1, ... N-1} finite rings),
Figure pat00020
to be.
(g) 사용자 아이디(UID)에 대응되는 비밀키(skUID,
Figure pat00021
)를 토대로 임의의 랜덤 값(r)을 선택하여 e=H2(gr,m)을 계산하여 서명(σUID ,m, σUID ,m=(gr, r-e·skUID))을 생성하는 단계; 및
(h) 상기 생성된 서명(σUID,m=(U, V))을 수신한 경우, 송신자의 상기 사용자 아이디(UID)를 이용하여 U=gV·(SUID)H3 (U,m)를 토대로 상기 서명의 유효성을 검증하는 단계;를 포함하며,
상기 사용자 아이디에 대응되는 비밀키는, 루트 마스터 키와 소정의 루트 파라미터를 설정하고 비밀키를 발급할 수 있는 사용자의 수(n)를 설정하여 제1 해쉬 함수를 이용하여 소정의 서브 파라미터를 계산하고 상기 루트 파라미터, 서브 파라미터를 이용하여 상기 설정된 사용자의 수(n)만큼 비밀키 발급이 가능한 제1서브 마스터 키 세트를 생성하고 상기 사용자 아이디에 대해 제2 해쉬 함수를 이용하여 비트 리프리젠테이션 값을 도출하고 상기 제1서브 마스터 키 세트와 선형 결합하여 생성되는 것을 특징으로 하는 서명 방법:
여기서, m은 메시지, r은 임의의 랜덤 값으로 r∈ZN, g는 G의 생성원, G는 ZN(ZN={0,1,...N-1} 유한환)의 최대 순환 부분군, H3는 랜덤 해쉬 함수로서 {0,1}*→{0,1}n로 정의, 그리고,
Figure pat00022
이다.
(g) The secret key (sk UID , corresponding to the user ID (U ID ))
Figure pat00021
Select a random random value r and compute e = H 2 (g r , m) to generate a signature (σ UID , m , σ UID , m = (g r , re · sk UID )). Making; And
(h) When the generated signature (σ UID, m = (U, V)) is received, U = g V · (S UID ) H3 (U, m ) using the sender's user ID (U ID ). It includes,;) based on the step of verifying the validity of the signature
In the secret key corresponding to the user ID, a root master key and a predetermined root parameter are set, and a number n of users who can issue the secret key is set to calculate a predetermined subparameter using the first hash function. Generate a first sub-master key set capable of issuing a secret key as many as the set number of users (n) using the root parameter and the sub-parameter, and use a second hash function for the user ID. And derive a linear combination with the first sub master key set.
Where m is the message, r is any random value, r∈Z N , g is the source of G, G is the maximum cycle of Z N (Z N = {0,1, ... N-1} finite rings) Subgroup, H 3, is a random hash function defined by {0,1} * → {0,1} n , and
Figure pat00022
to be.
제 1항에 기재된 암복호화 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium having recorded thereon a program for executing the encryption / decryption method according to claim 1 on a computer. 제 2항에 기재된 서명 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.

A computer-readable recording medium having recorded thereon a program for executing the signature method of claim 2 on a computer.

KR1020120128616A 2012-11-14 2012-11-14 Encryption and decryption method and signature method based on method for generating secret key, and recording medium storing program for executing method of the same in computer KR101827813B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120128616A KR101827813B1 (en) 2012-11-14 2012-11-14 Encryption and decryption method and signature method based on method for generating secret key, and recording medium storing program for executing method of the same in computer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120128616A KR101827813B1 (en) 2012-11-14 2012-11-14 Encryption and decryption method and signature method based on method for generating secret key, and recording medium storing program for executing method of the same in computer

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020120058676A Division KR101301609B1 (en) 2012-05-31 2012-05-31 Apparatus and method for generating secret key, and recording medium storing program for executing method of the same in computer

Publications (2)

Publication Number Publication Date
KR20130135018A true KR20130135018A (en) 2013-12-10
KR101827813B1 KR101827813B1 (en) 2018-03-22

Family

ID=49982544

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120128616A KR101827813B1 (en) 2012-11-14 2012-11-14 Encryption and decryption method and signature method based on method for generating secret key, and recording medium storing program for executing method of the same in computer

Country Status (1)

Country Link
KR (1) KR101827813B1 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100888472B1 (en) 2002-07-06 2009-03-12 삼성전자주식회사 Cryptographic method using dual encryption keys and wireless local area network system therefor
JP4984827B2 (en) 2006-10-30 2012-07-25 ソニー株式会社 KEY GENERATION DEVICE, ENCRYPTION DEVICE, RECEPTION DEVICE, KEY GENERATION METHOD, ENCRYPTION METHOD, KEY PROCESSING METHOD, AND PROGRAM

Also Published As

Publication number Publication date
KR101827813B1 (en) 2018-03-22

Similar Documents

Publication Publication Date Title
KR101301609B1 (en) Apparatus and method for generating secret key, and recording medium storing program for executing method of the same in computer
CN108234501B (en) Quantum key fusion-based virtual power plant secure communication method
CN111740828B (en) Key generation method, device and equipment and encryption and decryption method
CN107948189B (en) Asymmetric password identity authentication method and device, computer equipment and storage medium
KR102124413B1 (en) System and method for identity based key management
CN109584978B (en) Information processing method and system based on signature aggregation medical health monitoring network model
CN106789042B (en) Authentication key negotiation method for user in IBC domain to access resources in PKI domain
CN110120939B (en) Encryption method and system capable of repudiation authentication based on heterogeneous system
US12010216B2 (en) Computer-implemented system and method for highly secure, high speed encryption and transmission of data
CN101286849A (en) Authentication system and method of a third party based on engagement arithmetic
CN104767612A (en) Signcryption method from certificateless environment to public key infrastructure environment
CN104901935A (en) Bilateral authentication and data interaction security protection method based on CPK (Combined Public Key Cryptosystem)
CN106713349B (en) Inter-group proxy re-encryption method capable of resisting attack of selecting cipher text
CN102970144A (en) Identity-based authentication method
US11528127B2 (en) Computer-implemented system and method for highly secure, high speed encryption and transmission of data
CN104200154A (en) Identity based installation package signing method and identity based installation package signing device
CN115396115B (en) Block chain data privacy protection method, device, equipment and readable storage medium
CN107682158B (en) Trusteeship authentication encryption method
CN111756722B (en) Multi-authorization attribute-based encryption method and system without key escrow
CN108933659B (en) Identity verification system and method for smart power grid
GB2543359A (en) Methods and apparatus for secure communication
CN116232568A (en) SM 9-based attribute-based encryption block chain access control method
Mehta et al. Group authentication using paillier threshold cryptography
CN111934887B (en) Multi-receiver signcryption method based on interpolation polynomial
CN114697001B (en) Information encryption transmission method, equipment and medium based on blockchain

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant