[go: up one dir, main page]

KR20030094217A - Threshold cryptography scheme for message authentication systems - Google Patents

Threshold cryptography scheme for message authentication systems Download PDF

Info

Publication number
KR20030094217A
KR20030094217A KR10-2003-7006413A KR20037006413A KR20030094217A KR 20030094217 A KR20030094217 A KR 20030094217A KR 20037006413 A KR20037006413 A KR 20037006413A KR 20030094217 A KR20030094217 A KR 20030094217A
Authority
KR
South Korea
Prior art keywords
message
share
key
shares
authenticating
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
KR10-2003-7006413A
Other languages
Korean (ko)
Inventor
아멧머싯 에스키시오글루
Original Assignee
톰슨 라이센싱 소시에떼 아노님
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 톰슨 라이센싱 소시에떼 아노님 filed Critical 톰슨 라이센싱 소시에떼 아노님
Publication of KR20030094217A publication Critical patent/KR20030094217A/en
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/26606Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for generating or managing entitlement messages, e.g. Entitlement Control Message [ECM] or Entitlement Management Message [EMM]
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • H04N21/25816Management of client data involving client authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/162Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing
    • H04N7/163Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing by receiver means only
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/167Systems rendering the television signal unintelligible and subsequently intelligible
    • H04N7/1675Providing digital key or authorisation information for generation or regeneration of the scrambling sequence

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Graphics (AREA)
  • Storage Device Security (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

메시지를 인증하는 방법 및 장치에서, 상기 방법은 제 1 셰어를 나타내는 데이터를 디바이스에서 수신하는 단계, 상기 제 1 셰어, 및 상기 디바이스에 저장되는 적어도 2개의 추가 셰어를 이용하여 키를 구성하는 단계, 및 상기 구성된 키를 이용하여 메시지를 인증하는 단계를 포함한다.In a method and apparatus for authenticating a message, the method comprises receiving at the device data indicative of a first share, constructing a key using the first share, and at least two additional shares stored in the device, And authenticating the message using the configured key.

Description

메시지 인증 시스템을 위한 임계값 암호화 구조{THRESHOLD CRYPTOGRAPHY SCHEME FOR MESSAGE AUTHENTICATION SYSTEMS}Threshold encryption architecture for message authentication system {THRESHOLD CRYPTOGRAPHY SCHEME FOR MESSAGE AUTHENTICATION SYSTEMS}

현대의 전자식 분배 네트워크에서, 메시지 인증은 정보 보안의 중요한 목표이다. 이러한 목표는 메시지의 수신기에게 송신기의 아이덴티티를 보증함으로써 만족된다. 2진 시퀀스로 표시된 메시지에 대해서 밀봉된 봉투와 같은 물리적인 보호가 불가능하기 때문에, 암호화 기법을 이용하는 디지털 수단이 개발되어 왔다. 메시지 인증을 위한 모든 암호화 방법의 주요 취약점은 고정된 대칭키 또는 공개키를 갖는 알고리즘을 이용한다는 점에 있다. 본 발명자는 비밀 공유를 기반으로 하는 새로운 키 전송구조를 설명하고 있는데, 상기 구조에서는 각각의 새로운 메시지가 새로운 키를 이용하여 인증되게 함으로써, 키 또는 메시지 공격에 대한 시스템의 내성을 강화한다.In modern electronic distribution networks, message authentication is an important goal of information security. This goal is satisfied by assuring the identity of the transmitter to the receiver of the message. Since physical protection such as sealed envelopes is not possible for messages displayed in binary sequences, digital means using encryption techniques have been developed. The main weakness of all encryption methods for message authentication is that it uses an algorithm with a fixed symmetric or public key. We describe a new key transmission scheme based on secret sharing, whereby each new message is authenticated using a new key, thereby enhancing the system's resistance to key or message attacks.

정보 보안의 4가지 가장 중요한 목표 중의 하나가 인증이다. 다른 목표는신뢰성(confidentiality), 데이터 무결성(data integrity) 및 무 거부성(non-repudiation)이다. 통신 네트워크에서, 이러한 목표의 일부 또는 전부가 만족될 필요가 있을 수 있다.One of the four most important goals of information security is authentication. Other goals are confidence, data integrity and non-repudiation. In a communication network, some or all of these goals may need to be met.

신뢰성에 대해서, 정보가 비밀로 유지되어야 하는 응용이 있다는 점에 유의한다. 암호화 기법은 데이터를 알 수 없는 포맷으로 변환함으로써 신뢰성을 제공한다. 이것은 역처리가 가능하고, 정확한 키를 가지고 있는 엔티티는 데이터를 복구할 수 있다.Note that for reliability, there are applications in which information must be kept confidential. Encryption techniques provide reliability by converting data into unknown formats. This can be reversed and an entity with the correct key can recover the data.

데이터 무결성에 대해서, 사용자는 공인되지 않은 방식으로 정보가 변경되지 않았다는 것을 보증받을 필요가 있다. 간략한 데이터 표시를 생성하는 해싱 함수(Hashing function)는 공통적으로 데이터 무결성을 점검하는데 사용된다.For data integrity, the user needs to be assured that the information has not been altered in an unauthorized manner. Hashing functions that produce a short data representation are commonly used to check data integrity.

마지막으로, 무 거부성에 대해서, 예를 들어 관련 전자 거래와 같은 행위를 당사자가 부인하는 결과로 논쟁이 생기면, 판사의 역할을 하는 신뢰할 수 있는 제 3 자의 참여로 해결될 수 있다.Finally, if disputes arise as a result of a party's denial of non-repudiation, such as a related electronic transaction, it can be resolved with the participation of a trusted third party acting as a judge.

'엔티티' 인증 및 '메시지' 인증의 2가지 기본 인증 유형이 있다. 메시지 인증은 메시지의 발신자의 아이덴티티를 보증한다. 엔티티 인증은 메시지의 발신자의 아이덴티티를 보증할 뿐만 아니라, 메시지의 발신자의 능동적인 참여를 보증한다.There are two basic types of authentication: 'entity' authentication and 'message' authentication. Message authentication guarantees the identity of the sender of the message. Entity authentication not only guarantees the identity of the sender of the message, but also ensures the active participation of the sender of the message.

도 6은 메시지를 교환하기 위해 프로토콜을 이용하여 두 당사자(A와 B)가 통신하는 통신 채널을 나타낸다. A 당사자는 메시지(M)의 송신자이고, B 당사자는 수신자이다. 통신 네트워크의 유형에 따라서, B 당사자는 메시지의 수신시 적어도3개 조각으로 이루어진 정보를 원하게 된다: (1)메시지(M)를 송신한 부분의 아이덴티티의 보증(공통적으로 '메시지' 인증으로 언급됨), (2)메시지(M)가 전송 도중에 변경되지 않았다는 증거(데이터 무결성), 및 (3)A 당사자(즉, 송신기)이 메시지가 송신된 시간에 활성이었다는 표시(공통으로 '엔티티' 인증으로 언급됨).6 shows a communication channel in which two parties A and B communicate using a protocol to exchange messages. Party A is the sender of message M and Party B is the recipient. Depending on the type of communication network, Party B wants at least three pieces of information upon receipt of the message: (1) The assurance of the identity of the part that sent the message M (commonly referred to as the 'message' authentication). ), (2) evidence that the message (M) was not altered during transmission (data integrity), and (3) an indication that the party A (i.e. the sender) was active at the time the message was sent (commonly known as an 'entity' Mentioned).

전술한 바와 같이, 메시지 인증은 A 당사자, 즉 메시지(M)의 발신자의 아이덴티티를 보증한다. 또한, 만일 메시지(M)가 전송 도중에 변경되었다면 A 당사자가 발신자가 될 수 없기 때문에, 메시지 인증은 데이터 무결성의 증거를 포함한다. 반면, 엔티티 인증은 A 당사자의 아이덴티티 뿐만 아니라 A 당사자의 능동적인 참여도 B 당사자에 보증한다. 때로, 2개 부분은 메시지가 어느 한쪽 방향으로 흐른다는 것을 서로에게 인증할 필요가 있다. 대칭키 또는 공개키 구조에 기초한 도전-응답(challenge-response) 프로토콜, 및 제로-날리지(zero-knowledge) 프로토콜은 상호 인증을 위해 공통적으로 사용된다.As mentioned above, message authentication guarantees the identity of party A, the sender of message M. In addition, the message authentication includes evidence of data integrity, since party A cannot be the originator if message M has been changed during transmission. On the other hand, entity authentication guarantees Party B's active participation as well as Party A's identity. Sometimes the two parts need to authenticate each other that the message flows in either direction. Challenge-response protocols based on symmetric or public key structures, and zero-knowledge protocols are commonly used for mutual authentication.

메시지 인증이 영원하다거나 유일하다는 보증을 하지는 않지만, 메시지 프로토콜의 실행동안 한 부분(예를 들어, A 당사자)이 비활성인 통신에서 매우 유용하다.응답 침입(reply attack)(즉, 침입자가 A 당사자인 것처럼 가장하고 프로토콜을 얻으려는 시도로 이전에 사용된 메시지를 송신하는 경우)을 피하기 위해서, 시변화(time variant) 데이터(예를 들어, 시퀀스 번호, 타임 스탬프 등)가 메시지(M)에 부가될 수 있다.While there is no guarantee that message authentication is permanent or unique, it is very useful in communications where one part (for example, Party A) is inactive during the execution of a message protocol. To pretend to be and to send a previously used message in an attempt to obtain a protocol, time variant data (e.g., sequence number, time stamp, etc.) is appended to the message (M). Can be.

"해싱(hashing)"으로 알려진 암호화 처리는 데이터 무결성 및 메시지 인증 구조의 필수 부분이다. 해싱 함수는 임의의 유한 길이의 메시지를 취하고, 고정길이의 출력을 생성한다. 암호화 응용에서, 해시값은 실제 메시지를 더 짧게 나타내는 것으로 간주된다. 해시 함수는 (1)풀리지 않는 해시 함수(즉, 메시지가 유일한 입력 파라미터이다), 및 (2)풀리는 해시 함수(즉, 메시지 및 비밀키가 입력 파라미터이다)의 2가지 그룹으로 분류될 수 있다.Encryption processing, known as "hashing", is an integral part of the data integrity and message authentication structure. The hashing function takes a message of arbitrary finite length and produces a fixed length output. In cryptographic applications, hash values are considered to represent shorter actual messages. Hash functions can be classified into two groups: (1) unsolved hash functions (ie, messages are the only input parameters), and (2) unwrapped hash functions (ie, messages and private keys are input parameters).

