KR101575030B1 - Method of multi-signature generation for shared data in the cloud - Google Patents
Method of multi-signature generation for shared data in the cloud Download PDFInfo
- Publication number
- KR101575030B1 KR101575030B1 KR1020140087270A KR20140087270A KR101575030B1 KR 101575030 B1 KR101575030 B1 KR 101575030B1 KR 1020140087270 A KR1020140087270 A KR 1020140087270A KR 20140087270 A KR20140087270 A KR 20140087270A KR 101575030 B1 KR101575030 B1 KR 101575030B1
- Authority
- KR
- South Korea
- Prior art keywords
- value
- signature
- data
- signature value
- representative
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
본 발명은 다중 서명에 관한 것으로, 보다 상세하게는 클라우드에서 공유된 데이터에 대한 효율적인 겹선형 사상 기반의 다중 서명 방법으로 서명을 검증하는 단계에서 검증에 필요한 다운로드 데이터를 줄이고 제3의 검증서비스 제공자가 공개된 데이터로 효율적 검증이 가능한 클라우드 상의 공유 데이터에 대한 효율적인 다중 서명생성방법 및 다중서명시스템에 관한 것이다.
The present invention relates to multiple signatures, and more particularly, to a method and system for reducing the amount of download data required for verification in a step of verifying a signature with an efficient multiple-linear mapping based multi-signature method on data shared in the cloud, And more particularly, to an efficient multi-signature generation method and a multi-signature system for shared data in a cloud that can be efficiently verified with published data.
오늘날 클라우드 컴퓨팅은 자원을 공유로 함으로 인해 저 비용의 컴퓨팅 환경이 가능하게 만들어 주며, 여러 사용자간에 편리한 공유 환경을 제공하여 공동 작업 및 업무 분담의 효율성을 높일 수 있다.Today, cloud computing makes it possible to share resources with low-cost computing environments, and it provides a convenient sharing environment among users to increase efficiency of collaboration and sharing of work.
이에 사용자간 데이터 공유를 위해서는 저장된 데이터에 대한 안정적이고 신뢰성 있는 환경이 반드시 요구된다. 기존의 관련된 보안 연구들은 대부분 저장된 데이터의 동적인 데이터 연산 및 데이터 프라이버시에 초점을 두고 이루어진다.Therefore, a stable and reliable environment for stored data is indispensable for sharing data between users. Most of the existing related security studies focus on dynamic data operations and data privacy of stored data.
그리하여 최근에는 프라이버시를 제공하면서 정당한 사용자 중 한 사람이 공유된 데이터에 대한 독립적으로 무결성을 검증하는 메커니즘들에 대한 연구들이 이루지고 있다. 하지만 이런 연구들에서 저장된 데이터의 각 블록이 독립적으로 처리되기 때문에, 사실상 각 블록별로 단일 소유자에 대한 검증 서비스를 제공하는 것과 같다.Recently, research has been conducted on mechanisms for independently verifying the integrity of shared data by one of the legitimate users while providing privacy. However, in these studies, each block of stored data is treated independently, which is in effect equivalent to providing a single-owner verification service for each block.
이때 다중 서명을 이용할 수 있지만, 데이터를 검증하는 단계에서 클라우드 서버에 저장된 모든 데이터를 불러와서 다시 연산을 수행해야하는 문제가 발생한다.
At this time, although multiple signatures can be used, there arises a problem that all the data stored in the cloud server must be retrieved and the operation must be performed again in the step of verifying the data.
상기와 같은 문제점을 해소하기 위한 본 발명은 클라우드 환경에서의 다중 서명 방법을 제안하는 것이다.In order to solve the above problems, the present invention proposes a multiple signature method in a cloud environment.
그리고 본 발명의 다른 목적은, 클라우드에 저장된 메시지를 임의의 크기의 블록으로 구분하고 그 블록은 메시지 아이디와 함께 해쉬 값을 계산하여 산출한다.Another object of the present invention is to divide a message stored in the cloud into blocks of an arbitrary size, and calculate and calculate a hash value together with the message ID.
또한 본 발명의 다른 목적은, 해쉬 값과 생성자의 곱을 비밀키 값으로 이용하여 서명에 이용한다.Another object of the present invention is to use a product of a hash value and a generator as a secret key value for signature.
나아가 본 발명의 다른 목적은, 서명된 값을 수집하고 검증하는 메커니즘을 제공하는 것이다.
It is a further object of the present invention to provide a mechanism for collecting and verifying signed values.
상기와 같은 목적을 달성하기 위한 본 발명은, 사용자단말기에서 제공된 비밀키 데이터들로부터 랜덤하게 선택된 비밀키값 및 비밀키값과 대응되는 공개키값을 생성하는 키 생성단계; 서명하고자 하는 메시지 블록에 대해, 메시지의 identifier(ID)의 해쉬값(h)을 산출하고 비밀키값 및 해쉬값으로부터 서명값을 사용자단말기에서 산출하여 클라우드서버로 전송하는 서명 단계; 다수의 사용자단말기로부터 전송받은 서명값 데이터를 클라우드서버에서 저장하고 다수 사용자들의 서명값들로부터 대표 데이터값과 대표 서명값 데이터를 산출하는 대표값 생성단계; 및 클라우드서버에서, 검증을 위한 메시지블록, 해당 블록의 identifier(ID) 데이터, 공개키값, 서명값을 이용하여 서명의 인증을 수행하는 검증 단계를 포함하는 것을 특징으로 하는 클라우드 상의 공유 데이터에 대한 효율적인 다중 서명생성방법을 제공한다.According to an aspect of the present invention, there is provided a method for generating a secret key, the method comprising: generating a secret key value and a public key value corresponding to a secret key value randomly selected from secret key data provided by a user terminal; A signature step of calculating a hash value (h) of an identifier (ID) of a message to be signed, calculating a signature value from a secret key value and a hash value, and transmitting the calculated signature value to a cloud server; A representative value generation step of storing signature value data transmitted from a plurality of user terminals in a cloud server and calculating representative data values and representative signature value data from signature values of a plurality of users; And a verification step of performing signature authentication using a message block for verification, identifier (ID) data of the corresponding block, a public key value and a signature value in the cloud server. Provides a method for generating multiple signatures.
본 발명의 바람직한 실시예에 있어서, 상기 서명 단계는: 서명하고자 하는 메시지 블록에 대해, 메시지의 identifier(ID)의 해쉬값(h)을 산출하는 해쉬값산출단계; 비밀키값 및 해쉬값으로부터 서명값을 산출하는 서명값산출단계; 해쉬값산출단계에서 산출된 해쉬값(h)과 서명값산출단계에서 산출된 서명값 데이터를 클라우드서버로 전송하는 서명값전송단계; 및 다수 사용자단말기로부터 전송받은 서명값들로부터 다중서명값을 클라우드서버에서 산출하는 다중서명값산출단계를 포함하는 것을 특징으로 하는 클라우드 상의 공유 데이터에 대한 효율적인 다중 서명생성방법을 제공한다.In a preferred embodiment of the present invention, the signing step includes: a hash value calculation step of calculating a hash value (h) of an identifier (ID) of a message for a message block to be signed; A signature value calculation step of calculating a signature value from a secret key value and a hash value; A signature value transmission step of transmitting the hash value (h) calculated in the hash value calculation step and the signature value data calculated in the signature value calculation step to the cloud server; And a multi-signature value calculating step of calculating a multi-signature value from the signature values received from the multi-user terminal in the cloud server. The multi-signature value generating step for the shared data on the cloud can be efficiently performed.
본 발명의 바람직한 실시예에 있어서, 상기 해쉬값산출단계에서의 해쉬값은 (수학식1)에 의해 산출되고, 상기 서명값산출단계에서의 서명값은 (수학식2)에 의해 산출되고, 상기 다중서명값산출단계에서의 다중서명값은 (수학식3)에 의해 산출되는 것을 특징으로 하는 클라우드 상의 공유 데이터에 대한 효율적인 다중 서명생성방법을 제공한다. In a preferred embodiment of the present invention, the hash value in the hash value calculation step is calculated by Equation (1), the signature value in the signature value calculation step is calculated by (Equation 2) And the multi-signature value in the multi-signature value calculation step is calculated by Equation (3).
(수학식 1)(1)
(수학식 2)(2)
(수학식 3)(3)
(hi는 i번째 메시지 블록의 해쉬값, H는 해쉬함수로, 해쉬함수 자체가 임의의 길이를 입력받아 고정된 길이를 출력하는 정해진 함수이므로 ID와 m의 연접이 해쉬의 입력으로 들어가면 해쉬함수는 정해진 소정의 알고리즘에 의해서 정해진 소정의 domain(본 발명에서 G1 상의 한 원소)으로 출력을 랜덤하게 만들어내는 것으로, 소정의 입력값으로 G1의 원소로 변환하기 위한 해쉬 함수이다. 그리고 IDi는 i번째 메시지 블록의 identifier 데이터, mi는 i번째 메시지 블록, G1는 차수가 소수 p인 곱셈 순회군(multiplicative cyclic group)이다. sji는 i번째 메시지 블록에 대한 j번째 사용자의 서명값, g는 G1의 생성자, xj는 j번째 사용자의 비밀키, si는 i번째 메시지 블록에 대한 다중 서명값이다.)
(h i is a hash value of the i- th message block, H is a hash function, and the hash function itself is a fixed function that outputs a fixed length by receiving an arbitrary length. Is a hash function for randomly generating an output with a predetermined domain (an element of G 1 in the present invention) determined by a predetermined algorithm and converting it into an element of G 1 as a predetermined input value, and ID i Is the identifier data of the i- th message block, m i is the i-th message block, and G 1 is a multiplicative cyclic group with degree p. S ji is the signature value of the j- , g is the constructor of G 1 , x j is the secret key of the j th user, and s i is the multiple signature value for the i th message block.
본 발명의 바람직한 실시예에 있어서, 상기 대표값 생성단계는: 다수의 사용자단말기로부터 전송받은 다수 사용자들의 해쉬값들로부터 대표 데이터값 데이터를 산출하는 대표데이터값생성단계; 및 다수의 사용자단말기로부터 전송받은 다수 사용자들의 서명값들로부터 대표 서명값 데이터를 산출하는 대표서명값생성단계를 포함하는 것을 특징으로 하는 클라우드 상의 공유 데이터에 대한 효율적인 다중 서명생성방법을 제공한다.In a preferred embodiment of the present invention, the representative value generating step may include: a representative data value generating step of calculating representative data value data from hash values of a plurality of users transmitted from a plurality of user terminals; And a representative signature value generation step of calculating representative signature value data from signature values of a plurality of users transmitted from a plurality of user terminals.
본 발명의 바람직한 실시예에 있어서, 상기 대표데이터값생성단계에서의 대표 데이터값 데이터는 (수학식4)에 의해 산출되고, 상기 대표서명값생성단계에서의 대표 서명값 데이터는 (수학식5)에 의해 산출되는 것을 특징으로 하는 클라우드 상의 공유 데이터에 대한 효율적인 다중 서명생성방법을 제공한다.
In a preferred embodiment of the present invention, the representative data value data in the representative data value generation step is calculated by (Equation 4), and the representative signature value data in the representative signature value generation step is calculated by the following equation (5) And generating an efficient multiple signature for the shared data on the cloud.
(수학식 4)(4)
(수학식 5)(5)
(는 대표 데이터값, hi는 i번째 메시지 블록의 해쉬값, 는 대표 서명값, si는 i번째 메시지 블록에 대한 다중 서명값, G1는 차수가 소수 p인 곱셈 순회군(multiplicative cyclic group)이다.)
( Hi is the hash value of the i < th > message block, Is a representative signature value, s i is a multiple signature value for the i-th message block, and G 1 is a multiplicative cyclic group with a degree p.
본 발명의 바람직한 실시예에 있어서, 제공된 비밀키 데이터들로부터 랜덤하게 선택된 비밀키값 및 비밀키값과 대응되는 공개키값을 생성하고, 서명하고자 하는 메시지 블록에 대해, 메시지의 identifier(ID)의 해쉬값(h)을 산출하고 비밀키값 및 해쉬값으로부터 서명값을 산출하여 클라우드서버로 전송하는 것을 특징으로 하는 클라우드 상의 공유 데이터에 대한 효율적인 다중 서명생성용 사용자단말기를 제공한다.In a preferred embodiment of the present invention, a secret key value and a public key value corresponding to a secret key value selected randomly from the provided secret key data are generated, and a hash value (ID) of a message identifier h), and calculates a signature value from the secret key value and the hash value, and transmits the signature value to the cloud server. The user terminal for efficiently generating a multiple signature for shared data on the cloud is provided.
본 발명의 바람직한 실시예에 있어서, 상기 해쉬값은 (수학식1)에 의해 산출되고, 상기 서명값은 (수학식2)에 의해 산출되는 것을 특징으로 하는 클라우드 상의 공유 데이터에 대한 효율적인 다중 서명생성용 사용자단말기를 제공한다.
In a preferred embodiment of the present invention, the hash value is calculated by Equation (1), and the signature value is calculated by Equation (2). A user terminal is provided.
(수학식 1)(1)
(수학식 2)(2)
(hi는 i번째 메시지 블록의 해쉬값, H는 해쉬함수로, 해쉬함수 자체가 임의의 길이를 입력받아 고정된 길이를 출력하는 정해진 함수이므로 ID와 m의 연접이 해쉬의 입력으로 들어가면 해쉬함수는 정해진 소정의 알고리즘에 의해서 정해진 소정의 domain(본 발명에서 G1 상의 한 원소)으로 출력을 랜덤하게 만들어내는 것으로, 소정의 입력값으로 G1의 원소로 변환하기 위한 해쉬 함수이다. 그리고 IDi는 i번째 메시지 블록의 identifier 데이터, mi는 i번째 메시지 블록, G1는 차수가 소수 p인 곱셈 순회군(multiplicative cyclic group)이다. sji는 i번째 메시지 블록에 대한 j번째 사용자의 서명값, g는 G1의 생성자, xj는 j번째 사용자의 비밀키이다.)
(h i is a hash value of the i- th message block, H is a hash function, and the hash function itself is a fixed function that outputs a fixed length by receiving an arbitrary length. Is a hash function for randomly generating an output with a predetermined domain (an element of G 1 in the present invention) determined by a predetermined algorithm and converting it into an element of G 1 as a predetermined input value, and ID i Is the identifier data of the i- th message block, m i is the i-th message block, and G 1 is a multiplicative cyclic group with degree p. S ji is the signature value of the j- , g is the constructor of G 1 , and x j is the secret key of the jth user.)
본 발명의 바람직한 실시예에 있어서, 다수의 사용자단말기로부터 서명값, 공개키값을 전송받아 저장하고, 다수의 사용자단말기로부터 전송받은 서명값들로부터 다중서명값을 산출하며, 대표 데이터값과 대표 서명값을 산출하고, 서명의 인증을 수행하는 것을 특징으로 하는 클라우드 상의 공유 데이터에 대한 효율적인 다중서명용 클라우드서버를 제공한다.In a preferred embodiment of the present invention, a signature value and a public key value are received and stored from a plurality of user terminals, a multiple signature value is calculated from signature values transmitted from a plurality of user terminals, and a representative data value and a representative signature value And performs authentication of the signatures. The present invention provides an efficient multi-signature cloud server for shared data on the cloud.
본 발명의 바람직한 실시예에 있어서, 다중서명값은 (수학식3)에 의해 산출되고, 대표 데이터값은 (수학식4)에 의해 산출되며, 대표 서명값은 (수학식5)에 의해 산출되는 것을 특징으로 하는 클라우드 상의 공유 데이터에 대한 효율적인 다중서명용 클라우드서버를 제공한다.
In a preferred embodiment of the present invention, the multiple signature value is calculated by (Equation 3), the representative data value is calculated by (Equation 4), and the representative signature value is calculated by (Equation 5) The present invention provides an efficient multiple-signature cloud server for shared data on the cloud.
(수학식 3)(3)
(수학식 4)(4)
(수학식 5)(5)
(si는 i번째 메시지 블록에 대한 다중 서명값, sji는 i번째 메시지 블록에 대한 j번째 사용자의 서명값, 는 대표 데이터값, hi는 i번째 메시지 블록의 해쉬값, 는 대표 서명값, si는 i번째 메시지 블록에 대한 다중 서명값, G1는 차수가 소수 p인 곱셈 순회군(multiplicative cyclic group)이다.)
(s i is the multiple signature value for the i-th message block, s ji is the signature value of the j-th user for the i-th message block, Hi is the hash value of the i < th > message block, Is a representative signature value, s i is a multiple signature value for the i-th message block, and G 1 is a multiplicative cyclic group with a degree p.
본 발명의 바람직한 실시예에 있어서, 상기의 사용자단말기; 및 상기의 클라우드서버를 포함하고, 상기 사용자단말기에 의하여, 제공된 비밀키 데이터들로부터 랜덤하게 선택된 비밀키값 및 비밀키값과 대응되는 공개키값을 생성하고, 서명하고자 하는 메시지 블록에 대해, 메시지의 identifier(ID)의 해쉬값(h)을 산출하고 비밀키값 및 해쉬값으로부터 서명값을 산출하여 클라우드서버로 전송하며, 상기 클라우드서버에 의하여, 다수의 사용자단말기로부터 서명값, 공개키값을 전송받아 저장하고, 다중서명값을 산출하며, 대표 데이터값과 대표 서명값을 산출하고, 서명의 인증을 수행하는 것을 특징으로 하는 클라우드 상의 공유 데이터에 대한 효율적인 다중서명시스템을 제공한다.In a preferred embodiment of the present invention, the user terminal comprises: And a cloud server, wherein the user terminal generates a public key value corresponding to a secret key value and a secret key value that are randomly selected from the provided secret key data, identifies a message identifier ID), calculates a signature value from a secret key value and a hash value, and transmits the signature value to the cloud server. The cloud server receives and stores a signature value and a public key value from a plurality of user terminals, The present invention provides an efficient multi-signature system for shared data on the cloud, characterized in that the multi-signature value is calculated, the representative data value and the representative signature value are calculated, and the signature is authenticated.
본 발명의 바람직한 실시예에 있어서, 상기 해쉬값은 (수학식1)에 의해 산출되고, 상기 서명값은 (수학식2)에 의해 산출되며, 상기 다중서명값은 (수학식3)에 의해 산출되는 것을 특징으로 하는 클라우드 상의 공유 데이터에 대한 효율적인 다중서명시스템을 제공한다.
In a preferred embodiment of the present invention, the hash value is calculated by (Equation 1), the signature value is calculated by (Equation 2), and the multiple signature value is calculated by (Equation 3) The present invention provides an efficient multi-signature system for shared data on the cloud.
(수학식 1)(1)
(수학식 2)(2)
(수학식 3)(3)
(hi는 i번째 메시지 블록의 해쉬값, H는 해쉬함수로, 해쉬함수 자체가 임의의 길이를 입력받아 고정된 길이를 출력하는 정해진 함수이므로 ID와 m의 연접이 해쉬의 입력으로 들어가면 해쉬함수는 정해진 소정의 알고리즘에 의해서 정해진 소정의 domain(본 발명에서 G1 상의 한 원소)으로 출력을 랜덤하게 만들어내는 것으로, 소정의 입력값으로 G1의 원소로 변환하기 위한 해쉬 함수이다. 그리고 IDi는 i번째 메시지 블록의 identifier 데이터, mi는 i번째 메시지 블록, G1는 차수가 소수 p인 곱셈 순회군(multiplicative cyclic group)이다. sji는 i번째 메시지 블록에 대한 j번째 사용자의 서명값, g는 G1의 생성자, xj는 j번째 사용자의 비밀키, si는 i번째 메시지 블록에 대한 다중 서명값이다.)
(h i is a hash value of the i- th message block, H is a hash function, and the hash function itself is a fixed function that outputs a fixed length by receiving an arbitrary length. Is a hash function for randomly generating an output with a predetermined domain (an element of G 1 in the present invention) determined by a predetermined algorithm and converting it into an element of G 1 as a predetermined input value, and ID i Is the identifier data of the i- th message block, m i is the i-th message block, and G 1 is a multiplicative cyclic group with degree p. S ji is the signature value of the j- , g is the constructor of G 1 , x j is the secret key of the j th user, and s i is the multiple signature value for the i th message block.
본 발명의 바람직한 실시예에 있어서, 대표 데이터값은 (수학식4)에 의해 산출되고, 대표 서명값은 (수학식5)에 의해 산출되는 것을 특징으로 하는 클라우드 상의 공유 데이터에 대한 효율적인 다중서명시스템을 제공한다.
In a preferred embodiment of the present invention, the representative data value is calculated by (Equation 4), and the representative signature value is calculated by (Equation 5). .
(수학식 4)(4)
(수학식 5)(5)
(는 대표 데이터값, hi는 i번째 메시지 블록의 해쉬값, 는 대표 서명값, si는 i번째 메시지 블록에 대한 다중 서명값, G1는 차수가 소수 p인 곱셈 순회군(multiplicative cyclic group)이다.)
( Hi is the hash value of the i < th > message block, Is a representative signature value, s i is a multiple signature value for the i-th message block, and G 1 is a multiplicative cyclic group with a degree p.
상기와 같이 구성되는 본 발명은 제안한 클라우드에서의 공유된 데이터에 대한 다중 서명 방식에 의하여 서명을 검증하는 단계에서 필요한 다운로드의 데이터 크기를 최소화할 수 있는 탁월한 효과가 있다.The present invention having the above-described configuration has an excellent effect of minimizing the data size of the download required in the step of verifying the signature by the multi-signature scheme for the shared data in the proposed cloud.
이에 본 발명의 다른 효과는, 실제 시스템에 적용하는 경우 보안을 위해 필요한 부가적인 데이터 전송량을 줄일 수 있는 것이다.Another effect of the present invention is to reduce the amount of additional data required for security when applied to an actual system.
그리고 본 발명의 또 다른 효과는, 제3의 검증 서비스 제공자가 공개된 데이터로 효율적 검증이 가능하여 클라우드 네트워크에 대한 신뢰성 있는 운영이 가능하다.
Further, another effect of the present invention is that the third verification service provider can efficiently perform verification with respect to the disclosed data, thereby enabling reliable operation of the cloud network.
도 1은 본 발명에 따른 다중서명생성방법 및 서명에 대한 일 실시 구성예를 보인 것이다.
도 2는 본 발명에 따른 다중서명생성방법에 대한 순서도이다.
도 3은 본 발명에 따른 다중서명시스템에 대한 구성예시도이다.FIG. 1 shows an embodiment of a multiple signature generation method and signature according to the present invention.
2 is a flowchart of a multiple signature generation method according to the present invention.
3 is a configuration example of a multi-signature system according to the present invention.
이하 첨부되는 도면을 참조하여 상세히 설명한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.
즉 본 발명에 따른 클라우드 상의 공유 데이터에 대한 효율적인 다중 서명 생성 방법 및 다중서명시스템(10)은 첨부된 도 1 내지 도 3 등에서와 같이, 네트워크수단으로 연결된 다수의 사용자단말기(20) 및 다수 데이터를 저장하고 관리하는 클라우드서버(30)를 포함하여 이루어지는 것이다.That is, an efficient multiple signature generation method and multi-signature generation method for shared data on the cloud according to the present invention may include a plurality of user terminals 20 connected by a network means and a plurality of data And a cloud server 30 for storing and managing the cloud server 30.
이러한 다중 서명 생성 방법 및 그 다중서명시스템(10) 등은 많은 양의 데이터를 저장하고 관리하는 클라우드서버(30)에서 서명 인증된 사용자단말기(20)에 대한 인증을 관리하기 위한 것이다.This multi-signature generation method and its multi-signature system 10 and the like are for managing the authentication for the signature-authenticated user terminal 20 in the cloud server 30 storing and managing a large amount of data.
따라서 전체적으로는, 개별 사용자단말기(20)에서 데이터를 다수의 블록으로 나누고 개별 블록들에 대해 사용자의 서명을 하는 과정을 거치고, 이후 이들 다수의 사용자단말기에 의한 개별 블록에 대한 서명의 정보를 제공받아 클라우드서버(30)에서 다수 사용자단말기들로부터 전송받은 개별 서명의 정보를 토대로 하여 대표서명 및 대표데이터값을 생성하여 이를 이용하여 서명관리를 수행하는 것이다.Therefore, the whole user terminal 20 divides the data into a plurality of blocks and performs a process of signing a user for individual blocks, and then receives signature information on individual blocks by the plurality of user terminals The cloud server 30 generates a representative signature and a representative data value based on the information of the individual signatures transmitted from the multiple user terminals, and performs signature management using the generated representative signature and representative data values.
이를 위한 사용자단말기(20)의 구성을 보면 다음과 같다.Hereinafter, the configuration of the user terminal 20 will be described.
즉 다수로 이루어진 개별 사용자단말기(20)들에 있어서는, 제공된 비밀키 데이터들로부터 랜덤하게 선택된 비밀키값 및 비밀키값과 대응되는 공개키값을 생성하고, 서명하고자 하는 메시지 블록에 대해, 메시지의 identifier(ID)의 해쉬값(h)을 산출하고 비밀키값 및 해쉬값으로부터 서명값을 산출하여 클라우드서버(30)로 전송하는 것이다.That is, in each of the plurality of individual user terminals 20, a public key value corresponding to a secret key value and a secret key value selected at random from the provided secret key data is generated, and an identifier (ID ), Calculates a signature value from the secret key value and the hash value, and transmits the signature value to the cloud server 30.
이에 사용자단말기(20)에 있어서 세부 구성을 보면, 제공된 비밀키 데이터들로부터 랜덤하게 선택된 비밀키값 및 비밀키값과 대응되는 공개키값을 생성하는 키생성부(21)를 포함한다.In detail, the user terminal 20 includes a key generation unit 21 for generating a secret key value randomly selected from the provided secret key data and a public key value corresponding to the secret key value.
아울러 이러한 키생성부(21)에 의하여, 제공된 비밀키 데이터들로부터 랜덤하게 선택된 비밀키값 및 비밀키값과 대응되는 공개키값을 생성하는 키 생성단계(S10)를 수행한다.In addition, the key generation unit 21 performs a key generation step (S10) of generating a public key value corresponding to a secret key value and a secret key value selected at random from the provided secret key data.
그리고 키생성부(21)에는 비밀키값을 생성하기 위한 비밀키생성모듈(211) 및 비밀키값을 토대로 공개키값을 생성하는 공개키생성모듈(212)을 세부 구성으로 마련한다.The key generation unit 21 is provided with a secret key generation module 211 for generating a secret key value and a public key generation module 212 for generating a public key value based on the secret key value.
이후의 과정을 수행하기 위한 사용자단말기(20)의 세부 구성으로, 서명하고자 하는 메시지 블록에 대해, 메시지의 identifier(ID)의 해쉬값(h)을 산출하고 비밀키값 및 해쉬값으로부터 서명값을 산출하여 클라우드서버(30)로 전송하는 서명값처리부(22)를 포함한다.In the detailed configuration of the user terminal 20 for performing the following process, a hash value (h) of an identifier (ID) of a message is calculated for a message block to be signed, a signature value is calculated from a secret key value and a hash value And transmits the signature value to the cloud server (30).
아울러 서명값처리부(22)에 의하여, 서명하고자 하는 메시지 블록에 대해, 메시지의 identifier(ID)의 해쉬값(h)을 산출하고 비밀키값 및 해쉬값으로부터 서명값을 산출하여 클라우드서버(30)로 전송하는 서명 단계(S20)를 수행한다.The signature value processing unit 22 calculates a hash value h of the message identifier (ID) for the message block to be signed, calculates the signature value from the secret key value and the hash value, and transmits the signature value to the cloud server 30 (Step S20).
이러한 서명값처리부(22)의 세부 구성을 보면, 서명하고자 하는 메시지 블록에 대해, 메시지의 identifier(ID)의 해쉬값(h)을 산출하는 해쉬값산출모듈(221)을 포함한다.The signature value processing unit 22 includes a hash value calculation module 221 for calculating a hash value (h) of an identifier (ID) of a message for a message block to be signed.
아울러 상기 서명 단계(S20)는 해쉬값산출모듈(221)에 의하여, 서명하고자 하는 메시지 블록에 대해, 메시지의 identifier(ID)의 해쉬값(h)을 산출하는 해쉬값산출단계(S21)를 수행한다.In the signing step S20, a hash value calculating step S21 is performed by the hash value calculating module 221 to calculate a hash value h of an identifier (ID) of a message for a message block to be signed do.
이러한 해쉬값은 (수학식1)에 의해 산출되는 것이다.This hash value is calculated by (Equation 1).
(수학식 1)(1)
(hi는 i번째 메시지 블록의 해쉬값, H는 해쉬함수로, 해쉬함수 자체가 임의의 길이를 입력받아 고정된 길이를 출력하는 정해진 함수이므로 ID와 m의 연접이 해쉬의 입력으로 들어가면 해쉬함수는 정해진 소정의 알고리즘에 의해서 정해진 소정의 domain(본 발명에서 G1 상의 한 원소)으로 출력을 랜덤하게 만들어내는 것으로, 소정의 입력값으로 G1의 원소로 변환하기 위한 해쉬 함수이다. 그리고 IDi는 i번째 메시지 블록의 identifier 데이터, mi는 i번째 메시지 블록, G1는 차수가 소수 p인 곱셈 순회군(multiplicative cyclic group)이다.)
(h i is a hash value of the i- th message block, H is a hash function, and the hash function itself is a fixed function that outputs a fixed length by receiving an arbitrary length. Is a hash function for randomly generating an output with a predetermined domain (an element of G 1 in the present invention) determined by a predetermined algorithm and converting it into an element of G 1 as a predetermined input value, and ID i Is the identifier data of the i- th message block, m i is the i-th message block, and G 1 is a multiplicative cyclic group with a degree p.
그리고 서명값처리부(22)는 비밀키값 및 해쉬값으로부터 서명값을 산출하는 서명값산출모듈(222)을 포함한다.The signature value processing unit 22 includes a signature value calculation module 222 for calculating a signature value from a secret key value and a hash value.
아울러 상기 서명 단계(S20)는 서명값산출모듈(222)에 의하여, 비밀키값 및 해쉬값으로부터 서명값을 산출하는 서명값산출단계(S22)를 수행한다.In addition, the signature step S20 performs a signature value calculation step S22 of calculating a signature value from a secret key value and a hash value by the signature value calculation module 222. [
이러한 서명값은 (수학식2)에 의해 산출되는 것이다.This signature value is calculated by (Equation 2).
(수학식 2)(2)
(hi는 i번째 메시지 블록의 해쉬값, sji는 i번째 메시지 블록에 대한 j번째 사용자의 서명값, g는 G1의 생성자, xj는 j번째 사용자의 비밀키이다.)
(h i is the hash value of the i th message block, s ji is the signature value of the jth user for the i th message block, g is the constructor of G 1 , and x j is the secret key of the j th user.)
또한 서명값처리부(22)는 이처럼 산출된 서명값 데이터를 클라우드서버(30)로 전송하는 서명값전송모듈(223)을 더 포함할 수 있다.The signature value processing unit 22 may further include a signature value transmission module 223 for transmitting the calculated signature value data to the cloud server 30.
그리고 상기 서명 단계(S20)는 해쉬값산출단계(S21)에서 산출된 해쉬값(h)과 서명값산출단계(S22)에서 산출된 서명값 데이터를 클라우드서버(30)로 전송하는 서명값전송단계(S23)를 수행한다.
The signature step S20 is a signature value transmission step of transmitting the hash value h calculated in the hash value calculation step S21 and the signature value data calculated in the signature value calculation step S22 to the cloud server 30 (S23).
다음으로는 다수 사용자단말기(20)에서 생성된 서명값 및 해쉬값 등을 이용하여 클라우드서버(30)에서 전송받은 정보를 처리하고, 이후 개별 사용자들이 접속 및 클라우드에 저장된 데이터들을 이용할 경우 인증의 과정을 수행하게 된다. 우선 다수 사용자단말기(20)로부터 전송받은 정보를 처리하는 과정을 살펴보기로 한다.Next, the information received from the cloud server 30 is processed by using the signature value and the hash value generated in the multi-user terminal 20, and when the individual users use the data stored in the connection and the cloud, . First, a process of processing information received from the multi-user terminal 20 will be described.
이를 위한 클라우드서버(30)는, 다수의 사용자단말기(20)로부터 서명값, 공개키값을 전송받아 저장하고, 다수 사용자단말기(20)의 서명값들로부터 다중서명값을 산출하고, 대표 데이터값과 대표 서명값을 산출하는 것이다. 이후 클라우드에 저장된 다수 데이터의 이용시 서명의 인증을 수행하는 것이다.The cloud server 30 for this purpose receives and stores a signature value and a public key value from a plurality of user terminals 20, calculates a multiple signature value from the signature values of the multiple user terminals 20, The representative signature value is calculated. And then authenticate the signature when using a plurality of data stored in the cloud.
이러한 다중 서명시스템(10)에 의하면, 다수의 사용자단말기(20)로부터 전송받은 서명값 데이터를 클라우드서버(30)에서 저장하고 다수 사용자들의 서명값들로부터 대표 데이터값과 대표 서명값 데이터를 산출하는 대표값 생성단계(S30)를 수행하는 것이다.According to the multi-signature system 10, signature value data transmitted from a plurality of user terminals 20 is stored in the cloud server 30 and representative data value and representative signature value data are calculated from signature values of a plurality of users And a representative value generating step (S30).
그리고 클라우드서버(30)의 세부 구성으로, 다수의 사용자단말기(20)로부터 전송받은 다수 사용자들의 서명값들로부터 다주서명값을 산출하는 다중서명값산출모듈(33)을 포함한다. 아울러 서명단계(S20)는 다중서명값산출모듈(33)에 의하여, 다수 사용자들의 서명값들로부터 다중서명값을 산출하는 다중서명값산출단계(S24)를 수행한다.And a multi-signature value calculation module 33 for calculating a multi-signature value from signature values of a plurality of users transmitted from a plurality of user terminals 20 in the detailed configuration of the cloud server 30. [ In the signing step S20, the multi-signature value calculating module 33 calculates a multi-signature value S24 from the signature values of the plurality of users.
이에 다중서명값은 (수학식3)에 의해 산출되는 것이다.The multi-signature value is calculated by Equation (3).
(수학식 3)(3)
(sji는 i번째 메시지 블록에 대한 j번째 사용자의 서명값, si는 i번째 메시지 블록에 대한 다중 서명값이다.)
(s ji is the signature value of the j-th user for the i-th message block, and s i is the multiple signature value for the i-th message block.)
또한 클라우드서버(30)의 세부 구성으로, 다수의 사용자단말기(20)로부터 전송받은 다수 사용자들의 해쉬값들로부터 대표 데이터값 데이터를 산출하는 대표데이터값생성부(31)를 포함한다. 아울러 상기 대표값 생성단계(S30)는 대표데이터값생성부(31)에 의하여, 다수의 사용자단말기(20)로부터 전송받은 다수 사용자들의 해쉬값들로부터 대표 데이터값 데이터를 산출하는 대표데이터값생성단계(S31)를 수행한다.And a representative data value generator 31 for calculating representative data value data from hash values of a plurality of users transmitted from a plurality of user terminals 20 in the detailed configuration of the cloud server 30. [ The representative value generating step S30 may include a representative data value generating step 31 for calculating representative data value data from the hash values of the plurality of users transmitted from the plurality of user terminals 20, (S31).
이러한 대표 데이터값 데이터는 (수학식4)에 의해 산출되는 것이다.This representative data value data is calculated by (Equation 4).
(수학식 4)(4)
(는 대표 데이터값, hi는 i번째 메시지 블록의 해쉬값, 는 대표 서명값, si는 i번째 메시지 블록에 대한 다중 서명값, G1는 차수가 소수 p인 곱셈 순회군(multiplicative cyclic group)이다.)
( Hi is the hash value of the i < th > message block, Is a representative signature value, s i is a multiple signature value for the i-th message block, and G 1 is a multiplicative cyclic group with a degree p.
또한 클라우드서버(30)는 다수의 사용자단말기(20)로부터 전송받은 다수 사용자들의 서명값들로부터 대표 서명값 데이터를 산출하는 대표서명값생성부(32)를 포함한다. 아울러 상기 대표값 생성단계(S30)는 대표서명값생성부(32)에 의하여, 다수의 사용자단말기(20)로부터 전송받은 다수 사용자들의 서명값들로부터 대표 서명값 데이터를 산출하는 대표서명값생성단계(S32)를 수행한다.The cloud server 30 also includes a representative signature value generation unit 32 for calculating representative signature value data from signature values of a plurality of users transmitted from a plurality of user terminals 20. The representative value generating step S30 may include generating a representative signature value from the signature values of the plurality of users transmitted from the plurality of user terminals 20 by the representative signature value generator 32, (S32).
이러한 대표 서명값 데이터는 (수학식5)에 의해 산출되는 것이다.This representative signature value data is calculated by (Equation 5).
(수학식 5)(5)
(는 대표 데이터값, hi는 i번째 메시지 블록의 해쉬값, 는 대표 서명값, si는 i번째 메시지 블록에 대한 다중 서명값, G1는 차수가 소수 p인 곱셈 순회군(multiplicative cyclic group)이다.)( Hi is the hash value of the i < th > message block, Is a representative signature value, s i is a multiple signature value for the i-th message block, and G 1 is a multiplicative cyclic group with a degree p.
즉 이상에서와 같이 본 발명에 따른 다중 서명 생성방법 및 다중서명시스템(10)에 의하여, 클라우드에 저장된 데이터로써 다수 블록으로 이루어진 데이터에 대하여 대표 데이터값과 대표서명값을 산출하고 이를 이용하여 서명을 하게 된다.That is, as described above, by the multi-signature generation method and the multi-signature system 10 according to the present invention, the representative data value and the representative signature value are calculated for data composed of a plurality of blocks using the data stored in the cloud, .
이를 위해 다중서명시스템(10)의 클라우드서버(30)에는, 검증을 위한 메시지블록, 해당 블록의 identifier(ID) 데이터, 공개키값, 서명값을 이용하여 서명의 인증을 수행하는 검증부(35)를 포함한다.To this end, the cloud server 30 of the multi-signature system 10 is provided with a verification unit 35 for authenticating a signature using a message block for verification, identifier (ID) data of the corresponding block, a public key value, .
아울러 클라우드서버(30)의 검증부(35)에 의하여, 검증을 위한 메시지블록, 해당 블록의 identifier(ID) 데이터, 공개키값, 서명값을 이용하여 서명의 인증을 수행하는 검증 단계(S40)를 수행한다.
The verification step S40 of authenticating the signature using the message block for verification, the identifier (ID) data of the block, the public key value, and the signature value is performed by the verification unit 35 of the cloud server 30 .
이상에서와 같이 이루어진 클라우드 상의 공유 데이터에 대한 효율적인 다중 서명 생성 방법 및 다중서명시스템(10)에 대한 상세 일실시예를 아래에서와 같이 살펴보기로 한다.
Hereinafter, an efficient multi-signature generation method and a multi-signature system 10 according to the present invention will be described as follows.
이와 같은 본 발명에서는 클라우드에서 공유된 데이터에 대한 효율적인 겹선형 사상 기반의 다중 서명 방법을 제안하는 것이다. 이러한 방식은 계산적 DH (computational Diffie - Hellman) 문제의 어려움에 기반을 둔 보안 특성을 가진다.The present invention proposes an efficient multiple-linear mapping based multi-signature method for data shared in the cloud. This approach has a security characteristic based on the difficulty of the computational Diffie - Hellman (DH) problem.
이러한 본 발명에서의 정보처리 방식은 서명을 검증하는 단계에서 검증에 필요한 다운로드 데이터를 줄일 수 있고, 제3의 검증서비스 제공자가 공개된 데이터로 효율적 검증이 가능한 방식이 제공되는 것이다.According to the information processing method of the present invention, the download data necessary for verification can be reduced in the step of verifying the signature, and a method in which the third verification service provider can efficiently perform verification with the disclosed data is provided.
이를 위한 본 발명에서의 기본적인 정보처리의 내용을 보면 다음과 같다.
The contents of the basic information processing in the present invention are as follows.
즉 G1과 G2가 차수가 소수 p인 두 개의 곱셈 순회군이고, g가 G1의 생성자라 하자. 그러면 이중 선형사상 e: G1 X G1 -> G2는 다음과 같은 성질을 가진다.Let G 1 and G 2 be two multiplicative groups with degree p, and let g be the generator of G 1 . Then the double linear mapping e: G 1 XG 1 -> G 2 has the following properties.
1) 계산가능성: 모든 u, v ∈ G1 에 대하여, e(u, v)를 계산하는 효율적인 알고리즘이 존재1) Computability: For every u, v ∈ G 1 , there exists an efficient algorithm to compute e (u, v)
2) 이중 선형성: 모든 u, v ∈ G1 과 a, b ∈ Zp 에 대해서 e(ua, vb) = e(u, v)ab 가 성립2) double-linearity: all u, v ∈ G 1 and a, b ∈ respect to Z p e (u a, v b) = e (u, v) ab is satisfied
3) Non-degeneracy: e(u, v) ≠ 13) Non-degeneracy: e (u, v) ≠ 1
이러한 본 발명에서의 방식에서 다중 서명을 위해 사용되는 파라미터는,In this method of the present invention,
P = (e, p, G1, G2, g, H)P = (e, p,
로 나타낼 수 있다..
여기서 인 해쉬 함수이다.here In hash function.
다중 소유자의 총수를 N이라 한다. 데이터 M은 총 k개의 블록으로 나누어지고 그 값을,The total number of multiple owners is N. The data M is divided into a total of k blocks,
M = m1 ∥ m2 ∥ ··· ∥ mk M = m 1 ∥ m 2 ∥ · · ∥ m k
라 한다..
그리고 다중 소유자를,And multiple owners,
S = { S1, S2, ···, SN }S = {S 1 , S 2 , ..., S N }
로 나타낸다. 이러한 본 발명에서 다중 서명은 네 단계로 실시된다.
Respectively. In this invention, multiple signatures are performed in four steps.
1) 키 생성 단계(S10): KG(P) -> (sk, pk)1) Key generation step S10: KG (P) -> (sk, pk)
이러한 키 생성단계(S10)는 다수 사용자단말기(20)에서 이루어지는 것이며 사용자에 대한 키정보로 볼 것이다.The key generation step S10 is performed by the multiple user terminals 20 and will be considered as key information for the user.
이에 파리미터 P가 주어졌을 때 i번째 사용자 Si는 Zp의 원소 중에서 랜덤하게 선택한 xi를 자신의 비밀키 ski = xi로 하고 이에 대응되는 공개키,When the parameter P is given, the i-th user S i randomly selects x i among the elements of Z p as its secret key sk i = x i ,
를 산출한다.
.
2) 서명 단계(S20): Sign (mi, IDi, {pk1, ···, pkN})2) Signing step S20: Sign (m i , ID i , {pk 1 , ..., pk N }
이러한 서명단계(S20)는 다수 사용자단말기(20)에서 개별 데이터의 메시지의 다수 블록들에 대한 서명의 과정을 수행하는 것이다.The signing step S20 is a step of signing a plurality of blocks of the individual data message in the multi-user terminal 20. [
즉 서명하고자 하는 i번째 (1 ≤ i ≤ k) 메시지 블록을 mi이라 하고 메시지의 identifier 를 IDi 라 한다. 이에 사용자 Sj는 데이터와 IDi의 해쉬 값,That is, the i-th (1 ≤ i ≤ k) message block to be signed is called m i and the identifier of the message is called ID i . Therefore, the user S j uses the hash value of the data and ID i ,
를 계산하는 해쉬값산출단계(S21)를 수행한다.(Step S21).
이후에 다시 비밀키 xj를 이용하여,Then, using the secret key x j again,
를 계산하는 서명값산출단계(S22)를 수행한다. 그리하여 클라우드 서버로 Sji를 전송하는 서명값전송단계(S23)를 수행한다.
(Step S22). ≪ / RTI > Then, a signature value transmission step S23 for transmitting S ji to the cloud server is performed.
아울러 각 사용자가 계산한 i번째 데이터 mi에 대한 N개의 서명이 모두 클라우드 서버에 도착하면, 클라우드 서버는 모든 소유자의 서명의 G1 상에서의 곱,When all the N signatures for the i-th data m i calculated by each user arrive at the cloud server, the cloud server calculates the product of the signature of all the owners on G 1 ,
를 해당 블록의 다중 서명 값으로 계산하여 서버에 저장하는 다중서명값산출단계(S24)를 수행한다.
Is calculated as a multi-signature value of the corresponding block and stored in the server (S24).
3) 대표 값 생성 단계:3) Representative value generation step:
수집된 서명을 이용해서 클라우드 서버는 저장된 데이터의 대표 값을 생성(대표데이터값생성단계(S31))과 대표 서명을 생성(대표서명값생성단계(S32))한다.Using the collected signature, the cloud server generates a representative value of stored data (representative data value generation step S31) and a representative signature (representative signature value generation step S32).
이때 대표 데이터 값은,At this time,
이고, 대표 서명 값은,And the representative signature value is "
이다. 이 두 개의 값이 서버에 저장된다.
to be. These two values are stored in the server.
4) 검증 단계: 4) Verification phase:
메시지 블록, 해당 블록의 ID, 그리고 공개키 및 서명 값이 주어져 있을 때,Given a message block, the ID of that block, and a public key and signature value,
가 성립하면 검증이 된 것으로 판단하고 그렇지 않으면 검증되지 않은 것으로 판단한다.It is judged that it has been verified, otherwise it is judged that it has not been verified.
여기에서 pk는 사용자의 모든 공개키 pi들의 G1에서의 곱셈이다. 즉,Where pk is the multiplication of all the user's public keys p i by G 1 . In other words,
이다.to be.
검증 단계의 유효성은 다음과 같이 이중 선형성에 의해서 이루어진다.The effectiveness of the verification step is achieved by double linearity as follows.
이상에서와 같이 본 발명은 클라우드 환경에서의 다중 서명방법을 제공하는 것이며, 이처럼 클라우드에 저장된 메시지를 임의의 크기의 블록으로 나누고 그 블록은 메시지 아이디와 함께 해쉬값을 계산하는 것이다.As described above, the present invention provides a multiple signature method in a cloud environment. In this way, a message stored in the cloud is divided into blocks of arbitrary size, and the block calculates the hash value together with the message ID.
그리고 이러한 해쉬값과 생성자의 곱을 비밀키 값을 이용해서 서명과정을 수행하는 것이다.Then, the signature process is performed using the secret key value as the product of the hash value and the generator.
특히 서명된 값을 수집하고 검증하는 메커니즘을 제공하는 것이다.In particular, it provides a mechanism for collecting and verifying signed values.
이처럼 이중 선형성에 대해서 대표서명값()과 공개정보(g)를 일측에 대입하고() 대표메이시 데이터값()과 공개정보() 및 공개키값(pk)을 타측에 대입하여(), 결과를 같이 하는 경우 올바른 서명으로 검증(verification)할 수 있는 것이다.Thus, for the dual linearity, the representative signature value ( ) And public information (g) to one side ) Representative macro data value ( ) And public information ( ) And the public key value pk to the other side ), You can verify with the correct signature if you combine the results.
()( )
이로써 본 발명에서는 해쉬함수, 서명 대표값, 메시지 대표값의 domain이 multiplicative cyclic group인 G1 상에서 처리되도록 함으로써, 이중 선형성의 양측 산출값에 의한 등가성으로 판별을 이용하여 검증하는 것으로, 권한을 갖지 않은 오부 사람이 공개키 pk 값을 사용하여 정당 서명을 효과적으로 판별하는 것이다.Thus, in the present invention, the hash function, the signature representative value, and the domain of the message representative value are processed on G1, which is a multiplicative cyclic group, thereby verifying the equivalence based on the bilateral calculated values of double linearity, A person effectively uses the public key pk value to determine the party signature.
이상으로 본 발명의 실시예에 대하여 상세히 설명하였으나, 이는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 일실시예를 기재한 것이므로, 상기 실시예의 기재에 의하여 본 발명의 기술적 사상이 제한적으로 해석되어서는 아니 된다.
While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The technical idea of the present invention should not be construed as being limited.
10 : 다중서명시스템 20 : 사용자단말기
21 : 키생성부 22 : 서명값처리부
30 : 클라우드서버 31 : 대표데이터값생성부
32 : 대표서명값생성부 35 : 검증부10: Multiple signature system 20: User terminal
21: key generation unit 22: signature value processing unit
30: Cloud server 31: Representative data value generating unit
32: representative signature value generation unit 35: verification unit
Claims (12)
서명하고자 하는 메시지 블록에 대해, 메시지의 identifier(ID)의 해쉬값(h)을 산출하고 비밀키값 및 해쉬값으로부터 서명값을 사용자단말기에서 산출하여 클라우드서버로 전송하는 서명 단계;
다수의 사용자단말기로부터 전송받은 서명값 데이터를 클라우드서버에서 저장하고 다수 사용자들의 서명값들로부터 대표 데이터값과 대표 서명값 데이터를 산출하는 대표값 생성단계; 및
클라우드서버에서, 검증을 위한 메시지블록, 해당 블록의 identifier(ID) 데이터, 공개키값, 서명값을 이용하여 서명의 인증을 수행하는 검증 단계;
를 포함하는 것을 특징으로 하는 클라우드 상의 공유 데이터에 대한 효율적인 다중 서명생성방법.
A key generation step of generating a secret key value and a public key value corresponding to a secret key value randomly selected from the secret key data provided by the user terminal;
A signature step of calculating a hash value (h) of an identifier (ID) of a message to be signed, calculating a signature value from a secret key value and a hash value, and transmitting the calculated signature value to a cloud server;
A representative value generation step of storing signature value data transmitted from a plurality of user terminals in a cloud server and calculating representative data values and representative signature value data from signature values of a plurality of users; And
A verification step of performing signature verification using a message block for verification, identifier (ID) data of a corresponding block, a public key value, and a signature value in a cloud server;
The method of claim 1, further comprising:
상기 서명 단계는:
서명하고자 하는 메시지 블록에 대해, 메시지의 identifier(ID)의 해쉬값(h)을 산출하는 해쉬값산출단계;
비밀키값 및 해쉬값으로부터 서명값을 산출하는 서명값산출단계;
해쉬값산출단계에서 산출된 해쉬값(h)과 서명값산출단계에서 산출된 서명값 데이터를 클라우드서버로 전송하는 서명값전송단계; 및
다수 사용자단말기로부터 전송받은 서명값들로부터 다중서명값을 클라우드서버에서 산출하는 다중서명값산출단계;
를 포함하는 것을 특징으로 하는 클라우드 상의 공유 데이터에 대한 효율적인 다중 서명생성방법.
The method according to claim 1,
Wherein the signing step comprises:
A hash value calculation step of calculating a hash value (h) of an identifier (ID) of a message for a message block to be signed;
A signature value calculation step of calculating a signature value from a secret key value and a hash value;
A signature value transmission step of transmitting the hash value (h) calculated in the hash value calculation step and the signature value data calculated in the signature value calculation step to the cloud server; And
A multi-signature value calculation step of calculating a multi-signature value from the signature values received from the multi-user terminal in the cloud server;
The method of claim 1, further comprising:
상기 해쉬값산출단계에서의 해쉬값은 (수학식1)에 의해 산출되고,
상기 서명값산출단계에서의 서명값은 (수학식2)에 의해 산출되고,
상기 다중서명값산출단계에서의 다중서명값은 (수학식3)에 의해 산출되는 것을 특징으로 하는 클라우드 상의 공유 데이터에 대한 효율적인 다중 서명생성방법.
(수학식 1)
(수학식 2)
(수학식 3)
(hi는 i번째 메시지 블록의 해쉬값, H는 해쉬함수로, 해쉬함수 자체가 임의의 길이를 입력받아 고정된 길이를 출력하는 정해진 함수이므로 ID와 m의 연접이 해쉬의 입력으로 들어가면 해쉬함수는 정해진 소정의 알고리즘에 의해서 정해진 소정의 domain(G1 상의 한 원소)으로 출력을 랜덤하게 만들어내는 것으로, 소정의 입력값으로 G1의 원소로 변환하기 위한 해쉬 함수이다. 그리고 IDi는 i번째 메시지 블록의 identifier 데이터, mi는 i번째 메시지 블록, G1는 차수가 소수 p인 곱셈 순회군(multiplicative cyclic group)이다. sji는 i번째 메시지 블록에 대한 j번째 사용자의 서명값, g는 G1의 생성자, xj는 j번째 사용자의 비밀키, si는 i번째 메시지 블록에 대한 다중 서명값이다.)
3. The method of claim 2,
The hash value in the hash value calculation step is calculated by the following equation (1)
The signature value in the signature value calculation step is calculated by the following equation (2)
Wherein the multi-signature value in the multi-signature value calculation step is calculated by Equation (3).
(1)
(2)
(3)
(h i is a hash value of the i- th message block, H is a hash function, and the hash function itself is a fixed function that outputs a fixed length by receiving an arbitrary length. Is a hash function for randomly generating an output with a predetermined domain (an element on G 1 ) determined by a predetermined algorithm and converting it into an element of G 1 as a predetermined input value, and ID i is an i th Where j i is the signature value of the jth user for the i th message block, g is the signature value of the i th message block, g i is the identifier value of the message block, m i is the i th message block, G 1 is the multiplicative cyclic group with degree p, The constructor of G 1 , x j is the secret key of the j th user, and s i is the multiple signature value for the i th message block.
상기 대표값 생성단계는:
다수의 사용자단말기로부터 전송받은 다수 사용자들의 해쉬값들로부터 대표 데이터값 데이터를 산출하는 대표데이터값생성단계; 및
다수의 사용자단말기로부터 전송받은 다수 사용자들의 서명값들로부터 대표 서명값 데이터를 산출하는 대표서명값생성단계;
를 포함하는 것을 특징으로 하는 클라우드 상의 공유 데이터에 대한 효율적인 다중 서명생성방법.
The method according to claim 1,
Wherein the representative value generating step comprises:
A representative data value generation step of calculating representative data value data from hash values of a plurality of users transmitted from a plurality of user terminals; And
A representative signature value generation step of calculating representative signature value data from signature values of a plurality of users transmitted from a plurality of user terminals;
The method of claim 1, further comprising:
상기 대표데이터값생성단계에서의 대표 데이터값 데이터는 (수학식4)에 의해 산출되고,
상기 대표서명값생성단계에서의 대표 서명값 데이터는 (수학식5)에 의해 산출되는 것을 특징으로 하는 클라우드 상의 공유 데이터에 대한 효율적인 다중 서명생성방법.
(수학식 4)
(수학식 5)
(는 대표 데이터값, hi는 i번째 메시지 블록의 해쉬값, 는 대표 서명값, si는 i번째 메시지 블록에 대한 다중 서명값, G1는 차수가 소수 p인 곱셈 순회군(multiplicative cyclic group)이다.)
5. The method of claim 4,
The representative data value data in the representative data value generation step is calculated by the following equation (4)
Wherein the representative signature value data in the representative signature value generation step is calculated by Equation (5).
(4)
(5)
( Hi is the hash value of the i < th > message block, Is a representative signature value, s i is a multiple signature value for the i-th message block, and G 1 is a multiplicative cyclic group with a degree p.
서명하고자 하는 메시지 블록에 대해, 메시지의 identifier(ID)의 해쉬값(h)을 산출하고 비밀키값 및 해쉬값으로부터 서명값을 산출하여 클라우드서버로 전송하고,
상기 해쉬값은 (수학식1)에 의해 산출되고,
상기 서명값은 (수학식2)에 의해 산출되는 것을 특징으로 하는 클라우드 상의 공유 데이터에 대한 효율적인 다중 서명생성용 사용자단말기.
(수학식 1)
(수학식 2)
(hi는 i번째 메시지 블록의 해쉬값, H는 해쉬함수로, 해쉬함수 자체가 임의의 길이를 입력받아 고정된 길이를 출력하는 정해진 함수이므로 ID와 m의 연접이 해쉬의 입력으로 들어가면 해쉬함수는 정해진 소정의 알고리즘에 의해서 정해진 소정의 domain(G1 상의 한 원소)으로 출력을 랜덤하게 만들어내는 것으로, 소정의 입력값으로 G1의 원소로 변환하기 위한 해쉬 함수이다. 그리고 IDi는 i번째 메시지 블록의 identifier 데이터, mi는 i번째 메시지 블록, G1는 차수가 소수 p인 곱셈 순회군(multiplicative cyclic group)이다. sji는 i번째 메시지 블록에 대한 j번째 사용자의 서명값, g는 G1의 생성자, xj는 j번째 사용자의 비밀키이다.)
Generates a secret key value and a public key value corresponding to the secret key value randomly selected from the provided secret key data,
A hash value (h) of an identifier (ID) of a message is calculated for a message block to be signed, a signature value is calculated from a secret key value and a hash value, and is transmitted to a cloud server,
The hash value is calculated by the following equation (1)
Wherein the signature value is calculated by Equation (2). ≪ EMI ID = 2.0 >
(1)
(2)
(h i is a hash value of the i- th message block, H is a hash function, and the hash function itself is a fixed function that outputs a fixed length by receiving an arbitrary length. Is a hash function for randomly generating an output with a predetermined domain (an element on G 1 ) determined by a predetermined algorithm and converting it into an element of G 1 as a predetermined input value, and ID i is an i th Where j i is the signature value of the jth user for the i th message block, g is the signature value of the i th message block, g i is the identifier value of the message block, m i is the i th message block, G 1 is the multiplicative cyclic group with degree p, The constructor of G 1 , and x j is the secret key of the jth user.)
다수의 사용자단말기로부터 전송받은 서명값들로부터 다중서명값을 산출하며,
대표 데이터값과 대표 서명값을 산출하고,
서명의 인증을 수행하는 것을 특징으로 하는 클라우드 상의 공유 데이터에 대한 효율적인 다중서명용 클라우드서버.
A signature value and a public key value are received and stored from a plurality of user terminals,
A multi-signature value is calculated from signature values transmitted from a plurality of user terminals,
A representative data value and a representative signature value are calculated,
Signing of the shared data on the cloud.
다중서명값은 (수학식3)에 의해 산출되고,
대표 데이터값은 (수학식4)에 의해 산출되며,
대표 서명값은 (수학식5)에 의해 산출되는 것을 특징으로 하는 클라우드 상의 공유 데이터에 대한 효율적인 다중서명용 클라우드서버.
(수학식 3)
(수학식 4)
(수학식 5)
(si는 i번째 메시지 블록에 대한 다중 서명값, sji는 i번째 메시지 블록에 대한 j번째 사용자의 서명값, 는 대표 데이터값, hi는 i번째 메시지 블록의 해쉬값, 는 대표 서명값, si는 i번째 메시지 블록에 대한 다중 서명값, G1는 차수가 소수 p인 곱셈 순회군(multiplicative cyclic group)이다.)
9. The method of claim 8,
The multiple signature value is calculated by (Equation 3)
The representative data value is calculated by the following equation (4)
Wherein the representative signature value is calculated according to Equation (5).
(3)
(4)
(5)
(s i is the multiple signature value for the i-th message block, s ji is the signature value of the j-th user for the i-th message block, Hi is the hash value of the i < th > message block, Is a representative signature value, s i is a multiple signature value for the i-th message block, and G 1 is a multiplicative cyclic group with a degree p.
제 8항의 클라우드서버를 포함하고,
상기 사용자단말기에 의하여, 제공된 비밀키 데이터들로부터 랜덤하게 선택된 비밀키값 및 비밀키값과 대응되는 공개키값을 생성하고, 서명하고자 하는 메시지 블록에 대해, 메시지의 identifier(ID)의 해쉬값(h)을 산출하고 비밀키값 및 해쉬값으로부터 서명값을 산출하여 클라우드서버로 전송하며,
상기 클라우드서버에 의하여, 다수의 사용자단말기로부터 서명값, 공개키값을 전송받아 저장하고, 다중서명값을 산출하며, 대표 데이터값과 대표 서명값을 산출하고, 서명의 인증을 수행하는 것을 특징으로 하는 클라우드 상의 공유 데이터에 대한 효율적인 다중서명시스템.
The user terminal of claim 7; And
10. A server comprising the cloud server of claim 8,
The user terminal generates a secret key value and a public key value corresponding to a secret key value and a secret key value randomly selected from the provided secret key data, and transmits a hash value (h) of a message identifier (ID) to a message block to be signed Calculates a signature value from the secret key value and the hash value, and transmits the signature value to the cloud server,
Wherein the cloud server receives and stores a signature value and a public key value from a plurality of user terminals, calculates a multiple signature value, calculates a representative data value and a representative signature value, and performs signature authentication. An efficient multi-signature system for shared data in the cloud.
상기 해쉬값은 (수학식1)에 의해 산출되고,
상기 서명값은 (수학식2)에 의해 산출되며,
상기 다중서명값은 (수학식3)에 의해 산출되는 것을 특징으로 하는 클라우드 상의 공유 데이터에 대한 효율적인 다중서명시스템.
(수학식 1)
(수학식 2)
(수학식 3)
(hi는 i번째 메시지 블록의 해쉬값, H는 해쉬함수로, 해쉬함수 자체가 임의의 길이를 입력받아 고정된 길이를 출력하는 정해진 함수이므로 ID와 m의 연접이 해쉬의 입력으로 들어가면 해쉬함수는 정해진 소정의 알고리즘에 의해서 정해진 소정의 domain(G1 상의 한 원소)으로 출력을 랜덤하게 만들어내는 것으로, 소정의 입력값으로 G1의 원소로 변환하기 위한 해쉬 함수이다. 그리고 IDi는 i번째 메시지 블록의 identifier 데이터, mi는 i번째 메시지 블록, G1는 차수가 소수 p인 곱셈 순회군(multiplicative cyclic group)이다. sji는 i번째 메시지 블록에 대한 j번째 사용자의 서명값, g는 G1의 생성자, xj는 j번째 사용자의 비밀키, si는 i번째 메시지 블록에 대한 다중 서명값이다.)
11. The method of claim 10,
The hash value is calculated by the following equation (1)
The signature value is calculated by the following equation (2)
Wherein the multi-signature value is computed according to Equation (3).
(1)
(2)
(3)
(h i is a hash value of the i- th message block, H is a hash function, and the hash function itself is a fixed function that outputs a fixed length by receiving an arbitrary length. Is a hash function for randomly generating an output with a predetermined domain (an element on G 1 ) determined by a predetermined algorithm and converting it into an element of G 1 as a predetermined input value, and ID i is an i th Where j i is the signature value of the jth user for the i th message block, g is the signature value of the i th message block, g i is the identifier value of the message block, m i is the i th message block, G 1 is the multiplicative cyclic group with degree p, The constructor of G 1 , x j is the secret key of the j th user, and s i is the multiple signature value for the i th message block.
대표 데이터값은 (수학식4)에 의해 산출되고,
대표 서명값은 (수학식5)에 의해 산출되는 것을 특징으로 하는 클라우드 상의 공유 데이터에 대한 효율적인 다중서명시스템.
(수학식 4)
(수학식 5)
(는 대표 데이터값, hi는 i번째 메시지 블록의 해쉬값, 는 대표 서명값, si는 i번째 메시지 블록에 대한 다중 서명값, G1는 차수가 소수 p인 곱셈 순회군(multiplicative cyclic group)이다.)11. The method of claim 10,
The representative data value is calculated by the following equation (4)
Wherein the representative signature value is computed according to Equation (5).
(4)
(5)
( Hi is the hash value of the i < th > message block, Is a representative signature value, s i is a multiple signature value for the i-th message block, and G 1 is a multiplicative cyclic group with a degree p.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140087270A KR101575030B1 (en) | 2014-07-11 | 2014-07-11 | Method of multi-signature generation for shared data in the cloud |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140087270A KR101575030B1 (en) | 2014-07-11 | 2014-07-11 | Method of multi-signature generation for shared data in the cloud |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101575030B1 true KR101575030B1 (en) | 2015-12-07 |
Family
ID=54872484
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140087270A KR101575030B1 (en) | 2014-07-11 | 2014-07-11 | Method of multi-signature generation for shared data in the cloud |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101575030B1 (en) |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101837166B1 (en) | 2016-10-26 | 2018-03-09 | 주식회사 코인플러그 | Method for issuing and paying money using updated status of balance database by respective blocks in blockchain, and server using the same |
KR101837167B1 (en) | 2016-10-26 | 2018-03-09 | 주식회사 코인플러그 | Method for issuing and paying money in use of merkle tree structure on the basis of unspent transaction output protocol, and server using the same |
KR101841565B1 (en) | 2017-04-27 | 2018-03-26 | 주식회사 코인플러그 | Method for issuing, using, refunding, settling and revocating electric voucher in use of merkle tree structure on the basis of unspent transaction output, and server using the same |
WO2018070848A1 (en) * | 2016-10-13 | 2018-04-19 | 주식회사 코인플러그 | Method for providing smart contract-based certificate service, and server employing same |
KR101849912B1 (en) | 2017-05-25 | 2018-04-19 | 주식회사 코인플러그 | Method for providing certificate service based on smart contract and server using the same |
KR101849920B1 (en) | 2017-05-25 | 2018-04-19 | 주식회사 코인플러그 | Method for providing certificate service based on m of n multiple signatures in use of merkle tree structure and server using the same |
KR101849918B1 (en) * | 2016-10-26 | 2018-04-19 | 주식회사 코인플러그 | Method for issuing and paying money in use of unspent transaction output based protocol, and server using the same |
KR20180040857A (en) * | 2016-10-13 | 2018-04-23 | 주식회사 코인플러그 | Method for providing certificate service based on m of n multiple signatures in use of merkle tree structure and server using the same |
KR101841561B1 (en) | 2017-04-27 | 2018-05-04 | 주식회사 코인플러그 | Method for issuing, using, refunding, settling and revocating electric voucher in use of unspent transaction output based protocol, and server using the same |
KR101841562B1 (en) | 2017-04-27 | 2018-05-04 | 주식회사 코인플러그 | Method for issuing, using, refunding, settling and revocating electric voucher in use of unspent transaction output based protocol, and server using the same |
KR101841563B1 (en) * | 2016-10-11 | 2018-05-04 | 주식회사 코인플러그 | Method for issuing, using, refunding, settling and revocating electric voucher in use of merkle tree structure on the basis of unspent transaction output, and server using the same |
KR101841560B1 (en) * | 2016-10-11 | 2018-05-04 | 주식회사 코인플러그 | Method for issuing, using, refunding, settling and revocating electric voucher in use of unspent transaction output based protocol, and server using the same |
KR101841568B1 (en) | 2017-04-27 | 2018-05-04 | 주식회사 코인플러그 | Method for issuing, using, refunding, settling and revocating electric voucher using updated status of balance database by respective blocks in blockchain, and server using the same |
KR101841566B1 (en) * | 2016-10-11 | 2018-05-04 | 주식회사 코인플러그 | Method for issuing, using, refunding, settling and revocating electric voucher using updated status of balance database by respective blocks in blockchain, and server using the same |
KR101841564B1 (en) | 2017-04-27 | 2018-05-04 | 주식회사 코인플러그 | Method for issuing, using, refunding, settling and revocating electric voucher in use of merkle tree structure on the basis of unspent transaction output, and server using the same |
KR101841567B1 (en) | 2017-04-27 | 2018-05-04 | 주식회사 코인플러그 | Method for issuing, using, refunding, settling and revocating electric voucher using updated status of balance database by respective blocks in blockchain, and server using the same |
KR101849908B1 (en) * | 2016-10-13 | 2018-05-31 | 주식회사 코인플러그 | Method for providing certificate service based on m of n multiple signatures and server using the same |
WO2018124857A1 (en) * | 2017-01-02 | 2018-07-05 | 주식회사 코인플러그 | Blockchain database-based method and terminal for authenticating user non-face-to-face by utilizing mobile id, and server utilizing method and terminal |
KR101890584B1 (en) | 2017-05-25 | 2018-09-28 | 주식회사 코인플러그 | Method for providing certificate service based on m of n multiple signatures and server using the same |
KR20190114597A (en) * | 2018-03-30 | 2019-10-10 | 주식회사 네이블커뮤니케이션즈 | Method, apparatus and system for identifying caller using blockchain |
KR102439195B1 (en) * | 2022-05-03 | 2022-08-31 | 세종대학교산학협력단 | Method and system for generating multi signature, and computing device for executing the same |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101220160B1 (en) | 2012-03-09 | 2013-01-11 | 동국대학교 경주캠퍼스 산학협력단 | Secure data management method based on proxy re-encryption in mobile cloud environment |
KR101403626B1 (en) | 2013-08-14 | 2014-06-03 | (주) 뉴코 | Method of integrated smart terminal security management in cloud computing environment |
-
2014
- 2014-07-11 KR KR1020140087270A patent/KR101575030B1/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101220160B1 (en) | 2012-03-09 | 2013-01-11 | 동국대학교 경주캠퍼스 산학협력단 | Secure data management method based on proxy re-encryption in mobile cloud environment |
KR101403626B1 (en) | 2013-08-14 | 2014-06-03 | (주) 뉴코 | Method of integrated smart terminal security management in cloud computing environment |
Non-Patent Citations (1)
Title |
---|
A.Menezes 외 2명, Handbook of Applied Cryptography, Chapter.11, CRC Press (1996.)* |
Cited By (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018070784A3 (en) * | 2016-10-11 | 2018-07-19 | 주식회사 코인플러그 | Method for issuing, redeeming, refunding, settling and revoking electronic voucher by managing balance database by blocks in blockchain, and server employing same |
US11907917B2 (en) | 2016-10-11 | 2024-02-20 | Cplabs, Inc. | Method for issuing, redeeming, refunding, settling and revoking electronic voucher by using utxo-based protocol, and server employing same |
US11436595B2 (en) | 2016-10-11 | 2022-09-06 | Coinplug, Inc. | Method for issuing, using, refunding, settling and revoking electronic voucher using updated status of balance database by respective blocks in blockchain, and server using the same |
KR101841566B1 (en) * | 2016-10-11 | 2018-05-04 | 주식회사 코인플러그 | Method for issuing, using, refunding, settling and revocating electric voucher using updated status of balance database by respective blocks in blockchain, and server using the same |
US11397928B2 (en) | 2016-10-11 | 2022-07-26 | Coinplug, Inc. | Method for issuing, redeeming, refunding, settling and revoking electronic voucher by using utxo-based protocol, and server employing same |
KR101841560B1 (en) * | 2016-10-11 | 2018-05-04 | 주식회사 코인플러그 | Method for issuing, using, refunding, settling and revocating electric voucher in use of unspent transaction output based protocol, and server using the same |
KR101841563B1 (en) * | 2016-10-11 | 2018-05-04 | 주식회사 코인플러그 | Method for issuing, using, refunding, settling and revocating electric voucher in use of merkle tree structure on the basis of unspent transaction output, and server using the same |
WO2018070783A3 (en) * | 2016-10-11 | 2018-07-19 | 주식회사 코인플러그 | Method for issuing, redeeming, refunding, settling and revoking electronic voucher on basis of utxo and by using merkle tree structure, and server employing same |
WO2018070781A3 (en) * | 2016-10-11 | 2018-07-19 | 주식회사 코인플러그 | Method for issuing, redeeming, refunding, settling and revoking electronic voucher by using utxo-based protocol, and server employing same |
WO2018070848A1 (en) * | 2016-10-13 | 2018-04-19 | 주식회사 코인플러그 | Method for providing smart contract-based certificate service, and server employing same |
KR20180040857A (en) * | 2016-10-13 | 2018-04-23 | 주식회사 코인플러그 | Method for providing certificate service based on m of n multiple signatures in use of merkle tree structure and server using the same |
KR101849917B1 (en) * | 2016-10-13 | 2018-05-31 | 주식회사 코인플러그 | Method for providing certificate service based on smart contract and server using the same |
KR101849908B1 (en) * | 2016-10-13 | 2018-05-31 | 주식회사 코인플러그 | Method for providing certificate service based on m of n multiple signatures and server using the same |
KR101890587B1 (en) * | 2016-10-13 | 2018-08-23 | 주식회사 코인플러그 | Method for providing certificate service based on m of n multiple signatures in use of merkle tree structure and server using the same |
US10826888B2 (en) | 2016-10-13 | 2020-11-03 | Coinplug, Inc. | Method for providing certificate service based on smart contract and server using the same |
WO2018080206A1 (en) * | 2016-10-26 | 2018-05-03 | 주식회사 코인플러그 | Method for issuing currency and making payment using merkle tree structure in utxo-based protocol and server using same |
WO2018080205A1 (en) * | 2016-10-26 | 2018-05-03 | 주식회사 코인플러그 | Method for issuing currency and making payment using utxo-based protocol and sever using same |
KR101837167B1 (en) | 2016-10-26 | 2018-03-09 | 주식회사 코인플러그 | Method for issuing and paying money in use of merkle tree structure on the basis of unspent transaction output protocol, and server using the same |
US11373177B2 (en) | 2016-10-26 | 2022-06-28 | Coinplug, Inc. | Method for issuing currency and making payment using utxo-based protocol and server using same |
US11037111B2 (en) | 2016-10-26 | 2021-06-15 | Coinplug, Inc. | Method for issuing currency and making payment by managing balance database for each block in blockchain network and server using same |
KR101849918B1 (en) * | 2016-10-26 | 2018-04-19 | 주식회사 코인플러그 | Method for issuing and paying money in use of unspent transaction output based protocol, and server using the same |
WO2018080207A1 (en) * | 2016-10-26 | 2018-05-03 | 주식회사 코인플러그 | Method for issuing currency and making payment by managing balance database for each block in blockchain and server using same |
KR101837166B1 (en) | 2016-10-26 | 2018-03-09 | 주식회사 코인플러그 | Method for issuing and paying money using updated status of balance database by respective blocks in blockchain, and server using the same |
KR101877333B1 (en) | 2017-01-02 | 2018-08-09 | 주식회사 코인플러그 | Method for authenticating a user without a face-to-face contact by using mobile id based on blockchain, and terminal and server using the same |
KR20180079805A (en) * | 2017-01-02 | 2018-07-11 | 주식회사 코인플러그 | Method for authenticating a user without a face-to-face contact by using mobile id based on blockchain, and terminal and server using the same |
WO2018124857A1 (en) * | 2017-01-02 | 2018-07-05 | 주식회사 코인플러그 | Blockchain database-based method and terminal for authenticating user non-face-to-face by utilizing mobile id, and server utilizing method and terminal |
KR101841567B1 (en) | 2017-04-27 | 2018-05-04 | 주식회사 코인플러그 | Method for issuing, using, refunding, settling and revocating electric voucher using updated status of balance database by respective blocks in blockchain, and server using the same |
KR101841561B1 (en) | 2017-04-27 | 2018-05-04 | 주식회사 코인플러그 | Method for issuing, using, refunding, settling and revocating electric voucher in use of unspent transaction output based protocol, and server using the same |
KR101841562B1 (en) | 2017-04-27 | 2018-05-04 | 주식회사 코인플러그 | Method for issuing, using, refunding, settling and revocating electric voucher in use of unspent transaction output based protocol, and server using the same |
KR101841568B1 (en) | 2017-04-27 | 2018-05-04 | 주식회사 코인플러그 | Method for issuing, using, refunding, settling and revocating electric voucher using updated status of balance database by respective blocks in blockchain, and server using the same |
KR101841565B1 (en) | 2017-04-27 | 2018-03-26 | 주식회사 코인플러그 | Method for issuing, using, refunding, settling and revocating electric voucher in use of merkle tree structure on the basis of unspent transaction output, and server using the same |
KR101841564B1 (en) | 2017-04-27 | 2018-05-04 | 주식회사 코인플러그 | Method for issuing, using, refunding, settling and revocating electric voucher in use of merkle tree structure on the basis of unspent transaction output, and server using the same |
KR101890584B1 (en) | 2017-05-25 | 2018-09-28 | 주식회사 코인플러그 | Method for providing certificate service based on m of n multiple signatures and server using the same |
KR101849920B1 (en) | 2017-05-25 | 2018-04-19 | 주식회사 코인플러그 | Method for providing certificate service based on m of n multiple signatures in use of merkle tree structure and server using the same |
KR101849912B1 (en) | 2017-05-25 | 2018-04-19 | 주식회사 코인플러그 | Method for providing certificate service based on smart contract and server using the same |
KR20190114597A (en) * | 2018-03-30 | 2019-10-10 | 주식회사 네이블커뮤니케이션즈 | Method, apparatus and system for identifying caller using blockchain |
KR102054581B1 (en) | 2018-03-30 | 2019-12-12 | 주식회사 네이블커뮤니케이션즈 | Method, apparatus and system for identifying caller using blockchain |
KR102439195B1 (en) * | 2022-05-03 | 2022-08-31 | 세종대학교산학협력단 | Method and system for generating multi signature, and computing device for executing the same |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101575030B1 (en) | Method of multi-signature generation for shared data in the cloud | |
CN111989891B (en) | Data processing method, related device and block chain system | |
Wang et al. | Oruta: Privacy-preserving public auditing for shared data in the cloud | |
US8713329B2 (en) | Authenticated secret sharing | |
Wang et al. | Online/offline provable data possession | |
US9641340B2 (en) | Certificateless multi-proxy signature method and apparatus | |
US10027475B2 (en) | Key agreement device and method | |
US11979492B2 (en) | Computer-implemented system and method for distributing shares of digitally signed data | |
Velliangiri et al. | An efficient lightweight privacy-preserving mechanism for industry 4.0 based on elliptic curve cryptography | |
CN101931529A (en) | Data encryption method, data decryption method and nodes | |
US9172530B2 (en) | Apparatus and method for generating secret key for ID-based encryption system and recording medium having program recorded thereon for causing computer to execute the method | |
US9660813B1 (en) | Dynamic privacy management for communications of clients in privacy-preserving groups | |
CN111400728A (en) | Data encryption and decryption method and device applied to block chain | |
Das et al. | A novel proxy signature scheme based on user hierarchical access control policy | |
KR20210063378A (en) | Computer-implemented systems and methods that share common secrets | |
KR101382626B1 (en) | System and method for id-based strong designated verifier signature | |
Chen et al. | Witness-based searchable encryption with optimal overhead for cloud-edge computing | |
Chakraborty et al. | Enhanced public auditability & secure data storage in cloud computing | |
CN112100144A (en) | Block chain file sharing method and device, storage medium and electronic equipment | |
Lizama-Pérez et al. | Public hash signature for mobile network devices | |
Huang et al. | Block-Level Message-Locked Encryption with Polynomial Commitment for IoT Data. | |
Bayat et al. | A secure and efficient chaotic maps based authenticated key-exchange protocol for smart grid | |
JP6053983B2 (en) | Cryptographic system, signature system, cryptographic program and signature program | |
KR102070061B1 (en) | Batch verification method and apparatus thereof | |
CN114362912A (en) | Identification password generation method based on distributed key center, electronic device and medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20181108 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20191112 Year of fee payment: 5 |