KR20200136676A - Forward secure sequential aggregate signature method and apparatus thereof - Google Patents

Forward secure sequential aggregate signature method and apparatus thereof Download PDF

Info

Publication number
KR20200136676A
KR20200136676A KR1020190062517A KR20190062517A KR20200136676A KR 20200136676 A KR20200136676 A KR 20200136676A KR 1020190062517 A KR1020190062517 A KR 1020190062517A KR 20190062517 A KR20190062517 A KR 20190062517A KR 20200136676 A KR20200136676 A KR 20200136676A
Authority
KR
South Korea
Prior art keywords
signature
message
variable value
value
jth
Prior art date
Application number
KR1020190062517A
Other languages
Korean (ko)
Other versions
KR102307483B1 (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 KR1020190062517A priority Critical patent/KR102307483B1/en
Publication of KR20200136676A publication Critical patent/KR20200136676A/en
Application granted granted Critical
Publication of KR102307483B1 publication Critical patent/KR102307483B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • H04L9/3257Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using blind signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/04Masking or blinding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, e.g. dummy operations or using noise
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/26Testing cryptographic entity, e.g. testing integrity of encryption key or encryption algorithm

Landscapes

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

Abstract

Disclosed are an omni-directional safety signature method for supporting sequential joining and a device thereof. The omni-directional safety signature method for supporting sequential joining comprises the steps of: (a) selecting a j^th random value used for signing a j^th message (Mj) at a current time point (t); (b) generating a j^th signature for the j^th message (Mj) using the j^th random value and a t^th secret key for the j-th message (Mj) at the current time point (t); (c) generating a j^th integrated blind variable value using the j^th random value and an integrated blind variable value up to a previous point in time; and (d) generating a joined signature by sequentially joining at least part of the signatures of the previous time points and the j^th signature. The j^th integrated blind variable value may be used for validity verification of the joined signature.

Description

순차 결합을 지원하는 전방향 안전 서명 방법 및 그 장치{Forward secure sequential aggregate signature method and apparatus thereof}TECHNICAL FIELD [0001] A forward secure sequential aggregate signature method and apparatus thereof supporting sequential combination.

본 발명은 순차 결합을 지원하는 전방향 안전 서명 방법 및 그 장치에 관한 것이다. The present invention relates to an omni-directional safety signature method and apparatus for supporting sequential combination.

최근 다양한 임베디드 시스템 장비들에서는 장비의 수행 기록을 저장하고 이에 대한 정당성을 인증하기 위해 전방향 안전 서명 기법(forward-secure signatures)을 사용한다. 전방향 안전 서명 기법은 현재의 비밀키가 유출되더라도 과거 시점에 대한 서명을 생성할 수 없도록 해서 비밀키 유출에 따른 피해를 최소화하는 서명 방법이다. 즉, 전방향 안전 서명 기법이란 주기 별로 서명을 따로 만들어서, 현재의 주기에 해당하는 서명이 유출되어도 현재 주기 이전의 서명에 대한 유효성이 유지되는 서명 기법이다.Recently, various embedded system devices use forward-secure signatures to store the performance record of the device and verify its validity. The omni-directional secure signature scheme is a signature method that minimizes the damage caused by the leakage of the private key by preventing the creation of a signature for a past point in time even if the current private key is leaked. In other words, the forward safety signature technique is a signature technique that maintains the validity of the signature before the current cycle even if the signature corresponding to the current cycle is leaked by creating a separate signature for each cycle.

이와 관련하여, 종래의 선행기술 1인 "A forward-secure digital signature scheme(Mihir Bellare and Sara K Miner)"에서는 전방향 안전 서명 기법을 최초로 제안하였고, 종래의 선행기술 2인 "A new forward-secure digital signature scheme(Michel Abdalla and Leonid Reyzin)"에서는 인수분해가정(Factoring)을 기반으로 전방향 안정 서명 기법을 제안하였다. 또한, 종래의 선행기술 3인 "Practical forward secure sequential aggregate signatures(Di Ma)"에서는 각 주기마다 생성되는 서명을 하나의 서명으로 결합하여서 검증을 하는 기법을 제안하였으며, 종래의 선행기술 4인 "FAS: Forward Secure Sequential Aggregate Signatures for Secure Logging(Jihye Kim, Hyunok Oh)"에서는 결합 서명에 대한 보안을 높이는 기법을 제안하였다. In this regard, the prior art 1, "A forward-secure digital signature scheme (Mihir Bellare and Sara K Miner)," first proposed an omnidirectional security signature scheme, and the conventional prior art 2, "A new forward-secure" In "digital signature scheme (Michel Abdalla and Leonid Reyzin)", we proposed an omni-directional stable signature scheme based on factoring. In addition, in the prior art 3, "Practical forward secure sequential aggregate signatures (Di Ma)", a technique for verifying by combining the signatures generated in each period into one signature was proposed, and the conventional prior art 4, "FAS : Forward Secure Sequential Aggregate Signatures for Secure Logging (Jihye Kim, Hyunok Oh)" proposed a technique to increase the security of combined signatures.

하지만, 선행기술 3는 각 주기에 하나의 메시지에 대한 하나의 서명만 생성되고, 서명이 된 이후에는 업데이트가 반드시 수행되어야 했으며, 생성된 결합 서명에 대한 보안이 안전하지 않는 단점이 있다. However, prior art 3 has a disadvantage in that only one signature for one message is generated in each cycle, and after the signature is signed, an update must be performed, and the security of the generated combined signature is not secure.

또한, 선행기술 4는 한 주기에 하나의 서명밖에 하지 못하며, 서명을 한 후에는 자동적으로 업데이트가 되어야 했고, 현재 주기를 제외하고 결합 서명을 만들 수 있다는 문제점이 존재하였다.In addition, prior art 4 has a problem that only one signature per cycle is allowed, and after signing, it has to be automatically updated, and a combined signature can be created except for the current cycle.

본 발명은 각각의 시점에 생성된 서명들을 순차적으로 결합할 수 있는 순차 결합을 지원하는 전방향 안전 서명 방법 및 그 장치를 제공하기 위한 것이다. The present invention is to provide an omni-directional safety signature method and apparatus for supporting sequential combination capable of sequentially combining signatures generated at each time point.

또한, 본 발명은 각각의 서명뿐만 아니라 순차적으로 결합된 결합 서명에 대해서도 시큐리티를 보증할 수 있는 순차 결합을 지원하는 전방향 안전 서명 방법 및 그 장치를 제공할 수도 있다. In addition, the present invention may provide an omnidirectional safety signature method and apparatus for supporting sequential concatenation capable of guaranteeing security for not only each signature but also sequentially combined signatures.

또한, 본 발명은 결합된 서명에 대한 한번의 검증을 통해 결합된 서명 안에 포함된 서명들의 유효성을 검증할 수 있는 순차 결합을 지원하는 전방향 안전 서명 방법 및 그 장치를 제공할 수도 있다. In addition, the present invention may provide a forward safety signature method and apparatus for supporting sequential concatenation capable of verifying the validity of signatures included in the combined signature through a single verification of the combined signature.

상기한 목적을 달성하기 위해 본 발명의 바람직한 일 실시예에 따르면, 전방향 안전 서명 기법에 의해 생성된 각각의 서명들을 순차적으로 결합할 수 있는 방법이 제공된다. In order to achieve the above object, according to a preferred embodiment of the present invention, there is provided a method capable of sequentially combining the respective signatures generated by the forward safety signature technique.

본 발명의 일 실시예에 따르면, 순차 결합을 지원하는 전방향 안전 서명 방법에 있어서, (a) 현재 시점(t)의 제j 번째 메시지(Mj)의 서명에 이용되는 제j 랜덤값을 선택하는 단계; (b) 상기 제j 랜덤값 및 현재 시점(t)의 제j 번째 메시지(Mj)를 위한 제tj 비밀키를 이용하여 상기 제j 번째 메시지(Mj)에 대한 제j 서명을 생성하는 단계; (c) 상기 제j 랜덤값과 이전 시점까지의 통합 블라인드 변수값을 이용하여 제j 통합 블라인드 변수값을 생성하는 단계; 및 (c) 이전 시점들의 서명들 중 적어도 일부와 상기 제j 서명을 순차적으로 결합하여 결합 서명을 생성하는 단계를 포함하되, 상기 제j 통합 블라인드 변수값은 상기 결합 서명의 유효성 검증에 이용되는 것을 특징으로 하는 순차 결합을 지원하는 전방향 안전 서명 방법이 제공될 수 있다. According to an embodiment of the present invention, in an omni-directional safety signature method supporting sequential combination, (a) selecting a j-th random value used for signing a j-th message (M j ) at a current time point (t) Step to do; (b) generating a j-th signature for the j-th message (M j ) using the j- th random value and the t j-th secret key for the j-th message (M j ) at the current time point (t) step; (c) generating a jth integrated blind variable value using the jth random value and the integrated blind variable value up to a previous point in time; And (c) generating a combined signature by sequentially combining at least some of the signatures of the previous time points with the j-th signature, wherein the j-th integrated blind variable value is used for validity verification of the combined signature. An omni-directional safety signature method supporting the sequential combination as described may be provided.

상기 (b) 단계는, 메시지 최대 수(n) 및 상기 메시지의 인덱스(j)를 이용하여 백워드 보안 확정 변수값(Ej)을 도출하는 단계를 더 포함하되, 상기 제j 서명 생성시, 상기 백워드 보안 확정 변수값(Ej)와 상기 제j 번째 메시지(Mj)를 단방향 해시 함수에 입력한 결과값(c)이 더 이용될 수 있다.The step (b) further comprises the step of deriving a backward security determination variable value (E j ) using the maximum number of messages (n) and the index of the message (j), wherein when generating the jth signature, A result value c obtained by inputting the backward security determination variable value E j and the j-th message M j into a one-way hash function may be further used.

상기 백워드 보안 확정 변수값(Ej)을 단방향 해시 함수에 j회 적용한 결과와 공개키에 포함된 정보(D)와 일치하는지 여부를 판단함으로써 검증하는 단계를 더 포함할 수 있다. It may further include the step of verifying by determining whether the result of applying the backward security determination variable value E j to the one-way hash function j times and information D included in the public key match.

상기 제j 통합 블라인드 변수값과 상기 제(j-1) 통합 블라인드 변수값을 이용하여 상기 제j 랜덤값이 계산되어 상기 결합 서명 검증에 이용될 수 있다. The j-th random value may be calculated using the jth integrated blind variable value and the (j-1)th integrated blind variable value and used for verification of the combined signature.

상기 제j 서명은 하기 수학식에 의해 생성되되,The jth signature is generated by the following equation,

Figure pat00001
Figure pat00001

여기서,

Figure pat00002
는 제j 랜덤값을 나타내고,
Figure pat00003
는 제t 시점의 비밀키를 나타내며, N은 랜덤하게 선택된 두 소수(prime)의 곱에 의해 생성된 합성수 그룹의 최대값이다. here,
Figure pat00002
Represents the jth random value,
Figure pat00003
Denotes the secret key at the t-th time point, and N is the maximum value of the composite number group generated by the product of two randomly selected primes.

순차 결합을 지원하는 전방향 안전 서명 방법을 수행하는 컴퓨팅 장치에 있어서, 현재 시점(t)의 제j 번째 메시지(Mj)의 서명에 이용되는 제j 랜덤값을 선택하고, 상기 제j 랜덤값 및 현재 시점(t)의 제j 번째 메시지(Mj)를 위한 제tj 비밀키를 이용하여 상기 제j 번째 메시지(Mj)에 대한 제j 서명을 생성하며, 상기 제j 랜덤값과 이전 시점까지의 통합 블라인드 변수값을 이용하여 제j 통합 블라인드 변수값을 생성하는 서명 생성부; 및 이전 시점들의 서명들 중 적어도 일부와 상기 제j 서명을 순차적으로 결합하여 결합 서명을 생성하는 서명 결합부를 포함하되, 상기 제j 통합 블라인드 변수값은 상기 결합 서명의 유효성 검증에 이용되는 것을 특징으로 하는 컴퓨팅 장치가 제공될 수 있다. In a computing device that performs an omnidirectional safety signature method supporting sequential combination, a j-th random value used for signing a j-th message (M j ) of a current time point (t) is selected, and the j-th random value And a j-th signature for the j-th message (M j ) by using the t j-th secret key for the j-th message (M j ) at the current time point (t), and transfers the j-th random value A signature generator for generating a jth integrated blind variable value using the integrated blind variable value up to the point in time; And a signature combiner for generating a combined signature by sequentially combining at least some of the signatures of previous points in time and the jth signature, wherein the jth integrated blind variable value is used for validity verification of the combined signature. A computing device may be provided.

상기 서명 생성부는, 메시지 최대 수(n) 및 상기 메시지의 인덱스(j)를 이용하여 백워드 보안 확정 변수값(Ej)을 더 계산하되, 상기 백워드 보안 확정 변수값(Ej)와 상기 제j 번째 메시지(Mj)를 단방향 해시 함수에 입력한 결과값(c)이 제j 서명 생성시 더 이용될 수 있다. The signature generation unit further calculates a backward security determination variable value (E j ) using the maximum number of messages (n) and the index of the message (j), but the backward security determination variable value (E j ) and the The result value (c) of inputting the j-th message M j to the one-way hash function may be further used when generating the j-th signature.

상기 백워드 보안 확정 변수값(Ej)을 단방향 해시 함수에 j회 적용한 결과와 공개키에 포함된 정보(D)와 일치하는지 여부를 판단함으로써 제j 서명을 검증하는 서명 검증부를 더 포함할 수 있다. A signature verification unit for verifying the jth signature by determining whether the backward security determination variable value (E j ) is applied j times to the one-way hash function and information included in the public key (D) may be further included. have.

상기 서명 검증부는, 상기 제j 통합 블라인드 변수값과 상기 제(j-1) 통합 블라인드 변수값을 이용하여 상기 제j 랜덤값이 계산되어 제j 서명 검증에 이용할 수 있다. The signature verification unit may calculate the j-th random value using the j-th integrated blind variable value and the (j-1)-th integrated blind variable value, and use the j-th signature verification.

상기 백워드 보안 확정 변수값(Ej), 상기 제j 통합 블라인드 변수값과 상기 제(j-1) 통합 블라인드 변수값을 이용하여 상기 결합 서명을 검증하는 결합 서명 검증부를 더 포함할 수 있다. A combined signature verification unit for verifying the combined signature using the backward security determination variable value E j , the j-th integrated blind variable value, and the (j-1)th integrated blind variable value may be further included.

상기 제tj 비밀키를 이용하여 비밀키를 갱신하는 비밀키 갱신부를 더 포함하되, 상기 비밀키 갱신부는 메시지에 대한 서명이 생성될 때마다 갱신될 수 있다.A secret key update unit for updating the secret key using the t j-th secret key may be further included, wherein the secret key update unit may be updated whenever a signature for a message is generated.

본 발명일 실시예에 따른 순차 결합을 지원하는 전방향 안전 서명 방법 및 그 장치를 제공함으로써, 각각의 시점에 생성된 서명들을 순차적으로 결합할 수 있다. According to an embodiment of the present invention, by providing an omnidirectional safety signature method and apparatus supporting sequential combination, signatures generated at each time point can be sequentially combined.

또한, 본 발명은 각각의 서명뿐만 아니라 순차적으로 결합된 결합 서명에 대해서도 시큐리티를 보증할 수 있다. In addition, the present invention can guarantee security for not only each signature but also a combined signature sequentially combined.

또한, 본 발명은 결합된 서명에 대한 한번의 검증을 통해 결합된 서명 안에 포함된 서명들의 유효성을 검증할 수 있는 이점도 있다. In addition, the present invention has the advantage of being able to verify the validity of signatures included in the combined signature through one verification of the combined signature.

또한, 본 발명의 효과는 상기한 효과로 한정되는 것은 아니며, 본 발명의 상세한 설명 또는 특허청구범위에 기재된 발명의 구성으로부터 추론 가능한 모든 효과를 포함하는 것으로 이해되어야 한다. In addition, the effects of the present invention are not limited to the above effects, and should be understood to include all effects that can be deduced from the configuration of the invention described in the detailed description or claims of the present invention.

도 1은 종래의 전방향 안전 서명 기법을 설명하기 위해 도시한 도면.
도 2는 본 발명의 일 실시예에 따른 순차 결합을 지원하는 전방향 안전 서명 방법을 나타낸 순서도.
도 3은 본 발명의 일 실시예에 따른 서명 생성을 위한 의사 코드를 도시한 도면.
도 4는 본 발명의 일 실시예에 따른 결합 서명 생성을 위한 의사 코드를 도시한 도면.
도 5는 본 발명의 일 실시예에 따른 초기 키 설정 과정에 대한 의사 코드를 도시한 도면.
도 6은 본 발명의 일 실시예에 따른 통합 블라인드 변수에 대한 서명을 생성하는 의사 코드를 도시한 도면.
도 7은 본 발명의 일 실시예에 따른 서명을 검증하는 의사 코드를 도시한 도면.
도 8은 본 발명의 일 실시예에 따른 결합 서명을 검증하는 의사 코드를 도시한 도면.
도 9는 본 발명의 일 실시예에 따른 통합 블라인드 변수에 대한 서명을 검증하는 의사 코드를 도시한 도면.
도 10은 본 발명의 일 실시예에 따른 비밀키 갱신을 위한 의사 코드를 도시한 도면.
도 11은 본 발명의 일 실시예에 따른 컴퓨팅 장치의 내부 구성을 개략적으로 도시한 블록도.
1 is a diagram illustrating a conventional omnidirectional safety signature technique.
2 is a flow chart showing an omnidirectional safety signature method supporting sequential combination according to an embodiment of the present invention.
3 is a diagram showing a pseudo code for generating a signature according to an embodiment of the present invention.
4 is a diagram showing a pseudo code for generating a combined signature according to an embodiment of the present invention.
5 is a diagram showing a pseudo code for an initial key setting process according to an embodiment of the present invention.
6 is a diagram showing a pseudo code for generating a signature for an integrated blind variable according to an embodiment of the present invention.
7 is a diagram showing a pseudo code for verifying a signature according to an embodiment of the present invention.
8 is a diagram showing a pseudo code for verifying a combined signature according to an embodiment of the present invention.
9 is a diagram illustrating a pseudo code for verifying a signature for an integrated blind variable according to an embodiment of the present invention.
10 is a diagram showing a pseudo code for updating a secret key according to an embodiment of the present invention.
11 is a block diagram schematically illustrating an internal configuration of a computing device according to an embodiment of the present invention.

본 명세서에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "구성된다" 또는 "포함한다" 등의 용어는 명세서상에 기재된 여러 구성 요소들, 또는 여러 단계들을 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.Singular expressions used in the present specification include plural expressions unless the context clearly indicates otherwise. In the present specification, terms such as “consisting of” or “comprising” should not be construed as necessarily including all of the various elements or various steps described in the specification, and some of the elements or some steps It may not be included, or it should be interpreted that it may further include additional elements or steps. In addition, terms such as "... unit" and "module" described in the specification mean units that process at least one function or operation, which may be implemented as hardware or software, or as a combination of hardware and software. .

이하, 첨부된 도면들을 참조하여 본 발명의 실시예를 상세히 설명한다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

이해와 설명의 편의를 도모하기 위해 본 발명의 기초가 되는 전방향 안전 서명 기법에 대해 우선 간략하게 설명하기로 한다. In order to facilitate understanding and description, the omnidirectional safety signature scheme, which is the basis of the present invention, will be briefly described first.

공개키 및 비밀키(서명키) 기반 전자 서명의 경우, 비밀키(서명키)가 노출되는 경우 정당한 서명자가 이전에 생성한 서명과 공격자에 의해 위조된 서명을 구분할 수 있는 방법이 존재하지 않아 모든 서명이 무효화되어야 하는 단점이 있다. In the case of electronic signatures based on public and private keys (signature keys), if the private key (signature key) is exposed, there is no way to distinguish between a signature created previously by a legitimate signer and a signature forged by an attacker. The downside is that the signature must be invalidated.

이를 보완하기 위해, 특정 시점에 비밀키가 노출되더라도 비밀키가 노출되기 이전의 서명들에 대한 타당성을 유지할 수 있도록 하는 전자 서명 기법이 전방향 안전 서명 기법이다. In order to compensate for this, even if the secret key is exposed at a specific point in time, the electronic signature technique that allows the validity of the signatures before the secret key is exposed to be maintained is a forward safe signature technique.

이러한 전방향 안전 서명 기법은 도 1에 도시된 바와 같이, 특정 시점에 서명이 생성되면 비밀키를 갱신할 수 있다. 전방향 안전 서명 기법의 경우, 현재 시점의 비밀키를 이용하여 과거 시점의 비밀키 유추가 불가능하도록 비밀키를 갱신할 수 있다. 이로 인해, 특정 시점의 비밀키가 노출되더라도 비밀키 노출 이전 시점의 서명에 대해서는 타당성이 유지되도록 할 수 있는 이점이 있다.As illustrated in FIG. 1, this forward-looking secure signature scheme may update the secret key when a signature is generated at a specific time point. In the case of the forward security signature scheme, the secret key can be updated so that it is impossible to infer the secret key of the past time by using the secret key of the current time. For this reason, even if the secret key at a specific time is exposed, there is an advantage in that the validity of the signature at the time before the exposure of the secret key can be maintained.

이러한 전방향 안전 서명 기법은 기본적으로 키 셋업 과정(setup), 서명 생성 과정(Sig), 키 업데이트 과정(Upd) 및 서명 검증 과정(Ver)을 포함한다. 이들 각각의 과정에 대해 간략하게 설명하기로 한다. This omnidirectional secure signature technique basically includes a key setup process (setup), a signature generation process (Sig), a key update process (Upd), and a signature verification process (Ver). Each of these processes will be briefly described.

키 셋업 과정(setup)은 보안 파라미터(k), 해시 출력 길이(l), 전체 시간 구간에 대한 최대 수(T), 메시지의 최대 개수(n)을 입력받고, 이를 이용하여 공개키(PK) 및 초기 비밀키(

Figure pat00004
)를 출력한다. The key setup process (setup) receives the security parameters (k), the hash output length (l), the maximum number for the entire time period (T), and the maximum number of messages (n), and uses the public key (PK). And the initial secret key (
Figure pat00004
) Is displayed.

서명 생성 과정(Sig)은 임의의 시점(j)의 비밀키(SKj)를 이용하여 메시지 M에 대한 서명(

Figure pat00005
)을 출력한다. 여기서, 비밀키(SKj)는 특정 시점(j)의 메시지 M을 서명하기 위한 비밀키이다. 이러한 서명 생성 과정(Sig)은 키 업데이트 과정(Udp)와 함께 반복적으로 수행될 수 있다. The signature generation process (Sig) uses the secret key (SK j ) at a certain point in time (j) to sign the message M (
Figure pat00005
) Is displayed. Here, the secret key SK j is a secret key for signing the message M at a specific point in time j. This signature generation process (Sig) may be repeatedly performed together with the key update process (Udp).

키 업데이트 과정(Upd)는 비밀키를 갱신하여 출력한다. 즉, 키 업데이트 과정(Upd)는 j 시점의 비밀키(SKj)를 이용하여 다음 시점(j+1)의 비밀키(SKj + 1)를 갱신하여 출력할 수 있다. In the key update process (Upd), the secret key is updated and output. That is, the key update process (Upd) may be output by updating the secret key (SK j + 1) of the next time (j + 1) using the secret key (SK j) of the j point.

서명 검증 과정(Ver)은 서명을 검증하는 과정이다. 서명 검증 과정(Ver)은 공개키(PK), 검증 후보 서명(

Figure pat00006
), 특정 시점(
Figure pat00007
), 특정 시점이 메시지(
Figure pat00008
)을 입력받은 후 검증 후보 서명(
Figure pat00009
)이 메시지(
Figure pat00010
)의 유효한 서명인지를 검증한다. 만일 유효한 서명인 경우 1(ture)을 출력하고, 유효한 서명이 아니면 0(false)을 출력한다. The signature verification process (Ver) is a process of verifying the signature. The signature verification process (Ver) is the public key (PK), the verification candidate signature (
Figure pat00006
), specific point in time (
Figure pat00007
), a message at a specific point in time (
Figure pat00008
) After receiving the verification candidate signature (
Figure pat00009
) This message (
Figure pat00010
) Is a valid signature. If it is a valid signature, 1(ture) is output, and if it is not a valid signature, 0(false) is outputted.

도 1을 참조하여 기본적인 전방향 안전 서명 기법에 대해 설명하였다. 이하에서는 도 2를 참조하여 본 발명의 일 실시예에 따른 순차 결합을 지원하는 전방향 안전 서명 방법에 대해 설명하기로 한다. 이하에서 설명되는 순차 결합을 지원하는 전방향 안전 서명 방법은 도 1에서 설명한 전방향 안전 서명 기법과 기본적인 전제는 동일하므로, 공지된 일반적인 전방향 안전 서명 기법에 대한 상세 설명은 생략하기로 한다. 이하에서는 본 발명의 주요 논지를 설명하기 위해 필요한 부분만을 중심으로 설명하기로 한다. A basic omnidirectional safety signature technique has been described with reference to FIG. 1. Hereinafter, a description will be given of an omnidirectional safety signature method supporting sequential combination according to an embodiment of the present invention with reference to FIG. 2. The omnidirectional safety signature method supporting sequential combination described below has the same basic premise as the omnidirectional safety signature technique described in FIG. 1, and thus a detailed description of a known general omnidirectional safety signature technique will be omitted. Hereinafter, only portions necessary to explain the main thesis of the present invention will be described.

도 2는 본 발명의 일 실시예에 따른 순차 결합을 지원하는 전방향 안전 서명 방법을 나타낸 순서도이고, 도 3은 본 발명의 일 실시예에 따른 서명 생성을 위한 의사 코드를 도시한 도면이고, 도 4는 본 발명의 일 실시예에 따른 결합 서명 생성을 위한 의사 코드를 도시한 도면이며, 도 5는 본 발명의 일 실시예에 따른 초기 키 설정 과정에 대한 의사 코드를 도시한 도면이며, 도 6은 본 발명의 일 실시예에 따른 통합 블라인드 변수에 대한 서명을 생성하는 의사 코드를 도시한 도면이고, 도 7은 본 발명의 일 실시예에 따른 서명을 검증하는 의사 코드를 도시한 도면이며, 도 8은 본 발명의 일 실시예에 따른 결합 서명을 검증하는 의사 코드를 도시한 도면이고, 도 9는 본 발명의 일 실시예에 따른 통합 블라인드 변수에 대한 서명을 검증하는 의사 코드를 도시한 도면이고, 도 10은 본 발명의 일 실시예에 따른 비밀키 갱신을 위한 의사 코드를 도시한 도면이다. 이하의 각 단계는 컴퓨팅 장치(200)에 의해 수행되는 것을 가정하여 설명하기로 한다. FIG. 2 is a flow chart showing an omnidirectional safety signature method supporting sequential combination according to an embodiment of the present invention, and FIG. 3 is a diagram showing a pseudo code for signature generation according to an embodiment of the present invention. 4 is a diagram showing a pseudo code for generating a combined signature according to an embodiment of the present invention, and FIG. 5 is a diagram showing a pseudo code for an initial key setting process according to an embodiment of the present invention, and FIG. 6 Is a diagram showing a pseudo code for generating a signature for an integrated blind variable according to an embodiment of the present invention, and FIG. 7 is a diagram showing a pseudo code for verifying a signature according to an embodiment of the present invention. 8 is a diagram showing a pseudo code for verifying a combined signature according to an embodiment of the present invention, and FIG. 9 is a diagram showing a pseudo code for verifying a signature for an integrated blind variable according to an embodiment of the present invention , FIG. 10 is a diagram showing a pseudo code for updating a secret key according to an embodiment of the present invention. Each of the following steps will be described on the assumption that they are performed by the computing device 200.

단계 210에서 컴퓨팅 장치(200)는 현재 시점(편의상 제t 시점이라 칭하기로 함)의 제j 비밀키를 이용하여 제j 메시지(Mj)에 대한 제j 서명을 생성한다. 이이 대한 의사 코드는 도 3에 도시되어 있다. In step 210, the computing device 200 generates a j-th signature for the j-th message M j by using the j-th private key of the current time point (referred to as a t-th time point for convenience). The pseudo code for this is shown in FIG. 3.

단계 215에서 컴퓨팅 장치(200)는 제j 서명부터 제j 서명을 순차적으로 결합하여 결합 서명을 생성한다. 이에 대한 의사 코드는 도 4에 도시되어 있다. In operation 215, the computing device 200 sequentially combines the j-th signature from the j-th signature to generate a combined signature. A pseudo code for this is shown in FIG. 4.

본 발명의 일 실시예에 따르면, 전방향 안전 서명에 의해 각각의 시점에서 생성된 각각의 서명들을 순차적으로 결합하여 하나의 결합 서명을 생성할 수 있다. 또한, 결합 서명을 검증하는 것으로 결합된 서명들에 대한 유효성을 검증할 수 있다. According to an embodiment of the present invention, a single combined signature may be generated by sequentially combining the respective signatures generated at each time point by the omnidirectional safety signature. In addition, validity of the combined signatures can be verified by verifying the combined signature.

종래의 전방향 안전 서명의 경우, 각각의 서명의 유효성 검증을 위해 각 서명에 이용되는 각각의 랜덤값에 주기성 관련 변수값이 지수승한 결과값(

Figure pat00011
)이 서명 생성에 이용되는 해시 함수 입력으로 이용되었다. 즉, 서명은
Figure pat00012
와 같이 생성되었다. In the case of a conventional omnidirectional safety signature, the result value of exponentially multiplying the value of the periodicity-related variable to each random value used for each signature for validating each signature
Figure pat00011
) Was used as input to the hash function used to generate the signature. That is, the signature is
Figure pat00012
Was created as