풀리지 않는 해시 함수의 특정 클래스는 조작 검출 코드(MDC: Manipulation Detection Code)를 포함한다. MDC는 메시지(M)가 압축되는 방식면에서 다르다. 일부 예시로: (a)블럭 암호(cipher)에 기초한 해시 함수, (b)모듈러 연산에 기초한 해시 함수, 및 (c)주문형(customized) 해시 함수가 있다.Certain classes of hash functions that are not solved include Manipulation Detection Code (MDC). MDC differs in the way the message M is compressed. Some examples include: (a) a hash function based on block ciphers, (b) a hash function based on modular operations, and (c) a customized hash function.

메시지 인증을 위해 사용되는 풀리는 해시 함수는 메시지 인증 코드(MAC:Message Authentication Code)하에서 그룹화된다. MAC은 주문 구성될 수 있거나, 블럭 암호를 이용하여 구성될 수 있거나, 또는 MDC로부터 유도될 수 있다.Pulley hash functions used for message authentication are grouped under Message Authentication Code (MAC). The MAC may be custom configured, may be configured using a block cipher, or may be derived from the MDC.

메시지 인증 방법은 대칭키 또는 공개키 암호를 이용하는 방법에 따라 (a)MAC, (b)메시지 암호화, 및 (c)디지털 서명으로 분류될 수 있다.The message authentication method may be classified into (a) MAC, (b) message encryption, and (c) digital signature according to a method using symmetric key or public key cryptography.

도 7은 MAC을 이용한 메시지 인증 방법의 블럭도를 나타낸다. 메시지(M)는 양쪽 부분{즉, 송신기(A 당사자) 및 수신기(B 당사자)}에 의해 공유되는 키(K)를 이용하여 MAC을 계산하는 MAC 알고리즘으로 입력된다. 다음, A 당사자는 MAC을 메시지(M)에 첨부하고, 그 복합 신호를 B 당사자으로 송신한다.7 shows a block diagram of a message authentication method using a MAC. The message M is input into a MAC algorithm that calculates the MAC using the key K shared by both parts (i.e., the transmitter (A party) and the receiver (B party)). The party A then attaches the MAC to the message M and sends the composite signal to the party B.

도 8은 메시지 암호화를 이용한 메시지 인증 방법의 블럭도를 나타낸다. 메시지 암호화는 2가지 방식, 즉 대칭키 암호화 및 공개키 암호화 방식으로 실현될 수 있다. 대칭키 암호화를 이용하면, 메시지(M)는 수신기(예를 들어, B 당사자)로전송되기전에 대칭키를 이용하여 암호화된다. 수신기(예를 들어 B 당사자)는 메시지를 해독하기 위해 대칭키의 카피(copy)를 이용한다. 공개키 암호화를 이용하면, 메시지(M)는 공개키를 이용하여 암호화되고, 수신기에서 해당하는 개인키(private key)를 이용하여 해독된다. 도 8에 도시된 바와 같이, 어느 한쪽 방법하에서, 메시지(M)는 암호화된 메시지{Ek(M)}를 생성하기 위해 (대칭 또는 공개)키(K)를 이용하는 암호화 알고리즘에 입력된다.8 shows a block diagram of a message authentication method using message encryption. Message encryption can be realized in two ways: symmetric key encryption and public key encryption. Using symmetric key encryption, the message M is encrypted using the symmetric key before being sent to the receiver (e.g., party B). The receiver (e.g., party B) uses a copy of the symmetric key to decrypt the message. Using public key encryption, the message M is encrypted using the public key and decrypted using the corresponding private key at the receiver. As shown in Fig. 8, under either method, the message M is input to an encryption algorithm using a (symmetric or public) key K to generate an encrypted message E k (M).

도 9는 디지털 서명을 이용한 메시지 인증 방법의 블럭도를 나타낸다. 이 방법에서, 송신기(예를 들어 A 당사자)는 메시지(M)에 디지털로 서명하기 위해 개인키(Kprivate)를 이용한다. 메시지(M)의 크기에 따라서, 적절한 서명 알고리즘이 사용될 수 있다. 수신기(예를 들어 B 당사자)는, A가 개인키를 소유하고 있는 유일한 부분이기 때문에 A에 의해 메시지(M)가 생성되었다는 것을 보증받는다.9 shows a block diagram of a message authentication method using a digital signature. In this way, the sender (e.g., party A) uses the private key K private to digitally sign the message M. Depending on the size of the message M, an appropriate signature algorithm can be used. The receiver (e.g., party B) is assured that message M has been generated by A because A is the only part that owns the private key.

만일 MAC의 생성, 메시지 암호화 및 디지털 메시지 서명(즉, 모든 3개 메시지 인증 유형)을 위해 고정 키가 사용된다면, 보안 레벨이 제한되어, 암호 해독을 위해 시스템을 노출한다.If a static key is used for the generation of MAC, message encryption and digital message signing (ie all three message authentication types), then the security level is limited, exposing the system for decryption.

'MAC' 방법에 대해서, 송신기와 수신기에 의해 공유된 대칭키는 그 수명동안 모든 메시지를 위해 사용될 필요가 있다. 이것은 상기 방법이 MAC 위조 및 키 복구를 위한 침입에 대해 취약하게 만든다. (1)키 공간에 대한 침입, 및 (2)MAC값에 대한 침입의 2가지 가능한 침입이 있다. 만일 침입자가 MAC 키를 결정할 수 있다면, 임의의 메시지에 대한 MAC값을 생성할 수도 있다. 't'비트의 키 크기 및 고정된 입력에서, 정확한 n비트 MAC을 찾을 확률은 약 2-t가 된다. MAC 위조의 목표는 주어진 메시지를 위한 MAC을 생성하거나, 또는 키를 모르고서 주어진 MAC를 위한 메시지를 찾는 것이다. n비트 MAC 알고리즘에서, 이러한 목표를 만족시킬 확률은 약 2-n이 된다. 요컨대, MAC 알고리즘에 대한 폭력적인 침입에 대해 필요한 노력은 최소값(2t,2n)이 된다.For the 'MAC' method, the symmetric key shared by the transmitter and receiver needs to be used for all messages during its lifetime. This makes the method vulnerable to intrusions for MAC forgery and key recovery. There are two possible intrusions: (1) intrusion into key space, and (2) intrusion into MAC value. If the attacker can determine the MAC key, he may generate a MAC value for any message. With a key size of 't' bits and a fixed input, the probability of finding the correct n-bit MAC is about 2- t . The goal of MAC forgery is either to generate a MAC for a given message, or to find a message for a given MAC without knowing the key. In the n-bit MAC algorithm, the probability of meeting this goal is about 2- n . In short, the effort required for violent intrusion into the MAC algorithm is at a minimum (2 t , 2 n ).

메시지 암호화 방법에 대해서, 상기 방법은 또한 폭력적인 침입에 취약하다. 예를 들어, 56비트 DES(대칭) 알고리즘에서, 모든 255DES 연산을 테스트함으로써 키가 결정될 수 있다. 선형(linear) 또는 차동(differential) 암호 해독법과 같은 좀더 효율적인 침입은 적은 프로세서 시간으로 키가 복구되게 한다.As for the message encryption method, the method is also vulnerable to violent intrusions. For example, in a 56 bit DES (symmetric) algorithm, the key can be determined by testing all 2 55 DES operations. More efficient intrusions, such as linear or differential cryptography, allow keys to be recovered with less processor time.

디지털 서명 방법에 대해서, 어떠한 공개키 서명 알고리즘도 보안성이 없는 것으로 판명되었다. 공개키 알고리즘의 보안은 이산 대수를 계산하거나, 또는 큰 수를 인수분해하는 어려움을 기반으로 하고 있다. 고정된 공개/개인키 쌍을 이용하면, 메시지에 대한 공개키 또는 서명을 이용하여 침입이 가능하다. 일부 응용에서, 송신기의 공개키의 인증성(authenticity)은 복잡한 공개키 하부구조를 필요로 한다는 큰 문제점이 있다.For the digital signature method, no public key signature algorithm has been found to be insecure. The security of public key algorithms is based on the difficulty of computing discrete algebra or factoring large numbers. Using a fixed public / private key pair, it can be exploited using the public key or signature of a message. In some applications, there is a big problem that the authenticity of the transmitter's public key requires a complex public key infrastructure.

따라서 현재, 더 높은 수준의 보안을 제공하지만 고정된 키를 이용하지 않는 메시지 인증을 제공하는 시스템이 필요하다.Therefore, there is a current need for a system that provides a higher level of security but provides message authentication that does not use a fixed key.

본 발명은 메시지 인증을 제공하는 방법 및 시스템에 관한 것이다. 비밀 공유의 개념을 이용하면 상기 시스템은 키 전체가 메시지의 수신기로 송신되는 것을 필요로 하지 않는다. 대신, 송신기로부터 수신된 적어도 하나의 셰어(share) 및 수신기에 저장된 적어도 2개의 셰어를 이용하여 키가 복구된다.The present invention relates to a method and system for providing message authentication. Using the concept of secret sharing, the system does not require the entire key to be sent to the receiver of the message. Instead, the key is recovered using at least one share received from the transmitter and at least two shares stored at the receiver.

도 1은 본 발명의 예시적인 제 1 실시예에 따른 메시지 인증 시스템을 나타내는 블럭도.1 is a block diagram illustrating a message authentication system according to a first exemplary embodiment of the present invention.

도 2a는 본 발명의 예시적인 제 1 실시예에 따른 인증 키의 결정을 그래픽으로 나타내는 도면.Fig. 2A is a graphical representation of the determination of an authentication key according to a first exemplary embodiment of the invention.

도 2b는 도 1에 따른 각각의 전송기에 대한 고유하고 겹치지 않는 범위의 할당을 그래픽으로 나타내는 도면.2b graphically illustrates a unique, non-overlapping range of allocation for each transmitter according to FIG.

도 3은 본 발명의 예시적인 제 2 실시예에 따른 인증 키의 결정을 그래픽으로 나타내는 도면.Fig. 3 graphically illustrates the determination of an authentication key according to a second exemplary embodiment of the invention.

