KR20050104220A - Management method and terminal apparatus for management function of secret key - Google Patents

Management method and terminal apparatus for management function of secret key Download PDF

Info

Publication number
KR20050104220A
KR20050104220A KR1020040029587A KR20040029587A KR20050104220A KR 20050104220 A KR20050104220 A KR 20050104220A KR 1020040029587 A KR1020040029587 A KR 1020040029587A KR 20040029587 A KR20040029587 A KR 20040029587A KR 20050104220 A KR20050104220 A KR 20050104220A
Authority
KR
South Korea
Prior art keywords
secret key
secret
value
password
verifier
Prior art date
Application number
KR1020040029587A
Other languages
Korean (ko)
Other versions
KR100617456B1 (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 KR1020040029587A priority Critical patent/KR100617456B1/en
Publication of KR20050104220A publication Critical patent/KR20050104220A/en
Application granted granted Critical
Publication of KR100617456B1 publication Critical patent/KR100617456B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/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
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • 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

Abstract

본 발명은 비밀키 관리 기능을 가지는 비밀키 단말장치 및 비밀키 관리방법에 관한 것으로, 상기 시스템 매개변수를 기초로 난수를 생성하는 난수 생성부; 난수를 기초로 소정의 다항식을 생성하는 다항식 생성부; 다항식의 계수로부터 사용자 검증을 위한 검증값을 생성하는 검증값 생성부; 다항식의 계수로부터 개의 비밀값 부분을 생성하는 비밀값 요소 생성부; 난수와 사용자 패스워드 및 사용자 아이디를 기초로 생성한 겹선형쌍을 이용하여 마스터키와 제 1 검증자를 생성하는 비밀정보 생성부; 마스터키를 이용하여 자체적으로 생성된 비밀키를 암호화하는 암호화부; 및 검증값, 비밀값 부분, 사용자 아이디, 암호화된 비밀키 및 제 1 검증자를 개의 비밀값 부분 각각에 대응하는 서버로 송신하는 송신부로 구성된다. 본 발명을 통하여 사용자가 자신의 전용 단말기를 사용할 수 없는 로밍 환경에서 비밀키를 휴대하는 어려움을 해결하고 사전에 다중 서버에 저장된 비밀키를 안전하게 관리할 수 있다.The present invention relates to a secret key terminal having a secret key management function and a secret key management method, comprising: a random number generating unit generating a random number based on the system parameters; A polynomial generator for generating a predetermined polynomial based on a random number; A verification value generating unit generating a verification value for user verification from coefficients of the polynomial; From the coefficients of the polynomial A secret value element generator for generating two secret value parts; A secret information generating unit for generating a master key and a first verifier using a pair of linear pairs generated based on a random number, a user password, and a user ID; An encryption unit for encrypting a secret key generated by itself using a master key; And verification value, secret value part, user ID, encrypted secret key, and first validator And a transmitting unit for transmitting to the server corresponding to each of the four secret value portions. The present invention solves the difficulty of carrying a secret key in a roaming environment in which a user cannot use his or her own dedicated terminal and safely manages a secret key stored in multiple servers in advance.

Description

비밀키 관리 기능을 가지는 비밀키 단말장치 및 비밀키 관리방법{Management method and terminal apparatus for management function of secret key}Management method and terminal apparatus for management function of secret key}

본 발명은 비밀키 관리 기능을 가지는 비밀키 단말장치 및 비밀키 관리방법에 관한 것으로 더욱 상세하게는, 겹선형쌍(bilinear pairings) 사상을 이용하여 사용자가 개인식별정보인 아이디()와 패스워드()만을 가지고 다중 서버에 비밀키를 안전하게 등록하고, 또한 저장되어 있는 비밀키를 안전하게 복원할 수 있도록 하는 비밀키 관리 기능을 가지는 비밀키 단말장치 및 비밀키 관리방법에 관한 것이다.The present invention relates to a secret key terminal having a secret key management function and a secret key management method. More specifically, a user can identify an ID (personal identification information) using bilinear pairings. ) And password ( The present invention relates to a secret key terminal and a secret key management method having a secret key management function for securely registering a secret key in multiple servers and restoring a stored secret key safely.

최근의 정보통신망의 발전에 따라 네트워크에 대한 접근용이성이 높아짐으로써 어느 곳에서든지 네트워크를 이용할 수 있는 유비쿼터스 환경이 도래하고 있다. 일반적으로 인터넷과 같이 공개된 네트워크에서의 안전한 통신을 위하여 공개키-기반 암호시스템(PKC : Public Key Cryptosystem) 등을 사용하여왔다.With the recent development of information and communication networks, accessibility to the network has increased, and a ubiquitous environment that can use the network anywhere has come. In general, a public key-based cryptosystem (PKC) has been used for secure communication in public networks such as the Internet.

그러나, 유비쿼터스 환경에서는 이전에서처럼 사용자가 자신의 전용 단말기를 사용하지 않고 공개된 또는 공용의 단말기를 사용할 필요가 있게 됨에 따라 사용자는 자신의 비밀키를 항상 휴대하여야 하는 문제점이 있다. 예를 들어, 다른 지역에 출장중인 사용자가 자신의 공개키로 암호화된 문서를 전자메일로 수신한 경우 사용자는 자신의 비밀키를 이용하여 암호를 복호화하여야 한다. 그러나, 출장지에서 사용하는 클라이언트 터미널에는 비밀키를 포함한 자신에 대한 어떠한 정보도 저장되어 있지 않다. However, in the ubiquitous environment, as a user needs to use a public or public terminal without using his or her own terminal, there is a problem that a user must always carry his or her private key. For example, if a user traveling to another region receives an e-mail document encrypted with his public key, the user must decrypt the password using his private key. However, the client terminal used in the travel destination does not store any information about itself, including the private key.

이를 해결하기 위한 일반적인 방법으로 스마트카드와 같이 물리적인 저장매체를 활용하는 방법과 사용자의 패스워드를 이용하여 원격지에 사전에 저장된 비밀키를 다운로드하여 사용하는 방법이 제안되고 있다.As a general method for solving this problem, a method of using a physical storage medium such as a smart card and a method of downloading and using a secret key stored in advance in a remote place using a user's password have been proposed.

이중에서, 스마트카드와 같이 물리적인 저장매체를 활용하는 방법은 기밀정보를 저장하는 중요한 수단으로 사용되지만 실제적인 환경에 적용하기 어려운 점이 있다. 구체적으로 예를 들면, 사용자는 스마트카드와의 통신을 위한 별도의 인터페이스를 필요로 한다는 불편함이 있게 된다.Among them, a method of utilizing a physical storage medium such as a smart card is used as an important means for storing confidential information, but it is difficult to apply to a practical environment. Specifically, for example, the user is inconvenient to require a separate interface for communication with the smart card.

이에 따라 사용자가 쉽게 기억하여 이용할 수 있는 사용자의 패스워드를 이용하는 방법이 제안되고 있다. 그러나 대부분의 사용자 패스워드는 상대적으로 작은 공간에서 선택되고 쉽게 기억될 수 있다는 문제점을 가지고 있는데, 이것은 곧 공격자가 패스워드를 쉽게 추측해 낼 수 있음을 의미한다. 이와같은 문제점을 해결하기 위하여 패스워드 기반의 로밍 프로토콜들이 제안되는데, Perlman과 Kaufman, Ford와 Kaliski, 그리고 Jablon 등이 제안한 프로토콜들이 대표적이라 할 것이다.Accordingly, a method of using a user's password that can be easily memorized and used by a user has been proposed. However, most user passwords have the problem that they can be chosen and stored in a relatively small space, which means that an attacker can easily guess the password. To solve this problem, password-based roaming protocols are proposed, and the protocols proposed by Perlman and Kaufman, Ford and Kaliski, and Jablon are representative.

Ford 와 Kaliski의 방법은 패스워드 경화(硬化, hardening) 프로토콜을 통하여 패스워드 정보를 노출시키지 않으며, 다중 서버를 이용하여 안정성을 강화하는 것이다. Ford and Kaliski's method does not expose password information through the password hardening protocol, but enhances stability by using multiple servers.

패스워드 경화 프로토콜은 다음과 같이 동작한다. 서버는 소수 를 선택한다. 이때 이며 는 소수이다. 그리고 서버는 각 클라이언트()를 위한 비밀 지수()를 선택한다. 또한 서버는 함수 를 공개하는데 이 함수는 패스워드를 에서 곱셈 위수 의 원소로 사상시킨다. 이는 패스워드()로부터 경화된 패스워드()를 얻는다.The password hardening protocol works as follows. Server prime Select. At this time And Is a prime number. And the server is responsible for each client ( Secret index for Select). The server also functions This function exposes a password Multiplication factor in Map to the element of. This is a password ( Password hardened from Get)

가. 클라이언트는 임의의 를 선택하여 를 계산한 후 을 서버에게 전송한다.end. Client is random To select After calculating Wow To the server.

나. 서버는 를 계산하여 클라이언트에 전송한다I. The server Compute and send to the client

다. 클라이언트는 를 계산한다.All. Clients Calculate

결과적으로 클라이언트는 를 얻게 된다. 이때 서버는 패스워드() 또는 경화된 패스워드()를 알 수 없게 된다.As a result, the client You get At this time, the server ) Or hardened password ( ) Is unknown.