이로 인해, 종래의 전방향 안전 서명의 경우 서명 생성시, 해시 함수 입력으로

Figure pat00013
가 이용됨에 따라 서명을 순차 결합하는 경우 서명의 유효성 검증에 이용되는 랜덤값을 특정할 수 있는 방법이 존재하지 않았다. For this reason, in the case of a conventional omnidirectional safety signature, when generating a signature,
Figure pat00013
As is used, when the signatures are sequentially combined, there is no method for specifying a random value used for validating signatures.

그러나, 본 발명의 일 실시예에서는 각각의 서명 생성시, 각 서명의 유효성을 검증하는 랜덤값에 대한 정보를 특정 변수(B)에 모두 통합시킴으로써, 각각의 서명 생성에 이용되는 각각의 랜덤값을 직접적으로 알지는 못하나, 특정 시에 대한 랜덤값을 계산할 수 있으며 이를 통해 서명 및 결합 서명에 대한 유효성 또한 검증할 수 있다. However, in an embodiment of the present invention, when generating each signature, by integrating all information on a random value verifying the validity of each signature into a specific variable (B), each random value used for generating each signature is Although not directly known, it is possible to calculate a random value for a specific time, through which the validity of the signature and combined signature can also be verified.

이에 상세히 설명하기로 한다. This will be described in detail.