도 4는 본 발명의 예시적인 제 3 실시예에 따른 인증 키의 결정을 그래픽으로 나타내는 도면.4 graphically illustrates the determination of an authentication key according to a third exemplary embodiment of the present invention.

도 5는 본 발명의 예시적인 제 1 내지 제 3 실시예에 따른 복수의 인증 키의 결정을 그래픽으로 나타내는 도면.Fig. 5 is a graphical representation of the determination of a plurality of authentication keys according to the first to third embodiments of the present invention.

도 6은 종래의 메시지 인증 시스템을 나타내는 블럭도.6 is a block diagram showing a conventional message authentication system.

도 7은 MAC을 이용한 메시지 인증 시스템을 나타내는 블럭도.7 is a block diagram illustrating a message authentication system using a MAC.

도 8은 메시지 암호화를 이용한 메시지 인증 시스템을 나타내는 블럭도.8 is a block diagram illustrating a message authentication system using message encryption.

도 9는 디지털 서명을 이용한 메시지 인증 시스템을 나타내는 블럭도.9 is a block diagram illustrating a message authentication system using a digital signature.

본 발명은 메시지의 인증을 제공하는 방법 및 장치를 한정하고, 상기 방법은 제 1 셰어를 나타내는 데이터를 수신기 스테이션에서 수신하는 단계, 상기 제 1 셰어 및 적어도 2개의 추가 셰어를 이용하여 키를 구성하는 단계로서, 상기 적어도 2개의 추가 셰어는 상기 수신기 스테이션에 저장되는, 키 구성 단계, 및 상기 구성된 키를 이용하여 메시지를 인증하는 단계를 포함한다.The present invention defines a method and apparatus for providing authentication of a message, the method comprising receiving data at a receiver station indicative of a first share, constructing a key using the first share and at least two additional shares. As a step, the at least two additional shares comprise a key construction step, stored at the receiver station, and authenticating a message using the configured key.

본 발명의 예시적인 제 1 실시예에 따르면, 제 1 및 제 2 셰어가 사용된다. 제 1 및 제 2 셰어는 유클리드 평면(Euclidean plane)상의 지점이고, 상기 키를 구성하는 단계는 제 1 및 제 2 셰어에 의해 유클리드 평면상에 형성된 직선의 Y-인터셉트(intercept)를 계산하는 단계를 포함한다.According to a first exemplary embodiment of the invention, first and second shares are used. The first and second shares are points on the Euclidean plane, and the constructing of the keys comprises calculating a Y-intercept of straight lines formed on the Euclidean plane by the first and second shares. Include.

본 발명의 예시적인 제 2 실시예에 따르면, 제 1, 제 2 및 제 3 셰어가 사용된다. 제 1, 제 2 및 제 3 셰어는 제 1, 제 2 및 제 3 셰어에 의해 유클리드 평면상에 형성된 포물선 곡선의 Y-인터셉트를 계산하는 단계를 포함한다.According to a second exemplary embodiment of the invention, first, second and third shares are used. The first, second and third shares comprise calculating the Y-intercept of a parabolic curve formed on the Euclidean plane by the first, second and third shares.

본 발명의 예시적인 제 3 실시예에 따르면, 제 1, 제 2, 제 3 및 제 4 셰어가 사용된다. 제 1, 제 2, 제 3 및 제 4 셰어는 유클리드 평면상의 지점이고, 키의 구성 단계는 제 1, 제 2, 제 3 및 제 4 셰어에 의해 유클리드 평면상에 형성된 곡선의 Y-인터셉트를 계산하는 단계를 포함한다. 통상적으로, 필요한 보안 레벨에 따라서 임의의 수의 셰어가 사용될 수 있다.According to a third exemplary embodiment of the invention, first, second, third and fourth shares are used. The first, second, third and fourth shares are points on the Euclidean plane, and the construction of the key calculates the Y-intercept of the curves formed on the Euclidean plane by the first, second, third and fourth shares. It includes a step. Typically, any number of shares can be used depending on the level of security required.

본 발명은 메시지 인증 시스템을 포함하고, 상기 메시지 인증 시스템에서 2개 이상의 부분 사이에서 송신된 메시지는 사전에 전개배치된(prepositioned) 비밀 공유 구조를 이용하여 인증된다. 사전에 전개배치된 비밀 공유 구조를 이용함으로써, 메시지 인증 시스템의 보안 및 유연성이 (예를 들어 서로 다른 키를 이용하여) 증가된다.The present invention includes a message authentication system, wherein a message sent between two or more portions of the message authentication system is authenticated using a prepositioned secret sharing structure. By using a pre-deployed secret sharing structure, the security and flexibility of the message authentication system is increased (eg using different keys).

본 발명은 아디 샤미르(Adi Shamir)에 의해 최초로 개발된 '임계값 구조(threshold scheme)'로 알려진 비밀 공유 구조의 응용을 이용한다{아디 샤미르의 "비밀을 공유하는 방법(How to share a secret)"(Communications of the ACM, 22권 제 11호, 612-613페이지, 1979.11 참조). 샤미르에 의해 제안된 임계값 구조와 같은 (t,n) 임계값 구조는 비밀을 재구성하는데 적어도 t(≤n)개 조각이 필요한 방식에서 비밀을 n개 조각('셰어' 또는 '섀도우(shadow)'라고 불릴 수 있음)으로 나누는 방법을 포함한다. 완벽한 임계값 구조는, (t-1) 또는 더 적은 조각의 날리지(knowledge)('셰어' 또는 '섀도우')가 비밀에 대해 어떠한 정보도 제공하지 않는 임계값 구조이다.The present invention takes advantage of the application of a secret sharing scheme known as the 'threshold scheme' first developed by Adi Shamir {"How to share a secret" by Adi Shamir) (See Communications of the ACM, Vol. 22, No. 11, pp. 612-613, November 1979). A (t, n) threshold structure, such as the threshold structure proposed by Shamir, has n secrets ('share' or 'shadow') in a manner that requires at least t (≤n) pieces to reconstruct the secret. (Also called ""). A perfect threshold structure is a threshold structure in which (t-1) or fewer pieces of knowledge ('share' or 'shadow') do not provide any information about the secret.

예를 들어, (2,5) 임계값 구조에서, 비밀은 5개의 셰어로 분할되지만, 셰어 중 2개만이 비밀을 재구성하는데 필요하다. 전술한 임계값 구조와 같은 (2,5) 임계값 구조는 은행 관리자가 주 금고에 대한 맞춤 번호를 5명의 금전출납원에게 분할하는데 사용될 수 있다. 이러한 방식에서, 함께 일하는 금전 출납원 중 임의의 2명은 금고를 열 수 있지만, 한 명의 금전 출납원 혼자서는 금고를 열 수 없다. 샤미르의 (t,n) 임계값 구조에서, t에 대해 더 높은 값을 선택하고, 스마트 카드에 (t-1) 비밀을 저장하면, 오직 암호문만으로 침입에 대한 시스템의 저항을 증가시키지만, 다항식 구성에 대한 더 많은 계산을 초래하게 된다.For example, in the (2,5) threshold structure, the secret is divided into five shares, but only two of the shares are needed to reconstruct the secret. A threshold structure (2,5), such as the threshold structure described above, can be used by the bank manager to divide the custom number for the main safe into five tellers. In this manner, any two of the cashiers working together may open the safe, but not one cashier alone can open the safe. In Shamir's (t, n) threshold structure, selecting a higher value for t and storing the (t-1) secret on the smart card only increases the system's resistance to intrusion with cryptography, but with polynomial construction Will result in more computation for.

그러한 임계값 구조는 대칭키 복구에서 계산 요구를 감소시킨다. 각각의 새로운 키에서, 모듈러 누승법(exponentiation)과 관련된 RSA 암호 해독법과 비교해서 간단한 연산만이 수행된다(즉, x=0인 다항식의 값이 계산된다). 또한, 보안이완벽하다(즉, 주어진 (x1,y1)의 날리지에서, 비밀의 모든 값은 동일하게 가능성이 있는 것으로 유지된다).Such threshold structure reduces computational requirements in symmetric key recovery. In each new key, only a simple operation is performed compared to the RSA cryptography associated with modular exponentiation (ie, the value of the polynomial with x = 0 is calculated). Also, security is perfect (ie, for a given (x 1 , y 1 ) carry, all values of the secret remain equally likely).

본 발명은 메시지를 인증하기 위한 키의 아이덴티티를 숨기기 위해서 샤미르의 비밀 공유의 원리를 이용한다. 특히, 본 발명자는 유클리드 평면상의 2개 이상의 지점에 의해 형성된 특정 직선 또는 곡선의 Y-인터셉트를 키가 포함하는 구조를 제안한다.The present invention uses Shamir's principle of secret sharing to hide the identity of the key for authenticating a message. In particular, the inventors propose a structure in which the key comprises a particular straight or curved Y-intercept formed by two or more points on the Euclidean plane.

이러한 구조의 가장 단순한 실시예에서, 디바이스(예를 들어 수신기)는 그 안에 이미 저장된 셰어(들)를 이용하여 제조된다(이들은 또한 종종 후술되는 바와 같이 '사전에 전개배치된' 공유 비밀 구조로 언급된다). 이러한 저장된 셰어는 키를 계산하는데 이용되는데, 그 후 상기 키는 메시지 인증자(authenticator)를 얻기 위해 사용된다. 메시지 인증자는 예를 들어 도 7을 참조하여 전술한 유형(예를 들어 MAC)이 될 수도 있거나, 또는 당업자에게 알려진 다른 인증자가 될 수도 있다. 메시지 신호가 전송될 때, 추가 또는 '활성화(activating)' 셰어가 상기 신호와 함께 전송된다. '활성화' 셰어는 이러한 구조에서 암호화될 필요가 없는데, 이는 저장된 셰어의 날리지 없이는 활성화 셰어의 날리지가 아무 의미가 없기 때문이라는 점에 유의해야 한다. '활성화' 셰어의 수신시, 상기 디바이스는 저장된 셰어 및 '활성화' 셰어에 의해 형성된 직선의 Y-인터셉트를 찾음으로써 계산되는 키를 이용하여 메시지 인증자를 계산한다. 새로운 키가 필요할 때마다, 새로운 '활성화' 셰어가 전송기에서 선택될 수 있어서, 저장된 셰어 및 '활성화' 셰어에 의해형성된 직선의 Y-인터셉트를 변경한다. 이러한 방식으로, 무한한 키의 갯수가 한정될 수 있고, 디바이스의 하드웨어 또는 소프트웨어를 변경하지 않고서 이용될 수 있다. 전술한 '디바이스'는 아날로그 또는 디지털 텔레비전 세트, 셋탑 박스, 비디오카세트 레코더(VCR), 및 당업자에게 알려진 다른 동등한 장비와 같은 많은 다른 유형의 장비를 포함할 수 있다는 점에 유의한다. 간단하게 하기 위해, 전술한 기재에서는 일반적인 "수신기" 구조에 초점을 맞출 것이다.In the simplest embodiment of this structure, the device (e.g. receiver) is manufactured using share (s) already stored therein (these are often referred to as 'predeployed' shared secret structures as described below. do). This stored share is used to calculate a key, which is then used to obtain a message authenticator. The message authenticator may be of the type described above with reference to FIG. 7, for example, MAC, or may be another authenticator known to those skilled in the art. When a message signal is sent, an additional or 'activating' share is sent with the signal. Note that the 'activation' share does not need to be encrypted in this structure, because the carry of the activation share does not mean anything without the stored share. Upon receipt of the 'activate' share, the device calculates the message authenticator using the key calculated by finding the Y-intercept of the straight line formed by the stored share and the 'activate' share. Each time a new key is needed, a new 'active' share can be selected at the transmitter, changing the Y-intercept of the straight line formed by the stored share and the 'active' share. In this way, the number of infinite keys can be limited and used without changing the hardware or software of the device. Note that the above-mentioned 'devices' may include many other types of equipment such as analog or digital television sets, set top boxes, video cassette recorders (VCRs), and other equivalent equipment known to those skilled in the art. For simplicity, the foregoing description will focus on the general "receiver" structure.

키 생성 및 분산 처리는 다음의 단계를 수행하기 위한 프로그램을 개발함으로써 자동화될 수 있다:Key generation and distribution processing can be automated by developing a program to perform the following steps:

(a)비밀(S)을 선택한다; 이것은 유클리드 평면의 Y축을 따른 값이 될 것이다.(a) select a secret (S); This will be the value along the Y axis of the Euclidean plane.

(b)S를 이용하여 메시지 인증자를 생성한다. 이러한 메시지 인증자는 예를 들어 MAC이 될 수 있다.(b) Create a message authenticator using S. Such a message authenticator may for example be a MAC.

(c)지점(0,S) 및 다른 지점(x0,y0)을 통과하는 1차 다항식 f(x)을 구성한다.(c) Construct a first order polynomial f (x) passing through point (0, S) and another point (x 0 , y 0 ).

(d)x1에서의 f(x)를 계산하는데, 여기서 x1≠x0이다.(d) to calculate f (x) at x 1, where the x 1 ≠ x 0.

(e)상기 메시지 및 메시지 인증자(예를 들어, MAC)와 함께 (x1,y1)를 분산한다.(e) Distribute (x 1 , y 1 ) with the message and the message authenticator (eg, MAC).

전술한 바와 같은 구조는, 비밀의 일부분이 디바이스(예를 들어 수신기)에 '사전에 전개배치되기' 때문에 때로 '사전에 전개배치된' 공유 비밀 구조로 언급되기도 한다. 상기 예시에서, '사전에 전개배치된' 셰어는 수신기에 저장된 셰어이다. 상기 '사전에 전개배치된' 공유 비밀 구조는 암호 작성법 분야에서 다른 사람들에 의해 논의되었다{지.제이. 시몬스(G.J. Simmons)의 "비밀을 (진짜로) 공유하는 방법(How to (really) share a secret)"(Advances in Cryptology-CRYPTO '88 Proceedings, Springer-Verlag, 390-448페이지, 1990); 지.제이. 시몬스의 "사전에 전개배치된 공유된 비밀 및/또는 공유된 제어 구조(Prepositioned shared secret and/or shared control schemes)"(Advances in Cryptology-EUROCRYPT '89 Proceedings, Springer-Verlag, 436-467페이지, 1990). 특정한 셰어(들)을 사전에 전개배치함으로써, 수신기에서 임의의 회로를 변경할 필요없이 비교적 용이하게 키가 변경될 수 있다; 오직 '활성화' 셰어가 변경될 필요가 있다.The structure as described above is sometimes referred to as a 'predeployed' shared secret structure because a portion of the secret is 'predeployed' to the device (eg receiver). In this example, the 'predeployed' share is the share stored at the receiver. The 'predeployed' shared secret structure has been discussed by others in the cryptography field. "How to (really) share a secret" by G.J. Simmons (Advances in Cryptology-CRYPTO '88 Proceedings, Springer-Verlag, pp. 390-448, 1990); J. Jay. Simons' "Prepositioned shared secret and / or shared control schemes" (Advances in Cryptology-EUROCRYPT '89 Proceedings, Springer-Verlag, pages 436-467, 1990 ). By predeploying certain share (s), the key can be changed relatively easily without having to change any circuitry at the receiver; Only the 'active' share needs to be changed.

상기 알고리즘은 단지 2개의 셰어(즉, 유클리드 평면상의 한 직선의 2개 지점)를 갖는 비밀(S)을 이용하는 사전에 전개배치된 비밀 공유 구조를 약술한다는 점에 유의한다. 물론, 다른 비밀(S)은 더 많은 셰어(지점)으로부터 계산될 수 있어서, 암호 작성을 더 어렵게 만든다. 사전에 전개배치된 비밀 공유 구조의 중요한 측면은 셰어의 일부가 수신기에 '사전에 전개배치된다'는 것이다.Note that the algorithm outlines a previously deployed secret sharing structure using secret S with only two shares (ie, two points on a straight line on the Euclidean plane). Of course, other secrets S can be computed from more shares, making cryptography more difficult. An important aspect of a predeployed secret sharing structure is that some of the shares are 'deployed' to the receiver.

본 발명은 (예를 들어 수신기 하드웨어에서) 특정 위치에 비밀의 셰어 중 적어도 하나를 저장하는 것과 관련된다. 저장된 셰어는 그 후 비밀을 구성하기 위해 '활성화' 셰어와 관련하여 사용된다. (4,4) 구조에서, 예를 들어 바람직하게 4개 중 3개 셰어는 특정 위치(예를 들어 수신기)에 저장된다. 그 다음, 마지막 셰어(본 명세서에서 또한 '활성화' 셰어로 언급됨)는 비밀을 얻기 위해 상기 위치로 전송된다. 본 발명에서, 비밀은 셰어 자체는 아니지만, 유클리드 평면상의 지점으로표시될 때 셰어에 의해 형성된 직선 또는 (더 높은 차수의 다항식에서) 곡선의 Y-인터셉트라는 점에 유의하는 것이 중요하다.The present invention relates to storing at least one of the secret shares in a specific location (eg in receiver hardware). The stored share is then used in conjunction with the 'active' share to construct a secret. In the (4,4) structure, for example, three out of four shares are preferably stored at a specific location (eg receiver). Then, the last share (also referred to herein as the 'activation' share) is sent to the location to obtain a secret. In the present invention, it is important to note that although the secret is not the share itself, it is the Y-intercept of the straight line or curve (in higher order polynomials) formed by the share when represented as a point on the Euclidean plane.

도 1, 2a, 및 2b는 함께 본 발명의 예시적인 제 1 실시예에 따른 메시지 인증 시스템(100)을 예시한다. 메시지 인증 시스템(100)은 메시지 소스(전송기)(40) 및 메시지 수신기(50)를 포함한다. 메시지 소스(40)는 통상적으로 메시지와 함께 수신기(50)로 송신되는 메시지 인증자를 메시지로부터 생성하기 위해 비밀 키를 이용한다. 수신기(50)는 동일한 키를 구성하고, 상기 인증자를 계산하기 위해 키를 이용한다. 만일 수신기에서 구성된 인증자와 메시지와 함께 송신된 인증자가 동일하다면, 메시지는 인증된 것으로 결정된다. 제 1 예시적인 실시예에서, 2개의 셰어로부터 비밀이 얻어진다. 전술한 바와 같이, 각각의 셰어는 유클리드 평면상의 한 지점으로 한정된다.1, 2A, and 2B together illustrate a message authentication system 100 according to a first exemplary embodiment of the present invention. The message authentication system 100 includes a message source (transmitter) 40 and a message receiver 50. The message source 40 typically uses a secret key to generate from the message a message authenticator that is sent to the receiver 50 with the message. Receiver 50 constructs the same key and uses the key to calculate the authenticator. If the authenticator configured at the receiver and the authenticator sent with the message are the same, the message is determined to be authenticated. In a first exemplary embodiment, a secret is obtained from two shares. As mentioned above, each share is defined at a point on the Euclidean plane.

특히, 비밀의 제 1 셰어(또는 데이터 지점)가 수신기(50)에 저장된다. 제 1 셰어는 {예를 들어 (x0,y0)의 형태인} 유클리드 평면상의 단일 지점으로 생각될 수 있다. 메시지 소스(40)는 특정 인증 프로토콜과 함께 메시지를 수신기(50)로 전송한다. 상기 메시지에 추가로, 메시지 소스(40)는 메시지 인증자 및 (비밀의 제 2 부분인) 제 2(또는 '활성화') 셰어를 전송한다. 제 1 셰어와 유사하게, 제 2 셰어는 {예를 들어 (x1,y1)의 형태인} 동일한 유클리드 평면으로부터의 제 2 단일 지점이 될 수 있다.In particular, a secret first share (or data point) is stored in the receiver 50. The first share can be thought of as a single point on the Euclidean plane (for example in the form of (x 0 , y 0 )). Message source 40 sends a message to receiver 50 along with a specific authentication protocol. In addition to the message, message source 40 sends a message authenticator and a second (or 'active') share (which is the second part of the secret). Similar to the first share, the second share can be a second single point from the same Euclidean plane (eg in the form of (x1, y1)).

제 1 예시적인 실시예에서, 메시지, 메시지 인증자(예를 들어, MAC), 및 제2 ('활성화') 셰어는 수신기(50)에 의해 수신되고, 수신기내에서 처리된다. 수신기(50)는 상기 키(즉, 비밀)를 재구성(또는 복구)하기 위해 제 2 ('활성화') 셰어{예를 들어 (x1,y1)} 및 저장된 제 1 셰어{예를 들어 (x0,y0)}를 이용한다. 그 다음, 수신기(50)는 메시지 인증자(예를 들어 MAC)를 생성하기 위해 재구성된 키를 이용한다. 만일 수신기(50)에서 계산된 메시지 인증자(예를 들어 MAC)가 메시지 소스(40)로부터 송신된 메시지 인증자와 동일하다면, 메시지는 인증된 것으로 간주되고, 만일 메시지 인증자가 동일하지 않다면, 메시지는 거절된다.In the first exemplary embodiment, the message, message authenticator (eg, MAC), and second ('activation') share are received by the receiver 50 and processed within the receiver. Receiver 50 is configured to reconstruct (or recover) the key (i.e., secret) with a second ('activation') share {e.g. (x 1 , y 1 )} and a stored first share {e.g. ( x 0 , y 0 )}. The receiver 50 then uses the reconstructed key to generate a message authenticator (eg MAC). If the message authenticator (e.g., MAC) calculated at the receiver 50 is the same as the message authenticator sent from the message source 40, the message is considered authenticated, and if the message authenticator is not the same, the message Is rejected.

키의 복구는 제 1 및 제 2 셰어를 이용하여 다항식을 구성함으로써 실현된다; 구성된 다항식의 y-인터셉트가 키가 된다. 예를 들어, (x0,y0) 및 (x1,y1)이 주어지면, 주어진 유한 필드에서 S값을 계산함으로써 키가 구성되는데, 여기서:Recovery of the key is realized by constructing a polynomial using the first and second shares; The y-intercept of the constructed polynomial is the key. For example, given (x 0 , y 0 ) and (x 1 , y 1 ), the key is constructed by calculating the S value in a given finite field, where:

도 2a는 예시적인 셰어 (x0,y0) 및 (x1,y1), 및 그에 의해 (키인) 특정 지점에서 Y축을 교차하게 형성된 직선을 나타내는 본 발명의 예시적인 제 1 실시예를 그래픽으로 나타낸다. 예시적인 목적으로, 도 2a의 플롯은 모듈 산수가 아니고 실수를 이용하여 얻어진다.FIG. 2A is a graphical representation of a first exemplary embodiment of the present invention showing an exemplary share (x 0 , y 0 ) and (x 1 , y 1 ) and thereby a straight line formed to intersect the Y axis at a particular point (key in) Represented by For illustrative purposes, the plot of FIG. 2A is obtained using real numbers rather than modular arithmetic.

예시적인 제 1 실시예를 참조하여 전술한 방법과 같은 접근 방법은 1개보다 많은 메시지 소스(40)가 수신기(50)에 저장되는 저장된 (제 1) 셰어 (x0,y0)를 공유하게 한다. 각각의 메시지 소스(40)는 그 후 그 자체 '활성화' (제 2) 셰어{즉,(x1,y1)}를 선택하는 것이 자유로와져서, 광범위한 비밀을 한정한다. 동일한 y-인터셉트(즉, 동일한 키)를 이용하여 다항식을 구성할 확률은 낮다. 그러나, 가능한 제 2 ('활성화') 셰어의 범위는 각각의 서비스 제공자가 고유하고 겹치지 않는 범위를 갖도록 할당될 수 있다(도 2b 참조).An approach such as the method described above with reference to the first exemplary embodiment allows more than one message source 40 to share the stored (first) share (x 0 , y 0 ) stored in the receiver 50. do. Each message source 40 is then free to choose its own 'activation' (second) share (i.e., (x 1 , y 1 )) to define a broad secret. The probability of constructing a polynomial using the same y-intercept (ie, the same key) is low. However, the range of possible second ('active') shares may be allocated such that each service provider has a unique and non-overlapping range (see FIG. 2B).

본 발명의 예시적인 제 1 실시예에 따른 한 예시를 고려하기 위해서, 지점 (x0,y0)=(17,15) 및 (x1,y1)=(5,10)이고, p=23이라고 가정한다. (x0,y0) 및 (x1,y1)을 통과하는 1차 다항식:To consider one example according to the first exemplary embodiment of the present invention, points (x 0 , y 0 ) = (17,15) and (x 1 , y 1 ) = (5,10) and p = Assume 23. First-order polynomial through (x 0 , y 0 ) and (x 1 , y 1 ):

silver

And

을 풀어서 구성될 수 있다.Can be configured by loosening.

해답 (a1,a0)=(10,6)은 다음 다항식을 제공한다:The solution (a 1 , a 0 ) = (10,6) gives the following polynomial:

비밀(S)의 값은 f(0)을 계산함으로써 복구될 수 있다.The value of the secret S can be recovered by calculating f (0).

따라서, 상기 예시에 따르면, 비밀의 값 및 그에 따른 키는 6(mod 23)이 된다. 물론 이 비밀의 값은 (x1,y1)의 각각의 다른 값에 따라 변경될 것이다.Thus, according to the above example, the secret value and thus the key is 6 (mod 23). Of course, the value of this secret will change with each different value of (x 1 , y 1 ).

도 3은 (예시적인 제 1 실시예의 2개 셰어에 상대적으로) 3개 셰어를 이용하는 본 발명의 예시적인 제 2 실시예에 따른 키 복구 구조를 나타낸다. 예시적인 제 2 실시예에서, 제 1, 제 2 및 제 3 셰어{예를 들어, (x0,y0),(x1,y1),(x2,y2)}를 이용하여 2차 다항식(즉, 포물선)을 구성함으로써 키의 복구가 실현된다; 구성된 2차 다항식의 y-인터셉트가 키가 된다.3 shows a key recovery structure according to a second exemplary embodiment of the present invention using three shares (relative to the two shares of the first exemplary embodiment). In the second exemplary embodiment, two using the first, second and third shares {eg, (x 0 , y 0 ), (x 1 , y 1 ), (x 2 , y 2 )} By constructing a differential polynomial (ie parabola), recovery of the key is realized; The y-intercept of the constructed quadratic polynomial is key.

본 발명의 예시적인 제 2 실시예에 따른 한 예시를 고려하기 위해서, 지점 (x0,y0)=(17,15), (x1,y1)=(5,10), 및 (x2,y2)=(12,6)이고 p=23이라고 가정한다. (x0,y0), (x1,y1), 및 (x2,y2)를 통과하는 2차 다항식:To consider one example according to the second exemplary embodiment of the present invention, points (x 0 , y 0 ) = (17,15), (x 1 , y 1 ) = (5,10), and (x Assume 2 , y 2 ) = (12,6) and p = 23. Quadratic polynomials through (x 0 , y 0 ), (x 1 , y 1 ), and (x 2 , y 2 ):

silver

And

를 풀어서 구성될 수 있다.Can be configured by loosening.

해답 (a2,a1,a0)=(10,20,5)은 다음 다항식을 제공한다:The solution (a2, a1, a0) = (10,20,5) gives the following polynomial:

비밀(S)의 값은 f(0)을 계산함으로써 복구될 수 있다:The value of the secret S can be recovered by calculating f (0):

도 3에 도시된 바와 같이, 제 1, 제 2 및 제 3 셰어는 유클리드 평면상의 지점으로 표시될 수 있다. 예시적인 목적으로, 도 4의 플롯은 모듈 산수가 아니고실수를 이용하여 얻어진다.As shown in FIG. 3, the first, second and third shares may be represented by points on the Euclidean plane. For illustrative purposes, the plot of FIG. 4 is obtained using real numbers rather than modular arithmetic.

도 4는 4개 셰어를 이용하는 본 발명의 예시적인 제 3 실시예에 따른 키 복구 구조를 나타낸다. 예시적인 제 3 실시예에서, 제 1, 제 2, 제 3 및 제 4 셰어{예를 들어, (x0,y0),(x1,y1),(x2,y2),(x3,y3)}를 이용하여 3차 다항식(즉, 곡선)를 구성함으로써 키의 복구가 실현된다; 구성된 3차 다항식의 y-인터셉트가 키가 된다.4 illustrates a key recovery structure according to a third exemplary embodiment of the present invention using four shares. In a third exemplary embodiment, the first, second, third and fourth shares {eg, (x 0 , y 0 ), (x 1 , y 1 ), (x 2 , y 2 ), ( x 3 , y 3 )} to construct a cubic polynomial (ie curve) to recover the key; The y-intercept of the constructed cubic polynomial is the key.

본 발명의 예시적인 제 3 실시예에 따른 한 예시를 고려하기 위해서, 지점 (x0,y0)=(17,15), (x1,y1)=(5,10), (x2,y2)=(12,6), (x3,y3)=(3,12)이고, p=23이라고 가정한다. (x0,y0), (x1,y1), (x2,y2), 및 (x3,y3)을 통과하는 3차 다항식:In order to consider one example according to the third exemplary embodiment of the present invention, points (x 0 , y 0 ) = (17,15), (x 1 , y 1 ) = (5,10), (x 2 Assume that y 2 ) = (12,6), (x 3 , y 3 ) = (3,12), and p = 23. Third order polynomial through (x 0 , y 0 ), (x 1 , y 1 ), (x 2 , y 2 ), and (x 3 , y 3 ):

silver

을 풀어서 구성될 수 있다.Can be configured by loosening.

해답 (a3,a2,a1,a0)=(18,19,0,22)은 다음 다항식을 제공한다:The solution (a 3 , a 2 , a 1 , a 0 ) = (18,19,0,22) gives the following polynomial:

비밀(S)의 값은 f(0)를 계산함으로써 복구될 수 있다:The value of the secret S can be recovered by calculating f (0):

도 4에 도시된 바와 같이, 제 1, 제 2, 제 3 및 제 4 셰어는 유클리드 평면상의 지점으로 표시될 수 있다. 예시적인 목적으로, 도 4의 플롯은 모듈 산수가 아니고 실수를 이용하여 얻어진다.As shown in FIG. 4, the first, second, third and fourth shares may be represented by points on the Euclidean plane. For illustrative purposes, the plot of FIG. 4 is obtained using real numbers rather than modular arithmetic.

다수의 셰어는 또한 통신 네트워크에서 편리한 키 운송 구조를 만드는데 사용될 수 있다. 디지털 네트워크에서 중요한 이슈인 코드 인증은 사례 연구로서 사용될 수 있다. 미래에, 오디오/비디오 데이터를 처리하는 복잡한 가정용 엔터테인먼트 디바이스는 디지털 분산 네트워크(예를 들어, 위성, 케이블, 지상, 인터넷)를 통해 다양한 응용을 위한 소프트웨어를 수신할 것이다. 이러한 코드의 소스의 식별은 컨텐트를 전달하는 서비스 제공자 및 컨텐트를 이용하는 디바이스의 제조자 모두를 위한 필수 요구조건이다. 서비스 제공자는 그 응용이 수신되고 권한을 부여받은 디바이스에 의해서만 이용된다는 것을 보증받고자 한다. 디바이스 제조자는 차례로 그 디바이스를 이용하는 권한을 부여받지 않은 서비스를 걱정한다. 주어진 방송 시스템에서 다른 디바이스 그룹은 서로 다른 방식으로 권한을 부여받는다고 가정한다. 후술된 예시는 필요한 키 계층구조를 설정하기 위해 사전에 전개배치된 비밀 공유가 사용될 수 있는 방법을 논의할 것이다.Multiple shares can also be used to create a convenient key transport structure in a communication network. Code authentication, an important issue in digital networks, can be used as a case study. In the future, complex home entertainment devices that process audio / video data will receive software for a variety of applications over digital distributed networks (eg, satellite, cable, terrestrial, Internet). Identification of the source of such code is a necessary requirement for both the service provider delivering the content and the manufacturer of the device using the content. The service provider wants to be assured that the application is only used by the received and authorized device. The device manufacturer in turn is concerned about unauthorized services to use the device. It is assumed that different device groups are authorized in different ways in a given broadcasting system. The example described below will discuss how pre-deployed secret sharing can be used to establish the required key hierarchy.

코드 인증을 위해 3개의 서로 다른 인증 레벨을 갖는 방송시스템을 고려한다:Consider a broadcast system with three different levels of authentication for code authentication:

(1) 레벨 1 수신기 - 방송 '지역(region)'의 모든 수신기는 하나의 공통 셰어(즉, 상기 지역에서 모든 수신기에 대해 공통인 셰어)가 할당된다.(1) Level 1 Receivers-All receivers of a broadcast 'region' are assigned one common share (i.e., a common share for all receivers in that region).

(2) 레벨 2 수신기 - 특정 그룹내 모든 수신기는 추가 공통 셰어(즉, 특정 그룹에서 모든 수신기에 대해 공통인 다른 셰어)가 할당된다.(2) Level 2 Receivers-All receivers in a particular group are assigned an additional common share (ie, another share that is common for all receivers in a particular group).

(3) 레벨 3 수신기 - 각각의 수신기는 고유한 추가 셰어가 할당된다.(3) Level 3 Receivers-Each receiver is assigned a unique additional share.

전술한 수신기는 특정 메시지를 인증하기 위해 '활성화' 셰어와 관련하여 사용될 수 있다. 레벨 1 수신기가 단 하나의 셰어를 포함하는 반면, 레벨 2 수신기는 2개 셰어를 포함하고, 레벨 3 수신기는 3개 셰어를 포함하기 때문에, 각각의 수신기는 서로 다른 키 세트를 제공할 것이다. 따라서, 방송 지역내 모든 수신기(즉, 레벨 1 수신기)는 일반적인 메시지를 수신하고 인증할 능력을 가질 것이지만, 레벨 2 수신기만이 일부 추가적인 메시지를 수신하고 인증할 능력을 가질 것이며, 레벨 3 수신기만이 특정한 다른 추가적인 메시지를 수신하고 인증할 능력을 가질 것이다. 레벨 1 내지 3 수신기에 위치한 셰어는 비밀(예를 들어, 키)을 계산하기 위해 '활성화' 셰어와 관련하여 사용될 수 있는 '사전에 전개배치된' 정보를 포함한다는 점에 유의해야 한다.The receiver described above can be used in connection with an 'activation' share to authenticate a particular message. Since a level 1 receiver contains only one share, a level 2 receiver contains two shares, and a level 3 receiver contains three shares, each receiver will provide a different set of keys. Thus, all receivers in the broadcast area (ie, level 1 receivers) will have the ability to receive and authenticate general messages, but only level 2 receivers will have the ability to receive and authenticate some additional messages, and only level 3 receivers. It will have the ability to receive and authenticate certain other additional messages. It should be noted that shares located at level 1 to 3 receivers contain 'predeployed' information that can be used in connection with an 'activating' share to compute secrets (eg, keys).

도 5는 유클리드 평면을 이용하여 다중 셰어 구조가 구성되는 방법을 나타낸다. 이해할 수 있는 바와 같이, 3개의 서로 다른 인증 레벨은 3개의 y-인터셉트(즉, "지역 키", "그룹 키", "개별 키")에 해당한다. (레벨 1 또는 '지역' 권한 부여에 대응하는) 1차 다항식은 '활성화 셰어' 및 레벨 1 공통 셰어를 통과하는 직선을 포함한다. (레벨 2 또는 '그룹' 권한 부여에 대응하는) 2차 다항식은 '활성화' 셰어, 레벨 1 공통 셰어, 및 레벨 2 셰어를 통과하는 포물선을 포함한다. (레벨 3또는 '개별' 인증에 대응하는) 3차 다항식은 '활성화 셰어', 레벨 1 공통 셰어, 레벨 2 셰어, 및 레벨 3 셰어를 통과하는 곡선을 포함한다. 상기 예시에서, '활성화' 셰어가 각각의 서로 다른 키(즉, 개별, 그룹 및 지역)를 계산하는데 사용된다는 점에 유의한다. 예시적인 목적으로, 도 5의 플롯은 모듈 산수가 아니고 실수를 이용하여 얻어진다.5 illustrates how multiple share structures are constructed using the Euclidean plane. As can be appreciated, three different authentication levels correspond to three y-intercepts (ie, "local key", "group key", "individual key"). The first order polynomial (corresponding to level 1 or 'local' authorization) includes a straight line passing through the 'activating share' and the level 1 common share. Quadratic polynomials (corresponding to level 2 or 'group' authorization) include parabolic passes through the 'active' share, the level 1 common share, and the level 2 share. Tertiary polynomials (corresponding to level 3 or 'individual' authentication) include curves passing through an 'activation share', a level 1 common share, a level 2 share, and a level 3 share. Note that in the above example, the 'activation' share is used to calculate each different key (ie, individual, group, and region). For illustrative purposes, the plot of FIG. 5 is obtained using real numbers rather than modular arithmetic.

상기 예시를 이용하면, 아래의 표는 셰어와 다른 권한 부여 레벨 사이의 관계를 설명한다.Using the above example, the table below illustrates the relationship between share and different levels of authorization.

지점Point 1차레벨 11st level 1 2차레벨 22nd level 2 3차레벨 33rd level 3 활성화 셰어=(5,10)Activation Share = (5,10) Yes Yes Yes 레벨 1 공통 셰어=(17,15)Level 1 Common Share = (17,15) Yes Yes Yes 레벨 2 셰어=(12,6)Level 2 Share = (12,6) Yes Yes 레벨 3 셰어=(3,12)Level 3 Share = (3,12) Yes

전술한 방법 및 장치가 사용자 사이에서 인증 메시지를 전달하기 위한 메시지 인증 시스템의 환경에서 설명되었지만, 본 발명의 원리는 또한 멀티미디어 컨텐트에 대한 조건부 액세스를 제공하는 방법 및 장치에 적용될 수 있다.Although the foregoing method and apparatus have been described in the context of a message authentication system for transferring authentication messages between users, the principles of the present invention may also be applied to methods and apparatus for providing conditional access to multimedia content.

전술한 방법 및 장치의 이점 중 일부는 다음을 포함한다:Some of the advantages of the methods and apparatus described above include:

(a) 키 복구에서 수신기에 대한 계산적인 요구조건의 감소(즉, 각각의 키에대해, 간단한 연산만이 수행된다). 이것은 모듈러 누승법과 관련된 RSA 암호해독법과 대조적이다.(a) Reduction of the computational requirements for the receiver in key recovery (ie, for each key only simple operations are performed). This is in contrast to the RSA decryption method, which is related to the modular power of law.

(b) 보안이 '완벽'하다. 다시 말해서, 활성화 셰어가 주어지면, 모든 비밀 값은 동일하게 가능성이 있는 것으로 유지된다. 더 높은 차수의 다항식에서, 활성화 셰어가 주어진 비밀을 결정하는 업무는 훨씬 더 어려워진다.(b) Security is 'perfect'. In other words, given an activation share, all secret values remain equally likely. In higher order polynomials, the task of determining the secret given by the activation share becomes even more difficult.

(c) 송신기와 수신기 사이에서 공유된 '사전에 전개배치된' 정보의 주어진 세트에서, 다른 키는 (즉, '활성화' 셰어를 변경함으로써) 용이하게 전달되고 빈번하게 사용될 수 있다.(c) In a given set of 'predeployed' information shared between a transmitter and a receiver, another key can be easily delivered and used frequently (ie, by changing the 'activation' share).

(d) 다른 권한 부여 레벨은 각각의 수신기에 다른 셰어를 할당함으로써 한정될 수 있다.(d) Different authorization levels can be defined by assigning different shares to each receiver.

(e) 보안은 증명되지 않은 수학적 가정에 의존하지 않는다(즉, RSA의 보안은 정수 인수분해 문제의 어려움을 기반으로 한다).(e) Security does not rely on unproven mathematical assumptions (ie, RSA's security is based on the difficulty of integer factorization problems).

전술한 구조는 대칭키 및 공개키 시스템의 이점을 효과적으로 결합한다. '사전에 전개배치된' 정보는 수신기의 개인키인 것으로 간주될 수 있다. 구성될 대칭키는 ECM의 일부로서 송신된 공개 정보에 의해 결정된다. 상기 키가 메시지 소스에서 생성되지 않기 때문에, 분산시 키를 보호하기 위해 추가적인 암호가 필요하지 않다.The above structure effectively combines the advantages of symmetric and public key systems. 'Predeployed' information can be considered to be the receiver's private key. The symmetric key to be constructed is determined by the public information sent as part of the ECM. Since the key is not generated at the message source, no additional cryptography is needed to protect the key during distribution.

전술한 구조의 유효성은 다음을 포함한 다양한 방식으로 증가될 수 있다:The effectiveness of the foregoing structures can be increased in a variety of ways, including:

(1) 공유된 비밀의 함수로서 키를 한정: 통상적으로, 비밀의 값에서 미리 정의된 함수를 평가함으로써 키가 생성될 수 있다. 예를 들어, 만일 공유된 비밀{예를 들어, 함수 f(x)의 Y-인터셉트}이 실수 7이라면, 키는로 정의될 수 있다. 이러한 방식으로, 심지어 누군가 비밀을 복구했더라도, 반드시 키를 계산할 능력을 가지는 것은 아니다. 대안적으로, 일단 다항식의 계수가 얻어지면 임의의 다른 정의가 사용될 수 있다. 실용적인 목적으로, 상기 함수가 엔트로피 보유 특성을 가질 필요가 있을 수 있다{즉, 엔트로피(비밀)=엔트로피[f(비밀)]}.(1) Defining a Key as a Function of a Shared Secret: Typically, a key can be generated by evaluating a predefined function at the value of the secret. For example, if the shared secret (eg Y-intercept of function f (x)) is real 7, then the key is It can be defined as. In this way, even if someone has recovered the secret, it does not necessarily have the ability to calculate the key. Alternatively, any other definition may be used once the coefficients of the polynomial are obtained. For practical purposes, it may be necessary for the function to have entropy retention properties (ie entropy (secret) = entropy [f (secret)]).

(2) 다항식 함수의 차수(및 그에 따른 비밀을 복구하기 위해 필요한 셰어의 갯수)를 시간-종속적인 비밀 시스템 파라미터로 만들기: 예를 들어 비밀을 정의하는 다항식 f(x)의 차수는 하루 단위, 시간 단위 등으로 변경되게 된다. 암호작성법은 다항식의 차수를 먼저 결정해야 하기 때문에 상대방에 대한 추가적인 요구 업무가 된다.(2) Making the order of the polynomial function (and thus the number of shares needed to recover the secret) into a time-dependent secret system parameter: for example, the order of the polynomial f (x) defining the secret is in units of one day, The unit of time is changed. Cryptography is an additional demanding task for the counterpart because it must first determine the order of the polynomial.

(3) 전송전에 활성화 셰어를 마스킹(masking): 이때 메시지와 함께 전송된 활성화 셰어는 미리 정의된 처리에서 수신기에 의해 마스킹되지 않을 수 있다. 마스킹의 한 예시는 인증을 위해 활성화 셰어의 해시값을 이용하지만 대신 활성화 셰어를 전송하는 것이다. 이때, 수신기는 실제 값을 결정하기 위해 해싱을 수행한다.(3) Masking the activation share before transmission: The activation share transmitted with the message may not be masked by the receiver in the predefined processing. One example of masking is to use the hash of the activation share for authentication, but instead send the activation share. At this time, the receiver performs hashing to determine the actual value.

(4) 여분의 활성화 셰어를 추가: 실제 활성화 셰어와 함께 전송된 추가 활성화 셰어는 미리 정의된 처리에서 수신기에 의해 필터링된다.(4) Add an extra activation share: The additional activation share sent with the actual activation share is filtered by the receiver in a predefined process.

전술한 개선의 임의의 조합은 전송시 활성화 셰어의 실제값을 숨기고 메시지를 위한 추가 보안 레벨을 도입하는 기능을 할 것이다.Any combination of the above improvements will serve to hide the actual value of the activation share in transmission and introduce an additional level of security for the message.

상기 논의가 주로 메시지 인증자로서 MAC을 사용하는 것에 중점을 두고 있지만, 당업자는 본 발명의 범주에서 벗어나지 않고서 다른 메시지 인증 방법이 사용될 수 있다는 것을 인식할 것이다(예를 들어, 메시지 암호화; 본 출원서 및 상세한 설명의 도 8 참조).While the above discussion focuses primarily on using MAC as the message authenticator, those skilled in the art will recognize that other message authentication methods may be used without departing from the scope of the present invention (eg, message encryption; the present application and See FIG. 8 of the detailed description).

본 발명이 비밀을 형성하는데 1차, 2차 및 3차 다항식을 사용할 수 있는 비밀 공유 구조의 측면에서 기술되었지만, 당업자는 임의의 차수의 다항식(예를 들어4차, 5차 등)이 사용될 수 있다는 것을 이해할 것이다. 사실상, 더 높은 차수의 다항식 함수는 추정되어야 하는 셰어의 수가 증가하기 때문에 더 낮은 차수의 다항식 함수에서 추가적인 보안을 제공한다는 점에서 바람직할 것이다. 또한, 상기 설명이 단일 스마트 카드(예를 들어 스마트 카드)를 갖는 시스템에 초점을 맞추고 있지만, 당업자는 각각의 스마트 카드가 그 안에 저장된 하나 이상의 셰어값을 갖는 다수의 스마트 카드가 사용될 수 있다는 것을 이해할 것이다.Although the present invention has been described in terms of secret sharing structures that may use primary, secondary and tertiary polynomials to form a secret, one of ordinary skill in the art can use any order of polynomials (e.g., quaternary, fifth order, etc.). I will understand. In fact, higher order polynomial functions would be desirable in that they provide additional security in lower order polynomial functions because the number of shares to be estimated increases. Further, while the above description focuses on systems having a single smart card (eg smart card), those skilled in the art will understand that multiple smart cards can be used, with each smart card having one or more share values stored therein. will be.

전술한 바와 같이, 본 발명은 높은 수준의 보안을 제공하지만 고정된 키를 이용하지 않는 메시지 인증을 제공하는 시스템 및 방법에서 이용가능하다.As noted above, the present invention is available in systems and methods that provide a high level of security but provide message authentication without using a fixed key.

Claims (20)

메시지를 인증하는 방법으로서,As a method of authenticating a message, 제 1 셰어(share)를 나타내는 데이터를 디바이스에서 수신하는 단계;Receiving at the device data indicative of a first share; 상기 제 1 셰어, 및 상기 디바이스에 저장되는 적어도 2개의 추가 셰어를 이용하여 키를 구성하는 단계; 및Constructing a key using the first share and at least two additional shares stored in the device; And 상기 구성된 키를 이용하여 메시지를 인증하는 단계를 포함하는, 메시지 인증 방법.Authenticating a message using the configured key. 제 1항에 있어서, 상기 제 1, 제 2 및 제 3 셰어는 유클리드 평면(Euclidean plane)상의 지점인, 메시지 인증 방법.The method of claim 1, wherein the first, second, and third shares are points on an Euclidean plane. 제 1항에 있어서, 상기 메시지 인증 단계는 메시지 인증 코드(MAC)를 이용하여 메시지를 인증하는 단계를 포함하는, 메시지 인증 방법.2. The method of claim 1, wherein said message authenticating step comprises authenticating a message using a message authentication code (MAC). 제 1항에 있어서, 상기 메시지 인증 단계는 암호 해독키를 이용하여 메시지를 인증하는 단계를 포함하는, 메시지 인증 방법.2. The method of claim 1, wherein said message authentication step comprises authenticating a message using a decryption key. 메시지의 인증을 제공하는 방법으로서,A method of providing authentication of a message, 메시지 인증자(message authenticator) 및 상기 메시지를 디바이스에서 수신하는 단계;Receiving a message authenticator and the message at a device; 제 1 셰어를 나타내는 데이터를 상기 디바이스에서 수신하는 단계;Receiving at the device data indicative of a first share; 상기 제 1 셰어, 및 상기 디바이스에 저장되는 제 2 및 제 3 셰어를 이용하여 키를 구성하는 단계; 및Constructing a key using the first share and second and third shares stored in the device; And 상기 구성된 키 및 상기 메시지 인증자를 이용하여 상기 메시지를 인증하는 단계를 포함하고,Authenticating the message using the configured key and the message authenticator, 상기 키를 구성하는 단계는 상기 제 1, 제 2 및 제 3 셰어에 의해 상기 유클리드 평면상에 형성된 곡선의 Y-인터셉트(intercept)를 계산하는 단계를 포함하는, 메시지의 인증을 제공하는 방법.Constructing the key comprises calculating a Y-intercept of a curve formed on the Euclidean plane by the first, second, and third shares. 제 5항에 있어서, 상기 메시지 인증자는 메시지 인증 코드를 포함하는, 메시지의 인증을 제공하는 방법.6. The method of claim 5, wherein said message authenticator comprises a message authentication code. 제 1 디바이스에서 제 2 디바이스로 송신된 메시지를 인증하는 시스템으로서, 상기 제 2 디바이스는:A system for authenticating a message sent from a first device to a second device, the second device comprising: 메시지 및 메시지 인증자를 수신하는 단계;Receiving a message and a message authenticator; 제 1 셰어를 나타내는 데이터를 수신하는 단계;Receiving data representing the first share; 상기 제 1 셰어, 및 상기 제 2 디바이스에 저장되는 제 2 및 제 3 셰어를 이용하여 키를 구성하는 단계; 및Constructing a key using the first share and second and third shares stored in the second device; And 상기 구성된 키 및 상기 메시지 인증자를 이용하여 상기 메시지를 인증하는단계를 수행하고,Authenticating the message using the configured key and the message authenticator, 상기 키를 구성하는 단계는 상기 제 1, 제 2 및 제 3 셰어에 의해 상기 유클리드 평면상에 형성된 곡선의 Y-인터셉트를 계산하는 단계를 포함하는, 메시지 인증 시스템.Constructing the key comprises calculating a Y-intercept of a curve formed on the Euclidean plane by the first, second and third shares. 메시지 인증 시스템으로서,As a message authentication system, 적어도 하나의 메시지 소스; 및At least one message source; And 메시지, 메시지 인증자 및 상기 적어도 하나의 메시지 소스에 의해 전송된 제 1 셰어를 수신하기 위한 적어도 하나의 메시지 수신기를 포함하는 메시지 인증 시스템으로서,A message authentication system comprising at least one message receiver for receiving a message, a message authenticator and a first share sent by the at least one message source, 상기 적어도 하나의 메시지 수신기는 메시지를 인증하기 위해 그 안에 저장된 제 2 및 제 3 셰어를 포함하고, 상기 제 2 및 제 3 셰어는 상기 메시지를 인증하기 위해 상기 제 1 셰어와 관련하여 사용되는, 메시지 인증 시스템.Wherein the at least one message receiver comprises second and third shares stored therein for authenticating the message, wherein the second and third shares are used in connection with the first share to authenticate the message. Authentication system. 제 1항에 있어서, 상기 제 1 셰어 및 상기 적어도 2개의 추가 셰어는 적어도 2차 다항식 함수상의 지점인, 메시지 인증 방법.The method of claim 1, wherein the first share and the at least two additional shares are points on at least a second order polynomial function. 제 1항에 있어서, 상기 적어도 2개의 추가 셰어는 적어도 3개의 추가 셰어를 포함하여, 상기 제 1 셰어 및 상기 적어도 3개dml 추가 셰어가 적어도 3차 다항식 함수상의 지점이 되는, 메시지 인증 방법.The method of claim 1, wherein the at least two additional shares comprise at least three additional shares such that the first share and the at least three dml additional shares are points on at least a third order polynomial function. 제 1항에 있어서, 상기 키는 상기 제 1 및 상기 적어도 2개의 추가 셰어로부터 계산된 비밀값을 포함하는, 메시지 인증 방법.The method of claim 1, wherein the key comprises a secret value calculated from the first and the at least two additional shares. 제 1항에 있어서, 상기 키는 상기 제 1 및 상기 적어도 2개의 추가 셰어로부터 계산된 비밀값의 함수를 포함하는, 메시지 인증 방법.The method of claim 1, wherein the key comprises a function of a secret value calculated from the first and the at least two additional shares. 제 1항에 있어서, 상기 제 1 셰어 및 상기 적어도 2개의 추가 셰어는 다항식 함수상의 지점을 포함하는, 메시지 인증 방법.The method of claim 1, wherein the first share and the at least two additional shares comprise points on a polynomial function. 제 13항에 있어서, 상기 다항식 함수의 차수는 주기적으로 변경되는, 메시지 인증 방법.The method of claim 13, wherein the order of the polynomial function is changed periodically. 제 1항에 있어서, 상기 디바이스에서 상기 제 1 셰어를 수신하기전에 상기 제 1 셰어를 마스킹하는 단계를 더 포함하는, 메시지 인증 방법.2. The method of claim 1, further comprising masking the first share before receiving the first share at the device. 제 15항에 있어서, 상기 제 1 셰어의 마스킹된 버전으로부터 상기 제 1 셰어를 계산하는 단계를 더 포함하는, 메시지 인증 방법.16. The method of claim 15, further comprising calculating the first share from a masked version of the first share. 제 1항에 있어서, 제 1 셰어 및 적어도 하나의 여분의 셰어를 전송하는 단계를 더 포함하는, 메시지 인증 방법.10. The method of claim 1, further comprising transmitting a first share and at least one redundant share. 제 17항에 있어서, 상기 제 1 셰어를 수신한 후에 상기 적어도 하나의 여분의 셰어를 필터링하는 단계를 더 포함하는, 메시지 인증 방법.18. The method of claim 17, further comprising filtering the at least one redundant share after receiving the first share. 메시지 인증 시스템을 작동하는 방법으로서,A method of operating a message authentication system, 전송기 스테이션에서 수신기 스테이션으로 메시지, 메시지 인증자, 및 제 1 셰어를 전송하는 단계;Sending a message, a message authenticator, and a first share from a transmitter station to a receiver station; 상기 메시지, 상기 메시지 인증자, 및 상기 제 1 셰어를 상기 수신기 스테이션에서 수신하는 단계;Receiving the message, the message authenticator, and the first share at the receiver station; 상기 제 1 셰어, 및 상기 수신기 스테이션에 저장되는 적어도 2개의 추가 셰어를 이용하여 키를 구성하는 단계; 및Constructing a key using the first share and at least two additional shares stored at the receiver station; And 상기 구성된 키 및 상기 메시지 인증자를 이용하여 상기 메시지를 인증하는 단계를 포함하는, 메시지 인증 시스템의 작동 방법.Authenticating the message using the configured key and the message authenticator. 전송기; 및telautograph; And 상기 전송기에 의해 전송된 메시지, 메시지 인증자 및 제 1 셰어를 수신하는 수신기를 포함하는 메시지 인증 시스템으로서,A message authentication system comprising a message sent by the transmitter, a message authenticator and a receiver receiving a first share, 상기 수신기는 상기 메시지를 인증하기 위해 그 안에 저장된 제 2 및 제 3 셰어를 포함하고, 상기 제 2 및 제 3 셰어는 상기 메시지를 인증하기 위해 상기 제1 셰어와 관련하여 사용되는, 메시지 인증 시스템.The receiver includes second and third shares stored therein for authenticating the message, wherein the second and third shares are used in connection with the first share to authenticate the message.
KR10-2003-7006413A 2000-11-29 2001-09-24 Threshold cryptography scheme for message authentication systems Ceased KR20030094217A (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US25378100P 2000-11-29 2000-11-29
US60/253,781 2000-11-29
PCT/US2001/029842 WO2002045340A2 (en) 2000-11-29 2001-09-24 Threshold cryptography scheme for message authentication systems

Publications (1)

Publication Number Publication Date
KR20030094217A true KR20030094217A (en) 2003-12-11

Family

ID=22961673

Family Applications (2)

Application Number Title Priority Date Filing Date
KR10-2003-7006413A Ceased KR20030094217A (en) 2000-11-29 2001-09-24 Threshold cryptography scheme for message authentication systems
KR10-2003-7006964A Ceased KR20040010565A (en) 2000-11-29 2001-09-24 Threshold cryptography scheme for conditional access systems

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR10-2003-7006964A Ceased KR20040010565A (en) 2000-11-29 2001-09-24 Threshold cryptography scheme for conditional access systems

Country Status (8)

Country Link
EP (2) EP1366594A2 (en)
JP (2) JP2004515160A (en)
KR (2) KR20030094217A (en)
CN (2) CN1484901A (en)
AU (2) AU2002212977A1 (en)
BR (2) BR0115575A (en)
MX (2) MXPA03004599A (en)
WO (2) WO2002045337A2 (en)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7594275B2 (en) * 2003-10-14 2009-09-22 Microsoft Corporation Digital rights management system
US7620187B1 (en) 2005-03-30 2009-11-17 Rockwell Collins, Inc. Method and apparatus for ad hoc cryptographic key transfer
RU2420895C2 (en) * 2005-06-08 2011-06-10 Конинклейке Филипс Электроникс Н.В. Deterministic key pre-distribution and operational key management for mobile body sensor networks
JP4776378B2 (en) * 2006-01-11 2011-09-21 日本電信電話株式会社 MULTI-KEY AUTHENTICATION TERMINAL DEVICE, MULTI-KEY AUTHENTICATION MANAGEMENT DEVICE, MULTI-KEY AUTHENTICATION SYSTEM, AND PROGRAM
JP4916915B2 (en) * 2007-02-28 2012-04-18 Kddi株式会社 Terminal device, data management device, and computer program
JP4909796B2 (en) * 2007-04-24 2012-04-04 Kddi株式会社 Secret information management system, secret information management method and program
GB2451505A (en) 2007-08-01 2009-02-04 Iti Scotland Ltd Key distribution in a network using key shares in a secret sharing scheme
US7958354B1 (en) 2008-02-14 2011-06-07 Rockwell Collins, Inc. High-order knowledge sharing system to distribute secret data
JP2008167505A (en) * 2008-03-26 2008-07-17 Dainippon Printing Co Ltd Public key encryption processing system and method
JP5608509B2 (en) * 2010-10-21 2014-10-15 Kddi株式会社 Key management system, key management method, and computer program
WO2017130200A1 (en) * 2016-01-27 2017-08-03 Secret Double Octopus Ltd System and method for securing a communication channel
US11170094B2 (en) 2016-01-27 2021-11-09 Secret Double Octopus Ltd. System and method for securing a communication channel

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7610614B1 (en) * 1999-02-17 2009-10-27 Certco, Inc. Cryptographic control and maintenance of organizational structure and functions

Also Published As

Publication number Publication date
CN1484901A (en) 2004-03-24
WO2002045340A2 (en) 2002-06-06
MXPA03004822A (en) 2003-09-25
WO2002045337A3 (en) 2002-09-06
AU2002212977A1 (en) 2002-06-11
WO2002045340A3 (en) 2002-10-17
EP1366594A2 (en) 2003-12-03
WO2002045337A2 (en) 2002-06-06
CN1483259A (en) 2004-03-17
JP2004515160A (en) 2004-05-20
JP2004515159A (en) 2004-05-20
EP1348276A2 (en) 2003-10-01
KR20040010565A (en) 2004-01-31
MXPA03004599A (en) 2003-09-04
BR0115575A (en) 2003-07-29
BR0115573A (en) 2003-07-29
AU2001296294A1 (en) 2002-06-11

Similar Documents

Publication Publication Date Title
US7200752B2 (en) Threshold cryptography scheme for message authentication systems
US6154541A (en) Method and apparatus for a robust high-speed cryptosystem
US20060177067A1 (en) Hybrid broadcast encryption method
US7783045B2 (en) Secure approach to send data from one system to another
Biryukov Chosen plaintext and chosen ciphertext attack
Wang et al. Improved one-to-many authentication scheme for access control in pay-TV systems
Biryukov Chosen plaintext attack
US20140082361A1 (en) Data encryption
Harn et al. Digital signature with a subliminal channel
KR20030094217A (en) Threshold cryptography scheme for message authentication systems
van Tilborg Chinese remainder theorem
Bauer Cryptology
Biryukov Ciphertext-only attack
Crépeau Cut-and-choose protocol
Bauer Cryptosystem
Burmester et al. Strong forward security
Knudsen CLEFIA
AlDerai et al. A Study of Image Encryption/Decryption by Using Elliptic Curve Cryptography ‘ECC,’
Vauclair Contactless Cards
Kävrestad et al. Context-Based Micro-training
US7035403B2 (en) Encryption method and apparatus with escrow guarantees
Eskicioglu A prepositioned secret sharing scheme for message authentication in broadcast networks
JP3862397B2 (en) Information communication system
Videau Cube Attack
Conti et al. Cyber Forensics for Cyber-Physical Systems

Legal Events

Date Code Title Description
PA0105 International application

Patent event date: 20030512

Patent event code: PA01051R01D

Comment text: International Patent Application

PG1501 Laying open of application
A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20060906

Comment text: Request for Examination of Application

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20070813

Patent event code: PE09021S01D

E601 Decision to refuse application
PE0601 Decision on rejection of patent

Patent event date: 20071023

Comment text: Decision to Refuse Application

Patent event code: PE06012S01D

Patent event date: 20070813

Comment text: Notification of reason for refusal

Patent event code: PE06011S01I