클라이언트는 이상의 패스워드 경화 프로토콜을 각 서버 와 수행하여 경화된 패스워드 값인 를 얻으며, 이로부터 강력한 비밀값인 를 도출하기 위하여 을 계산한다. 여기에서 KDF는 키 도출 함수(Key Derivation Function)이다. 사용자는 를 이용하여 각 서버 에 인증을 받는다. 이와같은 방법에서는 개의 서버로부터 경화된 패스워드()를 구하고, 이로부터 비밀값을 도출하고 있다.Clients have more than one password hardening protocol for each server And the hardened password value , From which a strong secret value To derive Calculate Here KDF is a key derivation function. The user Each server using To be certified. In this way Hardened passwords from ) And derive a secret value from it.

Jablon의 방법은 근본적으로 Ford와 Kaliski의 방법과 유사하며, 암호화되어 있는 비밀키를 다운로드하여 도출된 비밀값으로 이를 복호화 함으로써 비밀키를 얻는 방법이다.Jablon's method is basically similar to Ford's and Kaliski's method, and obtains the secret key by downloading the encrypted secret key and decrypting it with the derived secret value.

이와같이 종래에 제안된 여러가지 방법들은 개의 서버를 이용한 로밍 프로토콜로서 사용자는 개의 서버로부터 비밀값을 정상적으로 얻어야만 사용자가 원하는 비밀키를 도출할 수 있다는 문제점이 있다. 즉, 단 하나의 서버라도 공격자로부터 손상된 경우에 사용자는 정상적인 비밀키를 도출할 수 없게 된다. 또한, 종래에 제안된 여러가지 방법들은 로밍 상황에서 비밀키의 도출시에 클라이언트가 개의 서버 전체와 프로토콜을 수행함으로써 연산량 및 통신량에 비효율성이 발생할 수 있다는 문제점이 있다.As described above, various methods proposed in the related art Roaming protocol using two servers There is a problem in that the secret key desired by the user can be derived only if the secret values are normally obtained from two servers. In other words, if a single server is compromised from an attacker, the user cannot derive a normal secret key. In addition, various methods proposed in the related art can be used by a client when deriving a secret key in roaming situations. There is a problem that inefficiency may occur in the calculation amount and the communication amount by performing protocols with all four servers.

본 발명이 이루고자 하는 기술적 과제는, 개의 다중 서버에 분산하여 비밀 정보를 저장한 후 개의 정상적인 서버들만으로 비밀키를 복원할 수 있고, 클라이언트가 개의 서버와 프로토콜을 수행함으로써 연산량 및 통신량에 효율성이 발생할 수 있는 비밀키 관리 기능을 가지는 비밀키 단말장치 및 비밀키 관리방법을 제공하는데 있다.The technical problem to be achieved by the present invention, Distributed secrets across multiple servers Can restore the private key with only three normal servers, The present invention provides a secret key terminal and a secret key management method having a secret key management function that can generate efficiency in throughput and communication by performing protocols with two servers.

상기 기술적 과제를 이루기 위한 본 발명의 비밀키 관리 기능을 가지는 비밀키 단말장치는, 클라이언트, 서버 및 소정의 시스템 매개변수를 생성하는 시스템관리자로 구성되는 네트워크 환경에서 비밀키 관리 기능을 가지는 비밀키 단말장치에 있어서, 상기 시스템 매개변수를 기초로 난수를 생성하는 난수 생성부; 상기 난수를 기초로 소정의 다항식을 생성하는 다항식 생성부; 상기 다항식의 계수로부터 사용자 검증을 위한 검증값을 생성하는 검증값 생성부; 상기 다항식의 계수로부터 개의 비밀값 부분을 생성하는 비밀값 요소 생성부; 상기 난수와 사용자 패스워드 및 사용자 아이디를 기초로 생성한 겹선형쌍을 이용하여 마스터키와 제 1 검증자를 생성하는 비밀정보 생성부; 상기 마스터키를 이용하여 자체적으로 생성된 비밀키를 암호화하는 암호화부; 및 상기 검증값, 상기 비밀값 부분, 상기 사용자 아이디, 상기 암호화된 비밀키 및 제 1 검증자를 상기 개의 비밀값 부분 각각에 대응하는 서버로 송신하는 송신부를 포함하고, 상기 개의 서버 각각에 전송된 특정한 비밀값 부분에 대하여 상기 검증값과의 검증이 이루어지는 경우에 상기 각각의 서버로 전송된 상기 사용자 아이디, 암호화된 비밀키, 제 1 검증자 및 비밀값 부분이 등록되는 것을 특징으로 하는 비밀키 관리 기능을 가지는 비밀키 단말장치를 가진다.A secret key terminal having a secret key management function of the present invention for achieving the above technical problem is a secret key terminal having a secret key management function in a network environment consisting of a client, a server and a system manager for generating predetermined system parameters. An apparatus comprising: a random number generator for generating a random number based on the system parameters; A polynomial generator for generating a predetermined polynomial based on the random number; A verification value generating unit generating a verification value for user verification from coefficients of the polynomial; From the coefficient of the polynomial A secret value element generator for generating two secret value parts; A secret information generation unit for generating a master key and a first verifier using the fold-pair pair generated based on the random number, the user password, and the user ID; An encryption unit for encrypting a secret key generated by itself using the master key; And the verification value, the secret value portion, the user ID, the encrypted secret key and the first verifier A transmitting unit for transmitting to a server corresponding to each of the four secret value portions; The user ID, the encrypted secret key, the first verifier and the secret value portion transmitted to each server are registered when the verification is performed with the verification value for the specific secret value portion transmitted to each of the respective servers. And a secret key terminal having a secret key management function.

상기 기술적 과제를 이루기 위한 본 발명의 비밀키 관리 기능을 가지는 비밀키 관리방법은, 클라이언트, 서버 및 소정의 시스템 매개변수를 생성하는 시스템관리자로 구성되는 네트워크 환경에서 상기 클라이언트가 상기 서버에 비밀키를 등록하는 방법에 있어서, 상기 시스템 매개변수를 기초로 난수를 생성하고, 상기 난수를 기초로 소정의 다항식을 생성하는 단계; 상기 다항식의 계수로부터 사용자 검증을 위한 검증값을 생성하여 상기 서버에 송신하는 단계; 사용자 패스워드와 사용자 아이디로부터 겹선형쌍 연산값을 생성하고, 상기 겹선형쌍 연산값을 기초로 마스터키와 제 1 검증자를 생성하는 단계; 상기 마스터키를 이용하여 자체적으로 생성된 비밀키를 암호화하여 암호화된 비밀키를 생성하는 단계; 상기 다항식의 계수로부터 개의 비밀값 부분을 생성하는 단계; 및 상기 사용자 아이디, 암호화된 비밀키, 제 1 검증자 비밀값 부분을 상기 개의 비밀값 부분 각각에 대응하는 서버로 송신하는 단계를 포함하고, 상기 개의 서버 각각에 송신된 특정한 비밀값 부분에 대하여 상기 검증값과의 검증이 이루어지는 경우에 상기 서버로 전송된 상기 사용자 아이디, 암호화된 비밀키, 제 1 검증자 및 비밀값 부분이 등록되도록 하는 것을 특징으로 하는 비밀키 관리 기능을 가지는 비밀키 관리방법을 가진다.In the secret key management method having a secret key management function of the present invention for achieving the technical problem, the client in the network environment consisting of a client, a server and a system manager for generating a predetermined system parameters, A method of registering, comprising: generating a random number based on the system parameter and generating a predetermined polynomial based on the random number; Generating a verification value for user verification from the coefficients of the polynomial and transmitting it to the server; Generating a double pair operation value from a user password and a user ID, and generating a master key and a first verifier based on the double pair operation value; Generating an encrypted private key by encrypting a private key generated using the master key; From the coefficient of the polynomial Generating two secret value portions; And the user ID, encrypted secret key, first verifier secret value portion. Transmitting to a server corresponding to each of the four secret portion portions; The user ID, the encrypted secret key, the first verifier and the secret value portion transmitted to the server are registered when the verification with the verification value is performed on the specific secret value portion transmitted to each of the plurality of servers. It has a secret key management method having a secret key management function.