우선, 초기 키 설정 과정에 대해 간략히 설명하기로 한다. 초기 키 설정 과정은 공개키 및 초기 비밀키(

Figure pat00014
)를 생성하기 위한 과정이다. 물론, 초기 키 설정 과정은 본 발명의 일 실시예에 따른 순차 결합을 지원하는 전방향 안전 서명 방법을 수행하기 위해 필요한 각각의 변수에 대한 초기값들을 설정할 수도 있음은 당연하다. First, the initial key setting process will be briefly described. The initial key setting process is a public key and an initial private key (
Figure pat00014
This is the process for creating ). Of course, it is natural that the initial key setting process may set initial values for each variable necessary to perform the forward safety signature method supporting sequential combination according to an embodiment of the present invention.

초기 키 설정 과정에 대한 의사 코드는 도 5에 도시된 바와 같다. 즉, 초기 키 설정 과정은 보안 파라미터(k), 해시 출력 길이(l), 전체 시간 구간에 대한 최대수(T), 메시지의 최대 개수(n)을 각각 입력받고, 이를 이용하여 공개키(PK) 및 초기 비밀키(

Figure pat00015
)를 생성할 수 있다. The pseudo code for the initial key setting process is as shown in FIG. 5. That is, in the initial key setting process, the security parameter (k), the hash output length (l), the maximum number for the entire time period (T), and the maximum number of messages (n) are respectively input, and the public key (PK ) And initial secret key (
Figure pat00015
) Can be created.

보다 상세히 설명하면, 초기 키 설정 과정은 복수의 소수(p', q')을 랜덤하게 선택하고, 선택된 복수의 소수를 이용하여 합성수 그룹(

Figure pat00016
)을 생성할 수 있다. 본 발명의 일 실시예에서 변수 N은 합성수 그룹의 최대값인 것으로 이해되어야 할 것이다. In more detail, in the initial key setting process, a plurality of prime numbers (p', q') are randomly selected, and a composite number group (
Figure pat00016
) Can be created. It will be understood that the variable N in an embodiment of the present invention is the maximum value of the composite number group.

또한, 이하에서 별도의 설명이 없더라도 전방향 안전 서명을 위해 선택되는 랜덤값들은 해당 합성수 그룹 내에서 선택되는 것으로 이해되어야 할 것이다. In addition, it should be understood that random values selected for an omnidirectional safety signature are selected within a corresponding composite number group, even if there is no separate description below.

또한, 공개키(PK)는 전체 서명의 개수(즉, 메시지의 개수) 만큼 해시 함수를 수행한 값(

Figure pat00017
)을 포함하고, 비밀키는
Figure pat00018
을 포함할 수 있다. In addition, the public key (PK) is a value (
Figure pat00017
), and the secret key is
Figure pat00018
It may include.

이외에도, 순차 결합을 지원하는 전방향 안전 서명을 수행하기 위해 필요한 각각의 변수에 대한 초기값을 설정할 수 있다. 이에 대해서는 도 5에 도시된 의사 코드를 참조하기로 한다. 도 5과 같은 초기 키 설정 과정이 완료된 후, 컴퓨팅 장치(200)는 랜덤값(Rj)를 합성수 그룹(

Figure pat00019
)내에서 랜덤하게 선택한다. 랜덤값(Rj)은 제t 시점(peroid)의 제j 메시지(Mj)의 유효성 검증에 이용될 수 있다. In addition, it is possible to set an initial value for each variable necessary to perform an omnidirectional safety signature supporting sequential combination. For this, reference will be made to the pseudo code shown in FIG. 5. After the initial key setting process as shown in FIG. 5 is completed, the computing device 200 adds the random value R j to the composite number group (
Figure pat00019
) Is selected at random. The random value R j may be used to verify the validity of the j th message M j at the t th peroid.

특정 시점의 비밀키를 이용하여 메시지에 대한 서명 생성시, 종래에는 이미 전술한 바와 같이, 랜덤값(Rj)에 주기 변수값을 지수승한 결과값(

Figure pat00020
)을 계산한 후 해당 결과값을 메시지(M)과 함께 해시 함수 입력으로 이용하여 서명을 생성하였다. 즉,
Figure pat00021
와 같이, Y값이 서명 생성에 필요한 해시 함수 입력으로 입력되는 것을 알 수 있다. 이로 인해, 종래의 전방향 안전 서명 기법에 의해 각 주기마다 생성된 서명들을 결합하는 경우, 각 서명의 유효성 검증에 이용되는 랜덤값(R)이 뒤섞이게 되어 결합이 불가능한 문제점이 있었다. When creating a signature for a message using a secret key at a specific point in time, in the past, as already described above, the result value of the period variable value multiplied by the random value R j
Figure pat00020
) Was calculated, and the result was used as an input of the hash function along with the message (M) to create a signature. In other words,
Figure pat00021
As shown, it can be seen that the Y value is input as the input of the hash function required for signature generation. For this reason, in the case of combining the signatures generated for each period by the conventional omnidirectional safety signature technique, there is a problem that the combination is impossible because the random values R used for validity verification of each signature are mixed.

본 발명의 일 실시예에서는 이를 해결하기 위해, 통합 블라인드 변수(B)를 신규 정의하고, 각각의 서명 생성시 생성된 랜덤값의 곱을 통합 블라인드 변수값을 갱신하도록 할 수 있다. In an embodiment of the present invention, in order to solve this problem, the integrated blind variable B is newly defined, and the product of the random value generated when each signature is generated may be updated to the integrated blind variable value.

예를 들어, 제i서명에서 제j 서명을 결합하는 것을 가정하기로 한다. For example, it is assumed that the j-th signature is combined in the i-th signature.

본 발명의 일 실시예에서는 제i 서명 내지 제j 서명을 순차적으로 곱하여 결합 서명을 생성할 수 있다. 즉, 컴퓨팅 장치(200)는

Figure pat00022
를 곱하여 결합 서명을 생성할 수 있다. In an embodiment of the present invention, a combined signature may be generated by sequentially multiplying the i-th signature to the j-th signature. That is, the computing device 200
Figure pat00022
By multiplying, we can create a combined signature.

또한, 각각의 서명 생성시, 컴퓨팅 장치(200)는 각각의 서명에 결합된

Figure pat00023
을 통합하여 통합 블라인드 변수값을 계산한다. 본 발명의 일 실시예에서는
Figure pat00024
를 통합하기 위해
Figure pat00025
Figure pat00026
번째 근(root)에 대한 지식증명이 이용된다. In addition, when generating each signature, the computing device 200 is combined with each signature
Figure pat00023
By integrating, the integrated blind variable value is calculated. In one embodiment of the present invention
Figure pat00024
To integrate
Figure pat00025
of
Figure pat00026
Proof of knowledge for the second root is used.

본 발명의 일 실시예에 따르면, 통합 블라인드 변수에 대한 유효성 증명을 위해 통합 블라인드 변수에 대한 서명(블라인드 서명이라 칭하기로 함)를 생성할 수 있다.이에 대한 의사 코드는 도 9에 도시된 바와 같다. According to an embodiment of the present invention, a signature (referred to as a blind signature) for the integrated blind variable may be generated to prove the validity of the integrated blind variable. A pseudo code for this may be as shown in FIG. .

이를 위해, 본 발명의 일 실시예에서는 통합 블라인드 변수(Bj)와 확정 변수(Wj)를 이용하여 변수 서명을 생성할 수 있다. To this end, in an embodiment of the present invention, a variable signature may be generated using an integrated blind variable (B j ) and a deterministic variable (W j ).

이에 대한 의사 코드는 도 6에 도시된 바와 같다. The pseudo code for this is as shown in FIG. 6.

또한, 본 발명의 일 실시예에서는 서명 생성시 해시 함수 없이 서명 생성이 가능하며 보안이 유지되도록 할 수 있다. 이에 대해 보다 상세히 설명하기로 한다. In addition, in an embodiment of the present invention, a signature can be generated without a hash function when generating a signature, and security can be maintained. This will be described in more detail.

또한, 본 발명의 일 실시예에서는 백워드 보안 확정 변수(E)를 정의한 후 백워드 보안 확정 변수(E)과 메시지를 단방향 해시 함수에 입력하여 결과값(

Figure pat00027
)를 계산할 수 있다. In addition, in an embodiment of the present invention, after defining the backward security determination variable (E), input the backward security determination variable (E) and a message into a one-way hash function, and the result value (
Figure pat00027
) Can be calculated.

백워드 보안 확정 변수값(E)는 각각의 서명 생성시마다 갱신되되, 메시지가 j번째 메시지라고 가정하면, (n-j)회 단방향 해시 함수를 적용하여 도출될 수 있다. 여기서, n은 메시지의 최대 수일 수 있다. The value of the backward security determination variable (E) is updated each time the signature is generated, and assuming that the message is the j-th message, it can be derived by applying a one-way hash function (n-j) times. Here, n may be the maximum number of messages.

랜덤값(C)를 메시지 최대 수(n)만큼 단방향 해시 함수를 적용하여

Figure pat00028
가 계산되며, 이는 공개키에 포함될 수 있다. By applying a one-way hash function to the maximum number of messages (n) for the random value (C)
Figure pat00028
Is calculated, which can be included in the public key.

여기서, t 시점의 j번째 메시지에 대한 백워드 보안 확정 변수값(Ej)은 (n-j)회 해시 함수를 적용하여 도출될 수 있다. 즉,

Figure pat00029
로 백워드 보안 확정 변수값(Ej)이 도출될 수 있다. Here, the value of the backward security determination variable E j for the j-th message at time t may be derived by applying a hash function (nj) times. In other words,
Figure pat00029
The backward security determination variable value E j can be derived.

또한, 백워드 보완 확정 변수값(Ej)의 유효성 검증은 백워드 보완 확정 변수값(Ej)를 j회 단방향 해시 함수를 적용한 결과가 D와 동일한지 여부를 비교 함으로써 손쉽게 검증할 수 있다. 즉,

Figure pat00030
인지 여부를 판단하여 t시점의 제j 메시지에 대한 유효성 검증은 백워드 보완 확정 변수값(Ej)의 유효성을 검증할 수 있다. In addition, the backward complementary confirmation validity of the value of the variable (E j) can be easily verified by comparing whether or not the result of applying a backward complementary confirmation value of the variable (E j) for j times a one-way hash function equal to D. In other words,
Figure pat00030
Whether or not, the validity of the jth message at time t may verify the validity of the backward complementation determination variable value E j .

백워드 보완 확정 변수값과 메시지를 단방향 해시 함수에 입력하여 계산된 결과값(c)을 비밀키에 지수승한 후 랜덤값을 곱하여 각 메시지에 대한 서명을 생성한다. A signature for each message is generated by multiplying the secret key by exponentially multiplying the calculated result value (c) by inputting the value of the backward complement determination variable and the message into the one-way hash function.

즉,

Figure pat00031
와 같이 메시지에 대한 서명을 생성할 수 있다. In other words,
Figure pat00031
You can create a signature for a message like this:

여기서,

Figure pat00032
는 제j 메시지에 대해 생성된 서명의 유효성 검증을 위해 이용되는 랜덤값이며,
Figure pat00033
는 제t 시점의 제j 메시지에 대한 서명을 위한 비밀키이다. 여기서, c는 백워드 보완 확정 변수값과 메시지를 단방향 해시 함수에 입력하여 계산된 결과값(c)이다. here,
Figure pat00032
Is a random value used for validating the signature generated for the jth message,
Figure pat00033
Is the secret key for signing the jth message at the tth time. Here, c is a result value (c) calculated by inputting a value of a backward complementation determination variable and a message into a one-way hash function.

상술한 바와 같이, 메시지 서명시, 랜덤값이 이용되기는 하나 종래와 같이 랜덤값의 주기 부분에 대한 지수승한 결과값이 해시 함수 입력으로 이용되는 것이 아님을 알 수 있다. As described above, when signing a message, a random value is used, but it can be seen that the exponential multiplied result value for the periodic part of the random value is not used as a hash function input as in the related art.

이해와 설명의 편의를 도모하기 위해 단일 메시지 서명을 검증하는 방법에 대해 간단히 설명하기로 한다. 서명

Figure pat00034
과 메시지(
Figure pat00035
)에 대한 검증을 위해,
Figure pat00036
인지 여부를 검증한다. 여기서,
Figure pat00037
이다. In order to facilitate understanding and explanation, a brief description will be given of how to verify a single message signature. signature
Figure pat00034
And message(
Figure pat00035
) For verification,
Figure pat00036
Whether it is or not. here,
Figure pat00037
to be.

Figure pat00038
이므로,
Figure pat00038
Because of,

Figure pat00039
이다.
Figure pat00039
to be.

단일 메시지에 대한 서명을 검증하는 상세 방법에 대한 의사코드는 도 7에 도시된 바와 같다. A pseudo code for a detailed method of verifying a signature for a single message is shown in FIG. 7.

제i에서 제j까지의 서명을 결합한 결합 서명을

Figure pat00040
라고 가정하기로 한다. A combined signature that combines the signatures i through j
Figure pat00040
Let's assume.

Figure pat00041
에 의해 계산될 수 있다.
Figure pat00042
에 대한 결합 서명(
Figure pat00043
)은 다음과 같이 검증될 수 있다.
Figure pat00041
Can be calculated by
Figure pat00042
Combined signature for (
Figure pat00043
) Can be verified as follows.

Figure pat00044
Figure pat00044

여기서,

Figure pat00045
이다. here,
Figure pat00045
to be.

이에 대한 의사 코드는 도 8에 도시된 바와 같다. The pseudo code for this is as shown in FIG. 8.

본 발명의 일 실시예에 따르면 전방향 안전 서명 특성상 서명이 생성되면 비밀키가 갱신된다. 비밀키 갱신에 대한 의사 코드는 도 10에 도시된 바와 같다. According to an embodiment of the present invention, the secret key is updated when a signature is generated due to the nature of an omnidirectional secure signature. The pseudo code for the private key update is as shown in FIG. 10.

도 11은 본 발명의 일 실시예에 따른 컴퓨팅 장치의 내부 구성을 개략적으로 도시한 블록도이다. 11 is a block diagram schematically illustrating an internal configuration of a computing device according to an embodiment of the present invention.

도 11을 참조하면, 본 발명의 일 실시예에 따른 컴퓨팅 장치(200)는 초기화부(1110), 서명 생성부(1115), 블라인드 서명 생성부(1120), 갱신부(1125), 검증부(1130), 서명 결합부(1135), 결합 서명 검증부(1140), 블라인드 서명 검증부(1145), 메모리(1150) 및 프로세서(1155)를 포함하여 구성된다. Referring to FIG. 11, a computing device 200 according to an embodiment of the present invention includes an initialization unit 1110, a signature generation unit 1115, a blind signature generation unit 1120, an update unit 1125, and a verification unit ( 1130, a signature combination unit 1135, a combined signature verification unit 1140, a blind signature verification unit 1145, a memory 1150, and a processor 1155.

초기화부(1110)는 순차 결합을 지원하는 전방향 안전 서명 방법에 필요한 공개키 및 초기 비밀키를 생성한다. 물론, 초기화부(1110)는 다양한 변수들을 초기화할 수 있다. 이에 대한 의사 코드는 도 5에 도시된 바와 같다. The initialization unit 1110 generates a public key and an initial secret key required for an omnidirectional secure signature method supporting sequential combination. Of course, the initialization unit 1110 may initialize various variables. The pseudo code for this is as shown in FIG. 5.

서명 생성부(1115)는 현지 시점의 제j 메시지에 대한 비밀키를 이용하여 서명을 생성한다. The signature generator 1115 generates a signature using the secret key for the jth message at the local time point.

이에 대한 상세 설명은 도 2에서 설명한 바와 동일하므로 중복되는 설명은 생략하기로 한다. A detailed description thereof is the same as that described in FIG. 2, and thus, a duplicate description will be omitted.

블라인드 서명 생성부(1120)는 서명 생성부(1115)에 의해 생성된 통합 블라인드 변수값에 대한 서명을 생성한다. 이에 대한 의사 코드는 도 6에 도시된 바와 같다. The blind signature generator 1120 generates a signature for the integrated blind variable value generated by the signature generator 1115. The pseudo code for this is as shown in FIG. 6.

갱신부(1125)는 비밀키를 갱신한다. 즉, 갱신부(1125)는 현재 시점의 비밀키를 이용하여 다음 메시지 서명에 이용될 비밀키를 갱신할 수 있다. 이에 대한 의사 코드는 도 10에 도시된 바와 같다. The update unit 1125 updates the private key. That is, the updater 1125 may update the private key to be used for signing the next message by using the current private key. The pseudo code for this is as shown in FIG. 10.

검증부(1130)는 공개키, 서명 및 메시지를 이용하여 서명의 유효성을 검증한다. 이에 대한 의사 코드는 도 7에 도시된 바와 같다. The verification unit 1130 verifies the validity of the signature using the public key, signature, and message. The pseudo code for this is as shown in FIG. 7.

서명 결합부(1135)는 공개키, 결합하고자 하는 복수의 서명들을 이용하여 결합 서명을 생성한다. 이에 대해서는 도 2에서 설명한 바와 동일하므로 중복되는 설명은 생략하기로 한다. 또한, 이에 대한 의사 코드는 도 4에 도시된 바와 같다. The signature combining unit 1135 generates a combined signature using a public key and a plurality of signatures to be combined. This is the same as that described in FIG. 2, so a duplicate description will be omitted. In addition, a pseudo code for this is as shown in FIG. 4.

결합 서명 검증부(1140)는 공개키, 결합 서명 및 메시지들을 이용하여 결합 서명을 검증한다. 이에 대해서는 도 2에서 설명한 바와 동일하므로 중복되는 설명은 생략하기로 한다. The combined signature verification unit 1140 verifies the combined signature using a public key, a combined signature, and messages. This is the same as that described in FIG. 2, so a duplicate description will be omitted.

블라인드 서명 검증부(1145)는 통합 블라인드 변수에 대한 블라인드 서명을 검증한다. 이에 대한 의사 코드는 도 9에 도시된 바와 같다. The blind signature verification unit 1145 verifies the blind signature for the integrated blind variable. The pseudo code for this is as shown in FIG. 9.

메모리(1150)는 순차 결합을 지원하는 전방향 안전 서명 방법을 수행하기 위해 필요한 다양한 프로그램 코드(명령어)들을 저장하기 위한 수단이다. The memory 1150 is a means for storing various program codes (instructions) necessary to perform an omni-directional secure signature method supporting sequential combination.

프로세서(1155)는 본 발명의 일 실시예에 따른 컴퓨팅 장치(200)의 내부 구성 요소들(예를 들어, 초기화부(1110), 서명 생성부(1115), 블라인드 서명 생성부(1120), 갱신부(1125), 검증부(1130), 서명 결합부(1135), 결합 서명 검증부(1140), 블라인드 서명 검증부(1145), 메모리(1150) 등)을 제어하기 위한 수단이다. The processor 1155 includes internal components of the computing device 200 according to an embodiment of the present invention (eg, an initialization unit 1110, a signature generation unit 1115, a blind signature generation unit 1120, and an update). It is a means for controlling the unit 1125, the verification unit 1130, the signature combination unit 1135, the combined signature verification unit 1140, the blind signature verification unit 1145, the memory 1150, and the like.

또한, 본 발명의 실시예들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 일 실시예들의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Further, the embodiments of the present invention may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like alone or in combination. The program instructions recorded in the medium may be specially designed and configured for the present invention, or may be known and usable to those skilled in computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. -A hardware device specially configured to store and execute program instructions such as magneto-optical, and ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those produced by a compiler but also high-level language codes that can be executed by a computer using an interpreter or the like. The above-described hardware device may be configured to operate as one or more software modules to perform the operation of the embodiments of the present invention, and vice versa.

이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다. As described above, in the present invention, specific matters such as specific components, etc., and limited embodiments and drawings have been described, but these are provided only to help the general understanding of the present invention, and the present invention is not limited to the above embodiments, Anyone of ordinary skill in the field to which the present invention belongs can make various modifications and variations from this description. Therefore, the spirit of the present invention is limited to the described embodiments and should not be defined, and all things that are equivalent or equivalent to the claims as well as the claims to be described later fall within the scope of the spirit of the present invention. .

Claims (13)

순차 결합을 지원하는 전방향 안전 서명 방법에 있어서,
(a) 현재 시점(t)의 제j 번째 메시지(Mj)의 서명에 이용되는 제j 랜덤값을 선택하는 단계;
(b) 상기 제j 랜덤값 및 현재 시점(t)의 제j 번째 메시지(Mj)를 위한 제tj 비밀키를 이용하여 상기 제j 번째 메시지(Mj)에 대한 제j 서명을 생성하는 단계;
(c) 상기 제j 랜덤값과 이전 시점까지의 통합 블라인드 변수값을 이용하여 제j 통합 블라인드 변수값을 생성하는 단계; 및
(c) 이전 시점들의 서명들 중 적어도 일부와 상기 제j 서명을 순차적으로 결합하여 결합 서명을 생성하는 단계를 포함하되,
상기 제j 통합 블라인드 변수값은 상기 결합 서명의 유효성 검증에 이용되는 것을 특징으로 하는 순차 결합을 지원하는 전방향 안전 서명 방법.
In the omnidirectional safety signature method supporting sequential combination,
(a) selecting a j-th random value used for signing the j-th message M j at the current time point t;
(b) generating a j-th signature for the j-th message (M j ) using the j- th random value and the t j-th secret key for the j-th message (M j ) at the current time point (t) step;
(c) generating a jth integrated blind variable value using the jth random value and the integrated blind variable value up to a previous point in time; And
(c) generating a combined signature by sequentially combining at least some of the signatures of previous points and the j-th signature,
The jth integrated blind variable value is used to verify the validity of the combined signature.
제1 항에 있어서,
상기 (b) 단계는,
메시지 최대 수(n) 및 상기 메시지의 인덱스(j)를 이용하여 백워드 보안 확정 변수값(Ej)을 도출하는 단계를 더 포함하되,
상기 제j 서명 생성시,
상기 백워드 보안 확정 변수값(Ej)와 상기 제j 번째 메시지(Mj)를 단방향 해시 함수에 입력한 결과값(c)이 더 이용되는 것을 특징으로 하는 순차 결합을 지원하는 전방향 안전 서명 방법.
The method of claim 1,
The step (b),
Further comprising the step of deriving a backward security determination variable value (E j ) using the maximum number of messages (n) and the index of the message (j),
When generating the jth signature,
An omnidirectional safety signature supporting sequential combination, characterized in that the backward security determination variable value (E j ) and the result value (c) of inputting the j-th message (M j ) to a one-way hash function are further used Way.
제2 항에 있어서,
상기 결과값(c)는 하기 수학식에 의해 계산되는 것을 특징으로 하는 순차 결합을 지원하는 전방향 안전 서명 방법.
Figure pat00046

The method of claim 2,
The result value (c) is an omnidirectional safety signature method that supports sequential combination, characterized in that calculated by the following equation.
Figure pat00046

제2 항에 있어서,
상기 백워드 보안 확정 변수값(Ej)을 단방향 해시 함수에 j회 적용한 결과와 공개키에 포함된 정보(D)와 일치하는지 여부를 판단함으로써 검증하는 단계를 더 포함하는 순차 결합을 지원하는 전방향 안전 서명 방법.
The method of claim 2,
Before supporting sequential combination further comprising the step of verifying by determining whether the result of applying the backward security determination variable value (E j ) to the one-way hash function j times and information included in the public key (D) Direction safety sign way.
제2 항에 있어서,
상기 제j 통합 블라인드 변수값과 상기 제(j-1) 통합 블라인드 변수값을 이용하여 상기 제j 랜덤값이 계산되어 상기 결합 서명 검증에 이용되는 것을 특징으로 하는 순차 결합을 지원하는 전방향 안전 서명 방법.
The method of claim 2,
An omnidirectional safety signature supporting sequential combination, characterized in that the j-th random value is calculated using the j-th integrated blind variable value and the (j-1)th integrated blind variable value and used for verifying the combined signature Way.
제2 항에 있어서,
상기 제j 서명은 하기 수학식에 의해 생성되는 것을 특징으로 하는 순차 결합을 지원하는 전방향 안전 서명 방법.
Figure pat00047

여기서,
Figure pat00048
는 제j 랜덤값을 나타내고,
Figure pat00049
는 제t 시점의 비밀키를 나타내며, N은 랜덤하게 선택된 두 소수(prime)의 곱에 의해 생성된 합성수 그룹의 최대값임.
The method of claim 2,
The j-th signature is generated by the following equation, characterized in that the forward safety signature method supporting sequential combination.
Figure pat00047

here,
Figure pat00048
Represents the jth random value,
Figure pat00049
Denotes the secret key at the t-th time point, and N is the maximum value of the composite number group generated by the product of two randomly selected primes.
제1 항 내지 제6 항 중 어느 하나의 항에 따른 방법을 수행하기 위한 프로그램 코드를 기록한 컴퓨터로 판독 가능한 기록매체 제품.
A computer-readable recording medium product storing program codes for performing the method according to any one of claims 1 to 6.
순차 결합을 지원하는 전방향 안전 서명 방법에 있어서,
현재 시점(t)의 제j 번째 메시지(Mj)의 서명에 이용되는 제j 랜덤값을 선택하고, 상기 제j 랜덤값 및 현재 시점(t)의 제j 번째 메시지(Mj)를 위한 제tj 비밀키를 이용하여 상기 제j 번째 메시지(Mj)에 대한 제j 서명을 생성하며, 상기 제j 랜덤값과 이전 시점까지의 통합 블라인드 변수값을 이용하여 제j 통합 블라인드 변수값을 생성하는 서명 생성부; 및
이전 시점들의 서명들 중 적어도 일부와 상기 제j 서명을 순차적으로 결합하여 결합 서명을 생성하는 서명 결합부를 포함하되,
상기 제j 통합 블라인드 변수값은 상기 결합 서명의 유효성 검증에 이용되는 것을 특징으로 하는 컴퓨팅 장치.
In the omnidirectional safety signature method supporting sequential combination,
Select a j-th random value used for signature of the j-th message M j at the current time point t, and the j-th random value and the j-th message M j at the current time point t are selected. The jth signature is generated for the jth message (M j ) using the t j secret key, and the jth integrated blind variable value is generated using the jth random value and the integrated blind variable value up to the previous point in time. A signature generator; And
Including a signature combiner for generating a combined signature by sequentially combining at least some of the signatures of the previous time and the jth signature,
The computing device, wherein the j th integrated blind variable value is used to verify the validity of the combined signature.
제8 항에 있어서,
상기 서명 생성부는,
메시지 최대 수(n) 및 상기 메시지의 인덱스(j)를 이용하여 백워드 보안 확정 변수값(Ej)을 더 계산하되,
상기 백워드 보안 확정 변수값(Ej)와 상기 제j 번째 메시지(Mj)를 단방향 해시 함수에 입력한 결과값(c)이 제j 서명 생성시 더 이용되는 것을 특징으로 하는 컴퓨팅 장치.
The method of claim 8,
The signature generation unit,
The backward security determination variable value (E j ) is further calculated using the maximum number of messages (n) and the index of the message (j),
And a result value (c) of inputting the backward security determination variable value (E j ) and the j-th message (M j ) to a one-way hash function is further used when generating the j-th signature.
제9 항에 있어서,
상기 백워드 보안 확정 변수값(Ej)을 단방향 해시 함수에 j회 적용한 결과와 공개키에 포함된 정보(D)와 일치하는지 여부를 판단함으로써 제j 서명을 검증하는 서명 검증부를 더 포함하는 컴퓨팅 장치.
The method of claim 9,
Computing further comprising a signature verification unit to verify the jth signature by determining whether the result of applying the backward security determination variable value (E j ) to the one-way hash function j times and information included in the public key (D) Device.
제10 항에 있어서,
상기 서명 검증부는,
상기 제j 통합 블라인드 변수값과 상기 제(j-1) 통합 블라인드 변수값을 이용하여 상기 제j 랜덤값이 계산되어 제j 서명 검증에 이용하는 것을 특징으로 하는 컴퓨팅 장치.
The method of claim 10,
The signature verification unit,
And the j-th random value is calculated using the j-th integrated blind variable value and the (j-1)th integrated blind variable value and used for verifying the j-th signature.
제10 항에 있어서,
상기 백워드 보안 확정 변수값(Ej), 상기 제j 통합 블라인드 변수값과 상기 제(j-1) 통합 블라인드 변수값을 이용하여 상기 결합 서명을 검증하는 결합 서명 검증부를 더 포함하는 컴퓨팅 장치.
The method of claim 10,
The computing device further comprises a combined signature verification unit for verifying the combined signature using the backward security determination variable value E j , the j-th integrated blind variable value, and the (j-1)th integrated blind variable value.
제8 항에 있어서,
상기 제tj 비밀키를 이용하여 비밀키를 갱신하는 비밀키 갱신부를 더 포함하되,
상기 비밀키 갱신부는 메시지에 대한 서명이 생성될 때마다 갱신되는 것을 특징으로 하는 컴퓨팅 장치.

The method of claim 8,
Further comprising a secret key update unit for updating the secret key by using the t j secret key,
And the secret key update unit is updated each time a signature for a message is generated.

KR1020190062517A 2019-05-28 2019-05-28 Forward secure sequential aggregate signature method and apparatus thereof KR102307483B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190062517A KR102307483B1 (en) 2019-05-28 2019-05-28 Forward secure sequential aggregate signature method and apparatus thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190062517A KR102307483B1 (en) 2019-05-28 2019-05-28 Forward secure sequential aggregate signature method and apparatus thereof

Publications (2)

Publication Number Publication Date
KR20200136676A true KR20200136676A (en) 2020-12-08
KR102307483B1 KR102307483B1 (en) 2021-09-29

Family

ID=73779172

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190062517A KR102307483B1 (en) 2019-05-28 2019-05-28 Forward secure sequential aggregate signature method and apparatus thereof

Country Status (1)

Country Link
KR (1) KR102307483B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210334809A1 (en) * 2019-03-22 2021-10-28 Beijing Wodong Tianjun Information Technology Co., Ltd. Transaction method and apparatus based on blind signature
KR102620056B1 (en) * 2023-07-11 2024-01-02 주식회사 지크립토 Trusted Storage Apparatus of Supporting Digital Signature-based Data Storage Authentication Technology and Driving Method Thereof, and System for Delegated Storage Authentication

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101750208B1 (en) * 2016-04-28 2017-07-03 한양대학교 산학협력단 Forward-secure digital signature method with optimal signing and Forward-secure digital signature generation apparatus using the same

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101750208B1 (en) * 2016-04-28 2017-07-03 한양대학교 산학협력단 Forward-secure digital signature method with optimal signing and Forward-secure digital signature generation apparatus using the same

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Brogle, Kyle, Sharon Goldberg, and Leonid Reyzin. "Sequential aggregate signatures with lazy verification from trapdoor permutations." Information and computation, Vol. 239, pp. 356-376(2014.) 1부.* *
Kim, Jihye, and Hyunok Oh. "FAS: Forward secure sequential aggregate signatures for secure logging." Information Sciences 471, pp.115-131(2019.05.24.) 1부.* *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210334809A1 (en) * 2019-03-22 2021-10-28 Beijing Wodong Tianjun Information Technology Co., Ltd. Transaction method and apparatus based on blind signature
KR102620056B1 (en) * 2023-07-11 2024-01-02 주식회사 지크립토 Trusted Storage Apparatus of Supporting Digital Signature-based Data Storage Authentication Technology and Driving Method Thereof, and System for Delegated Storage Authentication

Also Published As

Publication number Publication date
KR102307483B1 (en) 2021-09-29

Similar Documents

Publication Publication Date Title
US20210271764A1 (en) Method for storing data on a storage entity
Russell et al. Cliptography: Clipping the power of kleptographic attacks
Huang et al. Scalable and redactable blockchain with update and anonymity
KR101740956B1 (en) Method of secure public auditing using self-certified signature in cloud storage and system of the same
US11349668B2 (en) Encryption device and decryption device
JP2022028632A (en) Device and method
US20160149708A1 (en) Electronic signature system
Bellare et al. Deterring certificate subversion: efficient double-authentication-preventing signatures
KR102307483B1 (en) Forward secure sequential aggregate signature method and apparatus thereof
Gong et al. Analysis and comparison of the main zero-knowledge proof scheme
JP2022527358A (en) Computer-implemented methods and systems for knowledge proof in blockchain transactions
Seuschek et al. A cautionary note: Side-channel leakage implications of deterministic signature schemes
CN111245869B (en) Cross-domain anonymous authentication method in information physical system
KR102122773B1 (en) System and method for providng redactable signature with recovery functionality
KR102268548B1 (en) Simulation-extractable succinct non-interactive arguments of knowledge method and apparatus
Dufka et al. SHINE: Resilience via Practical Interoperability of Multi-party Schnorr Signature Schemes.
KR20210001290A (en) Forward secure identity-based signature method and apparatus
CN114026586A (en) Zero knowledge or pay protocol for granting access to encrypted assets
Fu et al. Cryptanalysis of remote data integrity checking protocol proposed by L. Chen for cloud storage
US20240113890A1 (en) Low-Cost, High-Security Solutions for Digital Signature Algorithm
JPWO2020240293A5 (en)
KR102439195B1 (en) Method and system for generating multi signature, and computing device for executing the same
Drzazga et al. Review of Chosen Isogeny-Based Cryptographic Schemes. Cryptography 2022, 6, 27
CN115473634B (en) Improved method and device for generating linkable ring signature
Giechaskiel An evaluation of the effects of broken cryptographic primitives on bitcoin

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant