KR101327051B1 - Method for exchanging group key using trust server in communication network - Google Patents

Method for exchanging group key using trust server in communication network Download PDF

Info

Publication number
KR101327051B1
KR101327051B1 KR1020120012949A KR20120012949A KR101327051B1 KR 101327051 B1 KR101327051 B1 KR 101327051B1 KR 1020120012949 A KR1020120012949 A KR 1020120012949A KR 20120012949 A KR20120012949 A KR 20120012949A KR 101327051 B1 KR101327051 B1 KR 101327051B1
Authority
KR
South Korea
Prior art keywords
group
communication
update
server
information
Prior art date
Application number
KR1020120012949A
Other languages
Korean (ko)
Other versions
KR20130091566A (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 KR1020120012949A priority Critical patent/KR101327051B1/en
Publication of KR20130091566A publication Critical patent/KR20130091566A/en
Application granted granted Critical
Publication of KR101327051B1 publication Critical patent/KR101327051B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms

Abstract

본 발명은 무선 통신 네트워크에서 서버를 통해 디바이스의 공유 키를 교환하는 방법에 관한 것으로, 보다 구체적으로 다수의 디바이스 중 그룹 통신을 요청하는 요청 디바이스로부터 그룹 통신 요청 메시지를 수신하는 경우 서버를 통해 그룹 통신 디바이스와 요청 디바이스 사이에 시드키를 송수신하여 요청 디바이스와 그룹 통신 디바이스 사이의 공유키를 교환하며, 공유키를 주기적으로 갱신하여 허가받지 않은 제3자가 공유키를 해킹하는 것을 방지하며 통신 그룹에서 탈퇴하는 디바이스가 존재하는 경우 통신 그룹을 구성하는 디바이스 사이에서 시드키를 서버로 송수신하여 통신 그룹을 구성하는 디바이스 사이의 공유키를 갱신하여 통신 그룹을 구성하는 디바이스 사이에서 공유키를 교환하는 방법에 관한 것이다.The present invention relates to a method for exchanging a shared key of a device through a server in a wireless communication network, and more particularly, when receiving a group communication request message from a requesting device requesting group communication among a plurality of devices, communicating with the group. Send and receive a seed key between the device and the requesting device to exchange a shared key between the requesting device and the group communication device, and periodically update the shared key to prevent unauthorized third parties from hacking the shared key and withdraw from the communication group. When there is a device for communication, a method for exchanging a shared key between devices configuring a communication group by transmitting and receiving a seed key between the devices configuring the communication group to the server and updating the shared key between the devices configuring the communication group. will be.

Description

통신 네트워크에서 신뢰성 있는 서버를 이용한 통신 그룹의 공유 키 교환 방법{Method for exchanging group key using trust server in communication network}Method for exchanging group key using trust server in communication network

본 발명은 무선 통신 네트워크에서 서버를 통해 디바이스의 공유 키를 교환하는 방법에 관한 것으로, 보다 구체적으로 다수의 디바이스 중 그룹 통신을 요청하는 제1 디바이스로부터 그룹 통신 요청 메시지를 수신하는 경우 서버를 통해 그룹 통신 디바이스와 제1 디바이스 사이에 시드키를 송수신하여 제1 디바이스와 그룹 통신 디바이스 사이의 공유키를 교환하며, 공유키를 주기적으로 갱신하여 허가받지 않은 제3자가 공유키를 해킹하는 것을 방지하며 통신 그룹에서 탈퇴하는 디바이스가 존재하는 경우 통신 그룹을 구성하는 디바이스 사이에서 시드키를 서버로 송수신하여 통신 그룹을 구성하는 디바이스 사이의 공유키를 갱신하여 통신 그룹을 구성하는 디바이스 사이에서 공유키를 교환하는 방법에 관한 것이다.The present invention relates to a method for exchanging a shared key of a device through a server in a wireless communication network, and more particularly, when receiving a group communication request message from a first device requesting group communication among a plurality of devices, the group through a server. Send and receive a seed key between the communication device and the first device to exchange the shared key between the first device and the group communication device, and periodically update the shared key to prevent unauthorized third parties from hacking the shared key. If there is a device leaving the group, the seed key is exchanged between the devices configuring the communication group to the server, and the shared key is exchanged between the devices configuring the communication group by updating the shared key between the devices configuring the communication group. It is about a method.

이동 디바이스는 유선/무선 복합 환경에서 통신이 이루어지는데, 서버와 이동 디바이스 사이의 보안 통신이 최근 중요한 이슈로 떠오르고 있다. 신뢰성 있는 서버를 이용하는 3자 인증 키 교환 프로토콜(3-Party Authentication Key Exchange, 이하 3PAKE 프로토콜로 언급)은 서버에 미리 저장된 이동 디바이스의 암호키를 이용하여 서버에 등록된 다른 이동 디바이스와의 보안 통신을 가능하게 해주는 프로토콜이다. 이러한 3PAKE 프로토콜은 스마트 카드, 휴대폰 인증 및 통신, 센서 네트워크 등 다양한 분야에서 보안 통신을 위해 널리 사용하고 있다. Mobile devices communicate in a wired / wireless complex environment, and secure communication between a server and a mobile device has recently emerged as an important issue. The 3-Party Authentication Key Exchange protocol (hereinafter referred to as 3PAKE protocol), which uses a trusted server, provides secure communication with other mobile devices registered to the server using the encryption key of the mobile device pre-stored in the server. This is the protocol that makes it possible. The 3PAKE protocol is widely used for secure communication in various fields such as smart card, mobile phone authentication and communication, and sensor network.

현재 이동 디바이스 사이의 일대일 통신뿐만 아니라 일대다 통신, 즉 그룹 통신도 중요한 이슈로 다루어지고 있다. 신뢰성 있는 서버를 이용하여 사용자의 패스워드를 이용한 3PAKE와 같은 키 교환 프로토콜은 이동 디바이스 사이의 일대일 통신을 넘어 일대다 통신에서 이동 디바이스에게 쉽고 안전하게 키 교환을 해 줄 수 있는 장점이 있다. Currently, one-to-many communication, that is, group communication, as well as one-to-one communication between mobile devices is being addressed as an important issue. A key exchange protocol such as 3PAKE using a user's password using a reliable server has the advantage of easily and securely exchanging keys to mobile devices in one-to-many communication beyond one-to-one communication between mobile devices.

종래 이동 디바이스 사이의 일대다 보안 통신을 위해 사용되는 키 교환 프로토콜로 왕 밍후이(Wang Minghui), 판 준후아즈(Pan Junhuaz), 왕 지안동(Wang Jiandong)이 제안한 경량화된 S-3PAKE(이하 '종래기술'이라 언급)가 있다. 종래기술은 서버와 디바이스에서 각각 서버와 다른 모든 디바이스의 패스워드 및 식별자 등의 서버 및 디바이스 정보를 보유하고 있으며, 보유하고 있는 서버 및 디바이스 정보를 이용하여 그룹 통신을 수행하고자 하는 디바이스 사이에서 공유 키를 교환한다.The lightweight S-3PAKE proposed by Wang Minghui, Pan Junhuaz, and Wang Jiandong as a key exchange protocol used for one-to-many secure communication between mobile devices. Prior art '. The prior art holds server and device information such as passwords and identifiers of the server and all other devices in the server and the device, respectively, and uses a server and device information to share a shared key between the devices to perform group communication. Replace it.

그러나 종래기술은 서버와 모든 디바이스가 각각 서버와 다른 모든 디바이스의 정보를 공유하고 있어 디바이스에 저장 부하가 발생하며 서버와 다른 모든 디바이스의 정보를 공유하기 위한 통신 부하를 주게 된다. 또한 통신 네트워크를 구성하는 디바이스 중 1개라도 허가받지 못한 제3자에게 노출되는 경우 통신 네트워크 전체의 보안이 붕괴될 수 있다는 문제점을 가진다. 또한 종래기술은 서버와 모든 디바이스에 각각 서버와 다른 모든 디바이스의 정보를 저장한다는 전제에 동작하는 것이므로, 네트워크를 유연하게 구성하지 못하며 따라서 통신 네트워크에서 추가되거나 탈퇴하는 디바이스가 존재하는 경우 실시간으로 통신 네트워크 및 통신 네트워크를 구성하는 디바이스의 공유 키를 갱신하지 못한다는 문제점을 가진다.However, in the related art, a server and all devices share information of a server and all other devices, respectively, and a storage load is generated on the device, and a communication load is applied to share information of the server and all other devices. In addition, even if one of the devices constituting the communication network is exposed to unauthorized third parties, there is a problem that the security of the entire communication network may be broken. In addition, since the prior art operates on the premise that the server and all the devices store the information of the server and all the other devices, the network cannot be flexibly configured, and thus, when there is a device added or withdrawn from the communication network, the communication network is executed in real time. And failing to update the shared key of the devices constituting the communication network.

본 발명은 위에서 언급한 종래기술이 가지는 문제점을 해결하기 위한 것으로, 본 발명이 이루고자 하는 목적은 통신 네트워크에서 신뢰성있는 서버를 통해 통신 그룹을 구성하는 디바이스 사이에 공유 키를 교환하는 방법을 제공하는 것이다.The present invention is to solve the problems of the prior art mentioned above, an object of the present invention is to provide a method for exchanging a shared key between the devices constituting a communication group through a reliable server in a communication network. .

본 발명이 이루고자 하는 다른 목적은 서버에만 통신 네트워크를 구성하는 모든 디바이스의 정보를 저장하며 통신 그룹을 구성하는 경우에만 통신 그룹을 구성하는 디바이스로 통신 그룹의 디바이스 정보를 제공하여, 공유 키 교환을 위해 디바이스의 저장 부하와 통신 부하를 줄일 수 있는 공유 키 교환 방법을 제공하는 것이다. Another object of the present invention is to store the information of all devices constituting the communication network only to the server, and to provide the device information of the communication group to the device constituting the communication group only when configuring the communication group, for the shared key exchange It is to provide a shared key exchange method that can reduce the storage and communication load of the device.

본 발명이 이루고자 하는 또 다른 목적은 통신 네트워크에 가입하고자 하는 디바이스가 존재하는 경우, 서버에 가입 디바이스의 패스워드를 안전하게 송수신하여 통신 네트워크에 가입하며 가입 후 공유 키를 교환하는 방법을 제공하는 것이다.Another object of the present invention is to provide a method for securely transmitting and receiving a password of a subscription device to a server to join a communication network and exchanging a shared key after joining, when a device to join a communication network exists.

본 발명이 이루고자 하는 또 다른 목적은 다수 디바이스 중 통신 그룹을 구성하는 디바이스 사이의 공유 키를 주기적으로 갱신하여 제3자의 공유 키 해킹을 방지할 수 있는 공유 키 교환 방법을 제공하는 것이다.Another object of the present invention is to provide a shared key exchange method capable of periodically updating a shared key among devices constituting a communication group among a plurality of devices to prevent hacking of a shared key by a third party.

본 발명이 이루고자 하는 또 다른 목적은 통신 그룹을 구성하는 디바이스 중 탈퇴 디바이스가 존재하는 경우, 탈퇴 디바이스를 실시간으로 반영하여 탈퇴 디바이스를 제외한 통신 그룹의 공유키를 갱신하며 갱신된 공유 키를 교환하는 방법을 제공하는 것이다. Another object of the present invention is to update the shared key of the communication group except for the withdrawal device and exchange the updated shared key by reflecting the withdrawal device in real time when the withdrawal device is present among the devices constituting the communication group. To provide.

본 발명의 목적을 달성하기 위하여 본 발명의 일 실시예에 따른 공유 키 교환 방법은 다수의 디바이스 중 제1 디바이스에서 생성된 제1 시드값과 제1 디바이스가 통신 요청하는 통신 디바이스의 정보를 수신하는 단계와(이하 a 단계), 서버로부터 통신 디바이스로 서버의 시드값과 서버 정보를 송신하는 단계와(이하 b 단계), 통신 디바이스에서 각각 생성된 시드값과 통신 디바이스의 정보를 서버에서 수신하는 경우 제1 디바이스 및 통신 디바이스의 시드값으로부터 생성한 예비 그룹 시드값 및 통신 디바이스의 예비 통신 그룹 정보를 제1 디바이스와 통신 디바이스에 각각 송신하는 단계와(이하 c 단계), 서버에서 제1 디바이스 또는 통신 디바이스에서 생성한 그룹 시드값, 통신 그룹 정보 및 서버 정보를 구비하는 키 교환 메시지를 수신하는 경우 키 교환 메시지에 기초하여 제1 디바이스와 통신 디바이스 사이에서 교환된 키의 동일성을 판단하고 키 교환 확인 메시지를 제1 디바이스와 통신 디바이스에 각각 송신하는 단계(이하 d 단계)를 포함하며, 제1 디바이스와 통신 디바이스는 키 교환 확인 메시지에 기초하여 제1 디바이스와 통신 디바이스 사이에서 서로 공유하는 공유 키를 생성하는 것을 특징한다.In order to achieve the object of the present invention, the shared key exchange method according to an embodiment of the present invention receives a first seed value generated in the first device of the plurality of devices and information of the communication device that the first device requests communication; Step (hereinafter, step a), transmitting the seed value and server information of the server from the server to the communication device (step b), and receiving the seed value and the information of the communication device generated by the communication device, respectively, from the server. Transmitting the preliminary group seed value generated from the seed values of the first device and the communication device and the preliminary communication group information of the communication device to the first device and the communication device (hereinafter c), and the first device or communication in the server Key exchange message when receiving a key exchange message including group seed, communication group information, and server information generated by the device Determining the identity of the keys exchanged between the first device and the communication device based on the message and transmitting a key exchange confirmation message to the first device and the communication device, respectively (hereinafter d), and communicating with the first device. The device is characterized in generating a shared key shared between the first device and the communication device based on the key exchange confirmation message.

본 발명에 따른 공유 키 교환 방법은 다수의 디바이스 중 제1 디바이스와 서버 사이에서 공유하는 비밀키(XY)로 암호화된 제1 디바이스의 패스워드를 제1 디바이스로부터 수신하여 제1 디바이스의 패스워드를 서버에 등록하는 단계를 더 포함한다. In the shared key exchange method according to the present invention, a password of a first device encrypted with a secret key XY shared between a first device and a server among a plurality of devices is received from the first device, and the password of the first device is transmitted to the server. The method further includes registering.

제1 디바이스의 패스워드를 상기 서버에 등록하는 단계를 보다 구체적으로 살펴보면, 제1 디바이스에서 생성한 제1 행렬(X)과 제1 행렬의 의사역행렬(X')의 곱을 제1 디바이스로부터 수신하는 단계와, 서버에서 생성한 제2 행렬(Y)과 제2 행렬의 의사역행렬(Y')과 제1 행렬(X) 및 제1 행렬의 의사역행렬(X')의 곱으로부터 행렬 조합(XX'Y, XX'YY')를 생성하고 제1 디바이스로 송신하여 제1 디바이스에게 서버의 공유 비밀키(Y)를 제공하는 단계와, 제1 디바이스로부터 수신한 행렬 조합(XYY')으로부터 제1 디바이스의 공유 비밀키(X)를 획득하고 제1 디바이스와 서버의 공유 비밀키(XY)로 제1 디바이스의 시드 생성값(M)을 암호화하여 제1 디바이스로 송신하는 단계와, 공유 비밀키(XY)로 암호화된 제1 디바이스의 패스워드를 제1 디바이스로부터 수신하여 제1 디바이스를 서버에 등록하는 단계를 포함한다.In more detail the step of registering the password of the first device to the server, receiving a product of the first matrix (X) generated by the first device and the pseudo inverse matrix (X ') of the first matrix from the first device And matrix combination (XX'Y) from the product of the second matrix (Y) generated by the server and the pseudoinverse matrix (Y ') of the second matrix, the first matrix (X), and the pseudoinverse matrix (X') of the first matrix. , XX'YY ') and transmits to the first device to provide a shared secret key (Y) of the server to the first device, and from the matrix combination (XYY') received from the first device, Acquiring the shared secret key (X), encrypting the seed generation value (M) of the first device with the shared secret key (XY) of the first device and the server, and transmitting it to the first device; Receiving the password of the first device encrypted with the first device from the first device Registering with the.

여기서 제1 디바이스는 시드 생성값(M)과 시드 생성값(M)의 해쉬값을 구비하는 등록 메시지를 공유 비밀키(XY)로 암호화하여 상기 서버로 송신하며, 서버는 공유 비밀키(XY)로 등록 메시지를 복호화하며 복호화된 시드 생성값과 시드 생성값의 해쉬값을 비교하여 등록 메시지의 무결성을 판단한다.Here, the first device encrypts the registration message including the seed generation value M and the hash value of the seed generation value M with the shared secret key XY and transmits the registration message to the server, and the server sends the shared secret key XY. Decode the registration message to compare the hash value of the decrypted seed generation value and the seed generation value to determine the integrity of the registration message.

제1 디바이스에서 생성된 제1 시드값과 제1 디바이스가 통신 요청하는 통신 디바이스의 정보를 수신하는 (a)단계를 보다 구체적으로 살펴보면, 서버에서 제1 디바이스로부터 그룹통신 요청 메시지를 수신하는 단계와, 서버에서 그룹통신 요청 메시지에 구비되어 있는 제1 디바이스 식별자에 기초하여 제1 디바이스가 서버에 등록된 디바이스인지 검증하는 단계와, 서버에서 검증 결과에 따라 제1 디바이스로 서버에 등록된 디바이스 중 통신 가능한 통신 가능 디바이스 정보를 송신하는 단계와, 제1 디바이스로부터 제1 디바이스에서 생성된 제1 시드값를 구비하는 제1 디바이스의 시드 조합값(A1)과 통신 가능 디바이스 중 제1 디바이스가 통신 요청하는 통신 디바이스 정보를 수신하는 단계를 포함하는 것을 특징으로 한다. Referring to step (a) of receiving a first seed value generated in the first device and information of a communication device requesting communication by the first device in detail, receiving a group communication request message from the first device in a server; Verifying, by the server, whether the first device is a device registered in the server based on the first device identifier included in the group communication request message, and communicating among the devices registered in the server as the first device according to the verification result in the server. Transmitting a communication capable device information; and a seed combination value A 1 of a first device having a first seed value generated at the first device from the first device and a first device that can communicate with the first device. Receiving communication device information.

제1 디바이스의 시드 조합값(A1)은 아래의 수학식(1)에 의해 생성되며,The seed combination value A 1 of the first device is generated by Equation 1 below.

[수학식 1][Equation 1]

Figure 112012010363718-pat00001
Figure 112012010363718-pat00001

여기서

Figure 112012010363718-pat00002
은 제1 디바이스에서 생성한 제1 시드값이며, M1은 서버에서 생성하여 제1 디바이스로 제공된 제1 시드 생성값이며, pw1은 제1 디바이스의 패스워드이다. here
Figure 112012010363718-pat00002
Is a first seed value generated by the first device, M 1 is a first seed generated value generated by the server and provided to the first device, and pw 1 is a password of the first device.

서버로부터 통신 디바이스로 서버의 시드값과 서버 정보를 송신하는 (b) 단계를 보다 구체적으로 살펴보면, 통신 디바이스 정보에 기초하여 서버에 등록된 통신 가능 디바이스 중 제1 디바이스가 통신 요청한 통신 디바이스와 제1 디바이스로 통신 그룹을 생성하는 단계와, 서버에서 서버 시드값을 생성하고 통신 디바이스에 해당하는, 서버 시드값을 구비하는 서버 시드 조합값(Bi)을 생성하는 단계와, 통신 디바이스로 서버 시드 조합값과 서버 정보 및 서버 시드값과 서버 정보의 해쉬값을 송신하는 단계를 포함하는 것을 특징으로 한다.Referring to step (b) of transmitting the server's seed value and server information from the server to the communication device in more detail, the communication device requested by the first device and the first communication device among the communication devices registered in the server based on the communication device information Creating a communication group with the device, generating a server seed value at the server and generating a server seed combination value (B i ) having a server seed value corresponding to the communication device, and combining the server seed with the communication device And transmitting a hash value of the value, the server information, the server seed value, and the server information.

여기서 서버 시드 조합값(Bi)은 아래의 수학식(2)에 의해 생성되며,Here, the server seed combination value (B i ) is generated by Equation (2) below.

[수학식 2]&Quot; (2) "

Figure 112012010363718-pat00003
Figure 112012010363718-pat00003

여기서

Figure 112012010363718-pat00004
은 서버 시드값이며, Mi은 서버에서 생성하여 통신 디바이스에 각각 제공된 시드 생성값이며, pwi은 통신 디바이스 각각의 패스워드인 것을 특징으로 한다.here
Figure 112012010363718-pat00004
Is a server seed value, M i is a seed generation value generated by the server and provided to the communication device, respectively, and pw i is a password of each communication device.

예비 그룹 시드값 및 통신 디바이스의 예비 통신 그룹 정보를 제1 디바이스와 통신 디바이스에 각각 송신하는 (c) 단계를 보다 구체적으로 살펴보면, 통신 디바이스로부터 수신한 통신 디바이스의 시드 조합값에서 통신 디바이스의 시드값을 획득하는 단계와, 제1 디바이스 또는 통신 디바이스가 보유하고 있는 시드값을 제외한 제1 디바이스 및 통신 디바이스의 시드값으로부터 제1 디바이스 및 통신 디바이스 각각에 대한 예비 그룹 시드값(Gi)을 계산하는 단계와, 제1 디바이스 및 통신 디바이스에서 자신을 제외한 디바이스 정보로 제1 디바이스 및 통신 디바이스 각각에 대한 예비 통신 그룹 정보(Ki)를 생성하는 단계와, 제1 디바이스로 제1 디바이스에 해당하는 예비 그룹 시드값을 구비하는 예비 그룹 시드 조합값, 예비 그룹 정보 및 서버의 시드 조합값을 송신하는 단계와, 통신 디바이스로 통신 디바이스 각각에 해당하는 예비 그룹 시드값을 구비하는 예비 그룹 시드 조합값과 예비 그룹 정보를 통신 디바이스로 각각 송신하는 단계를 포함하는 것을 특징으로 한다. Referring to step (c) of transmitting the preliminary group seed value and the preliminary communication group information of the communication device to the first device and the communication device, in detail, the seed value of the communication device in the seed combination value of the communication device received from the communication device And calculating a preliminary group seed value G i for each of the first device and the communication device from the seed values of the first device and the communication device except for the seed value held by the first device or the communication device. Generating preliminary communication group information K i for each of the first device and the communication device using device information excluding itself in the first device and the communication device; and preliminary corresponding to the first device as the first device. Preliminary group seed combination with group seed, preliminary group information and seed set of server In that it comprises the step of transmitting each of the step of transmitting the value and the pre-seed group combined value to the spare group information including a preliminary group of seed values, one for each communication device to the communication device to the communication device is characterized.

키 교환 확인 메시지를 제1 디바이스와 통신 디바이스에 각각 송신하는 (d) 단계를 보다 구체적으로 살펴보면, 서버에서 제1 디바이스 및 통신 디바이스에서 각각 생성한, 통신 그룹 정보(K), 서버 정보(S) 및 그룹 시드값(G) 순서의 해쉬 함수값의 키 교환 메시지를 수신하는 단계와, 키 교환 메시지의 해쉬 함수값과 서버가 보유하고 있는 통신 그룹 정보(K), 서버 정보(S) 및 그룹 시드값(G)의 해쉬 함수값을 비교하여 제1 디바이스와 통신 디바이스 사이에서 교환된 키의 동일성을 판단하는 단계와, 동일성 판단 결과에 따라 서버 정보(S), 통신 그룹 정보(K) 및 그룹 시드값(G) 순서의 해쉬 함수값의 키 교환 확인 메시지를 제1 디바이스와 통신 디바이스로 각각 송신하는 단계를 포함하는 것을 특징으로 한다. Referring to step (d) of transmitting the key exchange confirmation message to the first device and the communication device in more detail, the communication group information (K) and the server information (S) generated by the first device and the communication device respectively in the server And receiving a key exchange message of a hash function value in the order of the group seed value (G), the hash function value of the key exchange message and the communication group information (K), the server information (S), and the group seed held by the server. Comparing the hash function value of the value G to determine the identity of the keys exchanged between the first device and the communication device, and according to the result of the identity determination, the server information S, the communication group information K, and the group seed. And transmitting the key exchange confirmation message of the hash function values in the order of values (G) to the first device and the communication device, respectively.

본 발명의 일 실시예에 따른 공유 키 교환 방법은 통신 그룹의 각 디바이스로부터 수신한 갱신 키 교환 메시지에 기초하여 통신 그룹의 디바이스 사이에서 교환된 갱신 키의 동일성을 판단하고 판단 결과에 따라 갱신 키 교환 확인 메시지를 통신 그룹의 디바이스로 송신하여 통신 그룹의 디바이스 사이의 공유 키를 갱신하는 단계(이하 e 단계)를 더 포함한다. In the shared key exchange method according to an embodiment of the present invention, based on the renewal key exchange message received from each device of the communication group, the identity of the renewed key exchanged between the devices of the communication group is determined and the renewal key is exchanged according to the determination result. Transmitting a confirmation message to a device in the communication group to update the shared key between the devices in the communication group (hereinafter step e).

본 발명의 일 실시예에 따른 공유 키 교환 방법은 통신 그룹의 디바이스 중 탈퇴 디바이스로부터 탈퇴 요청 메시지를 수신하는 경우, 서버에 등록되어 있는 통신 그룹 정보를 갱신하고 탈퇴 디바이스로 탈퇴 완료 메시지를 송신하는 단계를 더 포함하며, 탈퇴 완료 메시지의 송신 후, (e) 단계를 수행하여 통신 그룹 디바이스 사이의 공유 키를 갱신하는 것을 특징으로 한다.In a shared key exchange method according to an embodiment of the present invention, when receiving a withdrawal request message from a withdrawal device among devices of a communication group, updating communication group information registered in the server and transmitting a withdrawal completion message to the withdrawal device; Further, after the transmission of the withdrawal complete message, performing a step (e) characterized in that for updating the shared key between the communication group device.

본 발명의 다른 실시예에 따른 공유 키 교환 방법은 서버에서 다수의 디바이스 중 통신 그룹의 디바이스에게 공유 키 갱신 메시지를 송신하고 공유 키 갱신 메시지에 응답하여 통신 그룹의 디바이스 각각으로부터 각 디바이스의 시드키를 수신하는 단계와, 수신한 각 디바이스의 시드키로부터 통신 그룹의 각 디바이스가 보유하고 있는 시드값을 제외한 시드값으로부터 통신 그룹 디바이스 각각에 대한 갱신 예비 그룹 시드값과, 통신 그룹의 디바이스에서 자신을 제외한 디바이스 정보로 통신 그룹 디바이스 각각에 대한 갱신 예비 통신 그룹 정보(Ki)를 생성하는 단계와, 통신 그룹 디바이스 각각에 해당하는 갱신 예비 그룹 시드값과 갱신 예비 통신 그룹 정보를 통신 그룹 디바이스 각각에 송신하는 단계와, 갱신 예비 그룹 시드값과 갱신 예비 통신 그룹 정보에 기초하여 통신 그룹 디바이스 각각에서 생성한 통신 그룹 정보(K), 서버 정보(S) 및 그룹 시드값(G) 순서의 해쉬 함수값의 갱신 키 교환 메시지를 수신하는 단계와, 갱신 키 교환 메시지의 해쉬 함수값과 서버가 보유하고 있는 통신 그룹 정보(K), 서버 정보(S) 및 그룹 시드값(G)의 해쉬 함수값을 비교하여 통신 그룹의 디바이스 사이에서 교환된 갱신 키의 동일성을 판단하는 단계와, 동일성 판단 결과에 따라 서버 정보(S), 통신 그룹 정보(K) 및 그룹 시드값(G) 순서의 해쉬 함수값의 갱신 키 교환 확인 메시지를 통신 그룹의 디바이스로 송신하는 단계를 포함하며, 통신 그룹의 디바이스는 갱신 키 교환 확인 메시지에 기초하여 통신 그룹의 디바이스 사이에서 서로 공유하는 공유 키를 갱신하여 생성하는 것을 특징으로 한다.In a shared key exchange method according to another embodiment of the present invention, a server transmits a shared key update message to a device of a communication group among a plurality of devices and receives a seed key of each device from each device of the communication group in response to the shared key update message. Receiving step, and from the seed key of each received device except the seed value held by each device in the communication group, the update reserve group seed value for each communication group device, except for itself in the device of the communication group Generating update preliminary communication group information (K i ) for each communication group device using device information, and transmitting update preliminary group seed value and update preliminary communication group information corresponding to each communication group device to each communication group device; Step, update reserve group seed value and update reserve communication Receiving an update key exchange message of hash function values in the order of communication group information (K), server information (S), and group seed value (G) generated by each of the communication group devices based on the group information; The hash function value of the message and the hash function value of the communication group information (K), the server information (S), and the group seed value (G) held by the server are compared, and the identity of the update keys exchanged between the devices in the communication group is compared. And transmitting an update key exchange confirmation message of a hash function value in the order of server information (S), communication group information (K), and group seed value (G) to the devices of the communication group according to the result of the identity determination. And the device of the communication group updates and generates a shared key shared between the devices of the communication group based on the update key exchange confirmation message.

본 발명의 또 다른 실시예에 따른 공유 키 교환 방법은 다수의 디바이스 중 통신 그룹에서 탈퇴하는 탈퇴 디바이스로부터 탈퇴 요청 메시지를 수신하는 경우, 서버에 등록되어 있는 통신 그룹 정보를 갱신하고 탈퇴 디바이스로 탈퇴 완료 메시지를 송신하는 단계와, 디바이스를 제외한 갱신 통신 그룹의 디바이스로 키 갱신 요청 메시지를 송신하는 단계와, 키 갱신 요청 메시지에 응답하여 갱신 통신 그룹의 각 디바이스로부터 수신한 갱신 키 교환 메시지에 기초하여 갱신 통신 그룹의 디바이스 사이에서 교환된 갱신 키의 동일성을 판단하고 판단 결과에 따라 갱신 키 교환 확인 메시지를 갱신 통신 그룹의 디바이스로 송신하여 갱신 통신 그룹의 디바이스 사이의 공유 키를 갱신하는 단계를 포함한다. The shared key exchange method according to another embodiment of the present invention updates the communication group information registered in the server and completes the withdrawal when the withdrawal request message is received from the withdrawal device that leaves the communication group among the plurality of devices. Sending a message, sending a key update request message to a device in an update communication group except the device, and updating based on an update key exchange message received from each device in the update communication group in response to the key update request message. Determining the identity of the update keys exchanged between the devices of the communication group, and transmitting an update key exchange confirmation message to the devices of the update communication group according to the determination result to update the shared key between the devices of the update communication group.

여기서 공유 키를 갱신하는 단계는 서버에서 갱신 통신 그룹의 디바이스에게 공유 키 갱신 메시지를 송신하고 공유 키 갱신 메시지에 응답하여 갱신 통신 그룹의 디바이스 각각으로부터 각 디바이스의 시드키를 수신하는 단계와, 수신한 각 디바이스의 시드키로부터 갱신 통신 그룹의 각 디바이스가 보유하고 있는 시드값을 제외한 시드값으로부터 갱신 통신 그룹의 디바이스 각각에 대한 갱신 예비 그룹 시드값과, 갱신 통신 그룹의 디바이스에서 자신을 제외한 디바이스 정보로 갱신 통신 그룹 디바이스 각각에 대한 갱신 예비 통신 그룹 정보(Ki)를 생성하는 단계와, 갱신 통신 그룹의 디바이스 각각에 해당하는 갱신 예비 그룹 시드값과 갱신 예비 통신 그룹 정보를 갱신 통신 그룹 디바이스 각각에 송신하는 단계와, 갱신 예비 그룹 시드값과 갱신 예비 통신 그룹 정보에 기초하여 갱신 통신 그룹 디바이스 각각에서 생성한 갱신 통신 그룹 정보(K), 서버 정보(S) 및 갱신 그룹 시드값(G) 순서의 해쉬 함수값의 갱신 키 교환 메시지를 수신하는 단계와, 갱신 키 교환 메시지의 해쉬 함수값과 서버가 보유하고 있는 갱신 통신 그룹 정보(K), 서버 정보(S) 및 갱신 그룹 시드값(G)의 해쉬 함수값을 비교하여 갱신 통신 그룹의 디바이스 사이에서 교환된 갱신 키의 동일성을 판단하는 단계와, 동일성 판단 결과에 따라 서버 정보(S), 갱신 통신 그룹 정보(K) 및 갱신 그룹 시드값(G) 순서의 해쉬 함수값의 갱신 키 교환 확인 메시지를 갱신 통신 그룹의 디바이스로 송신하는 단계를 포함하며, 갱신 통신 그룹의 디바이스는 갱신 키 교환 확인 메시지에 기초하여 갱신 통신 그룹의 디바이스 사이에서 서로 공유하는 공유 키를 갱신하여 생성하는 것을 특징으로 한다.The updating of the shared key may include: transmitting, at the server, a shared key update message to a device in an update communication group, receiving a seed key of each device from each device in the update communication group in response to the shared key update message; From the seed key of each device, the seed value excluding the seed value held by each device in the update communication group, and the update spare group seed value for each device in the update communication group, and the device information except for itself in the device of the update communication group. Generating update reserve communication group information (K i ) for each update communication group device, and transmitting update reserve group seed value and update reserve communication group information corresponding to each device of the update communication group to each update communication group device. , Update reserve group seed value and update example Receiving an update key exchange message of hash function values in the order of update communication group information (K), server information (S), and update group seed value (G) generated by each update communication group device based on the non-communication group information. And the hash function values of the update communication group information (K), server information (S), and update group seed value (G) held by the server by comparing the hash function value of the update key exchange message. Determining the identity of the renewed key exchanged by the server, and updating key exchange confirmation message of the hash function value in the order of server information (S), update communication group information (K), and update group seed value (G) according to the result of the identity determination. Sending a message to a device in the update communication group, wherein the devices in the update communication group share each other among the devices in the update communication group based on the update key exchange confirmation message. A characterized in that the generated update.

본 발명에 따른 공유 키 교환 방법은 종래 기술과 비교하여 다음과 같은 다양한 효과를 가진다.The shared key exchange method according to the present invention has various effects as follows compared to the prior art.

첫째, 본 발명에 따른 공유 키 교환 방법은 통신 네트워크에서 신뢰성있는 서버를 통해 통신 그룹을 구성하는 디바이스 사이에서 안전하게 공유 키를 교환할 수 있다.First, the shared key exchange method according to the present invention can securely exchange the shared key between the devices constituting the communication group through a reliable server in the communication network.

둘째, 본 발명에 따른 공유 키 교환 방법은 서버에만 통신 네트워크를 구성하는 모든 디바이스의 정보를 저장하며 통신 그룹을 구성하는 경우에만 통신 그룹을 구성하는 디바이스로 통신 그룹의 디바이스 정보를 제공함으로써, 공유 키 교환을 위해 디바이스의 저장 부하와 통신 부하를 줄일 수 있다.Second, the shared key exchange method according to the present invention stores the information of all the devices constituting the communication network only on the server, and provides the device information of the communication group to the device constituting the communication group only when configuring the communication group, The storage and communication loads of the device can be reduced for exchange.

셋째, 본 발명에 따른 공유 키 교환 방법은 통신 네트워크에 가입하고자 하는 디바이스가 존재하는 경우, 서버에 가입 디바이스의 패스워드를 안전하게 송수신하여 통신 네트워크에 자유롭게 가입하며 가입 후 공유 키를 교환할 수 있다.Third, in the method of exchanging a shared key according to the present invention, when there is a device to join a communication network, it is possible to securely transmit and receive a password of the subscribing device to a server to freely join the communication network and exchange a shared key after joining.

넷째, 본 발명에 따른 공유 키 교환 방법은 다수 디바이스 중 통신 그룹을 구성하는 디바이스 사이의 공유 키를 주기적으로 갱신함으로써, 제3자의 공유 키 해킹을 방지할 수 있다.Fourth, the shared key exchange method according to the present invention can prevent the third party's shared key hacking by periodically updating the shared key among the devices constituting the communication group among a plurality of devices.

다섯째, 본 발명에 따른 공유 키 교환 방법은 통신 그룹을 구성하는 디바이스 중 탈퇴 디바이스가 존재하는 경우 탈퇴 디바이스를 실시간으로 반영함으로써, 탈퇴 디바이스를 제외한 통신 그룹의 공유키를 갱신하여 갱신한 공유 키를 교환할 수 있다.Fifth, in the shared key exchange method according to the present invention, when the withdrawal device is present among the devices constituting the communication group, the withdrawal device is reflected in real time, thereby updating the shared key updated by updating the shared key of the communication group except the withdrawal device. can do.

도 1은 본 발명에 따른 통신 네트워크를 설명하기 위한 기능 블록도이다.
도 2는 본 발명에 따른 통신 네트워크에서 그룹 통신을 설명하기 위한 기능 블록도이다.
도 3은 본 발명에 따른 통신 네트워크에서 공유 키 교환을 위해 제1 디바이스, 서버, 통신 디바이스에서 송수신되는 메시지를 설명하기 위한 흐름도이다.
도 4는 본 발명에 따라 신규 디바이스를 서버에 등록하는 방법을 설명하기 위한 흐름도이다.
도 5는 서버에서 수행되는 본 발명에 따른 공유 키 교환 방법을 설명하기 위한 흐름도이다.
도 6은 제1 디바이스 정보 메시지를 수신하는 단계를 보다 구체적으로 설명하는 흐름도이다.
도 7은 서버에서 통신 디바이스로 서버 정보 메시지를 송신하는 단계를 보다 구체적으로 설명하는 흐름도이다.
도 8은 예비 정보 메시지를 제1 디바이스와 통신 디바이스로 송신하는 단계를 보다 구체적으로 설명하는 흐름도이다.
도 9는 키 교환 확인 메시지를 제1 디바이스와 통신 디바이스로 송신하는 단계를 보다 구체적으로 설명하는 흐름도이다.
도 10은 본 발명에 따른 공유 키 교환 방법에서 공유 키를 갱신하는 단계를 보다 구체적으로 설명하는 흐름도이다.
도 11은 통신 그룹에서 탈퇴하는 탈퇴 디바이스를 서버에 등록하는 단계를 보다 구체적으로 설명하는 흐름도이다.
1 is a functional block diagram illustrating a communication network according to the present invention.
2 is a functional block diagram illustrating group communication in a communication network according to the present invention.
3 is a flowchart illustrating a message transmitted and received at a first device, a server, and a communication device for a shared key exchange in a communication network according to the present invention.
4 is a flowchart illustrating a method of registering a new device with a server according to the present invention.
5 is a flowchart illustrating a shared key exchange method according to the present invention performed in a server.
6 is a flowchart for describing in more detail a step of receiving a first device information message.
7 is a flow chart that describes in more detail the step of sending a server information message from a server to a communication device.
8 is a flow chart illustrating in more detail the step of transmitting a preliminary information message to a first device and a communication device.
9 is a flow chart that describes in more detail the step of transmitting a key exchange confirmation message to a first device and a communication device.
10 is a flowchart illustrating in more detail a step of updating a shared key in the shared key exchange method according to the present invention.
11 is a flowchart illustrating in more detail the step of registering with the server the withdrawal device leaving the communication group.

이하 첨부한 도면을 참고로 본 발명에 따른 공유 키 교환 방법에 대해 보다 구체적으로 살펴본다.Hereinafter, a shared key exchange method according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명에 따른 통신 네트워크를 설명하기 위한 기능 블록도이다.1 is a functional block diagram illustrating a communication network according to the present invention.

도 1을 참고로 보다 구체적으로 살펴보면, 유선/무선 네트워크(20)에 서버(10)와 다수의 디바이스가 존재하는 디바이스 네트워크(30)가 접속되어 있다. 서버(10)는 외부 물리적 공격이나 해킹으로부터 보안상 안전하며 신뢰성있게 네트워크(20)에 접속되어 있음을 가정한다. 외부 물리적 공격이나 해킹으로부터 보안상 안전하기 위해 서버(10)는 유선으로 네트워크(20)에 접속될 수 있다. 디바이스 네트워크(30)에 존재하는 디바이스(MT)는 자신의 패드워드를 서버(10)로 제공하여 디바이스(MT)를 서버(10)에 등록하며 서버(10)는 디바이스를 등록시 디바이스에 고유한 시드 생성값을 제공한다.Referring to FIG. 1, the server 10 and a device network 30 including a plurality of devices are connected to the wired / wireless network 20. It is assumed that the server 10 is securely and reliably connected to the network 20 from external physical attack or hacking. The server 10 may be connected to the network 20 by wire in order to secure security from an external physical attack or hacking. The device MT existing in the device network 30 provides its own password to the server 10 to register the device MT to the server 10, and the server 10 registers a device unique to the device when registering the device. Provide the generated value.

디바이스 네트워크(30)에는 다수의 디바이스(MT)가 존재하는데, 디바이스(MT)는 디바이스 네트워크(30)에 존재하는 다른 디바이스와 선택적으로 일대일 통신을 수행하거나 일대다 그룹 통신을 수행한다. 일대일 통신 또는 일대다 그룹 통신을 수행하기 위해, 디바이스는 서버(10)의 중계에 의해 디바이스 네트워크(30)의 다른 디바이스와 공유 키를 교환하며 교환한 공유 키를 통해 송수신되는 메시지를 암호화한다.
There are a plurality of devices MT in the device network 30, and the device MT selectively performs one-to-one communication or one-to-many group communication with other devices in the device network 30. In order to perform one-to-one communication or one-to-many group communication, the device exchanges a shared key with other devices in the device network 30 by relaying the server 10 and encrypts messages transmitted and received through the exchanged shared key.

도 2는 본 발명에 따른 통신 네트워크에서 그룹 통신을 설명하기 위한 기능 블록도이다.2 is a functional block diagram illustrating group communication in a communication network according to the present invention.

디바이스 네트워크(30)에 존재하는 요청 디바이스(RMT)가 디바이스 네트워크(30)에 존재하는 일부의 디바이스와 그룹 통신을 요청하는 경우, 서버(10)는 디바이스 네트워크(30)에서 그룹 통신이 가능한 통신 가능 디바이스에 대한 정보를 요청 디바이스(RMT)로 제공하며, 통신 가능 디바이스 중 요청 디바이스(RMT)가 그룹 통신을 요청한 통신 디바이스와 요청 디바이스(RMT)로 통신 그룹(CG)을 생성한다.When the requesting device RMT present in the device network 30 requests group communication with some of the devices present in the device network 30, the server 10 may communicate in which the group communication is possible in the device network 30. Information about the device is provided to the requesting device (RMT), and the communication device (CG) is generated by the requesting device (RMT) and the requesting device (RMT) requesting group communication among the communication devices.

서버(10)는 요청 디바이스(RMT)와 통신 디바이스로 이루어진 통신 그룹의 통신 그룹 정보, 요청 디바이스(RMT)와 통신 디바이스부터 수신한 시드값으로부터 계산된 그룹 시드값 및 서버 정보로부터 공유 키를 생성하며, 생성한 공유 키를 요청 디바이스(RMT)와 통신 디바이스로 제공하여 요청 디바이스(RMT)와 통신 디바이스 사이의 공유 키를 교환토록 한다.The server 10 generates a shared key from the communication group information of the communication group consisting of the requesting device RMT and the communication device, the group seed value calculated from the seed value received from the requesting device RMT and the communication device, and the server information. The generated shared key is provided to the requesting device RMT and the communication device to exchange the shared key between the requesting device RMT and the communication device.

한편, 서버(10)는 통신 그룹(CG)에 새로운 디바이스가 가입하거나 통신 그룹(CG)에서 탈퇴하는 디바이스가 존재하는 경우, 가입 디바이스 또는 탈퇴 디바이스를 그룹 시드값과 통신 그룹 정보에서 제외하여 새로운 공유 키를 갱신 생성하며, 갱신한 공유 키를 통신 그룹에 존재하는 디바이스로 제공하여 디바이스 사이에서 갱신 공유 키를 교환토록 한다.
Meanwhile, when there is a device that a new device joins or leaves the communication group CG, the server 10 excludes the joining device or the leaving device from the group seed value and the communication group information. The key is updated and generated, and the updated shared key is provided to a device existing in the communication group so that the updated shared key can be exchanged between the devices.

도 3은 본 발명에 따른 통신 네트워크에서 공유 키 교환을 위해 요청 디바이스, 서버, 통신 디바이스에서 송수신되는 메시지를 설명하기 위한 흐름도이다.3 is a flowchart illustrating a message transmitted and received at a requesting device, a server, and a communication device for a shared key exchange in a communication network according to the present invention.

도 3을 참고로 보다 구체적으로 살펴보면, 그룹 통신을 요청하는 요청 디바이스(RMT)는 서버(10)로 요청 디바이스 정보 메시지를 송신한다(S10). 요청 디바이스 정보 메시지는 요청 디바이스(RMT)에서 생성한 제1 시드값을 구비하는 제1 시드 조합값과 요청 디바이스(RMT)가 디바이스 네트워크(30)에서 그룹 통신을 요청하는 통신 디바이스의 정보가 포함되어 있다.Referring to FIG. 3 in more detail, the requesting device RMT requesting group communication transmits a request device information message to the server 10 (S10). The request device information message includes a first seed combination value having a first seed value generated by the request device RMT and information of a communication device for which the request device RMT requests group communication in the device network 30. have.

서버(10)는 요청 디바이스(RMT)로부터 요청 디바이스 정보 메시지를 수신하는 경우, 통신 그룹의 통신 디바이스로 서버 정보 메시지를 송신한다(S20). 서버 정보 메시지는 서버(10)에서 생성한 서버 시드값을 구비하는 서버 시드 조합값과 서버 정보 및, 서버 시드 조합값과 서버 정보의 해쉬값을 포함하고 있다. 서버 시드 조합값과 서버 정보의 해쉬값을 계산하는데 사용되는 해쉬 함수는 서버(10)와 디바이스 네트워크(30)를 구성하는 디바이스가 서로 공유한다. When the server 10 receives the request device information message from the request device RMT, the server 10 transmits the server information message to the communication device of the communication group (S20). The server information message includes a server seed combination value and server information including a server seed value generated by the server 10, and a hash value of the server seed combination value and server information. The hash function used to calculate the server seed combination value and the hash value of the server information is shared between the server 10 and the devices configuring the device network 30.

통신 그룹의 통신 디바이스는 서버(10)로부터 서버 정보 메시지를 수신하는 경우 서버 정보 메시지의 무결성을 판단하며, 서버 정보 메시지의 무결성이 판단되는 경우 통신 디바이스 정보 메시지를 서버(10)로 송신한다(S30). 통신 디바이스 정보 메시지는 통신 그룹의 각 통신 디바이스에서 생성한 자신에 고유한 시드값을 구비하는 시드 조합값과 통신 디바이스 정보가 포함되어 있다. 바람직하게, 통신 디바이스의 시드 조합값은 각 통신 디바이스에서 아래의 수학식(0)과 같이 계산되는데,The communication device of the communication group determines the integrity of the server information message when receiving the server information message from the server 10, and transmits the communication device information message to the server 10 when the integrity of the server information message is determined (S30). ). The communication device information message includes a seed combination value and communication device information having a seed value unique to itself generated by each communication device in the communication group. Preferably, the seed combination value of the communication device is calculated by the following equation (0) in each communication device,

[수학식 0][Equation 0]

Figure 112012010363718-pat00005
Figure 112012010363718-pat00005

여기서

Figure 112012010363718-pat00006
은 통신 그룹의 통신 디바이스(i) 생성한 시드값이며, Mi는 서버에서 생성하여 통신 디바이스(i)로 제공된 시드 생성값이며, pwi은 통신 디바이스(i)가 보유하고 있는 패스워드인 것을 특징으로 한다. 통신 디바이스(i)의 패스워드는 서버에 등록되어 있다.here
Figure 112012010363718-pat00006
Is a seed value generated by the communication device i of the communication group, M i is a seed generated value generated by the server and provided to the communication device i, and pw i is a password held by the communication device i. It is done. The password of the communication device i is registered in the server.

서버(10)는 요청 디바이스 정보 메시지와 통신 디바이스 정보 메시지를 수신하는 경우, 예비 정보 메시지를 생성하여 요청 디바이스(RMT)와 통신 디바이스로 각각 송신한다(S40). 요청 디바이스(RMT)와 통신 디바이스로 송신되는 예비 정보 메시지는 요청 디바이스의 시드값 또는 통신 디바이스의 시드값으로부터 생성되는 예비 그룹 시드값과 요청 디바이스 정보 또는 통신 디바이스 정보로부터 생성되는 예비 통신 그룹 정보를 포함한다. When the server 10 receives the request device information message and the communication device information message, the server 10 generates a preliminary information message and transmits the preliminary information message to the request device RMT and the communication device, respectively (S40). The preliminary information message sent to the requesting device RMT and the communication device includes a preliminary group seed value generated from a seed value of the requesting device or a seed value of the communication device and preliminary communication group information generated from the request device information or the communication device information. do.

요청 디바이스(RMT)와 통신 디바이스는 서버(10)로부터 각각 예비 정보 메시지를 수신하는 경우, 요청 디바이스와 통신 디바이스 사이에 동일한 키가 교환되었는지 확인하기 위해 키 교환 메시지를 생성하여 서버(10)로 송신한다(S50). 서버(10)로 송신되는 키 교환 메시지는 요청 디바이스(RMT)와 통신 디바이스에서 각각 생성한 통신 그룹 정보, 서버 정보 및 그룹 시드값을 포함한다. 여기서 통신 그룹 정보는 수신한 예비 통신 그룹 정보와 자신의 디바이스 정보로부터 생성되며, 그룹 시드값은 수신한 예비 그룹 시드값과 자신의 시드값으로부터 생성된다. 예를 들어 통신 디바이스(i)의 통신 그룹 정보는 통신 디바이스(i)의 예비 통신 그룹 정보와 통신 디바이스(i)의 디바이스 정보의 리스트로부터 생성되며, 통신 디바이스(i)의 그룹 시드값은 통신 디바이스(i)의 예비 그룹 시드값과 통신 디바이스(i)의 시드값의 곱으로부터 생성된다. 바람직하게, 키 교환 메시지는 통신 그룹 정보(K), 서버 정보(S) 및 그룹 시드값(G)의 순서로 해쉬 함수에 적용한 해쉬값을 더 포함한다.When the requesting device RMT and the communication device each receive a preliminary information message from the server 10, the requesting device RMT and the communication device generate and transmit a key exchange message to the server 10 to confirm whether the same key is exchanged between the requesting device and the communication device. (S50). The key exchange message sent to the server 10 includes communication group information, server information, and group seed values generated by the requesting device RMT and the communication device, respectively. The communication group information is generated from the received preliminary communication group information and its device information, and the group seed value is generated from the received preliminary group seed value and its own seed value. For example, the communication group information of the communication device i is generated from the list of preliminary communication group information of the communication device i and the device information of the communication device i, and the group seed value of the communication device i is the communication device. is generated from the product of the preliminary group seed of (i) and the seed of communication device (i). Preferably, the key exchange message further includes a hash value applied to the hash function in the order of communication group information (K), server information (S), and group seed value (G).

서버(10)는 요청 디바이스(RMT)와 통신 디바이스로부터 키 교환 메시지를 수신하는 경우, 키 교환 메시지에 포함되어 있는 통신 그룹 정보, 서버 정보 및 그룹 시드값이 서버(10)에 저장되어 있는 통신 그룹 정보, 서버 정보 및 그룹 시드값과 동일한지 판단하고, 판단 결과 키 교환 메시지와 서버(10)에 저장되어 있는 통신 그룹 정보, 서버 정보 및 그룹 시드값이 동일한 경우 요청 디바이스(RMT)와 통신 디바이스로 동일한 키가 교환되었음을 확인하는 키 교환 확인 메시지를 생성하여 요청 디바이스(RMT)와 통신 디바이스로 송신한다(S60). 키 교환 확인 메시지는 서버에 저장되어 있는 서버 정보(S), 통신 그룹 정보(K) 및 그룹 시드값(G)을 포함한다. 바람직하게, 키 교환 확인 메시지는 서버 정보(S), 통신 그룹 정보(K) 및 그룹 시드값(G)의 순서로 해쉬함수에 적용한 해쉬값을 더 포함한다.When the server 10 receives a key exchange message from the requesting device RMT and the communication device, the communication group in which the communication group information, the server information, and the group seed value included in the key exchange message are stored in the server 10. Determine whether the information, the server information, and the group seed value are the same, and when the determination result is the same as the key exchange message and the communication group information, the server information, and the group seed value stored in the server 10, the request device (RMT) and the communication device. A key exchange confirmation message for confirming that the same key has been exchanged is generated and transmitted to the requesting device RMT and the communication device (S60). The key exchange confirmation message includes server information (S), communication group information (K), and group seed value (G) stored in the server. Preferably, the key exchange confirmation message further includes a hash value applied to the hash function in the order of server information (S), communication group information (K), and group seed value (G).

요청 디바이스(RMT)와 통신 디바이스는 키 교환 확인 메시지를 수신하는 경우, 요청 디바이스(RMT)와 통신 디바이스가 각각 공유하는 공유 키, 예를 들어 서버 정보(S), 통신 그룹 정보(K) 및 그룹 시드값(G)의 조합으로부터 이루어진 공유 키를 생성한다(S70). 요청 디바이스(RMT)와 통신 디바이스는 각각 생성한 공유 키를 이용하여 요청 디바이스(RMT)와 통신 디바이스로 이루어진 통신 그룹에서 송수신되는 메시지를 암호화 및 복호화한다.
When the requesting device RMT and the communication device receive the key exchange confirmation message, a shared key shared by the requesting device RMT and the communication device, for example, server information S, communication group information K, and group, respectively. A shared key is generated from the combination of the seed values G (S70). The requesting device RMT and the communication device respectively encrypt and decrypt messages transmitted and received in a communication group consisting of the requesting device RMT and the communication device using the generated shared key.

바람직하게, 서버(10)는 요청 디바이스(RMT) 또는 통신 디바이스로부터 키 교환 메시지를 수신하는 경우, 서버(10)에 저장되어 있는 통신 그룹 정보, 서버 정보 및 그룹 시드값의 해쉬값과 키 교환 메시지의 해쉬값을 비교하여 키 교환 메시지의 무결성을 판단하며, 요청 디바이스(RMT) 또는 통신 디바이스는 키 교환 확인 메시지를 수신하는 경우, 요청 디바이스(RMT) 또는 통신 디바이스에 저장되어 있는 서버 정보, 통신 그룹 정보 및 그룹 시드값의 해쉬값과 키 교환 확인 메시지의 해쉬값을 비교하여 키 교환 확인 메시지의 무결성을 판단한다.
Preferably, when the server 10 receives the key exchange message from the requesting device (RMT) or the communication device, the hash value and the key exchange message of the communication group information, the server information, and the group seed value stored in the server 10 are received. Integrity of the key exchange message is determined by comparing the hash value of the request information. When the requesting device (RMT) or the communication device receives the key exchange confirmation message, the server information and the communication group stored in the requesting device (RMT) or the communication device are determined. The integrity of the key exchange confirmation message is determined by comparing the hash value of the information and group seed values with the hash value of the key exchange confirmation message.

도 4는 본 발명에 따라 신규 디바이스를 서버에 등록하는 방법을 설명하기 위한 흐름도이다.4 is a flowchart illustrating a method of registering a new device with a server according to the present invention.

도 4를 참고로 보다 구체적으로 살펴보면, 서버는 신규 디바이스로부터 제1 행렬(X)과 제1 행렬의 의사역행렬(X')의 곱을 수신한다(S1). 신규 디바이스가 서버(10)에 등록하고자 하는 경우 신규 디바이스는 제1 행렬(X)과 제1 행렬의 의사역행렬(X')을 생성하고, 제1 행렬(X)과 제1 행렬의 의사역행렬(X')의 곱을 계산하여 서버(10)로 송신한다.Referring to FIG. 4, the server receives a product of the first matrix X and the pseudo inverse matrix X ′ of the first matrix from the new device (S1). When a new device wants to register with the server 10, the new device generates a pseudo inverse matrix X ′ of the first matrix X and the first matrix, and generates a pseudo inverse matrix of the first matrix X and the first matrix ( The product of X ') is calculated and transmitted to the server 10.

제1 행렬(X)과 제1 행렬의 의사역행렬(X')의 곱을 수신한 서버는 제2 행렬(Y)과 제2 행렬의 의사역행렬(Y')을 생성하며, 생성한 제2 행렬(Y)과 제2 행렬의 의사역행렬(Y'), 수신한 1 행렬(X) 및 제1 행렬의 의사역행렬(X')의 곱으로부터 행렬 조합(XX'Y, XX'YY')를 생성하여 신규 디바이스로 송신한다(S2). The server receiving the product of the first matrix X and the pseudoinverse matrix X 'of the first matrix generates a pseudoinverse matrix Y' of the second matrix Y and the second matrix, and generates the second matrix ( Matrix combination (XX'Y, XX'YY ') is generated from the product of Y) and the pseudoinverse matrix (Y') of the second matrix, the received first matrix (X) and the pseudoinverse matrix (X ') of the first matrix, Transmit to a new device (S2).

신규 디바이스는 서버(10)로부터 수신한 행렬 조합(XX'Y, XX'YY')과 신규 디바이스가 보유하고 있는 제1 행렬(X)과 제1 행렬의 의사역행렬(X')로부터 서버의 공유 비밀키(Y)를 획득하며, 행렬 조합(XYY')를 생성하여 서버(10)로 송신한다(S3).The new device shares the server from the matrix combination (XX'Y, XX'YY ') received from the server 10 and the pseudomatrix (X') of the first matrix (X) and the first matrix held by the new device. The secret key Y is obtained, and the matrix combination XYY 'is generated and transmitted to the server 10 (S3).

서버(10) 신규 디바이스로부터 행렬 조합(XYY')을 수신하는 경우, 서버(10)가 보유하고 있는 제2 행렬(Y)과 제2 행렬의 의사역행렬(Y')의 곱과 수신한 행렬 조합(XYY')으로부터 신규 디바이스의 공유 비밀키(X)를 획득하고, 신규 디바이스와 서버의 공유 비밀키(XY)로 신규 디바이스의 시드 생성값(M)을 암호화한 등록 메시지를 신규 디바이스로 송신한다(S4). When the server 10 receives the matrix combination XYY 'from the new device, the matrix combination received by the product of the second matrix Y held by the server 10 and the pseudoinverse matrix Y' of the second matrix is received. Obtain a shared secret key (X) of the new device from (XYY '), and transmit a registration message encrypted with the seed generation value (M) of the new device using the shared secret key (XY) of the new device and the server to the new device. (S4).

한편, 서버(10)는 신규 디바이스로부터 신규 디바이스와 서버의 공유 비밀키(XY)로 암호화된 요청 디바이스의 패스워드를 수신하여 신규 디바이스를 서버(10)에 신규 등록한다(S5). 바람직하게, 서버(10)는 시드 생성값(M)과 시드 생성값(M)의 해쉬값을 구비하는 등록 메시지를 공유 비밀키(XY)로 암호화하여 신규 디바이스로 송신하며, 신규 디바이스는 공유 비밀키(XY)로 등록 메시지를 복호화하며, 복호화된 시드 생성값과 시드 생성값의 해쉬값을 비교하여 등록 메시지의 무결성을 판단한다.On the other hand, the server 10 receives the password of the request device encrypted with the new device and the shared secret key XY of the server from the new device and newly registers the new device with the server 10 (S5). Preferably, the server 10 encrypts the registration message including the seed generation value M and the hash value of the seed generation value M with a shared secret key XY and transmits the registration message to the new device, where the new device is a shared secret. The registration message is decrypted with the key XY, and the integrity of the registration message is determined by comparing the decrypted seed generation value with the hash value of the seed generation value.

도 5는 서버에서 수행되는 본 발명에 따른 공유 키 교환 방법을 설명하기 위한 흐름도이다.5 is a flowchart illustrating a shared key exchange method according to the present invention performed in a server.

도 5를 참고로 보다 구체적으로 살펴보면, 서버(10)는 서버(10)에 등록되어 있는 디바이스 중 요청 디바이스로부터 그룹 통신을 요청받는 경우, 요청 디바이스(RMT)로부터 요청 디바이스(RMT)에서 생성한 제1 시드값을 구비하는 제1 시드 조합값과 디바이스 네트워크(30) 중 요청 디바이스(RMT)에서 그룹 통신을 요청한 통신 디바이스 정보가 구비하고 있는 요청 디바이스 정보 메시지를 수신한다(S10). Referring to FIG. 5, in detail, when the server 10 receives a group communication request from the requesting device among the devices registered in the server 10, the server 10 generates the first device generated by the requesting device RMT from the requesting device RMT. A first seed combination value having a first seed value and a request device information message included in communication device information requesting group communication from the request device RMT in the device network 30 are received (S10).

요청 디바이스 정보 메시지를 수신하는 단계를 보다 구체적으로 설명하고 있는 도 6을 참고로 살펴보면, 서버(10)는 요청 디바이스로부터 그룹통신 요청 메시지를 수신한다(S11). 그룹통신 요청 메시지에는 요청 디바이스의 식별자가 구비되어 있으며, 서버(10)는 그룹통신 요청 메시지에 구비되어 있는 요청 디바이스 식별자에 기초하여 요청 디바이스가 서버에 등록된 디바이스인지 검증한다(S13).Referring to FIG. 6, which describes the step of receiving the request device information message in detail, the server 10 receives a group communication request message from the request device (S11). The group communication request message is provided with an identifier of the requesting device, and the server 10 verifies whether the requesting device is a device registered in the server based on the requesting device identifier included in the group communication request message (S13).

서버는 검증 결과에 따라 요청 디바이스로 서버에 등록된 디바이스 중 통신 가능한 통신 가능 디바이스 정보를 송신한다(S15). 여기서 통신 가능 디바이스 정보는 서버에 등록된 디바이스 중 통신 가능한 디바이스의 식별자인 것을 특징으로 한다.The server transmits communicable device information among devices registered in the server to the requesting device according to the verification result (S15). The communicable device information may be an identifier of a communicable device among the devices registered in the server.

서버(10)는 요청 디바이스로부터 요청 디바이스에서 생성된 제1 시드값를 구비하는 요청 디바이스의 시드 조합값(A1)과 통신 가능 디바이스 중 요청 디바이스가 통신 요청하는 통신 디바이스 정보를 수신한다(S17). 여기서 통신 디바이스 정보는 통신 가능 디바이스 중 요청 디바이스가 통신 그룹으로 통신하고자 하는 디바이스의 식별자인 것을 특징으로 한다.The server 10 receives from the requesting device a seed combination value A 1 of the requesting device having the first seed value generated at the requesting device and communication device information requested by the requesting device for communication among the devices capable of communication (S17). Herein, the communication device information may be an identifier of a device to which a requesting device communicates with a communication group.

바람직하게, 요청 디바이스의 시드 조합값(A1)은 아래의 수학식(1)에 의해 생성되며,Preferably, the seed combination value A 1 of the requesting device is generated by the following equation (1),

[수학식 1][Equation 1]

Figure 112012010363718-pat00007
Figure 112012010363718-pat00007

여기서

Figure 112013069126350-pat00008
은 요청 디바이스에서 생성한 제1 시드값이며, M1은 서버에서 생성하여 요청 디바이스로 제공된 제1 시드 생성값이며, pw1은 요청 디바이스의 패스워드인 것을 특징으로 한다.
here
Figure 112013069126350-pat00008
Is a first seed value generated by the requesting device, M 1 is a first seed generation value generated by the server and provided to the requesting device, and pw 1 is a password of the requesting device.

다시 도 5를 참고로 살펴보면, 서버(10)는 요청 디바이스로부터 요청 디바이스 정보 메시지를 수신하는 경우, 그룹 통신의 통신 디바이스로 서버 정보 메시지를 송신한다(S20). Referring to FIG. 5 again, when receiving the request device information message from the requesting device, the server 10 transmits the server information message to the communication device of the group communication (S20).

서버에서 통신 디바이스로 서버 정보 메시지를 송신하는 단계를 보다 구체적으로 설명하고 있는 도 7을 참고로 살펴보면, 서버(10)는 통신 디바이스 정보에 기초하여 서버(10)에 등록된 통신 가능 디바이스 중 요청 디바이스가 통신 요청한 통신 디바이스와 요청 디바이스로 통신 그룹을 생성한다(S21). 서버는 서버 시드값(gG)을 생성하고(S23), 생성한 서버 시드값에 기초하여 통신 그룹의 각 통신 디바이스에 해당하는, 서버 시드값을 구비하는 서버 시드 조합값(Bi)을 생성한다(S25). 서버 시드 조합값(Bi)은 아래의 수학식(2)에 의해 생성되며,Referring to FIG. 7, which describes the step of transmitting the server information message from the server to the communication device in more detail, the server 10 is a requesting device among the communicable devices registered in the server 10 based on the communication device information. The communication group generates a communication group using the communication device and the request device that have requested communication (S21). The server generates a server seed value g G (S23), and generates a server seed combination value B i having a server seed value corresponding to each communication device of the communication group based on the generated server seed value. (S25). The server seed combination value (B i ) is generated by the following equation (2),

[수학식 2]&Quot; (2) "

Figure 112012010363718-pat00009
Figure 112012010363718-pat00009

여기서

Figure 112012010363718-pat00010
은 서버 시드값이며, Mi은 서버에서 생성하여 통신 디바이스에 각각 제공된 시드 생성값이며, pwi은 통신 디바이스 각각의 패스워드인 것을 특징으로 한다. 여기서 각 통신 디바이스에 제공된 통신 디바이스의 시드 생성값(Mi)와 각 통신 디바이스의 패스워드(pwi)는 서버에 등록되어 있다.here
Figure 112012010363718-pat00010
Is a server seed value, M i is a seed generation value generated by the server and provided to the communication device, respectively, and pw i is a password of each communication device. Here, the seed generation value M i of the communication device provided to each communication device and the password pw i of each communication device are registered in the server.

서버(10)는 각 통신 디바이스로 각 통신 디바이스의 서버 시드 조합값과 서버 정보를 구비하는 서버 정보 메시지를 송신한다(S27). 바람직하게, 서버 정보 메시지는 서버 시드 조합값과 서버 정보를 서버(10)와 각 통신 디바이스가 공유하는 해쉬 함수에 적용한 해쉬값을 더 포함한다.
The server 10 transmits a server information message including a server seed combination value and server information of each communication device to each communication device (S27). Preferably, the server information message further includes a server seed combination value and a hash value of applying server information to a hash function shared by the server 10 and each communication device.

다시 도 5를 참고로 살펴보면, 서버(10)는 요청 디바이스 정보 메시지와 통신 디바이스 정보 메시지를 수신하는 경우, 예비 정보 메시지를 생성하여 요청 디바이스(RMT)와 통신 디바이스로 각각 송신한다(S40). Referring back to FIG. 5, when receiving the request device information message and the communication device information message, the server 10 generates a preliminary information message and transmits the preliminary information message to the request device RMT and the communication device, respectively (S40).

예비 정보 메시지를 요청 디바이스와 통신 디바이스로 송신하는 단계를 보다 구체적으로 설명하는 도 8을 참고로 살펴보면, 서버는 요청 디바이스와 통신 디바이스로부터 수신한 시드 조합값으로부터 요청 디바이스와 각 통신 디바이스의 시드값을 획득한다(S41). 요청 디바이스 또는 통신 디바이스가 보유하고 있는 시드값을 제외한 요청 디바이스 및 통신 디바이스의 시드값으로부터 요청 디바이스 및 통신 디바이스 각각에 대한 예비 그룹 시드값(Gi)을 계산한다(S43). 여기서 예비 그룹 시드값은 요청 디바이스 또는 통신 디바이스가 보유하고 있는 시드값을 제외한 요청 디바이스 및 통신 디바이스의 시드값의 조합으로부터 생성되는데, 예를 들어 요청 디바이스의 예비 그룹 시드값은 요청 디바이스의 시드값을 제외한 모든 통신 디바이스의 시드값의 곱으로 계산되며, 통신 디바이스(i)의 예비 그룹 시드값은 통신 디바이스(i)의 시드값을 제외한 모든 통신 디바이스와 요청 디바이스의 시드값의 곱으로 계산된다.Referring to FIG. 8, which describes in more detail the step of transmitting the preliminary information message to the requesting device and the communication device, the server determines a seed value of the requesting device and each communication device from the seed combination values received from the requesting device and the communication device. Acquire (S41). A preliminary group seed value G i for each of the requesting device and the communication device is calculated from the seed values of the requesting device and the communication device except for the seed value held by the requesting device or the communication device (S43). Here, the reserved group seed value is generated from a combination of seed values of the requesting device and the communication device except for the seed value held by the requesting device or the communication device. For example, the reserved group seed value of the requesting device is determined by the seed value of the requesting device. The preliminary group seed value of the communication device i is calculated as the product of the seed values of all communication devices and the request device except the seed value of the communication device i.

한편, 서버는 요청 디바이스 및 통신 디바이스에서 자신을 제외한 디바이스 정보의 조합으로 요청 디바이스 및 통신 디바이스 각각에 대한 예비 통신 그룹 정보(Ki)를 생성한다(S45). 예를 들어, 요청 디바이스의 예비 통신 그룹 정보는 요청 디바이스 정보(식별자)를 제외한 모든 통신 디바이스의 정보 리스트로 생성되며, 통신 디바이스(i)의 예비 통신 그룹 정보는 통신 디바이스(i) 정보를 제외한 모든 디바이스의 정보와 요청 디바이스 정보 리스트로 생성된다.Meanwhile, the server generates preliminary communication group information K i for each of the requesting device and the communication device by using a combination of device information except for itself in the requesting device and the communication device (S45). For example, the preliminary communication group information of the requesting device is generated as an information list of all communication devices except for the requesting device information (identifier), and the preliminary communication group information of the communication device (i) is all except the communication device (i) information. The device information and the request device information list are generated.

서버는 요청 디바이스 또는 통신 디바이스에 해당하는 예비 그룹 시드값과 예비 통신 그룹 정보를 구비하는 예비 정보 메시지를 생성하며(S47), 요청 디바이스와 통신 디바이스로 요청 디바이스 또는 통신 디바이스 각각에 해당하는 예비 정보 메시지를 각각 송신한다(S49). 예를 들어 서버는 요청 디바이스에 해당하는 예비 그룹 시드 조합값, 예비 통신 그룹 정보, 서버 정보, 서버 시드값을 구비하는 예비 정보 메시지를 생성하여 요청 디바이스로 송신하며, 통신 디바이스(i)에 해당하는 예비 그룹 시드 조합값, 예비 통신 그룹 정보, 서버 정보를 구비하는 예비 정보 메시지를 생성하여 통신 디바이스(i)로 송신한다. 바람직하게, 예비 정보 메시지는 서버 시드값, 예비 그룹 시드값을 구비하는 예비 그룹 시드 조합값, 예비 통신 그룹 정보를 해쉬함수에 적용한 해쉬값을 더 포함한다.
The server generates a preliminary information message having a preliminary group seed value corresponding to the requesting device or the communication device and the preliminary communication group information (S47), and the preliminary information message corresponding to each of the requesting device or the communication device to the requesting device and the communication device. Respectively transmit (S49). For example, the server generates and transmits a preliminary information message including a preliminary group seed combination value, preliminary communication group information, server information, and a server seed value corresponding to the request device to the requesting device, and corresponds to the communication device (i). A preliminary information message comprising a preliminary group seed combination value, preliminary communication group information, and server information is generated and transmitted to the communication device (i). Preferably, the preliminary information message further includes a server seed value, a preliminary group seed combination value having a preliminary group seed value, and a hash value of applying the preliminary communication group information to the hash function.

다시 도 5를 참고로 살펴보면, 서버는 요청 디바이스와 통신 디바이스로부터 키 교환 메시지를 수신하는 경우, 키 교환 메시지에 기초하여 요청 디바이스와 통신 디바이스 사이에 동일한 키가 교환되었는지 확인 후 키 교환 확인 메시지를 생성하여 요청 디바이스와 통신 디바이스로 각각 송신한다(S60).Referring back to FIG. 5, when the server receives a key exchange message from the requesting device and the communication device, the server generates a key exchange confirmation message after checking whether the same key is exchanged between the requesting device and the communication device based on the key exchange message. To transmit to the requesting device and the communication device, respectively (S60).

키 교환 확인 메시지를 요청 디바이스와 통신 디바이스로 송신하는 단계를 보다 구체적으로 도시하고 있는 도 9를 참고로 살펴보면, 서버는 키 교환 메시지의 해쉬값과 키 교환 메시지에 저장되어 있는 정보를 서버가 가지는 해쉬함수에 적용하여 생성된 해쉬값과 비교하여 키 교환 메시지의 무결성을 판단한 후(S61), 키 교환 메시지의 통신 그룹 정보(K), 서버 정보(S) 및 그룹 시드값(G)을 서버가 보유하고 있는 통신 그룹 정보(K), 서버 정보(S) 및 그룹 시드값(G)에 비교하여 요청 디바이스와 통신 디바이스 사이에서 교환된 키가 서로 동일한지 판단한다(S63). 바람직하게, 키 교환 메시지의 통신 그룹 정보(K), 서버 정보(S) 및 그룹 시드값(G)의 해쉬값과 서버가 보유하고 있는 통신 그룹 정보(K), 서버 정보(S) 및 그룹 시드값(G)의 해쉬값을 비교하여 요청 디바이스와 통신 디바이스 사이에서 교환된 키가 서로 동일한지 판단할 수 있다. 동일성 판단 결과에 따라 서버 정보(S), 통신 그룹 정보(K) 및 그룹 시드값(G) 순서의 해쉬값의 키 교환 확인 메시지를 생성하여 요청 디바이스와 통신 디바이스로 각각 송신한다(S65).
Referring to FIG. 9, which illustrates the step of transmitting the key exchange confirmation message to the requesting device and the communication device in more detail, the server has a hash value of the key exchange message and the information stored in the key exchange message. After determining the integrity of the key exchange message by comparing the generated hash value with the function (S61), the server holds the communication group information (K), server information (S) and group seed value (G) of the key exchange message. It is determined whether the keys exchanged between the requesting device and the communication device are the same as compared with the communication group information K, the server information S, and the group seed value G (S63). Preferably, the hash value of the communication group information (K), the server information (S) and the group seed value (G) of the key exchange message, and the communication group information (K), the server information (S) and the group seed held by the server. The hash value of the value G can be compared to determine whether the keys exchanged between the requesting device and the communication device are the same. According to the result of the determination of identity, a key exchange confirmation message of hash values in the order of server information S, communication group information K, and group seed value G is generated and transmitted to the requesting device and the communication device, respectively (S65).

다시 도 5를 참고로 살펴보면, 서버는 통신 그룹을 구성하는 디바이스 사이에서 공유 키를 교환하여 통신하는 중에도 주기적으로 통신 그룹을 구성하는 디바이스 사이에서 공유하는 공유 키를 갱신한다(S80). 한편, 통신 그룹을 구성하는 디바이스 중 통신 그룹을 탈퇴하는 탈퇴 디바이스가 존재하는 경우 서버의 통신 그룹 정보에서 탈퇴 디바이스를 삭제하고 탈퇴 디바이스의 시드값을 삭제한 새로운 공유 키로 갱신한다(S90).
Referring to FIG. 5 again, the server periodically updates the shared key shared between the devices constituting the communication group even during communication by exchanging the shared keys between the devices constituting the communication group (S80). On the other hand, if there is a withdrawal device for leaving the communication group among the devices constituting the communication group, the withdrawal device is deleted from the communication group information of the server and the seed value of the withdrawal device is updated with the new shared key (S90).

도 10은 본 발명에 따른 공유 키 교환 방법에서 공유 키를 갱신하는 단계를 보다 구체적으로 설명하는 흐름도이다.10 is a flowchart illustrating in more detail a step of updating a shared key in the shared key exchange method according to the present invention.

도 10을 참고로 보다 구체적으로 살펴보면, 서버는 그룹 통신의 공유 키를 갱신하고자 하는 경우 공유 키 갱신 메시지를 생성하여 통신 그룹의 그룹 디바이스로 송신한다(S81). 공유 키 갱신 메시지를 수신한 통신 그룹의 그룹 디바이스는 각각 자신의 그룹 디바이스 시드키를 생성하고, 생성한 그룹 디바이스 시드키를 구비하는 시드 조합값, 그룹 디바이스 정보를 포함하는 갱신 디바이스 정보 메시지를 서버로 송신한다(S82). 통신 그룹의 그룹 디바이스로부터 각각 갱신 디바이스 정보 메시지를 수신한 서버는 통신 그룹의 각 그룹 디바이스 시드값으로부터 갱신 예비 그룹 시드값을 생성하고(S83), 통신 그룹의 각 그룹 디바이스 정보로부터 갱신 예비 통신 그룹 정보를 생성한다(S84). 여기서 갱신 예비 그룹 시드값은 앞서 설명한 예비 그룹 시드값과 같이 자신을 제외한 통신 그룹의 다른 그룹 디바이스 시드값의 조합으로 생성되며, 갱신 예비 통신 그룹 정보는 앞서 설명한 예비 통신 그룹 정보와 같이 자신을 제외한 통신 그룹의 다른 그룹 디바이스 정보 조합으로 생성된다.Referring to FIG. 10 in more detail, when a shared key of group communication is to be updated, the server generates a shared key update message and transmits it to the group device of the communication group (S81). Each group device of the communication group receiving the shared key update message generates its own group device seed key, and sends an update device information message including the seed combination value including the generated group device seed key and the group device information to the server. Transmit (S82). Receiving each update device information message from the group device of the communication group, the server generates an update spare group seed value from each group device seed value of the communication group (S83), and updates spare communication group information from each group device information of the communication group. To generate (S84). Here, the update spare group seed value is generated by a combination of other group device seed values of the communication group except for itself, such as the preliminary group seed value described above, and the update spare communication group information is a communication except for itself, as described above. It is created with other group device information combinations of the group.

서버는 갱신 예비 그룹 시드값, 갱신 예비 통신 그룹 정보 및 서버 정보를 구비하는 갱신 예비 정보 메시지를 생성하여 통신 그룹의 각 그룹 디바이스로 송신한다(S85). 갱신 예비 정보 메시지를 수신한 통신 그룹의 각 그룹 디바이스는 수신한 갱신 예비 그룹 시드값과 자신이 보유하고 있는 그룹 디바이스 시드값으로부터 갱신 그룹 시드값을 생성하며, 수신한 갱신 예비 통신 그룹 정보와 자신이 보유하고 있는 그룹 디바이스 정보로부터 갱신 통신 그룹 정보를 생성한다. 통신 그룹의 각 그룹 디바이스는 갱신 통신 그룹 정보, 서버 정보 및 갱신 그룹 시드값을 구비하는 갱신 키 교환 메시지를 생성하여 서버로 송신한다(S86). 여기서 갱신 키 교환 메시지는 각 그룹 디바이스의 갱신 통신 그룹 정보, 서버 정보 및 갱신 그룹 시드값 순서의 해쉬값을 더 구비하고 있다.The server generates an update preliminary information message including the update preliminary group seed value, the update preliminary communication group information, and the server information and transmits it to each group device of the communication group (S85). Each group device in the communication group that receives the update reserve information message generates an update group seed value from the received update reserve group seed value and the group device seed value it holds. Update communication group information is generated from the group device information held. Each group device in the communication group generates and transmits an update key exchange message including the update communication group information, the server information, and the update group seed value to the server (S86). The update key exchange message further includes a hash value of the update communication group information, the server information, and the update group seed value of each group device.

서버는 통신 그룹 각 그룹 디바이스로부터 수신한 갱신 키 교환 메시지의 갱신 통신 그룹 정보, 서버 정보 및 갱신 그룹 시드값을 서버가 보유하고 있는 해쉬 함수에 적용한 해쉬값과 갱신 키 교환 메시지의 해쉬값과 비교하여 갱신 키 교환 메시지의 무결성을 판단하며, 통신 그룹 각 그룹 디바이스로부터 수신한 갱신 키 교환 메시지의 갱신 키가 서로 동일한지 판단한다(S87). 판단 결과 통신 그룹 각 그룹 디바이스의 갱신 키가 서로 동일한 경우, 서버 정보, 각 그룹 디바이스의 갱신 통신 그룹 정보와 갱신 그룹 시드값를 구비하는 갱신 키 교환 확인 메시지를 생성하여 통신 그룹의 각 그룹 디바이스로 송신한다(S88). 갱신 키 교환 확인 메시지를 수신한 통신 그룹의 각 그룹 디바이스는 서버 정보, 갱신 통신 그룹 정보 및 갱신 그룹 시드값의 조합으로 이루어진 공통의 갱신 키를 생성하여 통신 그룹의 각 그룹 디바이스에서 송수신되는 메시지를 암호화하는데 사용되는 공유 키로 사용한다. 여기서 갱신 키 교환 확인 메시지는 각 그룹 디바이스의 서버 정보, 갱신 통신 그룹 정보 및 갱신 그룹 시드값 순서의 해쉬값을 더 구비하고 있다. 바람직하게, 통신 그룹 각 그룹 디바이스는 수신한 갱신 키 교환 확인 메시지의 서버 정보, 갱신 통신 그룹 정보 및 갱신 그룹 시드값을 서버가 보유하고 있는 해쉬 함수에 적용한 해쉬값과 갱신 키 교환 확인 메시지의 해쉬값과 비교하여 갱신 키 교환 확인 메시지의 무결성을 판단한다.
The server compares the update communication group information, the server information, and the update group seed value of the update key exchange message received from each group device with the hash value applied to the hash function held by the server and the hash value of the update key exchange message. The integrity of the update key exchange message is determined, and whether the update keys of the update key exchange message received from each group device in the communication group are the same (S87). As a result of the determination, when the update key of each group device is the same, an update key exchange confirmation message including server information, update communication group information of each group device, and update group seed value is generated and transmitted to each group device of the communication group. (S88). Each group device in the communication group that receives the update key exchange confirmation message generates a common update key consisting of a combination of server information, update communication group information, and update group seed values to encrypt messages sent and received at each group device in the communication group. Used as the shared key used to do this. The update key exchange confirmation message further includes a hash value of server information, update communication group information, and update group seed value order of each group device. Preferably, each group device of the communication group applies a hash value of the server information, the update communication group information, and the update group seed value of the received update key exchange confirmation message to a hash function held by the server and the hash value of the update key exchange confirmation message. The integrity of the renewal key exchange confirmation message is determined by comparing with.

도 11은 통신 그룹에서 탈퇴하는 탈퇴 디바이스를 서버에 등록하는 단계를 보다 구체적으로 설명하는 흐름도이다.11 is a flowchart illustrating in more detail the step of registering with the server the withdrawal device leaving the communication group.

도 11을 참고로 보다 구체적으로 살펴보면, 통신 그룹의 그룹 디바이스 중 통신 그룹에서 탈퇴하고자 하는 탈퇴 디바이스가 존재하는 경우 탈퇴 디바이스는 탈퇴 디바이스의 식별자를 구비하는 탈퇴 요청 메시지를 생성하고, 생성한 탈퇴 요청 메시지를 서버로 송신한다(S91). 탈퇴 요청 메시지를 수신하는 경우, 서버는 탈퇴 요청 메시지에 응답하여 서버에 등록되어 있는 통신 그룹에서 탈퇴 디바이스의 식별자를 삭제하여 서버에 등록되어 있는 통신 그룹 정보를 갱신한다(S93). 서버에서 통신 그룹 정보의 갱신이 완료된 후, 서버는 탈퇴 디바이스에게 탈퇴 완료 메시지를 송신하며, 탈퇴 디바이스를 제외한 통신 그룹을 구성하는 그룹 디바이스 사이의 공유 키를 앞서 도 10을 참고로 설명한 갱신 방법으로 갱신한다(S95).
Referring to FIG. 11 in more detail, when there is a withdrawal device to be withdrawn from a communication group among the group devices of the communication group, the withdrawal device generates an withdrawal request message including an identifier of the withdrawal device, and generates the withdrawal request message. To the server (S91). When receiving the exit request message, the server updates the communication group information registered in the server by deleting the identifier of the exit device from the communication group registered in the server in response to the exit request message (S93). After the update of the communication group information is completed in the server, the server transmits a withdrawal completion message to the withdrawal device, and updates the shared key between the group devices constituting the communication group except the withdrawal device with the update method described with reference to FIG. (S95).

한편, 상술한 본 발명의 실시 예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성 가능하고, 컴퓨터로 읽을 수 있는 기록 매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다.Meanwhile, the above-described embodiments of the present invention can be written as a program that can be executed in a computer, and can be implemented in a general-purpose digital computer that operates the program using a computer-readable recording medium.

상기 컴퓨터로 읽을 수 있는 기록 매체는 마그네틱 저장 매체(예를 들어, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 저장 매체를 포함한다.
The computer-readable recording medium may be a magnetic storage medium (e.g., ROM, floppy disk, hard disk, etc.), an optical reading medium (e.g. CD ROM, Lt; / RTI > transmission).

본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다. While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is evident that many alternatives, modifications and variations will be apparent to those skilled in the art. Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.

10: 서버 20: 네트워크
30: 디바이스 네트워크
10: server 20: network
30: device network

Claims (17)

안전한 채널로 접속되어 있는 서버와 다수의 디바이스를 구비하는 통신 시스템에서 상기 서버를 통한 상기 디바이스 사이의 공유 키 교환 방법에 있어서,
(a) 상기 다수의 디바이스 중 요청 디바이스에서 생성된 제1 시드값과 상기 요청 디바이스가 통신 요청하는 통신 디바이스의 정보를 수신하는 단계;
(b) 상기 서버로부터 상기 통신 디바이스로 상기 서버의 시드값과 상기 서버 정보를 송신하는 단계;
(c) 상기 통신 디바이스로부터 시드값과 상기 통신 디바이스의 정보를 상기 서버에서 수신하는 경우, 상기 요청 디바이스 또는 상기 통신 디바이스의 예비 그룹 시드값 및 상기 요청 디바이스 또는 상기 통신 디바이스의 예비 통신 그룹 정보를 상기 요청 디바이스와 상기 통신 디바이스에 각각 송신하는 단계;
(d) 상기 서버에서 상기 요청 디바이스 또는 상기 통신 디바이스로부터 그룹 시드값, 통신 그룹 정보 및 서버 정보를 구비하는 키 교환 메시지를 수신하는 경우 상기 키 교환 메시지에 기초하여 상기 요청 디바이스와 상기 통신 디바이스 사이에서 교환된 키의 동일성을 판단하고, 상기 요청 디바이스와 상기 통신 디바이스 사이에서 교환된 키가 서로 동일한 경우 키 교환 확인 메시지를 상기 요청 디바이스와 상기 통신 디바이스에 각각 송신하는 단계를 포함하며,
상기 요청 디바이스와 상기 통신 디바이스는 상기 키 교환 확인 메시지에 기초하여 상기 요청 디바이스와 상기 통신 디바이스 사이에서 서로 공유하는 공유 키를 생성하는 것을 특징으로 하는 공유 키 교환 방법.
A method for exchanging a shared key between a device via a server in a communication system including a server connected to a secure channel and a plurality of devices, the method comprising:
(a) receiving a first seed value generated at a requesting device among the plurality of devices and information of a communication device to which the requesting device requests communication;
(b) transmitting a seed value of the server and the server information from the server to the communication device;
(c) when receiving the seed value from the communication device and the information of the communication device at the server, the preliminary group seed value of the requesting device or the communication device and the preliminary communication group information of the requesting device or the communication device; Transmitting to the requesting device and the communication device respectively;
(d) between the requesting device and the communication device based on the key exchange message when the server receives a key exchange message including a group seed value, communication group information, and server information from the requesting device or the communication device. Determining an identity of the exchanged keys, and sending a key exchange confirmation message to the requesting device and the communication device, respectively, if the keys exchanged between the requesting device and the communication device are the same;
The requesting device and the communication device generate a shared key shared between the requesting device and the communication device based on the key exchange confirmation message.
제 1 항에 있어서, 상기 키 교환 방법은
상기 다수의 디바이스 중 요청 디바이스와 상기 서버 사이에서 공유하는 비밀키(XY)로 암호화된 상기 요청 디바이스의 패스워드를 상기 요청 디바이스로부터 수신하여 상기 요청 디바이스의 패스워드를 상기 서버에 등록하는 단계를 더 포함하는 것을 특징으로 하는 공유 키 교환 방법.
The method of claim 1, wherein the key exchange method is
Receiving a password of the requesting device encrypted with a secret key XY shared between the requesting device and the server among the plurality of devices from the requesting device and registering the password of the requesting device with the server; Shared key exchange method, characterized in that.
제 2 항에 있어서, 상기 요청 디바이스의 패스워드를 상기 서버에 등록하는 단계는
상기 요청 디바이스에서 생성한 제1 행렬(X)과 제1 행렬의 의사역행렬(X')의 곱을 상기 요청 디바이스로부터 수신하는 단계;
상기 서버에서 생성한 제2 행렬(Y)과 제2 행렬의 의사역행렬(Y')과 상기 제1 행렬(X) 및 제1 행렬의 의사역행렬(X')의 곱으로부터 행렬 조합(XX'Y, XX'YY')를 생성하고 요청 디바이스로 송신하여 상기 요청 디바이스에게 상기 서버의 공유 비밀키(Y)를 제공하는 단계;
상기 요청 디바이스로부터 수신한 행렬 조합(XYY')으로부터 상기 요청 디바이스의 공유 비밀키(X)를 획득하고, 상기 요청 디바이스와 상기 서버의 공유 비밀키(XY)로 상기 요청 디바이스의 시드 생성값(M)을 암호화하여 상기 요청 디바이스로 송신하는 단계; 및
상기 공유 비밀키(XY)로 암호화된 상기 요청 디바이스의 패스워드를 상기 요청 디바이스로부터 수신하여 상기 요청 디바이스를 상기 서버에 등록하는 단계를 포함하는 것을 특징으로 하는 공유 키 교환 방법.
3. The method of claim 2, wherein registering the password of the requesting device with the server
Receiving from the requesting device a product of a first matrix (X) generated at the requesting device and a pseudo inverse of the first matrix (X ');
Matrix combination (XX'Y) from a product of the second matrix (Y) generated by the server and the pseudoinverse matrix (Y ') of the second matrix and the pseudoinverse matrix (X') of the first matrix (X) and the first matrix XX'YY ') and send it to the requesting device to provide the requesting device with a shared secret key (Y) of the server;
The shared secret key (X) of the request device is obtained from the matrix combination (XYY ') received from the request device, and the seed generation value (M) of the request device is used as the shared secret key (XY) of the request device and the server. Encrypting and transmitting) to the requesting device; And
Receiving the password of the requesting device encrypted with the shared secret key (XY) from the requesting device and registering the requesting device with the server.
제 3 항에 있어서, 상기 요청 디바이스는 시드 생성값(M)과 상기 시드 생성값(M)의 해쉬값을 구비하는 등록 메시지를 상기 공유 비밀키(XY)로 암호화하여 상기 서버로 송신하며,
상기 서버는 공유 비밀키(XY)로 상기 등록 메시지를 복호화하며, 상기 복호화된 시드 생성값과 상기 시드 생성값의 해쉬값을 비교하여 상기 등록 메시지의 무결성을 판단하는 것을 특징으로 하는 공유 키 교환 방법.
The method of claim 3, wherein the requesting device encrypts a registration message including a seed generation value M and a hash value of the seed generation value M with the shared secret key XY, and transmits the registration message to the server.
The server decrypts the registration message with a shared secret key XY and compares the decrypted seed generation value with the hash value of the seed generation value to determine the integrity of the registration message. .
제 1 항에 있어서, 상기 (a) 단계는
상기 서버에서 상기 요청 디바이스로부터 그룹통신 요청 메시지를 수신하는 단계;
상기 서버에서 상기 그룹통신 요청 메시지에 구비되어 있는 상기 요청 디바이스 식별자에 기초하여 상기 요청 디바이스가 상기 서버에 등록된 디바이스인지 검증하는 단계;
상기 서버에서 검증 결과에 따라 상기 요청 디바이스로 상기 서버에 등록된 디바이스 중 통신 가능한 통신 가능 디바이스 정보를 송신하는 단계; 및
상기 요청 디바이스로부터 상기 요청 디바이스에서 생성된 제1 시드값를 구비하는 상기 요청 디바이스의 시드 조합값(A1)과 상기 통신 가능 디바이스 중 상기 요청 디바이스가 통신 요청하는 통신 디바이스 정보를 수신하는 단계를 포함하는 것을 특징으로 하는 공유 키 교환 방법.
The method of claim 1, wherein step (a)
Receiving a group communication request message from the requesting device at the server;
Verifying, by the server, whether the requesting device is a device registered with the server based on the request device identifier included in the group communication request message;
Transmitting communicable device information among devices registered in the server to the requesting device according to a verification result in the server; And
Receiving from the requesting device a seed combination value A 1 of the requesting device having a first seed value generated at the requesting device and communication device information requested by the requesting device of the communicable devices; Shared key exchange method, characterized in that.
제 5 항에 있어서, 상기 요청 디바이스의 시드 조합값(A1)은 아래의 수학식(1)에 의해 생성되며,
[수학식 1]
Figure 112013069126350-pat00011

여기서
Figure 112013069126350-pat00012
은 상기 요청 디바이스에서 생성한 제1 시드값이며, M1은 상기 서버에서 생성하여 상기 요청 디바이스로 제공된 제1 시드 생성값이며, pw1은 요청 디바이스의 패스워드인 것을 특징으로 하는 공유 키 교환 방법.
The seed combination value A 1 of the requesting device is generated by Equation 1 below.
[Equation 1]
Figure 112013069126350-pat00011

here
Figure 112013069126350-pat00012
Is a first seed value generated by the requesting device, M 1 is a first seed generation value generated by the server and provided to the requesting device, and pw 1 is a password of the requesting device.
제 1 항에 있어서, 상기 (b) 단계는
상기 통신 디바이스 정보에 기초하여 상기 서버에 등록된 통신 가능 디바이스 중 상기 요청 디바이스가 통신 요청한 통신 디바이스와 상기 요청 디바이스로 통신 그룹을 생성하는 단계;
상기 서버에서 서버 시드값을 생성하고 상기 통신 디바이스에 해당하는, 상기 서버 시드값을 구비하는 서버 시드 조합값(Bi)을 생성하는 단계;
상기 통신 디바이스로 서버 시드 조합값, 상기 서버 정보, 상기 서버 시드값과 상기 서버 정보의 해쉬값을 송신하는 단계를 포함하는 것을 특징으로 하는 공유 키 교환 방법.
2. The method of claim 1, wherein step (b)
Creating a communication group with the requesting device and the communication device requested by the requesting device among the communication devices registered in the server based on the communication device information;
Generating a server seed value at the server and generating a server seed combination value (B i ) with the server seed value corresponding to the communication device;
And transmitting a server seed combination value, the server information, the server seed value, and a hash value of the server information to the communication device.
제 7 항에 있어서,
상기 서버 시드 조합값(Bi)은 아래의 수학식(2)에 의해 생성되며,
[수학식 2]
Figure 112012010363718-pat00013

여기서
Figure 112012010363718-pat00014
은 상기 서버 시드값이며, Mi은 상기 서버에서 생성하여 상기 통신 디바이스에 각각 제공된 시드 생성값이며, pwi은 통신 디바이스 각각의 패스워드인 것을 특징으로 하는 공유 키 교환 방법.
The method of claim 7, wherein
The server seed combination value (B i ) is generated by the following equation (2),
&Quot; (2) "
Figure 112012010363718-pat00013

here
Figure 112012010363718-pat00014
Is the server seed value, M i is a seed generation value generated at the server and provided to the communication device, respectively, and pw i is a password of each communication device.
제 1 항에 있어서, 상기 (c) 단계는
상기 통신 디바이스로부터 수신한 상기 통신 디바이스의 시드 조합값에서 상기 통신 디바이스의 시드값을 획득하는 단계;
상기 통신 디바이스 시드값으로부터 상기 요청 디바이스에 대한 예비 그룹 시드값을 계산하고, 상기 요청 디바이스 시드값 및 상기 통신 디바이스에서 해당 통신 디바이스(i)를 제외한 나머지 통신 디바이스의 시드값으로부터 상기 해당 통신 디바이스(i)에 대한 예비 그룹 시드값을 계산하는 단계;
상기 통신 디바이스 정보로부터 상기 요청 디바이스에 대한 예비 통신 그룹 정보를 생성하고, 상기 요청 디바이스 정보 및 상기 통신 디바이스에서 해당 통신 디바이스(i)를 제외한 나머지 통신 디바이스의 정보로부터 상기 해당 통신 디바이스(i)에 대한 예비 통신 그룹 정보를 생성하는 단계;
상기 요청 디바이스로 상기 요청 디바이스에 해당하는 상기 예비 그룹 시드값을 구비하는 예비 그룹 시드 조합값, 상기 예비 통신 그룹 정보 및 상기 서버의 시드 조합값을 송신하는 단계;
상기 통신 디바이스로 상기 통신 디바이스 각각에 해당하는 상기 예비 그룹 시드값을 구비하는 예비 그룹 시드 조합값과 상기 예비 통신 그룹 정보를 상기 통신 디바이스로 각각 송신하는 단계를 포함하는 것을 특징으로 하는 공유 키 교환 방법.
The method of claim 1, wherein step (c)
Obtaining a seed value of the communication device from a seed combination value of the communication device received from the communication device;
The preliminary group seed for the requesting device is calculated from the communication device seed value, and the corresponding communication device (i) is obtained from the request device seed value and the seed values of the other communication devices except for the communication device (i) in the communication device. Calculating a preliminary group seed value for;
Generating preliminary communication group information for the requesting device from the communication device information, and for the corresponding communication device (i) from the requesting device information and information of the remaining communication device except for the communication device (i) in the communication device; Generating preliminary communication group information;
Transmitting a preliminary group seed combination value having the preliminary group seed value corresponding to the request device, the preliminary communication group information, and a seed combination value of the server to the requesting device;
And transmitting the preliminary group seed combination value having the preliminary group seed value corresponding to each of the communication devices and the preliminary communication group information to the communication device, to the communication device, respectively. .
제 1 항에 있어서, 상기 (d) 단계는
상기 요청 디바이스 및 상기 통신 디바이스로부터 통신 그룹 정보(K), 서버 정보(S) 및 그룹 시드값(G) 순서의 해쉬값의 키 교환 메시지를 각각 수신하는 단계;
상기 키 교환 메시지의 해쉬값과 상기 서버가 보유하고 있는 통신 그룹 정보(K), 서버 정보(S) 및 그룹 시드값(G) 순서의 해쉬값을 비교하여 상기 요청 디바이스와 상기 통신 디바이스 사이에서 교환된 키의 동일성을 판단하는 단계; 및
상기 요청 디바이스와 상기 통신 디바이스 사이에서 교환된 키가 서로 동일한 경우, 서버 정보(S), 통신 그룹 정보(K) 및 그룹 시드값(G) 순서의 해쉬값의 키 교환 확인 메시지를 상기 요청 디바이스와 상기 통신 디바이스로 각각 송신하는 단계를 포함하는 것을 특징으로 하는 공유 키 교환 방법.
The method of claim 1, wherein step (d)
Receiving key exchange messages of hash values in order of communication group information (K), server information (S), and group seed value (G) from the requesting device and the communication device, respectively;
The hash value of the key exchange message and the hash value of the communication group information (K), server information (S), and group seed value (G) held by the server are compared and exchanged between the requesting device and the communication device. Determining the identity of the generated key; And
When the keys exchanged between the requesting device and the communication device are the same, a key exchange confirmation message of a hash value in the order of server information (S), communication group information (K), and group seed value (G) is sent to the requesting device. Transmitting each to the communication device.
제 1 항에 있어서, 상기 공유 키 교환 방법은
(e) 상기 통신 그룹을 구성하는 그룹 디바이스로부터 수신한 갱신 키 교환 메시지에 기초하여 상기 그룹 디바이스 사이에서 교환된 갱신 키의 동일성을 판단하고, 상기 그룹 디바이스 사이에서 교환된 갱신 키가 서로 동일한 경우 갱신 키 교환 확인 메시지를 상기 통신 디바이스로 송신하여 상기 통신 디바이스 사이의 공유 키를 갱신하는 단계를 더 포함하는 것을 특징으로 하는 공유 키 교환 방법.
The method of claim 1, wherein the shared key exchange method is
(e) determining the sameness of the update keys exchanged between the group devices based on the update key exchange message received from the group device constituting the communication group, and updating if the update keys exchanged between the group devices are the same. Sending a key exchange confirmation message to the communication device to update a shared key between the communication devices.
제 11 항에 있어서, 상기 공유 키를 갱신하는 단계는
상기 서버에서 상기 통신 디바이스에게 공유 키 갱신 메시지를 송신하고 상기 공유 키 갱신 메시지에 응답하여 상기 그룹 디바이스 각각으로부터 그룹 디바이스의 시드키를 수신하는 단계;
상기 통신 그룹에서 해당 그룹 디바이스를 제외한 나머지 그룹 디바이스의 시드값으로부터 상기 해당 그룹 디바이스에 대한 갱신 예비 그룹 시드값을 계산하는 단계;
상기 통신 그룹에서 해당 그룹 디바이스를 제외한 나머지 그룹 디바이스의 정보로부터 상기 해당 그룹 디바이스에 대한 갱신 예비 통신 그룹 정보를 생성하는 단계;
상기 갱신 예비 그룹 시드값과 상기 갱신 예비 통신 그룹 정보를 구비하는 갱신 예비 정보 메시지를 상기 그룹 디바이스로 송신하는 단계;
상기 갱신 예비 정보 메시지에 응답하여 상기 그룹 디바이스로부터 갱신 통신 그룹 정보(K), 서버 정보(S) 및 갱신 통신 그룹 시드값(G) 순서의 해쉬값을 구비하는 갱신 키 교환 메시지를 수신하는 단계;
상기 갱신 키 교환 메시지의 해쉬값과 상기 서버가 보유하고 있는 통신 그룹 정보(K), 서버 정보(S) 및 그룹 시드값(G)의 해쉬값을 비교하여 상기 그룹 디바이스 사이에서 교환된 갱신 키의 동일성을 판단하는 단계;
상기 그룹 디바이스 사이에서 교환된 갱신 키가 서로 동일한 경우, 서버 정보(S), 통신 그룹 정보(K) 및 그룹 시드값(G) 순서의 해쉬값을 구비하는 갱신 키 교환 확인 메시지를 상기 그룹 디바이스로 송신하는 단계를 포함하는 것을 특징으로 하는 공유 키 교환 방법.
12. The method of claim 11, wherein updating the shared key
Sending a shared key update message to the communication device at the server and receiving a seed key of a group device from each of the group devices in response to the shared key update message;
Calculating an update spare group seed value for the group device from the seed values of the other group devices except for the group device in the communication group;
Generating update preliminary communication group information for the corresponding group device from the information of the other group device except for the corresponding group device in the communication group;
Sending an update reserve information message including the update reserve group seed value and the update reserve communication group information to the group device;
In response to the update preliminary information message, receiving, from the group device, an update key exchange message having a hash value in the order of update communication group information (K), server information (S), and update communication group seed value (G);
The hash value of the update key exchange message and the hash value of the communication group information (K), the server information (S), and the group seed value (G) held by the server are compared to compare the hash value of the update key exchanged between the group devices. Determining identity;
When the update keys exchanged between the group devices are the same, an update key exchange confirmation message including a hash value in the order of server information (S), communication group information (K), and group seed value (G) is sent to the group device. And transmitting the shared key.
제 11 항에 있어서, 상기 공유 키 교환 방법은
(f)상기 통신 그룹의 그룹 디바이스 중 탈퇴 디바이스로부터 탈퇴 요청 메시지를 수신하는 경우, 상기 서버에 등록되어 있는 통신 그룹 정보를 갱신하고 상기 탈퇴 디바이스로 탈퇴 완료 메시지를 송신하는 단계를 더 포함하며,
상기 탈퇴 완료 메시지의 송신 후, 상기 (e) 단계를 수행하여 상기 그룹 디바이스 사이의 공유 키를 갱신하는 것을 특징으로 하는 공유 키 교환 방법.
12. The method of claim 11, wherein the shared key exchange method is
(f) when receiving a withdrawal request message from a withdrawal device among the group devices of the communication group, updating communication group information registered in the server and transmitting a withdrawal completion message to the withdrawal device,
And (e) updating the shared key between the group devices after transmitting the withdrawal completion message.
제 13 항에 있어서, 상기 (f) 단계는
상기 통신 그룹의 그룹 디바이스 중 탈퇴 디바이스로부터 탈퇴 디바이스의 식별자를 구비하는 탈퇴 요청 메시지를 수신하는 단계;
상기 탈퇴 요청 메시지에 응답하여 상기 탈퇴 디바이스를 삭제하여 상기 서버에 등록되어 있는 통신 그룹 정보를 갱신하는 단계; 및
상기 통신 그룹 정보의 갱신이 완료된 후, 상기 탈퇴 디바이스에게 탈퇴 완료 메시지를 송신하는 단계를 더 포함하는 것을 특징으로 하는 공유 키 교환 방법.
The method of claim 13, wherein step (f)
Receiving an exit request message with an identifier of an exit device from an exit device among the group devices in the communication group;
Updating the communication group information registered in the server by deleting the withdrawal device in response to the withdrawal request message; And
And after the updating of the communication group information is completed, sending a withdrawal completion message to the withdrawal device.
안전한 채널로 접속되어 있는 서버와 다수의 디바이스를 구비하는 통신 시스템에서 상기 서버를 통한 상기 디바이스 사이의 공유 키 교환 방법에 있어서,
상기 서버에서 상기 다수의 디바이스 중 통신 그룹의 그룹 디바이스에게 공유 키 갱신 메시지를 송신하고 상기 공유 키 갱신 메시지에 응답하여 상기 그룹 디바이스로부터 그룹 디바이스의 시드키를 수신하는 단계;
상기 통신 그룹에서 해당 그룹 디바이스를 제외한 나머지 그룹 디바이스의 시드값으로부터 상기 해당 그룹 디바이스에 대한 갱신 예비 그룹 시드값을 계산하는 단계;
상기 통신 그룹에서 해당 그룹 디바이스를 제외한 나머지 그룹 디바이스의 정보로부터 상기 해당 그룹 디바이스에 대한 갱신 예비 통신 그룹 정보를 생성하는 단계;
상기 그룹 디바이스에 대한 갱신 예비 그룹 시드값과 상기 갱신 예비 통신 그룹 정보를 구비하는 갱신 예비 정보 메시지를 상기 그룹 디바이스로 송신하는 단계;
상기 갱신 예비 정보 메시지에 응답하여 상기 그룹 디바이스로부터 통신 그룹 정보(K), 서버 정보(S) 및 그룹 시드값(G) 순서의 해쉬값을 구비하는 갱신 키 교환 메시지를 수신하는 단계;
상기 갱신 키 교환 메시지의 해쉬값과 상기 서버가 보유하고 있는 통신 그룹 정보(K), 서버 정보(S) 및 그룹 시드값(G)의 해쉬값을 비교하여 상기 그룹 디바이스 사이에서 교환된 갱신 키의 동일성을 판단하는 단계;
상기 그룹 디바이스 사이에서 교환된 갱신 키가 서로 동일한 경우, 서버 정보(S), 통신 그룹 정보(K) 및 그룹 시드값(G) 순서의 해쉬값을 구비하는 갱신 키 교환 확인 메시지를 상기 그룹 디바이스로 송신하는 단계를 포함하며,
상기 그룹 디바이스는 상기 갱신 키 교환 확인 메시지에 기초하여 상기 그룹 디바이스 사이에서 서로 공유하는 공유 키를 갱신하여 생성하는 것을 특징으로 하는 공유 키 교환 방법.
A method for exchanging a shared key between a device via a server in a communication system including a server connected to a secure channel and a plurality of devices, the method comprising:
Transmitting, at the server, a shared key update message to a group device of a communication group of the plurality of devices and receiving a seed key of the group device from the group device in response to the shared key update message;
Calculating an update spare group seed value for the group device from the seed values of the other group devices except for the group device in the communication group;
Generating update preliminary communication group information for the corresponding group device from the information of the other group device except for the corresponding group device in the communication group;
Sending to the group device an update preliminary information message comprising an update reserve group seed value for the group device and the update reserve communication group information;
Receiving an update key exchange message having a hash value of communication group information (K), server information (S), and group seed value (G) from the group device in response to the update preliminary information message;
The hash value of the update key exchange message and the hash value of the communication group information (K), the server information (S), and the group seed value (G) held by the server are compared to compare the hash value of the update key exchanged between the group devices. Determining identity;
When the update keys exchanged between the group devices are the same, an update key exchange confirmation message including a hash value in the order of server information (S), communication group information (K), and group seed value (G) is sent to the group device. Transmitting,
And the group device updates and generates a shared key shared between the group devices based on the update key exchange confirmation message.
안전한 채널로 접속되어 있는 서버와 다수의 디바이스를 구비하는 통신 시스템에서 상기 서버를 통한 상기 디바이스 사이의 공유 키 교환 방법에 있어서,
상기 다수의 디바이스 중 통신 그룹에서 탈퇴하는 탈퇴 디바이스로부터 탈퇴 요청 메시지를 수신하는 경우, 상기 서버에 등록되어 있는 통신 그룹 정보를 갱신하고 상기 탈퇴 디바이스로 탈퇴 완료 메시지를 송신하는 단계;
상기 탈퇴 디바이스를 제외한 갱신 통신 그룹의 갱신 그룹 디바이스로 키 갱신 요청 메시지를 송신하는 단계; 및
상기 키 갱신 요청 메시지에 응답하여 상기 갱신 그룹 디바이스로부터 수신한 갱신 키 교환 메시지에 기초하여 상기 갱신 그룹 디바이스 사이에서 교환된 갱신 키의 동일성을 판단하고, 상기 갱신 그룹 디바이스 사이에서 교환된 갱신 키가 서로 동일한 경우 갱신 키 교환 확인 메시지를 상기 갱신 그룹 디바이스로 송신하여 상기 갱신 그룹 디바이스 사이의 공유 키를 갱신하는 단계를 포함하는 것을 특징으로 하는 공유 키 교환 방법.
A method for exchanging a shared key between a device via a server in a communication system including a server connected to a secure channel and a plurality of devices, the method comprising:
When receiving a withdrawal request message from a withdrawal device leaving a communication group among the plurality of devices, updating communication group information registered in the server and transmitting a withdrawal completion message to the withdrawal device;
Transmitting a key update request message to an update group device of an update communication group other than the withdrawal device; And
In response to the key update request message, the identity of the update keys exchanged between the update group devices is determined based on the update key exchange message received from the update group device, and the update keys exchanged between the update group devices are mutually different. If so, transmitting an update key exchange confirmation message to the update group device to update the shared key between the update group devices.
제 16 항에 있어서, 상기 공유 키를 갱신하는 단계는
상기 서버에서 상기 갱신 그룹 디바이스에게 공유 키 갱신 메시지를 송신하고 상기 공유 키 갱신 메시지에 응답하여 상기 갱신 그룹 디바이스로부터 갱신 그룹 디바이스의 시드키를 수신하는 단계;
상기 갱신 통신 그룹에서 해당 갱신 그룹 디바이스를 제외한 나머지 그룹 디바이스의 시드값으로부터 상기 해당 갱신 그룹 디바이스에 대한 갱신 예비 그룹 시드값을 계산하는 단계;
상기 갱신 통신 그룹에서 해당 갱신 그룹 디바이스를 제외한 나머지 갱신 그룹 디바이스의 정보로부터 상기 해당 갱신 그룹 디바이스에 대한 갱신 예비 통신 그룹 정보를 생성하는 단계;
상기 갱신 예비 그룹 시드값과 상기 갱신 예비 통신 그룹 정보를 구비하는 갱신 예비 정보 메시지를 상기 갱신 그룹 디바이스로 송신하는 단계;
상기 갱신 예비 정보 메시지에 응답하여 상기 갱신 그룹 디바이스로부터 갱신 통신 그룹 정보(K), 서버 정보(S) 및 갱신 그룹 시드값(G) 순서의 해쉬값을 구비하는 갱신 키 교환 메시지를 수신하는 단계;
상기 갱신 키 교환 메시지의 해쉬값과 상기 서버가 보유하고 있는 갱신 통신 그룹 정보(K), 서버 정보(S) 및 갱신 그룹 시드값(G)의 해쉬값을 비교하여 상기 갱신 그룹 디바이스 사이에서 교환된 갱신 키의 동일성을 판단하는 단계;
상기 갱신 그룹 디바이스 사이에서 교환된 갱신 키가 서로 동일한 경우 서버 정보(S), 갱신 통신 그룹 정보(K) 및 갱신 그룹 시드값(G) 순서의 해쉬값을 구비하는 갱신 키 교환 확인 메시지를 상기 갱신 그룹 디바이스로 송신하는 단계를 포함하며,
상기 갱신 그룹 디바이스는 상기 갱신 키 교환 확인 메시지에 기초하여 상기 갱신 그룹 디바이스 사이에서 서로 공유하는 공유 키를 갱신하여 생성하는 것을 특징으로 하는 공유 키 교환 방법.
17. The method of claim 16, wherein updating the shared key
Sending a shared key update message to the update group device at the server and receiving a seed key of the update group device from the update group device in response to the shared key update message;
Calculating an update reserve group seed value for the update group device from the seed values of the other group devices except for the update group device in the update communication group;
Generating update preliminary communication group information for the corresponding update group device from information of the remaining update group devices other than the update group device in the update communication group;
Sending an update reserve information message including the update reserve group seed value and the update reserve communication group information to the update group device;
Receiving an update key exchange message having a hash value of update communication group information (K), server information (S), and update group seed value (G) from the update group device in response to the update preliminary information message;
The hash value of the update key exchange message and the hash value of the update communication group information (K), server information (S), and update group seed value (G) held by the server are compared and exchanged between the update group devices. Determining the identity of the update key;
When the update keys exchanged between the update group devices are the same, update the update key exchange confirmation message including a hash value in the order of server information (S), update communication group information (K), and update group seed value (G). Transmitting to the group device,
And the update group device updates and generates a shared key shared between the update group devices based on the update key exchange confirmation message.
KR1020120012949A 2012-02-08 2012-02-08 Method for exchanging group key using trust server in communication network KR101327051B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120012949A KR101327051B1 (en) 2012-02-08 2012-02-08 Method for exchanging group key using trust server in communication network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120012949A KR101327051B1 (en) 2012-02-08 2012-02-08 Method for exchanging group key using trust server in communication network

Publications (2)

Publication Number Publication Date
KR20130091566A KR20130091566A (en) 2013-08-19
KR101327051B1 true KR101327051B1 (en) 2013-11-08

Family

ID=49216712

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120012949A KR101327051B1 (en) 2012-02-08 2012-02-08 Method for exchanging group key using trust server in communication network

Country Status (1)

Country Link
KR (1) KR101327051B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000019652A1 (en) 1998-10-01 2000-04-06 University Of Maryland Distributed shared key generation and management using fractional keys
EP1787249A2 (en) * 2004-09-01 2007-05-23 Webconcepts, Inc. Methods and systems for collaborative demand planning and replenishment
US20090019283A1 (en) 2006-05-01 2009-01-15 Kartik Muralidharan System and method for a secure multi-level network access mechanism using virtual service set identifier broadcast
KR20110055866A (en) * 2009-11-20 2011-05-26 아주대학교산학협력단 Inter-group information sharing method and key generation method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000019652A1 (en) 1998-10-01 2000-04-06 University Of Maryland Distributed shared key generation and management using fractional keys
EP1787249A2 (en) * 2004-09-01 2007-05-23 Webconcepts, Inc. Methods and systems for collaborative demand planning and replenishment
US20090019283A1 (en) 2006-05-01 2009-01-15 Kartik Muralidharan System and method for a secure multi-level network access mechanism using virtual service set identifier broadcast
KR20110055866A (en) * 2009-11-20 2011-05-26 아주대학교산학협력단 Inter-group information sharing method and key generation method

Also Published As

Publication number Publication date
KR20130091566A (en) 2013-08-19

Similar Documents

Publication Publication Date Title
EP3742696B1 (en) Identity management method, equipment, communication network, and storage medium
KR101974452B1 (en) Methods and system for managing personal information based on programmable blockchain and one-id
KR101851261B1 (en) Centralized remote metering system for security based on private block-chained data
CN106911513B (en) trusted device management method based on decentralized network
CN1829144B (en) Cryptographic communication system and method
US11233647B1 (en) Digital identity authentication system
US9124561B2 (en) Method of transferring the control of a security module from a first entity to a second entity
US8656164B2 (en) Authentication system
KR101686167B1 (en) Apparatus and Method for Certificate Distribution of the Internet of Things Equipment
JP5380583B1 (en) Device authentication method and system
CN104412273A (en) Method and system for activation
CN102823217A (en) Certificate authority
CN1798021B (en) Communication supporting server, method and system
JP2009071707A (en) Key sharing method, and key distribution system
KR20120080283A (en) Otp certification device
CN113365264B (en) Block chain wireless network data transmission method, device and system
KR101711023B1 (en) Security device and method moving data using the same
JP6894469B2 (en) Information processing device and its control program
CN112564901A (en) Key generation method and system, storage medium and electronic device
CN107409043B (en) Distributed processing of products based on centrally encrypted stored data
CN114760112B (en) Wireless local area network-oriented intelligent home equipment networking method, system, equipment and storage medium
JP2017108237A (en) System, terminal device, control method and program
JP5937545B2 (en) Mobile terminal, server device, information terminal, and shared terminal management system
WO2019163040A1 (en) Access management system and program thereof
KR101327051B1 (en) Method for exchanging group key using trust server in communication network

Legal Events

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

Payment date: 20161010

Year of fee payment: 4