또한, 상기 과제를 이루기 위한 본 발명의 비밀키 관리 기능을 가지는 비밀키 관리방법은, 클라이언트, 서버 및 시스템 매개변수를 생성하는 시스템관리자로 구성되는 네트워크 환경에서 사용자 아이디, 암호화된 비밀키, 제 1 검증자, 비밀값 부분을 등록하고 있는 개의 서버를 기초로 상기 클라이언트가 비밀키를 복원하는 방법에 있어서, 패스워드 은닉을 위한 난수를 생성하는 단계; 상기 난수를 기초로 사용자 패스워드 정보를 은닉하여 은닉된 패스워드를 생성하는 단계; 상기 은닉된 패스워드와 사용자 아이디를 임의로 선정된 상기 개의 서버보다 적은 개수의 개의 서버에 송신하는 단계; 상기 서버에 등록되어 있는 상기 암호화된 비밀키, 제 1 검증자와 함게 경화된 패스워드를 상기 서버로부터 수신하는 단계; 상기 경화된 패스워드를 기초로 비밀값을 구하는 단계; 상기 비밀값을 기초로 마스터키와 제 2 검증자를 구하는 단계; 상기 제 1 검증자와 상기 제 2 검증자를 비교하는 단계; 및 상기 제 1 검증자와 상기 제 2 검증자가 일치하는 경우에 상기 마스터키를 통하여 상기 암호화된 비밀키를 복호화하여 비밀키를 얻는 단계를 포함하는 것을 특징으로 하는 비밀키 관리 기능을 가지는 비밀키 관리방법을 가진다.In addition, the secret key management method having a secret key management function of the present invention for achieving the above object, the user ID, encrypted secret key, the first in a network environment consisting of a system manager for generating a client, server and system parameters The validator, registering the secret part CLAIMS 1. A method for recovering a private key by a client based on two servers, the method comprising: generating a random number for password concealment; Concealing user password information based on the random number to generate a hidden password; The secret password and user ID are randomly selected Fewer than servers Transmitting to four servers; Receiving a hardened password from the server with the encrypted secret key registered with the server and a first verifier; Obtaining a secret value based on the hardened password; Obtaining a master key and a second verifier based on the secret value; Comparing the first verifier with the second verifier; And obtaining a secret key by decrypting the encrypted secret key through the master key when the first verifier and the second verifier coincide with each other. Have a way.

본 발명에서 사용하는 겹선형쌍(bilinear pairings), 즉 대수 곡선의 웨일(Weil)쌍과 테이트(Tate)쌍은 대수기하 연구에서 매우 중요한 도구들이다. 암호에서 겹선형쌍의 초기 응용은 이산대수문제(Discrete Logarithm Problem)의 평가를 위한 것이었다. 예를 들면, 웨일(Weil)쌍을 이용한 MOV 공격이나 테이트(Tate)쌍을 이용한 FR 공격은 특정 타원곡선이나 초타원곡선에서의 이산대수문제를 유한체에서의 이산대수문제로 좁혀준다.Bilinear pairings used in the present invention, that is, Weil and Tate pairs of algebraic curves, are very important tools in algebraic geometry studies. The initial application of double-linear pairs in cryptography was for the evaluation of the discrete logarithm problem. For example, MOV attacks using Weil pairs or FR attacks using Tate pairs narrow the discrete algebra problem in a specific elliptic curve or super elliptic curve to a discrete algebra problem in finite body.

이하에서, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대하여 상세히 설명한다.Hereinafter, with reference to the accompanying drawings will be described in detail a preferred embodiment of the present invention.

도 1은 본 발명에 따른 비밀키 관리를 위하여 클라이언트, 서버 및 시스템관리자를 나타내는 도면이다.1 is a diagram illustrating a client, a server, and a system administrator for secret key management according to the present invention.

도 1을 살펴보면, 본 발명의 주요한 구성요소는 클라이언트(100), 서버(200) 및 시스템관리자(300)를 나타내며, 이들 각각의 참여자는 컴퓨터 시스템으로 구현될 수 있다.Referring to FIG. 1, the main components of the present invention represent a client 100, a server 200, and a system manager 300, each of which may be implemented as a computer system.

클라이언트(100)는 검증 가능한 비밀공유기법을 이용하여 생성한 개의 비밀값 부분과 마스터키를 이용하여 암호화한 비밀키를 개의 서버(200)에 등록한다. 또한, 은닉된 패스워드를 개의 서버(200)에 전송한 후 응답되어 수신된 비밀값으로부터 마스터키를 복원하여 함께 수신된 암호화된 비밀키를 검색한다.Client 100 is generated using a verifiable secret sharing technique Secrets encrypted using two secret value parts and a master key The server 200 is registered. In addition, the secret password After transmitting to the server 200, the master key is recovered from the received secret value in response to retrieve the encrypted secret key received together.

서버(200)는 클라이언트(100)가 송신한 비밀값 부분을 검증하여 정상적인 경우 수신된 비밀 정보들을 저장하여 안전하게 관리한다. 또한, 클라이언트(100)로부터 수신한 은닉된 패스워드와 저장하고 있는 비밀값 부분으로부터 경화된 패스워드를 생성하여 암호화된 비밀키와 함께 클라이언트(100)에게 송신한다.The server 200 verifies the secret value transmitted by the client 100 and stores the received secret information in a normal case and safely manages it. In addition, a hardened password is generated from the secret password received from the client 100 and the stored secret value portion, and transmitted to the client 100 together with the encrypted secret key.

시스템관리자(300)는 시스템 초기화시에만 동작하며 자신이 생성한 시스템 매개변수들을 공개한다. 그러나 시스템관리자(300)는 비밀키 등록 및 검색과정에는 참여하지 않는다.The system manager 300 operates only at system initialization and discloses system parameters generated by the system manager 300. However, the system manager 300 does not participate in the secret key registration and retrieval process.

도 2a는 본 발명에 따른 시스템관리자의 시스템 매개변수 생성하는 것을 나타내는 도면이고, 도 2b는 본 발명에 따른 비밀키를 등록하는 과정에서 클라이언트가 서버에 비밀 정보를 송신하는 것을 나타내는 도면이며, 도 2c는 본 발명에 따른 비밀키를 복원하는 과정에서 클라이언트와 서버사이의 정보를 송수신하는 것을 나타내는 도면이다.Figure 2a is a diagram showing the generation of system parameters of the system administrator according to the present invention, Figure 2b is a diagram showing the client transmits secret information to the server in the process of registering the secret key according to the present invention, Figure 2c Is a diagram illustrating transmission and reception of information between a client and a server in the process of restoring a secret key according to the present invention.

도 2a를 살펴보면, 클라이언트(100)와 서버(200) 모두가 공유하는 시스템 매개변수들이 시스템관리자(300)에 의해서 생성되어 공개된다. 이 과정에서 임의의 순환군 가 생성되며 이때 두 순환군의 위수는 이다. 순환군 상의 임의의 생성자 를 생성한다. 그리고 두 순환군에 대한 겹선형 사상을 정의하고 변형된 겹선형 사상 을 생성한다. 나아가, 시스템관리자(300)는 해시함수 를 선택한다. 시스템관리자(300)는 시스템 매개변수로서 이상에서 생성한 < >를 클라이언트(100)와 서버(200)에 공개한다.Referring to FIG. 2A, system parameters shared by both the client 100 and the server 200 are generated and disclosed by the system manager 300. Random cycle in this process and Is generated, and the power of the two cycles is to be. Cycle Constructors on top Create And define the double line mapping for the two cycle groups and transform the double line mapping Create Furthermore, the system manager 300 is a hash function Select. The system manager 300 generates the above <as system parameters. > Is published to the client 100 and the server 200.

겹선형 쌍에 대한 특징을 보기 위하여, 동일한 위수 를 갖는 덧셈군 과 곱셈군 가 있다고 가정한다. 그러한 그룹 내에서 이산대수문제를 푸는 것이 어렵다고 본다. 여기에서 를 덧셈군 의 생성자라고 한다. 그리고, 을 다음 속성을 만족하는 겹선형 사상이라 한다.To see the features for a parallel pair, the same order Addition group with And multiplication group Assume that there is. It is difficult to solve the discrete algebra problem within such a group. From here Addition group This is called the constructor of. And, Is called an overlapping event that satisfies the following property:

1. Bilinearity : 모든 와 모든 에 대하여, 이다.1.Bilinearity: all And all about, to be.

2. Non-degency : 모든 에 대하여, 이면 , 이다.2.Non-degency: all about, If, to be.

3. Computability : 모든 에 대하여, 를 계산하기 위한 효율적인 알고리즘이 존재한다.3. Computability: all about, There is an efficient algorithm to calculate.

도 2b를 살펴보면, 시스템관리자(300)가 공개한 시스템 매개변수에 기반하여 클라이언트(100)는 비밀값인 임의의 난수를 생성한 후 검증 가능한 비밀공유기법(VSS)을 이용하여 개의 비밀값 부분을 생성한다. 그리고 클라이언트(100)는 사용자 패스워드와 비밀값을 입력으로 한 겹선형쌍 연산과 해시 함수를 통하여 마스터키를 도출하여 비밀키를 암호화한 후 <사용자 아이디(), 개의 비밀값 부분, 암호화된 비밀키, 검증자>를 개의 서버(200)에 보내면 각 서버(200)는 비밀값 부분의 정확성을 검증하여 이상이 있으면 클라이언트(100)에게 오류응답을 하고 그렇지 않으면 수신된 값들을 안전하게 저장하여 등록한다.Referring to FIG. 2B, based on the system parameters disclosed by the system manager 300, the client 100 generates a random random value that is a secret value and then uses a verifiable secret sharing technique (VSS). Create two secret parts. In addition, the client 100 derives the master key through a double pair operation and hash function using the user password and the secret value and encrypts the secret key. ), Secret parts, encrypted secret key, verifier> When the server 200 is sent to each server 200, the server 200 checks the accuracy of the secret value part, and if there is an error, the client 100 responds to the error. Otherwise, the received values are safely stored and registered.

도 2c를 살펴보면, 시스템관리자(300)가 공개한 시스템 매개변수에 기반하여 클라이언트(100)는 임의의 난수를 생성하여 사용자로부터 입력받은 패스워드를 은닉하고 사용자 아이디()와 함께 임의로 선정된 개의 서버(200)에 송신한다. 서버(200)는 등록되어 있는 정보를 검색하여 수신된 은닉된 패스워드와 검색한 비밀값 부분을 입력으로 한 겹선형쌍 연산을 수행하여 경화된 패스워드를 생성하고 암호화된 비밀키, 검증값과 함께 경화된 패스워드를 클라이언트(100)에게 송신한다. 클라이언트(100)는 수신한 개의 경화된 패스워드의 은닉값을 제거하며 이들로부터 마스터키를 도출하고 검증값과 비교하여 마스터키의 정당성을 검증한다. 마스터키의 정당성이 검증되면 클라이언트(100)는 암호화된 비밀키를 복호화하여 비밀키를 얻는다.Referring to Figure 2c, based on the system parameters published by the system administrator 300, the client 100 generates a random number to conceal the password received from the user and the user ID ( Randomly selected with To the two servers 200. The server 200 searches for the registered information, performs a double-linear pair operation with input of the received secret password and the searched secret value, generates a hardened password, and hardens it with the encrypted secret key and verification value. The received password to the client 100. Client 100 received We remove the hidden values of two hardened passwords and derive the master key from them and compare it with the verification value to verify the validity of the master key. If the validity of the master key is verified, the client 100 decrypts the encrypted secret key to obtain a secret key.

도 3은 본 발명에 따른 클라이언트가 비밀 정보를 서버에 송신하는 과정을 나타내는 순서도이다.3 is a flowchart illustrating a process in which a client transmits secret information to a server according to the present invention.

본 발명에서 시스템 매개변수는 도 2a에 나타나는 것처럼 시스템관리자(300)에 의해서 위수가 인 타원곡선상의 점들의 군 과 역시 위수가 인 유한체 를 생성하고 다음 수학식 1과 같은 겹선형 사상을 정의한다.In the present invention, the system parameter is determined by the system administrator 300 as shown in FIG. 2A. Group of points on an elliptic curve And also the head Phosphorus Is generated and defines the parallel linear mapping as shown in Equation 1 below.

시스템관리자(300)는 또한 다음 수학식 2의 사상을 만족하는 세 개의 암호학적 해시 함수 를 생성한다.The system manager 300 also includes three cryptographic hash functions that satisfy the following equation (2): Create

그리고, 시스템관리자(300)는 의 임의의 생성자 를 선택하여 수학식 3과 같이 를 계산한다.And, the system manager 300 Random constructor To select Equation 3 Calculate

수학식 3에서의 는 임의의 값이며, 이 주어졌을 때 를 주어진 다항시간 이내에 계산하는 것은 불가능하다. 시스템관리자(300)는 시스템 매개변수를 생성하여 공개한다. 여기에서 시스템 매개변수는 제 1 순환군 , 제 2 순환군 , 겹선형쌍 , 상기 제 1 순환군 과 상기 제 2 순환군 의 위수, 상기 제 1 순환군 의 생성자 , 상기 생성자 에 임의의 값을 곱한 생성자 와 해시함수 를 포함한다.In equation (3) Is any value, Wow Given this It is not possible to calculate P within a given polynomial time. The system manager 300 generates and publishes system parameters. Where the system parameter is the first cycle group , 2nd cycle group , Double pair , The first circulation group And the second circulation group Water , The first circulation group Constructor , The constructor Constructor multiplied by a random value And hash functions And It includes.

클라이언트(100)는 에 속하고 균일한 분포도를 갖는 임의의 난수 를 선정하고(S310), 클라이언트(100)는 수학식 4를 만족하는 차수가 인 두개의 다항식을 선정한다(S420). 이때 이고, 이다.Client 100 Random numbers belonging to and having a uniform distribution Wow (S310), the client 100 is a degree that satisfies the equation (4) Two polynomials are selected (S420). At this time ego, to be.

, ,

다음 클라이언트(100)는 두 개 다항식의 개의 계수로부터 수학식 5를 각각 생성하여 서버(200)에 배포한다(S330).The client 100 then has two polynomials Equation 5 is generated from the coefficients and distributed to the server 200 (S330).

이 식에서 = 0, 1, ..., k-1이며, 계산된 값은 추후 서버의 검증식에서 이용된다.In this expression = 0, 1, ..., k-1, and the calculated value is used later in the verification formula of the server.

다음 클라이언트(100)는 사용자의 패스워드()와 아이디()로부터 수학식 6을 각각 계산한다(S340).The client 100 then uses the user's password ( ) And ID ( Equation 6 is calculated from the equation S) at step S340.

여기에서 해시함수 에서 으로의 사상이다. 즉 임의의 비트스트링 값을 타원곡선 상의 점들의 군 의 원소로 사상한다.Hash function here silver in It is an idea. That is, a group of points on an elliptic curve Maps to an element of.

다음 클라이언트(100)는 수학식 7에 의하여 겹선형쌍 연산값()를 구하고, 수학식 8에 의하여 마스터키()과 검증자()(특허청구범위에서는 제 1 검증자)를 계산한다(S350).Next, the client 100 calculates the double-linear pair operation value ( ), And the master key ( ) And validator ( ) (The first verifier in the claims) is calculated (S350).

수학식 8에서 해시함수 는 곱셈순환군 에서 비트스트링으로의 사상이며, 는 k비트스트링과 군 의 곱에서 로의 사상이다.Hash Function in Equation 8 Multiplication cycle group To bitstrings, K bitstrings and military In the product of It is the thought of

다음 클라이언트(100)는 수학식 9와 같이 마스터키()로 비밀키()를 암호화하여 암호화된 비밀키()와, 두개의 다항식에서 개의 비밀값 부분을 수학식 10과 같이 계산한다(S360).Next, the client 100 is a master key (Equation 9) ) With the secret key ( ) Encrypted by encrypting the secret key ( ) And in two polynomials The secret value portion is calculated as in Equation 10 (S360).

수학식 10에서 i = 1 , 2 , ... , n 이다. In Equation 10, i = 1, 2, ..., n.

다음 클라이언트(100)는 n개의 서버(200)에게 각각 <사용자 아이디(), 개의 비밀값 부분, 암호화된 비밀키, 검증자( )> 를 안전한 채널을 통하여 전송한다(S370).Next, the client 100 transmits to each of the n servers 200 the <user ID ( ), Secret parts, encrypted secret key, verifier ( )> Is transmitted through a secure channel (S370).

도 4는 본 발명에 따른 서버가 비밀 정보를 수신하여 등록하는 과정을 나타내는 순서도이다.4 is a flowchart illustrating a process of receiving and registering secret information by a server according to the present invention.

도 4를 살펴보면, 클라이언트(100)의 비밀 정보 등록요청을 수신(S410)한 각각의 서버(200)는 수학식 11의 자신의 부분값이 검증식을 만족하는지 판단하게 된다(S420).Referring to FIG. 4, each server 200 that receives the secret information registration request of the client 100 (S410) determines whether its own partial value of Equation 11 satisfies the verification equation (S420).

이 식에서 Ej는 수학식 5에서와 같이 계산된 것이다. In this equation, Ej is calculated as in Equation 5.

수학식 11을 만족하지 않으면 서버(200)는 클라이언트(100)에게 오류응답을 하고(S430) 종료하게 된다. 만약, 수학식 11을 만족하게 된다면 <사용자 아이디(), 개의 비밀값 부분, 암호화된 비밀키, 검증자( )>를 안전하게 저장하여 등록한다(S440).If the equation 11 is not satisfied, the server 200 responds to the client 100 with an error (S430). If the following Equation 11 is satisfied, <User ID ( ), Secret parts, encrypted secret key, verifier ( )> Securely register and store (S440).

이상에서와 같이 등록하는 단계에서 클라이언트(100)는 <사용자 아이디(), 개의 비밀값 부분, 암호화된 비밀키, 검증자>를 서버(200)에 등록하도록 요청하게 되는데, 사용자의 전용 클라이언트(100) 단말기에서 이루어지게 된다.In the step of registering as described above, the client 100 is <user ID ( ), Two secret value parts, an encrypted secret key, and a verifier> are requested to be registered in the server 200, which is performed by the user's dedicated client 100 terminal.

반면에 이후에 설명하는 비밀키를 복원하는 단계는 다른 클라이언트(100) 단말기에서 이루어지게 된다.On the other hand, restoring the secret key, which will be described later, is performed in the other client 100 terminal.

클라이언트(100)는 균일한 분포도를 갖는 임의의 난수 를 선정하고 수학식 12와 같이 사용자 패스워드 정보를 은닉한다(S510).Client 100 can be any random number with a uniform distribution Select and conceal user password information as shown in Equation 12 (S510).

여기에서 는 수학식 6에서와 같이 계산한다. 클라이언트(100)는 사용자의 아이디와 은닉된 패스워드()를 임의로 선정된 개의 서버(200)에게 전송하여 도 4에서 살펴본 바와 같이 등록하는 단계에서 저장된 정보를 요청한다(S520).From here Is calculated as in Equation 6. Client 100 is a user ID and a secret password ( ) Randomly selected The server 200 requests the stored information in the step of registering the server 200 as shown in FIG. 4 (S520).

여기에서, 서버(200)는 은닉된 패스워드()와 사용자 아이디()로부터 해당하는 저장된 정보를 검색하여, 수학식 13을 계산한다.Here, the server 200 is a secret password ( ) And user ID ( Equation 13 is calculated by searching for the corresponding stored information.

다음 클라이언트(100)는 각각의 서버(200)로부터 경화된 패스워드()및 상기 서버(200)에 등록되어 있는 암호화된 비밀키()와 검증자()(특허청구범위에서는 제 1 검증자)를 송신받는다(S530).The client 100 then generates a hardened password (from each server 200). And an encrypted secret key (registered with the server 200) ) And validator ( ) (In the claims, the first verifier) is received (S530).

다음 클라이언트(100)는 수학식 14의 라그랑쥐 계수를 계산한다(S540). Next, the client 100 calculates a Lagrangian coefficient of Equation 14 (S540).

다음 클라이언트(100)는 패스워드 은닉지수 를 이용하여 수학식 15와 같이 계산된 비밀값()을 구한다(S550). 개의 서버(200) 중에서 임의로 선정된 개의 서버(200) 집합이다.Next, the client 100 has a password concealment index. Using the secret value calculated as in Equation 15 ( To obtain (S550). Is Randomly selected from two servers 200 Server 200 is a set of.

다음 수학식 16과 같이 계산된 마스터키()와 계산된 검증자()(특허청구범위에서는 제 2 검증자)를 구한다(S560).The master key calculated as in Equation 16 below. ) And the calculated verifier ( ) (The second verifier in the claims) (S560).

다음 클라이언트(100)는 계산된 검증자()와 단계S530에서 수신한 검증자()를 비교한다(S570). 비교식이 만족하지 않으면 검색과정을 중단하고(S580) 종료한다. 만약, 비교식이 만족되면 계산된 마스터키()로 암호화된 비밀키()를 복호화하여 비밀키()를 얻게 된다(S590).The client 100 then computes the calculated verifier ( ) And the verifier received in step S530 ( ) Is compared (S570). If the comparison is not satisfied, the search process is stopped (S580) and ends. If the comparison is satisfied, the calculated master key ( Private key encrypted with) ) And decrypt the secret key ( ) Is obtained (S590).

도 6은 본 발명에 따른 클라이언트의 내부 구성을 나타낸 개략 블럭도이다.6 is a schematic block diagram showing an internal configuration of a client according to the present invention.

도 6은 난수 생성부(110); 다항식 생성부(120); 패스워드 은닉부(125); 검증값 생성부(130); 비밀값 요소 생성부(135); 비밀정보 생성부(140); 암호화부(150); 송신부(160); 수신부(170); 계산부(180); 비교부(185); 및 복호화부(190)를 가진다.6 shows a random number generator 110; Polynomial generator 120; Password concealment unit 125; Verification value generation unit 130; A secret value element generator 135; Secret information generation unit 140; An encryption unit 150; A transmitter 160; Receiver 170; A calculator 180; Comparator 185; And a decoder 190.

난수 생성부(110)는 비밀키 단말장치는 시스템 매개변수를 기초로 비밀값 생성을 위한 난수를 생성한다. 다항식 생성부(120)는 난수를 기초로 소정의 다항식을 생성한다. 패스워드 은닉부(125)는 난수를 기초로 사용자 패스워드 정보를 은닉하여 은닉된 패스워드를 생성한다. 검증값 생성부(130)는 다항식의 계수로부터 사용자 검증을 위한 검증값을 생성한다. 비밀값 요소 생성부(135)는 다항식에서 개의 비밀값 부분을 생성한다. 비밀정보 생성부(140)는 난수, 사용자 패스워드 및 사용자 아이디를 기초로 겹선형쌍 연산값을 생성하고, 겹선형쌍 연산값을 기초로 마스터키와 검증자를 생성한다. 암호화부(150)는 마스터키로부터 암호화된 비밀키를 생성한다. 송신부(160)는 검증값, 개의 비밀값 부분 및 마스터키와 검증자를 개의 서버에 송신한다. 수신부(170)는 서버로부터 암호화된 비밀키, 검증자 및 경화된 패스워드를 수신받는다. 계산부(180)는 경화된 패스워드로부터 계산된 비밀값, 계산된 마스터키, 계산된 검증자를 구한다. 비교부(185)는 계산된 검증자와 수신부에 수신된 검증자를 비교한다. 복호화부(190)는 계산된 마스터키를 기초로 암호화된 비밀키를 복호화하여 비밀키를 얻는다.The random number generator 110 generates a random number for generating a secret value based on the system parameter of the secret key terminal device. The polynomial generator 120 generates a predetermined polynomial based on a random number. The password concealment unit 125 conceals user password information based on the random number to generate the concealed password. The verification value generator 130 generates a verification value for user verification from coefficients of the polynomial. Secret value element generator 135 in the polynomial Create two secret parts. The secret information generating unit 140 generates a double linear pair operation value based on a random number, a user password, and a user ID, and generates a master key and a verifier based on the double linear pair calculation value. The encryption unit 150 generates an encrypted secret key from the master key. Transmitter 160 is a verification value, Secret parts and master key and validator Send to one server. The receiver 170 receives an encrypted secret key, a verifier, and a hardened password from the server. The calculator 180 calculates the secret value, the calculated master key, and the calculated verifier from the hardened password. The comparing unit 185 compares the calculated verifier with the validator received in the receiving unit. The decryption unit 190 decrypts the encrypted secret key based on the calculated master key to obtain a secret key.

여기에서, 난수 생성부(110)는 시스템 매개변수를 기초로 비밀값 생성을 위한 난수를 생성하는 것 뿐만 아니라, 패스워드 은닉을 위한 난수를 생성하는 것을 더 포함한다. 또한 송신부(160)는 검증값, 개의 비밀값 부분 및 마스터키와 검증자를 개의 서버에 송신하는 것 뿐만 아니라, 은닉된 패스워드를 송신하는 것을 더 포함한다.Here, the random number generator 110 may further include not only generating a random number for secret value generation based on the system parameter, but also generating a random number for password hiding. In addition, the transmitter 160 is a verification value, Secret parts and master key and validator In addition to sending to two servers, the method further includes transmitting a hidden password.

이와같은 비밀키 단말장치는 클라이언트(100)에서 서버(200)로 비밀정보를 등록하는 것 뿐만 아니라, 별개의 클라이언트(100)에서 서버(200)에 등록되어 있는 비밀정보를 통하여 자신의 비밀키를 복원하기 위하여 사용될 수 있다.Such a secret key terminal device not only registers secret information from the client 100 to the server 200, but also transmits its own secret key through the secret information registered in the server 200 in the separate client 100. Can be used to restore.

비밀키 단말장치에서 비밀키를 복원하기 위하여 사용되는 구성부분은 패스워드 생성부(125), 수신부(170), 계산부(180), 비교부(185) 및 복호화부(190)이고 여기에 난수 생성부(110)와 송신부(160)가 동작하게 된다. 도 6에서 설명한 구체적인 설명에 대하여는 도 1 내지 도 5에서 설명한 것과 동일한 바 여기에서 구체적인 설명은 상술한 것으로 대체하기로 한다.The components used to recover the secret key in the secret key terminal apparatus are a password generator 125, a receiver 170, a calculator 180, a comparator 185 and a decryptor 190. Random numbers are generated here. The unit 110 and the transmitter 160 operate. The detailed description described with reference to FIG. 6 is the same as that described with reference to FIGS. 1 to 5, and the detailed description will be replaced with the above description.

상술한 본 발명의 비밀키 로밍 기법을 통하여 로밍 중인 사용자는 자신의 전용 클라이언트 단말기 이외의 단말기에서 서버에 등록해 놓은 비밀키를 안전하게 관리할 수 있다. 본 발명의 일실시예에서는 비밀키에 대하여 설명하였으나, 나아가 다른 비밀 정보도 동일한 방법으로 관리할 수 있을 것이다.A user who is roaming through the secret key roaming technique of the present invention described above can safely manage a secret key registered in a server in a terminal other than his own client terminal. Although an embodiment of the present invention has been described with respect to the secret key, other secret information may also be managed in the same way.

본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD_ROM, 자기테이프, 플로피디스크 및 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드로 저장되고 실행될 수 있다.The invention can also be embodied as computer readable code on a computer readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored. Examples of computer-readable recording media include ROM, RAM, CD_ROM, magnetic tape, floppy disks, and optical data storage, and may also include those implemented in the form of carrier waves (eg, transmission over the Internet). . The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.

이상에서와 같이 도면과 명세서에서 최적 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.As described above, optimal embodiments have been disclosed in the drawings and the specification. Although specific terms have been used herein, they are used only for the purpose of describing the present invention and are not intended to limit the scope of the invention as defined in the claims or the claims. Therefore, those skilled in the art will understand that various modifications and equivalent other embodiments are possible from this. Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.

본 발명은 비밀키 관리 기능을 가지는 비밀키 단말장치 및 비밀키 관리방법에 관한 것으로 다음과 같은 효과가 있다.The present invention relates to a secret key terminal having a secret key management function and a secret key management method.

종래에 제안된 다중서버 방식에서는 개의 정상적인 서버로부터 비밀정보를 모두 가져와야만 비밀키를 얻을 수 있었으나, 본 발명에서는 개(여기에서, n )의 서버 중에서 개의 정상적인 서버로부터 비밀정보를 가져오면 비밀키를 얻을 수 있게 되므로, 개까지의 서버 손상에도 비밀키를 얻을 수 있는 효과가 있다. 또한, 개의 정상적인 서버로부터 비밀정보를 가져오면 되기 때문에, 클라이언트에서의 통신량과 연산량을 크게 줄일 수 있는 효과가 있다.In the conventional multi-server method The secret key could only be obtained by importing all the secret information from two normal servers. Dogs, where n Of servers If you get secret information from normal servers, you can get a secret key. It is also possible to obtain a secret key in case of server damage. Also, Since the secret information can be obtained from normal servers, it is possible to greatly reduce the amount of communication and computation at the client.

겹선형쌍을 이용한 사상은 테이트 쌍이나 베일 쌍을 타원곡선 상에서 구현하여 사용할 수 있다. 이때 테이트 쌍이나 베일 쌍의 계산이 상대적으로 복잡하여 연산의 비효율성이 지적되었으나, 현재 암호학자들의 지속적인 연구로 인하여 연산 시간 개선이 꾸준히 이루어지고 있으며 최근에는 계산량을 줄이는 알고리즘의 연구에 힘입어 테이트 쌍이나 베일 쌍의 연산도 매우 효율적으로 계산되고 있다. 따라서 겹선형 쌍의 연산을 수행하는 서버에서의 계산량도 효율적으로 이루어질 수 있다.The mapping using the overlapping pair may be implemented by implementing a pair of tessellations or a pair of veils on an elliptic curve. At this time, the computational inefficiency of the pair and the veil pair was relatively complicated, but the computational time has been steadily improved due to the continuous study of cryptographers. In addition, the operation of the bale pair is calculated very efficiently. Therefore, the amount of computation at the server performing the operation of the fold pair can also be efficiently performed.

도 1은 본 발명에 따른 비밀키 관리를 위하여 클라이언트, 서버 및 시스템관리자를 나타내는 도면이다.1 is a diagram illustrating a client, a server, and a system administrator for secret key management according to the present invention.

도 2a는 본 발명에 따른 시스템관리자의 시스템 매개변수 생성하는 것을 나타내는 도면이다.Figure 2a is a diagram showing the generation of system parameters of the system administrator in accordance with the present invention.

도 2b는 본 발명에 따른 비밀키를 등록하는 과정에서 클라이언트가 서버에 비밀 정보를 송신하는 것을 나타내는 도면이다.2B is a diagram illustrating a client transmitting secret information to a server in the process of registering a secret key according to the present invention.

도 2c는 본 발명에 따른 비밀키를 복원하는 과정에서 클라이언트와 서버사이의 정보를 송수신하는 것을 나타내는 도면이다.Figure 2c is a diagram illustrating the transmission and reception of information between the client and the server in the process of restoring the secret key according to the present invention.

도 3은 본 발명에 따른 클라이언트가 비밀 정보를 서버에 송신하는 과정을 나타내는 순서도이다.3 is a flowchart illustrating a process in which a client transmits secret information to a server according to the present invention.

도 4는 본 발명에 따른 서버가 비밀 정보를 수신하여 등록하는 과정을 나타내는 순서도이다.4 is a flowchart illustrating a process of receiving and registering secret information by a server according to the present invention.

도 5는 본 발명에 따른 클라이언트가 비밀키를 복원하는 과정을 나타내는 순서도이다.5 is a flowchart illustrating a process of restoring a secret key by a client according to the present invention.

도 6은 본 발명에 따른 클라이언트의 내부 구성을 나타낸 개략 블럭도이다.6 is a schematic block diagram showing an internal configuration of a client according to the present invention.

<도면의 주요부분에 대한 부호의 설명><Description of the symbols for the main parts of the drawings>

100 : 클라이언트, 110 : 난수 생성부,100: client, 110: random number generation unit,

120 : 다항식 생성부, 125 : 패스워드 은닉부,120: polynomial generation unit, 125: password concealment unit,

130 : 검증값 생성부, 135 : 비밀값 요소 생성부,130: verification value generation unit, 135: secret value element generation unit,

140 : 비밀정보 생성부, 150 : 암호화부,140: secret information generation unit, 150: encryption unit,

160 : 송신부, 170 : 수신부,160: transmitter, 170: receiver,

180 : 계산부, 185 : 비교부,180: calculation unit, 185: comparison unit,

190 : 복호화부, 200 : 서버,190: decryption unit, 200: server,

300: 시스템관리자.300: system administrator.

Claims (17)

클라이언트, 서버 및 소정의 시스템 매개변수를 생성하는 시스템관리자로 구성되는 네트워크 환경에서 비밀키 관리 기능을 가지는 비밀키 단말장치에 있어서,A secret key terminal having a secret key management function in a network environment consisting of a client, a server, and a system manager for generating predetermined system parameters, 상기 시스템 매개변수를 기초로 난수를 생성하는 난수 생성부;Random number generation unit for generating a random number based on the system parameters; 상기 난수를 기초로 소정의 다항식을 생성하는 다항식 생성부;A polynomial generator for generating a predetermined polynomial based on the random number; 상기 다항식의 계수로부터 사용자 검증을 위한 검증값을 생성하는 검증값 생성부;A verification value generating unit generating a verification value for user verification from coefficients of the polynomial; 상기 다항식의 계수로부터 개의 비밀값 부분을 생성하는 비밀값 요소 생성부;From the coefficient of the polynomial A secret value element generator for generating two secret value parts; 상기 난수와 사용자 패스워드 및 사용자 아이디를 기초로 생성한 겹선형쌍을 이용하여 마스터키와 제 1 검증자를 생성하는 비밀정보 생성부;A secret information generation unit for generating a master key and a first verifier using the fold-pair pair generated based on the random number, the user password, and the user ID; 상기 마스터키를 이용하여 자체적으로 생성된 비밀키를 암호화하는 암호화부; 및An encryption unit for encrypting a secret key generated by itself using the master key; And 상기 검증값, 상기 비밀값 부분, 상기 사용자 아이디, 상기 암호화된 비밀키 및 제 1 검증자를 상기 개의 비밀값 부분 각각에 대응하는 서버로 송신하는 송신부를 포함하고,The verification value, the secret value portion, the user ID, the encrypted secret key, and the first verifier A transmitting unit for transmitting to a server corresponding to each of the four secret value portions, 상기 개의 서버 각각에 전송된 특정한 비밀값 부분에 대하여 상기 검증값과의 검증이 이루어지는 경우에 상기 각각의 서버로 전송된 상기 사용자 아이디, 암호화된 비밀키, 제 1 검증자 및 비밀값 부분이 등록되는 것을 특징으로 하는 비밀키 관리 기능을 가지는 비밀키 단말장치.remind The user ID, the encrypted secret key, the first verifier and the secret value portion transmitted to each server are registered when the verification is performed with the verification value for the specific secret value portion transmitted to each of the respective servers. A secret key terminal having a secret key management function. 제 1 항에 있어서,The method of claim 1, 사용자 패스워드 정보를 은닉하여 은닉된 패스워드를 생성하는 패스워드 은닉부;A password concealment section for concealing user password information to generate a concealed password; 상기 서버에 등록되어 있는 상기 암호화된 비밀키, 제 1 검증자 및 상기 은닉된 패스워드를 이용하여 경화된 패스워드를 수신하는 수신부;A receiving unit for receiving a hardened password using the encrypted secret key registered with the server, a first verifier, and the hidden password; 상기 경화된 패스워드로부터 비밀값, 마스터키 및 상기 제 1 검증자와의 비교를 위한 제 2 검증자를 구하는 계산부;A calculator for obtaining a second verifier for comparison with a secret value, a master key, and the first verifier from the hardened password; 상기 제 1 검증자와 상기 제 2 검증자를 비교하는 비교부; 및A comparison unit comparing the first verifier with the second verifier; And 상기 비교부에서 비교가 일치하는 경우 상기 마스터키를 이용하여 상기 암호화된 비밀키를 복호화하여 비밀키를 얻는 복호화부를 더 포함하고,The decryption unit further includes a decryption unit to obtain a secret key by decrypting the encrypted secret key using the master key when the comparison is matched, 상기 난수 생성부는 패스워드 은닉을 위한 난수를 생성하고, 상기 송신부는 상기 은닉된 패스워드를 송신하는 것을 특징으로 하는 비밀키 관리 기능을 가지는 비밀키 단말장치.And the random number generating unit generates a random number for password concealment, and the transmitting unit transmits the concealed password. 제 2 항에 있어서,The method of claim 2, 상기 송신부는 개의 서버보다 작은 개수인 개의 서버에 은닉된 패스워드를 송신하고,The transmitting unit Fewer than servers Send secrets to two servers, 상기 수신부는 상기 개의 서버에 등록되어 있는 상기 암호화된 비밀키, 제 1 검증자 및 경화된 패스워드를 수신받는 것을 특징으로 하는 비밀키 관리 기능을 가지는 비밀키 단말장치.The receiver is the Secret key terminal having a secret key management function, characterized in that for receiving the encrypted secret key, the first verifier and the registered password registered in two servers. 제 3 항에 있어서,The method of claim 3, wherein 상기 다항식의 차수는 차이고The order of the polynomial Difference 상기 개의 서버 개수는 개보다 크거나 같은것을 특징으로 하는 비밀키 관리 기능을 가지는 비밀키 단말장치.remind Server count Secret key terminal having a secret key management function characterized in that greater than or equal to a dog. 클라이언트, 서버 및 소정의 시스템 매개변수를 생성하는 시스템관리자로 구성되는 네트워크 환경에서 상기 클라이언트가 상기 서버에 비밀키를 등록하는 방법에 있어서,In a network environment consisting of a client, a server and a system administrator for generating predetermined system parameters, the client registers a secret key with the server, 상기 시스템 매개변수를 기초로 난수를 생성하고, 상기 난수를 기초로 소정의 다항식을 생성하는 단계;Generating a random number based on the system parameter, and generating a predetermined polynomial based on the random number; 상기 다항식의 계수로부터 사용자 검증을 위한 검증값을 생성하여 상기 서버에 송신하는 단계;Generating a verification value for user verification from the coefficients of the polynomial and transmitting it to the server; 사용자 패스워드와 사용자 아이디로부터 겹선형쌍 연산값을 생성하고, 상기 겹선형쌍 연산값을 기초로 마스터키와 제 1 검증자를 생성하는 단계;Generating a double pair operation value from a user password and a user ID, and generating a master key and a first verifier based on the double pair operation value; 상기 마스터키를 이용하여 자체적으로 생성된 비밀키를 암호화하여 암호화된 비밀키를 생성하는 단계;Generating an encrypted private key by encrypting a private key generated using the master key; 상기 다항식의 계수로부터 개의 비밀값 부분을 생성하는 단계; 및From the coefficient of the polynomial Generating two secret value portions; And 상기 사용자 아이디, 암호화된 비밀키, 제 1 검증자 비밀값 부분을 상기 개의 비밀값 부분 각각에 대응하는 서버로 송신하는 단계를 포함하고,Recalling the user ID, encrypted secret key, first validator secret value portion Sending to a server corresponding to each of the four secret value portions, 상기 개의 서버 각각에 송신된 특정한 비밀값 부분에 대하여 상기 검증값과의 검증이 이루어지는 경우에 상기 서버로 전송된 상기 사용자 아이디, 암호화된 비밀키, 제 1 검증자 및 비밀값 부분이 등록되도록 하는 것을 특징으로 하는 비밀키 관리 기능을 가지는 비밀키 관리방법.remind The user ID, the encrypted secret key, the first verifier and the secret value portion transmitted to the server are registered when the verification with the verification value is performed on the specific secret value portion transmitted to each of the plurality of servers. A secret key management method having a secret key management function. 제 5 항에 있어서,The method of claim 5, 상기 시스템 매개변수는 제 1 순환군 , 제 2 순환군 , 겹선형쌍 , 상기 제 1 순환군 과 상기 제 2 순환군 의 위수, 상기 제 1 순환군 의 생성자 , 상기 생성자 에 임의의 값을 곱한 생성자 와 해시함수 를 포함하되,The system parameter is the first cycle group , 2nd cycle group , Double pair , The first circulation group And the second circulation group Water , The first circulation group Constructor , The constructor Constructor multiplied by a random value And hash functions And Including, 상기 겹선형쌍 로 정의되고, 상기 해시함수 인 것을 특징으로 하는 비밀키 관리 기능을 가지는 비밀키 관리방법.The layered pair Is Hash function, defined as And Is Secret key management method having a secret key management function, characterized in that. 제 5 항에 있어서,The method of claim 5, 상기 난수는 임의의 두개인 이고,The random number is any two Wow ego, 상기 다항식은 , 이며,The polynomial is , Is, 상기 검증값은 으로 계산되고,The verification value is Calculated as 상기 난수중 을 만족하고, 상기 난수중 를 만족하는 것을 특징으로 하는 비밀키 관리 기능을 가지는 비밀키 관리방법.In the random number Is Satisfies the above random number Is Secret key management method having a secret key management function, characterized in that to satisfy. 제 7 항에 있어서,The method of claim 7, wherein 상기 겹선형쌍 연산값()은 으로,The double pair operation value ( )silver to, 상기 마스터키()는 으로,The master key ( ) to, 상기 검증자()는 으로 계산되되,The verifier ( ) Calculated as 상기 이고, 상기 으로 정의되는 것을 특징으로 하는 비밀키 관리 기능을 가지는 비밀키 관리방법.remind Is And above Is Secret key management method having a secret key management function, characterized in that defined as. 제 8 항에 있어서,The method of claim 8, 상기 암호화된 비밀키()는 으로 계산되고,The encrypted secret key ( ) Calculated as 상기 비밀값 부분은 비밀공유기법을 이용하여 으로 계산되는 것을 특징으로 하는 비밀키 관리 기능을 가지는 비밀키 관리방법.The secret value portion may be classified using a secret sharing technique. Secret key management method having a secret key management function, characterized in that calculated by. 클라이언트, 서버 및 시스템 매개변수를 생성하는 시스템관리자로 구성되는 네트워크 환경에서 사용자 아이디, 암호화된 비밀키, 제 1 검증자, 비밀값 부분을 등록하고 있는 개의 서버를 기초로 상기 클라이언트가 비밀키를 복원하는 방법에 있어서,Registers user ID, encrypted secret key, first verifier, and secret value in a network environment consisting of a system administrator who generates client, server and system parameters. A method for recovering a private key based on two servers, the method comprising: 패스워드 은닉을 위한 난수를 생성하는 단계;Generating a random number for password concealment; 상기 난수를 기초로 사용자 패스워드 정보를 은닉하여 은닉된 패스워드를 생성하는 단계;Concealing user password information based on the random number to generate a hidden password; 상기 은닉된 패스워드와 사용자 아이디를 임의로 선정된 상기 개의 서버보다 적은 개수의 개의 서버에 송신하는 단계;The secret password and user ID are randomly selected Fewer than servers Transmitting to four servers; 상기 서버에 등록되어 있는 상기 암호화된 비밀키, 제 1 검증자와 함게 경화된 패스워드를 상기 서버로부터 수신하는 단계;Receiving a hardened password from the server with the encrypted secret key registered with the server and a first verifier; 상기 경화된 패스워드를 기초로 비밀값을 구하는 단계;Obtaining a secret value based on the hardened password; 상기 비밀값을 기초로 마스터키와 제 2 검증자를 구하는 단계;Obtaining a master key and a second verifier based on the secret value; 상기 제 1 검증자와 상기 제 2 검증자를 비교하는 단계; 및Comparing the first verifier with the second verifier; And 상기 제 1 검증자와 상기 제 2 검증자가 일치하는 경우에 상기 마스터키를 통하여 상기 암호화된 비밀키를 복호화하여 비밀키를 얻는 단계를 포함하는 것을 특징으로 하는 비밀키 관리 기능을 가지는 비밀키 관리방법.And if the first verifier and the second verifier match, decrypting the encrypted secret key through the master key to obtain a secret key. . 제 10 항에 있어서,The method of claim 10, 상기 시스템 매개변수는 제 1 순환군 , 제 2 순환군 , 겹선형쌍 , 상기 제 1 순환군 과 상기 제 2 순환군 의 위수, 상기 제 1 순환군 의 생성자 , 상기 생성자 에 임의의 값을 곱한 생성자 와 해시함수 를 포함하되,The system parameter is the first cycle group , 2nd cycle group , Double pair , The first circulation group And the second circulation group Water , The first circulation group Constructor , The constructor Constructor multiplied by a random value And hash functions And Including, 상기 겹선형쌍 로 정의되고, 상기 해시함수 로 계산되는 것을 특징으로 하는 비밀키 관리 기능을 가지는 비밀키 관리방법.The layered pair Is Hash function, defined as And Is Secret key management method having a secret key management function, characterized in that calculated by. 제 10 항에 있어서,The method of claim 10, 상기 난수는 이고,The random number is ego, 상기 은닉된 패스워드는 로 계산되는 것을 특징으로 하는 비밀키 관리 기능을 가지는 비밀키 관리방법.The hidden password is Secret key management method having a secret key management function, characterized in that calculated by. 제 12 항에 있어서,The method of claim 12, 상기 경화된 패스워드()는 로 계산되는 것을 특징으로 하는 비밀키 관리 기능을 가지는 비밀키 관리방법.The hardened password ( ) Secret key management method having a secret key management function, characterized in that calculated by. 제 13 항에 있어서,The method of claim 13, 상기 비밀값()는 으로,The secret value ( ) to, 상기 마스터키()는 으로,The master key ( ) to, 상기 제 2 검증자()는 으로 구하는 것을 특징으로 하는 비밀키 관리 기능을 가지는 비밀키 관리방법.The second verifier ( ) Secret key management method having a secret key management function, characterized in that obtained by. 제 10 항에 있어서,The method of claim 10, 상기 라그랑쥐 계수는 로 계산되는 것을 특징으로 하는 비밀키 관리 기능을 가지는 비밀키 관리방법.The Lagrangian coefficient is Secret key management method having a secret key management function, characterized in that calculated by. 제 10 항에 있어서,The method of claim 10, 상기 개의 서버 개수는 보다 크거다 같고,remind Server count It's bigger than 상기 개의 서버가 클라이언트로부터 수신된 상기 사용자 아이디와 상기 은닉된 패스워드를 기초로 등록된 정보를 기초로 상기 경화된 패스워드를 계산하는 것을 특징으로 하는 (여기에서, 에서 는 서버의 개수)는 상기 비밀키 관리 기능을 가지는 비밀키 관리방법.remind Server calculates the hardened password based on the registered information based on the user ID received from the client and the hidden password (where, in Number of servers) is a secret key management method having the secret key management function. 제 5 항 내지 제 16 항 중 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.A computer-readable recording medium having recorded thereon a program for executing the method of any one of claims 5 to 16.
KR1020040029587A 2004-04-28 2004-04-28 Management method and terminal apparatus for management function of secret key KR100617456B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040029587A KR100617456B1 (en) 2004-04-28 2004-04-28 Management method and terminal apparatus for management function of secret key

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040029587A KR100617456B1 (en) 2004-04-28 2004-04-28 Management method and terminal apparatus for management function of secret key

Publications (2)

Publication Number Publication Date
KR20050104220A true KR20050104220A (en) 2005-11-02
KR100617456B1 KR100617456B1 (en) 2006-08-31

Family

ID=37281886

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040029587A KR100617456B1 (en) 2004-04-28 2004-04-28 Management method and terminal apparatus for management function of secret key

Country Status (1)

Country Link
KR (1) KR100617456B1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100619027B1 (en) * 2004-06-07 2006-08-31 삼성전자주식회사 Method of assigning member secret information, method of key agreement using the assigned secret information, and method of member authentication using the assigned secret information
WO2007117879A1 (en) * 2006-04-07 2007-10-18 Intel Corporation Method and apparatus to mate an external code image with an on-chip private key
KR100848318B1 (en) * 2006-12-07 2008-07-24 한국전자통신연구원 Method and Apparatus for generating user secret key in mobile communication system
KR101276202B1 (en) * 2009-11-25 2013-06-18 한국전자통신연구원 Method Generating Personal Identification, Method Proofing Specific Person and Apparatus Generating Personal Identification
WO2019178559A1 (en) * 2018-03-15 2019-09-19 Medici Ventures, Inc. Splitting encrypted key and encryption key used to encrypt key into key components allowing assembly with subset of key components to decrypt encrypted key
US11444755B2 (en) 2018-10-12 2022-09-13 Tzero Ip, Llc Doubly-encrypted secret parts allowing for assembly of a secret using a subset of the doubly-encrypted secret parts

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002247031A (en) 2001-02-16 2002-08-30 Fujitsu Ltd Method for electronic signature
EP1543649A1 (en) * 2002-09-20 2005-06-22 Koninklijke Philips Electronics N.V. Method and system for generating a common secret key
KR100571820B1 (en) * 2003-10-20 2006-04-17 삼성전자주식회사 Conference session key distribution method on ID-based cryptographic system

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100619027B1 (en) * 2004-06-07 2006-08-31 삼성전자주식회사 Method of assigning member secret information, method of key agreement using the assigned secret information, and method of member authentication using the assigned secret information
WO2007117879A1 (en) * 2006-04-07 2007-10-18 Intel Corporation Method and apparatus to mate an external code image with an on-chip private key
KR100848318B1 (en) * 2006-12-07 2008-07-24 한국전자통신연구원 Method and Apparatus for generating user secret key in mobile communication system
KR101276202B1 (en) * 2009-11-25 2013-06-18 한국전자통신연구원 Method Generating Personal Identification, Method Proofing Specific Person and Apparatus Generating Personal Identification
WO2019178559A1 (en) * 2018-03-15 2019-09-19 Medici Ventures, Inc. Splitting encrypted key and encryption key used to encrypt key into key components allowing assembly with subset of key components to decrypt encrypted key
US11146392B2 (en) 2018-03-15 2021-10-12 Tzero Ip, Llc Splitting encrypted key and encryption key used to encrypt key into key components allowing assembly with subset of key components to decrypt encrypted key
US11888975B2 (en) 2018-03-15 2024-01-30 Tzero Ip, Llc Splitting encrypted key and encryption key used to encrypt key into key components allowing assembly with subset of key components to decrypt encrypted key
US11444755B2 (en) 2018-10-12 2022-09-13 Tzero Ip, Llc Doubly-encrypted secret parts allowing for assembly of a secret using a subset of the doubly-encrypted secret parts
US11601264B2 (en) 2018-10-12 2023-03-07 Tzero Ip, Llc Encrypted asset encryption key parts allowing for assembly of an asset encryption key using a subset of the encrypted asset encryption key parts
US11764951B2 (en) 2018-10-12 2023-09-19 Tzero Ip, Llc Doubly-encrypted secret parts allowing for assembly of a secret using a subset of the doubly-encrypted secret parts

Also Published As

Publication number Publication date
KR100617456B1 (en) 2006-08-31

Similar Documents

Publication Publication Date Title
CN110224986B (en) Efficient searchable access control method based on hidden policy CP-ABE
US8688973B2 (en) Securing communications sent by a first user to a second user
US7895436B2 (en) Authentication system and remotely-distributed storage system
CN111639361A (en) Block chain key management method, multi-person common signature method and electronic device
US20220376894A1 (en) Adaptive attack resistant distributed symmetric encryption
JP5300983B2 (en) Data processing device
Ballard et al. Correlation-resistant storage via keyword-searchable encryption
JP6763378B2 (en) Cryptographic information creation device, cryptographic information creation method, cryptographic information creation program, and verification system
JP5586795B2 (en) Data processing apparatus, data processing method, and program
CN104967693B (en) Towards the Documents Similarity computational methods based on full homomorphism cryptographic technique of cloud storage
JP6229716B2 (en) Verification system, node, verification method and program
CN110730064B (en) Data fusion method based on privacy protection in crowd sensing network
CN110120873B (en) Frequent item set mining method based on cloud outsourcing transaction data
WO2014185450A1 (en) Verification system, node, verification method, and program
CN115021903B (en) Electronic medical record sharing method and system based on blockchain
Chang et al. An efficient multi-server password authenticated key agreement scheme using smart cards with access control
Erkin et al. Privacy-preserving user clustering in a social network
CN108809996B (en) Integrity auditing method for duplicate deletion stored data with different popularity
KR100617456B1 (en) Management method and terminal apparatus for management function of secret key
JP2006227411A (en) Communications system, encryption device, key generator, key generating method, restoration device, communication method, encryption method, and cryptography restoration method
CN116055136A (en) Secret sharing-based multi-target authentication method
Prasanalakshmi et al. ECC based biometric encryption of compressed image for security over network channels
Harn et al. A novel threshold cryptography with membership authentication and key establishment
Juang et al. Efficient User Authentication and Key Agreement with User Privacy Protection.
Hegde et al. Secure search scheme for encrypted data in the VANET cloud with random query trapdoor

Legal Events

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

Payment date: 20090610

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee