KR101026764B1 - Secure Data Aggregation Using Data Randomization in Sensor Network and a cluster head therefor - Google Patents

Secure Data Aggregation Using Data Randomization in Sensor Network and a cluster head therefor Download PDF

Info

Publication number
KR101026764B1
KR101026764B1 KR1020080127976A KR20080127976A KR101026764B1 KR 101026764 B1 KR101026764 B1 KR 101026764B1 KR 1020080127976 A KR1020080127976 A KR 1020080127976A KR 20080127976 A KR20080127976 A KR 20080127976A KR 101026764 B1 KR101026764 B1 KR 101026764B1
Authority
KR
South Korea
Prior art keywords
data
randomized
cluster head
sensed data
collection value
Prior art date
Application number
KR1020080127976A
Other languages
Korean (ko)
Other versions
KR20100069319A (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 KR1020080127976A priority Critical patent/KR101026764B1/en
Publication of KR20100069319A publication Critical patent/KR20100069319A/en
Application granted granted Critical
Publication of KR101026764B1 publication Critical patent/KR101026764B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/38Services specially adapted for particular environments, situations or purposes for collecting sensor information
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Abstract

본 발명은 복수의 센서 노드, 복수의 센서 노드에 연결되는 클러스터 헤드 및 복수의 클러스터 헤드에 연결되는 기지국을 포함하는 센서 네트워크에서의 데이터 수집 방법으로서, 클러스터 헤드가, 센서 노드로부터 랜덤화된 감지데이터를 수신하는 단계; 수신한 랜덤화된 감지데이터를 디랜덤화하는 단계; 디랜덤화된 감지데이터에 수집 함수를 실행하여, 부분수집값(PAV)을 생성하는 단계; 생성된 부분수집값을 암호화하는 단계; 암호화한 부분수집값을 기지국으로 전송하는 단계를 포함한다. The present invention provides a data collection method in a sensor network including a plurality of sensor nodes, a cluster head connected to a plurality of sensor nodes, and a base station connected to a plurality of cluster heads, wherein the cluster head is configured to sense data randomized from the sensor node. Receiving; Derandomizing the received randomized sensed data; Generating a partial collection value (PAV) by executing a collection function on the derandomized sensed data; Encrypting the generated partial collection value; And transmitting the encrypted partial collection value to the base station.

센서 네트워크, 클러스터 헤드, 수집 함수, 데이터 수집, 랜덤화, 암호화 Sensor Network, Cluster Head, Acquisition Function, Data Acquisition, Randomization, Encryption

Description

데이터 랜덤화를 이용한 센서 네트워크에서의 데이터 수집 방법 및 클러스터 헤드{Secure Data Aggregation Using Data Randomization in Sensor Network and a cluster head therefor}Secure Data Aggregation Using Data Randomization in Sensor Network and a cluster head therefor}

본 발명은 센서 장비를 이용하여 정보를 수집하고 처리하는 센서 네트워크에 관한것으로서, 특히 클러스터 기반 무선 센서 네트워크에서의 데이터 수집 방법 및 장치에 관한 것이다. The present invention relates to a sensor network for collecting and processing information using sensor equipment, and more particularly, to a data collection method and apparatus in a cluster-based wireless sensor network.

본 발명은 지식경제부 및 정보통신연구진흥원의 유비쿼터스원천기술개발 사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호: 2005-Y-001-04, 과제명: 차세대 시큐리티 기술 개발].The present invention is derived from a study conducted as part of the ubiquitous source technology development project of the Ministry of Knowledge Economy and the Ministry of Information and Communication Research and Development. [Task management number: 2005-Y-001-04, Task name: Development of next-generation security technology].

무선 센서 네트워크는 원격 감시 시스템, 원격 진료 및 무인 탐사 등 다양한 응용을 위하여 특정 영역에서 발생하는 정보를 감지하여 수집하고 이 정보를 무선 통신 기법을 통하여 사용자에게 전달하기 위하여 설계된 무선 네트워크이다. 무선 센서 네트워크(wireless sensor networks: WSN)는 주변 상황 인지를 위한 다양한 센싱, 데이터 프로세싱, 무선 통신 기능을 갖는 센서 노드들로 구성되며, 필요한 모든 곳에 센서를 부착하고 이를 통하여 각종 사물에 대한 인식 정보 및 주변 환경 정보를 감지한 후 실시간으로 네트워크로 전송하여 관련 정보를 처리 및 관리한다. 태그 및 센서로부터 사물이나 환경 정보를 감지한 후 이를 저장, 처리, 통합하여 상황 인식 정보와 지식 콘텐츠를 만들어 활용할 수 있게 되는 결과, 누구나 원하는 시간과 장소에서 필요한 지식과 서비스를 이용할 수 있는 지능형 인프라가 가능해 지는 것이다. The wireless sensor network is a wireless network designed to detect and collect information generated in a specific area for various applications such as a remote monitoring system, telemedicine and unmanned exploration, and to transmit this information to a user through a wireless communication technique. Wireless sensor networks (WSNs) are composed of sensor nodes with various sensing, data processing, and wireless communication functions for perception of surrounding conditions. It detects the surrounding environment information and sends it to the network in real time to process and manage the related information. As a result of detecting objects or environmental information from tags and sensors, storing, processing and integrating them to create and utilize context-aware information and knowledge contents, an intelligent infrastructure that enables anyone to use the necessary knowledge and services at any time and place. It becomes possible.

WSN은 센싱의 정확도와 감지 영역의 확장을 위해 대규모의 센서 노드들로 구성되는 것이 일반적이므로, 대규모 네트워킹 환경에서 다양한 종류의 센서들에 의해 탐지된 정보를 도청이나 위변조의 위협없이 BS로 전달하기 위해 센서 노드 간 상호 인증하고 데이터 통신을 보호할 필요가 있다. WSN is generally composed of large sensor nodes for the accuracy of sensing and expansion of detection area. Therefore, in order to deliver information detected by various types of sensors to the BS without threat of eavesdropping or forgery in large networking environments There is a need for mutual authentication between sensor nodes and to secure data communication.

즉, 데이터 수집은 WSN의 필수 기능이라 할 수 있지만, WSN의 다양한 애플리케이션들은 민감한 데이터(Sensitive data)를 가지고 있기 때문에, 개인정보(또는 데이터)를 누설하지 않고 데이터를 수집하기 위해 보안이 반드시 필요하다.In other words, data collection is an essential function of WSN, but since various applications of WSN have sensitive data, security is necessary to collect data without leaking personal information (or data). .

종래에는, 데이터 수집의 보안성을 위해 몇몇의 암호 구조와 시나리오가 사용되어 왔다. 가장 단순한 형태(모델)의 보안 체계는 센서 측에서 데이터 레코드를 암호화하고, 수집기가 대칭 키나 비대칭 키를 이용하여 데이터 레코드를 복호화하고 수집하는 구조에 기반한다. 또 다른 진보된 모델로는 호머모피즘(homomorphism) 암호화와 수집 메시지 인증 코드 등을 포함하는 수집기반의 암호화 기능이 있다. 현재까지의 연구 결과들은 모두 다음 두 가지 사항을 필요로 한다. In the past, several cryptographic structures and scenarios have been used for the security of data collection. In its simplest form, the security scheme is based on the structure in which the data record is encrypted on the sensor side and the collector decrypts and collects the data record using symmetric or asymmetric keys. Another advanced model is collection-based encryption, including homemorphism encryption and collection message authentication codes. All of the research results to date require two things:

(1) 대칭 키나 비대칭 키 구조 모델에서 보안 구조의 존재 (1) Presence of security structures in symmetric or asymmetric key structure models

(2) 데이터 암호화/복호화 하는데 필요한 오버헤드(2) overhead required to encrypt / decrypt data

본 특허의 목적은 종래의 데이터 수집에 있어 수반되는 상기 두 가지 사항 중 오버헤드를 개선하는 것이다. 본 발명에서는, 합리적인 보안성을 제공하면서도 광범위한 수집 함수가 적용될 수 있도록 다음 두 가지 방식을 제공한다. The purpose of this patent is to improve the overhead of the two issues involved in conventional data collection. In the present invention, the following two methods are provided so that a wide range of collection functions can be applied while providing reasonable security.

(1) 순수 랜덤화(randomization-only) 방식(1) Pure randomization-only method

(2) 하이브리드 방식(2) hybrid system

본 발명의 일 측면에 따르면, 복수의 센서 노드, 복수의 센서 노드에 연결되는 클러스터 헤드 및 복수의 클러스터 헤드에 연결되는 기지국을 포함하는 센서 네트워크에서의 데이터 수집 방법으로서, 상기 클러스터 헤드가, 센서 노드로부터 랜덤화된 감지데이터를 수신하는 단계; 상기 수신한 랜덤화된 감지데이터를 디랜덤화하는 단계; 상기 디랜덤화된 감지데이터에 수집 함수를 실행하여, 부분수집값(PAV)을 생성하는 단계; 상기 생성된 부분수집값을 암호화하는 단계; 상기 암호화한 부분수집값을 기지국으로 전송하는 단계를 포함하는 데이터 수집 방법이 제공된다.According to an aspect of the present invention, a data collection method in a sensor network including a plurality of sensor nodes, a cluster head connected to a plurality of sensor nodes, and a base station connected to a plurality of cluster heads, the cluster head comprising: a sensor node Receiving randomized sensing data from the apparatus; Derandomizing the received randomized sensed data; Generating a partial collection value (PAV) by executing a collection function on the derandomized sensed data; Encrypting the generated partial collection value; A data collection method is provided, comprising transmitting the encrypted partial collection value to a base station.

상기 데이터 수집 방법에서는, 클러스터 헤드 및 상기 클러스터 헤드에 연결된 센서 노드들간에 랜덤화 및 디랜덤화를 위한 분포 파라미터가 공유되어 있을 수 있다.In the data collection method, a distribution parameter for randomization and derandomization may be shared between a cluster head and sensor nodes connected to the cluster head.

상기 데이터 수집 방법에서는, 상기 랜덤화된 감지데이터는, 상기 분포 파라미터에 기반하여 생성된 제1 랜덤 논스를 이용하여 랜덤화되어 있을 수 있다.In the data collection method, the randomized sensed data may be randomized using a first random nonce generated based on the distribution parameter.

상기 디랜덤화하는 단계에서는, 상기 분포 파라미터에 기반하여 생성된 제2 랜덤 논스를 이용하여 디랜덤화될 수 있다.In the derandomizing step, derandomization may be performed using a second random nonce generated based on the distribution parameter.

본 발명의 일 측면에 따르면, 복수의 센서 노드, 복수의 센서 노드에 연결되는 클러스터 헤드 및 복수의 클러스터 헤드에 연결되는 기지국을 포함하는 센서 네트워크에서의 데이터 수집 방법으로서, 상기 클러스터 헤드에 연결되는 센서 노드들은 랜덤화를 사용하는 제1 서브그룹과 암호화를 사용하는 제2 서브그룹으로 구분되고, 제1 서브그룹으로부터 랜덤화된 감지데이터를 수신하고, 제2 서브그룹으로부터 암호화된 감지데이터를 수신하는 단계; 상기 수신한 랜덤화된 감지데이터 및 암호화된 감지데이터에 각각 디랜덤화 및 복호화를 수행하는 단계; 상기 디랜덤화 및 복호화된 감지데이터에 수집 함수를 실행하여 각각 랜덤화 부분수집값(RPAV) 및 암호화 부분수집값(EPAV)을 생성하는 단계; 상기 랜덤화 부분수집값(RPAV) 및 상기 암호화 부분수집값(EPAV)에 소정의 수집 함수를 수행하여 부분수집값(PAV)을 생성하는 단계; 상기 부분수집값을 암호화하여 기지국으로 전송하는 단계를 포함하는 데이터 수집 방법이 제공된다.According to an aspect of the present invention, a data collection method in a sensor network including a plurality of sensor nodes, a cluster head connected to a plurality of sensor nodes, and a base station connected to a plurality of cluster heads, the sensor connected to the cluster head The nodes are divided into a first subgroup using randomization and a second subgroup using encryption, and receive randomized sensed data from the first subgroup, and receive encrypted sensed data from the second subgroup. step; Performing derandomization and decryption on the received randomized sensed data and encrypted sensed data, respectively; Executing a collection function on the derandomized and decrypted sensed data to generate a randomized partial collection value (RPAV) and an encrypted partial collection value (EPAV), respectively; Generating a partial collection value (PAV) by performing a predetermined collection function on the randomized partial collection value (RPAV) and the encrypted partial collection value (EPAV); There is provided a data collection method comprising the step of encrypting the partial collection value and transmitting it to a base station.

상기 데이터 수집 방법에서는, 제1 서브그룹에 속하는 센서 노드와는 랜덤화 및 디랜덤화를 위한 분포 파라미터가 공유되어 있고, 제2 서브그룹에 속하는 센서 노드와는 암호화 및 복호화에 대한 대칭 키가 설정되어 있을 수 있다.In the data collection method, a distribution parameter for randomization and derandomization is shared with a sensor node belonging to a first subgroup, and a symmetric key for encryption and decryption is set with a sensor node belonging to a second subgroup. It may be.

상기 데이터 수집 방법에서는, 상기 랜덤화된 감지데이터 및 암호화된 감지데이터에는 상기 랜덤화 및 암호화를 표시하는 플래그가 각각 삽입되어 있을 수 있다.In the data collection method, a flag indicating the randomization and encryption may be inserted into the randomized sensed data and the encrypted sensed data, respectively.

본 발명의 일 측면에 따르면, 복수의 센서 노드 및 기지국과 연결되는 센서 네트워크에서의 클러스터 헤드로서, 센서 노드로부터 랜덤화된 감지데이터를 수신하는 제1 통신부; 상기 랜덤화된 감지데이터를 디랜덤화하는 디랜덤화부; 상기 디랜덤화된 감지데이터에 수집 함수를 실행하여, 부분수집값을 생성하는 부분수집값 산출부; 상기 부분수집값을 기지국으로 전송하는 제2 통신부를 포함하는 클러스터 헤드가 제공된다.According to an aspect of the present invention, a cluster head in a sensor network connected to a plurality of sensor nodes and a base station, the cluster head comprising: a first communication unit for receiving randomized sensing data from a sensor node; A derandomizer for derandomizing the randomized sensed data; A partial collection value calculation unit configured to generate a partial collection value by executing a collection function on the derandomized sensed data; A cluster head including a second communication unit for transmitting the partial collection value to a base station is provided.

본 발명의 일 측면에 따르면, 복수의 센서 노드 및 기지국과 연결되는 센서 네트워크에서의 클러스터 헤드로서, 상기 클러스터 헤드에 연결되는 센서 노드들은 랜덤화를 사용하는 제1 서브그룹과 암호화를 사용하는 제2 서브그룹으로 구분되고, 상기 클러스터 헤드는, 제1 서브그룹으로부터 랜덤화된 감지데이터를 수신하고, 제2 서브그룹으로부터 암호화된 감지데이터를 수신하는 제1 통신부; 상기 수신한 랜덤화된 감지데이터에 디랜덤화를 수행하는 디랜덤화부; 상기 수신한 암호화된 감지데이터에 복호화를 수행하는 복호화부; 상기 디랜덤화 및 복호화된 감지데이터에 수집 함수를 실행하여 각각 랜덤화 부분수집값 및 암호화 부분수집값을 생성하고, 상기 랜덤화 부분수집값 및 암호화 부분수집값에 수집 함수를 실행하여 부분수집값을 생성하는 부분수집값 산출부; 상기 부분수집값을 암호화하여 기지국으로 전송하는 제2 통신부를 포함하는 클러스터 헤드가 제공된다.According to an aspect of the present invention, a cluster head in a sensor network connected to a plurality of sensor nodes and a base station, wherein the sensor nodes connected to the cluster head comprise a first subgroup using randomization and a second using encryption. The cluster head may be divided into subgroups, and the cluster head may include: a first communication unit configured to receive randomized sensing data from a first subgroup and to receive encrypted sensing data from a second subgroup; A derandomizer for derandomizing the received randomized sensed data; A decryption unit which decrypts the received encrypted sensed data; A collection function is executed on the derandomized and decrypted sensed data to generate a randomized partial collection value and an encrypted partial collection value, respectively, and a collection function is performed on the randomized partial collection value and the encrypted partial collection value to perform a partial collection value. A partial collection value calculation unit generating a; Provided is a cluster head including a second communication unit for encrypting the partial collection value and transmitting it to a base station.

상기 클러스터 헤드는, 상기 센서 노드로부터 수신한 감지데이터에 디랜덤화를 수행할지 복호화를 수행할지를 판단하는 제어부를 더 포함할 수 있다. The cluster head may further include a controller configured to determine whether to derandomize or decode the sensed data received from the sensor node.

데이터 랜덤화를 통해 센서 노드의 오버헤드(전체 오버헤드의 평균값)를 줄이고 개별 데이터(single data)의 보안을 유지하면서 수집 정확성과 정밀도를 제공한다.Data randomization reduces the sensor node overhead (average of the overall overhead) and provides acquisition accuracy and precision while maintaining the security of single data.

본 발명은 상기 기술적 과제를 이루기 위해, 다음 두 가지 구조를 제안한다.The present invention proposes the following two structures to achieve the above technical problem.

첫번째 방식은 개별 데이터(single data records)가 센서 노드측에서 숨겨지고, 수집기측에서 랜덤 요소(random factor)가 제거되는 곳에 수집 함수가 재적용되는 순수랜덤화(randomization-only) 방식이다. 수집은 여러가지의 함수를 포함할 수 있으나, 이 방식에서는 합산, 평균, 카운트 등의 몇가지 수집함수의 적용이 가능하다. The first method is a randomization-only method where the collection function is reapplied where the single data records are hidden at the sensor node side and random factors are removed at the collector side. A collection can contain a number of functions, but in this way it is possible to apply several collection functions such as summation, mean, and count.

두번째 방식은, 적용가능한 함수를 최대화하기 위해, 개별 데이터 보호를 위해 사용되는 메커니즘에 따라 전체 네트워크를 두 부분으로 구분하는 하이브리드 방식이다. 전체 네트워크 중 하나의 부분은, 오버헤드의 전체 합이 작아지도록 하는 랜덤화(randomization)를 사용하여 개별 데이터를 보호하고, 다른 하나의 부분은, 암호화 기반(encryption-based)의 방법과 같은 기존의 수집 방법를 이용하여 데이터를 보호하는 것이다. 이렇게 함으로써, 앞에서 언급한 합, 평균, 카운트와 같은 함수뿐만 아니라 최소값, 최대값과 같은 다른 함수들도 정확하게 계산할 수 있다.The second approach is a hybrid approach that divides the entire network into two parts, depending on the mechanism used for protecting individual data, in order to maximize the applicable function. One part of the entire network protects the individual data using randomization so that the total sum of the overheads is small, while the other part is an existing method, such as encryption-based methods. The collection method is used to protect the data. By doing this, not only the functions such as sum, mean, and count mentioned above, but also other functions such as minimum and maximum can be calculated accurately.

도 1은 일반적인 센서 네트워크의 기본 구조를 도시한 것으로서, 센서 네트워크는 도 1에 도시된 바와 같이 센서 노드들이 배치된 센서필드(Sensor Field)와 센서 필드와 외부망을 연결하는 데이터 수집 노드로 구성된다. 즉, 사용자나 애플리케이션은 데이터 수집 노드를 통하여 센서 필드의 센서 노드로 질의를 전달하거나 센서 필드에서 수집된 데이터를 전달받을 수 있다. 이때 센서 네트워크로부터의 데이터 수집은 각 센서 노드가 수집한 센싱 데이터를 데이터 수집 노드로 전송함으로써 이루어지는데, 종래의 데이터 전송 방법으로 직접 전송 방식은 센서 노드가 센싱(sensing)한 데이터를 직접 데이터 수집 노드로 전송하는 방식으로 데이터 수집 노드로부터 멀리 떨어져 있는 센서 노드들의 에너지 소모가 크다는 한계가 있다. 최소 에너지 전송방식(MTE : Minimum Transmission Energy)은 멀티홉(Multi-Hop) 경로 상의 센서 노드가 이웃 노드로부터의 데이터를 수집하여 데이터 수집 노드로 전송하는 방식으로 센서 노드가 데이터 수집 노드에 가까이 있을수록 라우팅해야 하는 센싱데이터가 증가하므로 에너지 소모가 크고, 중간 노드를 깨워 데이터 전송 경로를 설정해야하므로 전송지연이 발생할 수 있다. 따라서 직접 전송 방식과 최소 에너지 전송 방식의 에너지 소모 특성은 에너지 제약적인 센서 네트워크에 적용하기에 적절하지 않다.FIG. 1 illustrates a basic structure of a general sensor network. The sensor network includes a sensor field in which sensor nodes are arranged as shown in FIG. 1, and a data collection node connecting the sensor field and an external network. . That is, the user or the application may transmit a query to the sensor node of the sensor field through the data collection node or receive data collected in the sensor field. In this case, data collection from the sensor network is performed by transmitting sensing data collected by each sensor node to the data collection node. In the conventional data transmission method, a direct transmission method directly transmits data sensed by the sensor node. The energy consumption of sensor nodes far away from the data collection node is high. Minimum Transmission Energy (MTE) is a method in which sensor nodes on a multi-hop path collect data from neighbor nodes and transmit data to neighboring data collection nodes. As sensing data that needs to be routed increases, energy consumption is high, and transmission delay may occur because an intermediate node needs to be awakened to establish a data transmission path. Therefore, the energy consumption characteristics of the direct transmission method and the minimum energy transmission method are not suitable for application to energy-constrained sensor networks.

또한, 데이터 중심 라우팅 기법은 데이터 전송 및 수집에 있어서 기존의 직접 전송 방식이나 다중 전송 방식에 비해서 효율적이지만 라우팅 설정을 위한 제어 메시지가 많고 설정 시간 등의 오버헤드(Overhead)가 크므로 라우팅방법으로 활용하기에는 한계가 있다. 데이터 중심 라우팅 기법의 한계로 인해 제안된 것이 클러스터 기반의 라우팅 기법이다. 클러스터 기반의 라우팅 기법은 센서 네트워크에서 인접한 노드 간 유사한 정보의 중복 전달로 인한 에너지 낭비를 줄이기 위해 이용 되는 것이다. In addition, the data-centric routing scheme is more efficient than the direct transmission or multi-transmission scheme in data transmission and collection, but it is used as a routing method because there are many control messages for routing setup and a large overhead such as setup time. There is a limit to this. Due to the limitations of the data-centric routing scheme, the cluster-based routing scheme is proposed. Cluster-based routing techniques are used to reduce energy waste due to redundant transfer of similar information between adjacent nodes in the sensor network.

도 2에서 도시하고 있는 바와 같이, 본 발명이 적용되는 네트워크는 상이한 클러스터들로 구성되는 무선 센서 네트워크이다. 도 2에는 예시적으로 3-계층(3-tier) 모델이 도시되어있는데, 이러한 3-계층적 네트워크는 일반적으로 무수한 센서 노드들로 구성되며 다수의 클러스터로 분류되는 대형 네트워크의 일예라고 할 수 있다. 클러스터라 함은 각각의 클러스터가 클러스터 헤드(CH)를 가지는 기능적인 그룹 단위를 의미한다. 이러한 네트워크의 각 클러스터는 수십개에서 수백개의 전형적인 센서 노드들 및 단일 클러스터 헤드로 구성된다. 각 클러스터는 전력소비의 공정함을 유지하기 위해 자주 업데이트되는 백본 노드를 가진다. 상기 서로 다른 클러스터들은 기지국(BS) 또는 싱크(sink) 노드라 불리는 강력한 연산기능을 갖는 엔티티와 통신한다. 동일 클러스터내의 상이한 노드들은 그들의 메시지를 상기 클러스터 헤드에게 전달함으로써, 기지국과 간접적으로 통신한다. 기지국은 전형적으로 컴퓨터와 연결되는 특별한 종류의 센서 노드의 일종이라고 할 수 있다.As shown in Fig. 2, the network to which the present invention is applied is a wireless sensor network composed of different clusters. For example, a three-tier model is shown in FIG. 2. This three-tier network is an example of a large network generally composed of numerous sensor nodes and classified into a plurality of clusters. . A cluster means a functional group unit in which each cluster has a cluster head (CH). Each cluster in this network consists of dozens to hundreds of typical sensor nodes and a single cluster head. Each cluster has a backbone node that is updated frequently to maintain fairness of power consumption. The different clusters communicate with a powerful computing entity called a base station (BS) or sink node. Different nodes in the same cluster communicate indirectly with the base station by forwarding their messages to the cluster head. A base station is typically a kind of special kind of sensor node that is connected to a computer.

이제, 도 3a를 참조하여, 본 발명에서 제공되는 순수 랜덤화 방식에 대해 설명하고자 한다. 수집 데이터의 보안을 유지하기 위해, 랜덤화 방식을 사용하며, 구체적인 과정은 다음과 같다. 초기화 단계에서 동일 클러스터 내의 노드들은 랜덤화 절차에 대한 엔트리들로서 요구되는 분포 파라미터들을 공유한다(S301). 이것은 노이즈 실현(noise realization)에 필요한 여러 파라미터들을 할당하는 것이다. 정규분포화된 노이즈를 고려할 때, 초기화 단계는 표준 편차 σ와 평균 μ를 로딩하는 단계를 포함한다.Now, with reference to Figure 3a, the pure randomization scheme provided in the present invention will be described. In order to maintain the security of the collected data, a randomization method is used, and the detailed process is as follows. In the initialization step, nodes in the same cluster share distribution parameters required as entries for a randomization procedure (S301). This assigns several parameters for noise realization. Given normalized noise, the initialization step includes loading the standard deviation σ and the average μ.

일련의 센서 노드 S1, S2, ..., Sn의 감지 데이터를 나타내는 데이터 벡터 D=[d1,d2,...,dn]가 주어지면, 랜덤 변수 X에 속하는 랜덤 리얼라이제이션(random realization)(또는 노이즈) x1, x2, ..., xn을 생성하고(S302), 그것을 상기 감지 데이터 벡터와 합산(yi=xi+di)함으로써 데이터에 대한 마스킹값 yi 값을 계산하여 클러스터 헤드로 전달한다(S303). 그러면 클러스터 헤드는 제2 랜덤 논스를 생성하여(S304) 상기 마스킹 값 yi와 합산(S305)하는 방식으로 디랜덤화(de-randomization)(즉, 상술한 프로세스의 역과정)를 수행하고, 얻어지는 데이터에 수집 프로세스를 수행(또는 수집 함수를 적용)하여 부분 수집 값(PAV)을 얻고(S306), 상기 PAV를 전통적인 보안 방식(즉, 암호화)으로 기지국(BS)에 전송한다(S307). 그러나, 상기 디랜덤화 프로세스는 정확한 값보다는 통계적인 특성을 보장하기 때문에, 최소 및 최대값과 같은 수집 함수들을 제외한 함수들에 적용될 수 있을 것이다.Given a data vector D = [d1, d2, ..., dn] representing the sensed data of a series of sensor nodes S1, S2, ..., Sn, random realization belonging to the random variable X ( Or noise) x1, x2, ..., xn are generated (S302), and the masking value yi value for the data is calculated and added to the cluster head by summing it with the sense data vector (yi = xi + di) ( S303). The cluster head then generates a second random nonce (S304) and performs de-randomization (i.e., a reverse process of the above-described process) in such a manner as to sum up with the masking value yi (S305). A collection process is performed (or a collection function is applied) to obtain a partial collection value (PAV) (S306), and the PAV is transmitted to the base station (BS) in a traditional security scheme (ie, encryption) (S307). However, since the derandomization process guarantees a statistical property rather than an exact value, it may be applied to functions except for collecting functions such as minimum and maximum values.

도 3b는 상기와 같은 기능을 수행하는 클러스터 헤드의 구성을 도시한다. 본 발명에 따른 클러스터 헤드는, 센서 노드(32)로부터 랜덤화된 감지데이터를 수신하는 제1 통신부(303)를 포함한다. 상기 제1 통신부(303)는 센서 노드(32)로부터 수신한 감지데이터를 제어부(304)로 전달한다. 상기 제어부(304)는 상기 랜덤화된 감지데이터를 디랜덤화부(305)로 전달하고, 디랜덤화부(306)는 센서노드에서와 동일한 분포 파라미터를 사용하여 상기 랜덤화된 감지데이터에 디랜덤화 프로세스를 수행한다. 상기 디랜덤화부(306)가 디랜덤화 프로세스를 완료하면, 디랜덤화된 감지 데이터가 부분수집값 산출부(307)로 전달된다. 부분수집값 산출부(307)는 사전설정되어 있는 소정의 함수로 상기 디랜덤화된 감지데이터에 대한 부분수집값(PAV)를 생성한다. 그러면, 이 부분수집값(PAV)은 암호화 등의 과정을 거쳐 제1 통신부(302)를 통해 기지국으로 전송된다. 상기 제1 통신부(303)는 및 제2 통신부(302)는 수신기 또는 송신기의 역할을 하며, 하나의 요소로 통합될 수도 있다. 또한, 상기 제어부(304), 디랜덤화부(305) 및 부분수집값 산출부(307)의 일부 또는 전부는 클러스터 헤드의 단일 프로세서(processor)내에 구현될 수도 있을 것이다. 3B shows a configuration of a cluster head for performing the above function. The cluster head according to the present invention includes a first communication unit 303 for receiving randomized sensing data from the sensor node 32. The first communication unit 303 transfers the sensing data received from the sensor node 32 to the control unit 304. The controller 304 transmits the randomized sensed data to the derandomizer 305, and the derandomizer 306 derandomizes the randomized sensed data using the same distribution parameter as that of the sensor node. Perform the process. When the derandomization unit 306 completes the derandomization process, the derandomized sensing data is transferred to the partial collection value calculator 307. The partial collection value calculator 307 generates a partial collection value PAV for the derandomized sensed data by a predetermined function. Then, the partial collection value PAV is transmitted to the base station through the first communication unit 302 through a process such as encryption. The first communication unit 303 and the second communication unit 302 serve as a receiver or a transmitter, and may be integrated into one element. In addition, some or all of the controller 304, the derandomizer 305, and the partial collection value calculator 307 may be implemented in a single processor of the cluster head.

도 4에 도시된 바와 같이, 본원 발명은 보다 다양한 통계적 특성들(최소값 및 최대값과 같은 다른 통계적 특성들)을 지원하도록 하이브리드 방식을 제공한다. 본 방식에서는 또한 동일 클러스터 내의 센서들의 일부분은 랜덤화 방식을 수행하도록 할당되고, 다른 부분은 암호화 방법을 사용하여 전통적인 수집 방식으로 수행하도록 할당된다. 상기 암호화 방법이 전체적인 수집에 대한 정확도를 보장하고 대부분의 수집 함수에 적용가능하도록 하는 한편, 일부 데이터에 대한 랜덤화 프로세스는 전체적인 연산 요구사항들을 줄이면서 통계적으로 유효한 수집을 가능하게 할 것이다.As shown in FIG. 4, the present invention provides a hybrid scheme to support more various statistical characteristics (other statistical characteristics such as minimum and maximum values). In this approach also some of the sensors in the same cluster are assigned to perform a randomization scheme, while others are allocated to perform a traditional collection scheme using an encryption method. While the encryption method ensures the accuracy of the overall collection and is applicable to most collection functions, the randomization process for some data will enable statistically valid collection while reducing overall computational requirements.

하이브리드 방식에서 동일 클러스터내의 노드들은 두개의 서브 그룹으로 나뉘어진다. 하나의 그룹은 다른 서브그룹이 암호화 기반 수집 절차를 수행하는 동안 안전한 데이터 수집을 위해 상술한 랜덤화 절차를 수행한다. 랜덤화 절차를 수행하는 노드의 수를 n1이라 하고, 암호화 방식을 수행하는 노드의 수를 n2라 하고, n1+n2=c라 하자. 초기화 단계(S401, S402)에서, 보안 데이터 수집을 위해 랜덤화 절차를 수행할 서브 그룹 내의 노드들은 앞서 설명한 순수랜덤화 방식의 초기화 단계에서와 마찬가지로 랜덤화를 위한 분포 파라미터들(즉, σ 및 μ)을 공유하게 된다(S402). 한편, 보안 데이터 수집을 위해 암호화 기반 방법을 수행할 노드들은 암호화를 위한 설정을 공유하게 된다(S401). 즉, 대칭 키 설정방식을 사용할때, 상기 노드들 및 클러스터 헤드는 데이터 트래픽의 암호화 및 복호화에 상기 방식을 사용할 수 있도록 대칭 키들을 공유하게 된다(S401). In a hybrid approach, nodes in the same cluster are divided into two subgroups. One group performs the above-described randomization procedure for secure data collection while the other subgroup performs the encryption based collection procedure. Assume that the number of nodes performing the randomization procedure is n1, the number of nodes performing the encryption scheme is n2, and n1 + n2 = c. In the initialization steps S401 and S402, the nodes in the subgroup to perform the randomization procedure for secure data collection are distributed parameters for randomization (i.e., sigma and μ) as in the initialization step of the pure randomization method described above. ) Will be shared (S402). Meanwhile, nodes that will perform an encryption-based method for collecting security data share a setting for encryption (S401). That is, when using a symmetric key setting scheme, the nodes and the cluster head share symmetric keys so that the scheme can be used to encrypt and decrypt data traffic (S401).

각 센서 노드가 자신의 설정을 확인하여 자신이 속한 서브 그룹 및 데이터 수집을 위해 사용될 프로토콜을 확인한다(S403, S404). 센서 노드측에서는, 상기 초기화 단계(S401, S402), 프로토콜을 확인하는 단계(S403,S404), 또는 암호화나 랜덤화 프로세스 수행(S405, S406) 등의 단계 내에서 또는 단계(S407)에서 두 가지 방식을 구별하기 위한 식별자로서 플래그를 정의 또는 생성할 수 있다. 구체적으로는, 랜덤화 프로세스를 거친 데이터를 포함하는 패킷에 대해서는, '0'의 플래그를, 암호화 프로세스를 거친 데이터를 포함하는 패킷에 대해서는, '1'의 플래그를 부가 또는 삽입할 수 있다. Each sensor node checks its own setting to identify a subgroup to which it belongs and a protocol to be used for data collection (S403 and S404). On the sensor node side, in the initializing step (S401, S402), checking the protocol (S403, S404), or performing the encryption or randomization process (S405, S406), or in step S407, there are two methods. A flag may be defined or generated as an identifier for distinguishing a. Specifically, a flag of '0' may be added to a packet including data that has been subjected to a randomization process, and a flag of '1' may be added or inserted to a packet containing data that has been subjected to an encryption process.

클러스터 헤드는 랜덤화된 감지 데이터 및 암호화된 감지 데이터 모두를 수신하여, 상기 플래그를 통해 클러스터 헤드가 디랜덤화 프로세스와 복호화 프로세스 중 어느것을 적용할지를 결정하게 된다. 그러면, 확인한 프로토콜에 따라 감지데이터에 대한 암호화(S405) 또는 랜덤화(S406)를 수행하고, 사용한 프로토콜을 나타내는 플래그를 생성하여 상기 수행된 데이터에 삽입한다(S407). 클러스터 헤드는 랜덤화된 감지 데이터 및 암호화된 감지 데이터 모두를 수신하여, 상기 플래그로부터 수행해야 할 방식을 식별하게 된다. The cluster head receives both the randomized sensed data and the encrypted sensed data so that the flag determines whether the cluster head applies the derandomization process or the decryption process. Then, encryption (S405) or randomization (S406) of the sensed data is performed according to the confirmed protocol, and a flag indicating a used protocol is generated and inserted into the performed data (S407). The cluster head receives both the randomized sensed data and the encrypted sensed data to identify the manner to be performed from the flag.

랜덤화 그룹 내의 센서들로부터의 데이터에 대해, 클러스터 헤드는 랜덤 값 [z1,z2,...,zn1]을 생성한다. 이때, 각 값 zi는 노이즈 발생과 동일한 통계적 특성을 가지는 랜덤 변수의 리얼라이제이션이다. 그러면, 상기 클러스터 헤드는 감지된 데이터를 [d'1, d'2,...,d'n1]=[y1, y2,...,yn1]-[z1,z2,...,zn1]에 따라 디랜덤화 프로세스를 수행한다(S409). 암호화 서브그룹의 센서들로부터의 데이터 [y1,y2,...,yn1]에 대해, 클러스터 헤드는 수신된 데이터를 복호화하여 [d1,d2,...dn2]=Dk([y1,y2,...,yn2])를 생성한다(S408). 이때, D는 복호화 방식이고 K는 해당하는 센서 노드들과 클러스터 헤드 간의 공유 키이다. 상기 디랜덤화 또는 암호화 프로세스는 각각에 대한 부분수집값을 생성하는 단계를 포함할 수 있는데, 상기 클러스터 헤드는 디랜덤화 및 복호화된 데이터에 수집함수를 적용하여, 각각에 대한 부분 수집값인 랜덤화 부분수집값(RPAV) 및 암호화 부분수집값(EPAV)을 생성한다. For data from sensors in the randomization group, the cluster head generates random values [z1, z2, ..., zn 1 ]. In this case, each value zi is a realization of a random variable having the same statistical characteristics as noise generation. Then, the cluster head sends the detected data to [d'1, d'2, ..., d'n1] = [y1, y2, ..., yn1]-[z1, z2, ..., zn1. The derandomization process is performed according to] (S409). For data [y1, y2, ..., yn1] from sensors in the encryption subgroup, the cluster head decrypts the received data so that [d1, d2, ... dn2] = Dk ([y1, y2, ..., yn2]) is generated (S408). In this case, D is a decryption method and K is a shared key between corresponding sensor nodes and the cluster head. The derandomization or encryption process may include generating a partial collection value for each, wherein the cluster head applies a collection function to the derandomized and decrypted data, randomly collecting the partial collection values for each. Generate a partial collection value (RPAV) and an encrypted partial collection value (EPAV).

상기 클러스터 헤드는 상기 두개의 서브그룹들의 부분수집값 RPAV 및 EPAV에 수집 함수를 수행하여 PAV를 산출하고 이를 암호화하여 상기 기지국에 전송한다(S410). 그 다음, 전송된 값에 복호화가 수행되어 각 클러스터 헤드들로부터의 PAVs가 획득되면 이에 소정의 수집함수가 수행되어 최종 수집값이 산출된다(S411).The cluster head performs a collection function on the partial collection values RPAV and EPAV of the two subgroups, calculates a PAV, encrypts it, and transmits it to the base station (S410). Then, when decoding is performed on the transmitted values to obtain PAVs from the cluster heads, a predetermined collection function is performed to calculate the final collection value (S411).

다시, 도 3b를 참조하여 상기 하이브리드 방식을 수행할 경우 클러스터 헤드의 동작에 대해 설명한다. 본 발명에 따른 클러스터 헤드는, 센서 노드(32)로부터 랜덤화된 감지데이터 및 암호화된 감지데이터를 수신하는 제1 통신부(303)를 포함한다. 상기 제1 통신부(303)는 센서 노드(32)로부터 수신한 감지데이터를 제어부(304)로 전달한다. 상기 제어부(304)는 상기 감지데이터들에 삽입되어 있는 플래그를 통해 감지데이터가 랜덤화된 것인지 암호화된 것인지를 판단하게 된다. 수행된 프로토콜을 판단하게 되면, 그에 따라 랜덤화된 감지데이터는 디랜덤화 프로세스를 수행하도록 디랜덤화부(305)로 전달하고, 디랜덤화부(306)는 센서노드에서와 동일한 분포 파라미터를 사용하여 상기 랜덤화된 감지데이터에 디랜덤화 프로세스를 수행한다. 한편, 암호화된 감지데이터는 복호화 프로세스를 수행하도록 복호화부(306)로 전달된다. 그러면, 상기 복호화부(306)는 사전에 공유된 암호화/복호화 키로 상기 암호화된 감지데이터에 대한 복호화 프로세스를 수행한다.Referring back to FIG. 3B, the operation of the cluster head when the hybrid scheme is performed will be described. The cluster head according to the present invention includes a first communication unit 303 for receiving randomized sensed data and encrypted sensed data from the sensor node 32. The first communication unit 303 transfers the sensing data received from the sensor node 32 to the control unit 304. The controller 304 determines whether the sensed data is randomized or encrypted through a flag inserted in the sensed data. Upon determining the performed protocol, the randomized detection data is transmitted to the derandomization unit 305 to perform the derandomization process, and the derandomization unit 306 uses the same distribution parameters as those of the sensor node. The derandomization process is performed on the randomized sensed data. Meanwhile, the encrypted sensed data is transferred to the decryption unit 306 to perform a decryption process. Then, the decryption unit 306 performs a decryption process on the encrypted sensed data with a previously shared encryption / decryption key.

상기 디랜덤화부(306) 및 복호화부(306)가 각각 디랜덤화 및 복호화 프로세스를 완료하면, 디랜덤화된 감지데이터와 복호화된 감지데이터가 부분수집값 산출부(307)로 전달된다. 부분수집값 산출부(307)는 사전설정되어 있는 소정의 함수로 상기 디랜덤화된 감지데이터에 대한 부분수집값(RPAV)과 암호화된 감지데이터에 대한 부분수집값(EPAV)를 생성한다. 그러면, 부분수집값 산출부는 수집 함수를 한번 더 수행하여 상기 랜덤화 부분수집값과 암호화 부분수집값으로부터 부분수집값(PAV)를 산출해 내고 이를 암호화 등의 과정을 거쳐 제1 통신부(302)를 통해 기지국으로 전송한다. 상기 제1 통신부(303) 및 제2 통신부(302)는 수신기 또 는 송신기의 역할을 하며, 하나의 요소로 통합될 수도 있다. 또한, 상기 제어부(304), 디랜덤화부(305)와 복호화부(306) 및 부분수집값 산출부(307)의 일부 또는 전부는 클러스터 헤드의 단일 프로세서(processor) 내에 구현될 수도 있을 것이다. When the derandomization unit 306 and the decoding unit 306 complete the derandomization and decoding process, respectively, the derandomized sensed data and the decoded sensed data are transferred to the partial collection value calculator 307. The partial collection value calculator 307 generates a partial collection value RPAV for the derandomized sensed data and a partial collection value EPAV for the encrypted sensed data with a predetermined function. Then, the partial collection value calculation unit performs a collection function once more to calculate a partial collection value (PAV) from the randomized partial collection value and the encrypted partial collection value, and encrypts the first communication unit 302 through a process such as encryption. Transmit to base station via. The first communication unit 303 and the second communication unit 302 serve as a receiver or a transmitter, and may be integrated into one element. In addition, some or all of the controller 304, the derandomizer 305, the decoder 306, and the partial collection value calculator 307 may be implemented in a single processor of the cluster head.

이제 도 5를 참조하여, 랜덤화 과정을 노드측, 클러스터 헤드, 및 기지국에서 수행되는 세 개의 서브단계들로 나누어 보다 상세히 설명한다.Referring to FIG. 5, the randomization process will be described in more detail by dividing the randomization process into three substeps performed at the node side, the cluster head, and the base station.

센서 노드측에서, 감지 데이터 값 di를 가진 사이즈 c의 클러스터에서의 각 노드 Si는 랜덤 논스(random nonce) xi∈X 를 생성한다(이때, X는 μ의 평균과 σ의 표준편차를 갖는 정규 분포의 랜덤 변수임). 그 후에, 노드 si는 yi=xi+di로서 데이터에 대한 마스킹값 yi 값을 계산한다. 그런 다음 노드 si는 클러스터 헤드로 상기 마스킹 값 yi를 전달한다.On the sensor node side, each node Si in a cluster of size c with sense data values di produces a random nonce xi∈X (where X is a normal distribution with mean of μ and standard deviation of σ). Is a random variable of). Node si then computes the masking value yi value for the data as yi = xi + di. Node si then passes the masking value yi to the cluster head.

클러스터 헤드측에서, 상기 동일한 단계들을 수행한 동일한 클러스터내의 다른 노드들, 즉 노드 s1, s2,..., sc로부터 각각의 해당하는 마스킹 값 y1, y2,...,yc를 수신하고 동일한 랜덤화 파라미터(즉, μ 및 σ)를 사용하여 z1, z2, ..., zc를 생성한다. 그런 다음, 클러스터 헤드는 값 yi로부터 상응하는 랜덤 값 zi를 감산함으로써 디랜덤화를 수행하여 di를 생성한다. 즉, 클러스터 헤드는 d'i=yi-zi(0<i≤c)를 계산한다. 그 후에, 클러스터 헤드는 f(d'1,d'2,...,d'c)로 상기 결과에 수집 함수를 실행하고, 그리고 그 결과를 사전공유된 키(pre-shared key)로 암호화하여 기지국(BS)에 전달한다. 상기 결과를 부분 수집 값(partial aggregation value :PAV)라 한다.On the cluster head side, each corresponding masking value y1, y2, ..., yc is received from other nodes in the same cluster that have performed the same steps, namely nodes s1, s2, ..., sc and the same random We generate z1, z2, ..., zc using the conversion parameters (ie, μ and σ). The cluster head then performs derandomization by subtracting the corresponding random value zi from the value yi to produce di. That is, the cluster head calculates d'i = yi-zi (0 <i ≤ c). Thereafter, the cluster head executes a collection function on the result with f (d'1, d'2, ..., d'c), and encrypts the result with a pre-shared key. To the base station (BS). This result is called a partial aggregation value (PAV).

기지국 측에서는, 여러 클러스터 헤드들로부터 수신된 상이한 암호화된 값들에 대해, 기지국은 최종 수집 결과를 이끌어내기 위해 복호화하고 PAVs를 수신하고 그리고 상기 기지국의 수집 함수를 PAVs에 적용한다.On the base station side, for different encrypted values received from various cluster heads, the base station decrypts and receives the PAVs to derive the final collection result and applies the collection function of the base station to the PAVs.

살펴본 바와 같이, 랜덤화 프로세스는 개별적인 감지값을 숨기지만 상기 언급된 디랜덤화 프로세스 후 여러 통계적 특성들을 유지하며, 이는 기본적으로 평균, 합산, 그리고 카운트를 포함한다. As noted, the randomization process hides individual sensed values but retains several statistical characteristics after the above mentioned derandomization process, which basically includes averages, sums, and counts.

도 6을 참조하여, 하이브리드 방식을 자세히 설명한다. 하이브리드 방식도 마찬가지로 세 개의 서브 단계들로 구성된다. Referring to FIG. 6, the hybrid scheme will be described in detail. The hybrid scheme is likewise composed of three sub-steps.

센서 노드측에서, 사이즈 c의 클러스터 내의 각 노드는 자신에 대한 설정상태를 판단하고 자신의 데이터를 랜덤화할지 암호화할지를 결정한 다음 그 결정을 클러스터 헤드에 전달한다. 즉, 다음의 단계들이 수행된다.On the sensor node side, each node in the cluster of size c determines its configuration and decides whether to randomize or encrypt its data and then forward the decision to the cluster head. That is, the following steps are performed.

i. 노드가 랜덤화 서브그룹에 속할 경우, 상기 노드는 앞의 프로토콜에서 설명된 절차와 동일한 절차를 수행한다. 즉, 상기 노드는 랜덤 논스 xi∈X를 생성하고 yi=xi+di를 연산한다. 동일 절차가 랜덤화 서브 그룹에 속하는 모든 노드들(n1)에 의해 수행된다. 랜덤화된 값들은 클러스터 헤드로 전달된다.i. If the node belongs to the randomization subgroup, the node performs the same procedure as described in the previous protocol. That is, the node generates a random nonce xi∈X and computes yi = xi + di. The same procedure is performed by all nodes n1 belonging to the randomization subgroup. Randomized values are passed to the cluster head.

ii. 노드가 암호화 서브그룹에 속할 경우, 감지 데이터를 암호화한 다음 클러스터 헤드로 포워딩한다. 즉, 암호화 절차를 수행할 노드들(n2)에 있는 각 노드는 Ek(di)를 계산할 것이며, E는 암호화 알고리즘이고 k는 노드와 클러스터 헤드 사이의 공유 키(shared key)이다. 그 후에, 상기 노드는 상기 암호화된 감지 데이터 를 상기 클러스터 헤드로 포워딩한다.ii. If the node belongs to an encryption subgroup, the sense data is encrypted and then forwarded to the cluster head. That is, each node in nodes n2 that will perform the encryption procedure will calculate E k (d i ), where E is the encryption algorithm and k is the shared key between the node and the cluster head. Thereafter, the node forwards the encrypted sense data to the cluster head.

또한, 센서 노드측에서는, 두 가지 방식을 구별하기 위한 식별자로서 플래그를 정의한다. 랜덤화 프로세스를 거친 데이터를 포함하는 패킷에 대해서는, '0'의 플래그를, 암호화 프로세스를 거친 데이터를 포함하는 패킷에 대해서는, '1'의 플래그를 부가 또는 삽입할 수 있다. In the sensor node side, a flag is defined as an identifier for distinguishing the two methods. A flag of '0' may be added to a packet including data that has been subjected to a randomization process, and a flag of '1' may be added or inserted to a packet containing data that has been subjected to an encryption process.

클러스터 헤드는 랜덤화된 감지 데이터 및 암호화된 감지 데이터 모두를 수신하여, 상기 플래그를 통해 클러스터 헤드가 디랜덤화 프로세스와 복호화 프로세스 중 어느것을 적용할지를 결정하게 된다.The cluster head receives both the randomized sensed data and the encrypted sensed data so that the flag determines whether the cluster head applies the derandomization process or the decryption process.

i. 랜덤화 그룹 내의 센서들로부터의 데이터 [y1,y2,...,yn]에 대해, 클러스터 헤드는 랜덤 값 [z1,z2,...,zn1]을 생성한다. 이때, 각 값 zi는 노이즈 발생과 동일한 통계적 특성을 가지는 랜덤 변수의 리얼라이제이션이다. 그러면, 상기 클러스터 헤드는 감지된 데이터를 [d'1, d'2,...,d'n1]=[y1, y2,...,yn1]-[z1,z2,...,zn1]에 따라 계산한다.i. For data [y1, y2, ..., yn] from the sensors in the randomization group, the cluster head generates random values [z1, z2, ..., zn1]. In this case, each value zi is a realization of a random variable having the same statistical characteristics as noise generation. Then, the cluster head sends the detected data to [d'1, d'2, ..., d'n1] = [y1, y2, ..., yn1]-[z1, z2, ..., zn1. ] To calculate.

ii. 암호화 서브그룹의 센서들로부터의 데이터 [y1,y2,...,yn1]에 대해, 클러스터 헤드는 수신된 데이터를 복호화하여 [d1,d2,...dn2]=Dk([y1,y2,...,yn2])를 생성한다. 이때, D는 복호화 방식이고 K는 해당하는 센서 노드들과 클러스터 헤드 간의 공유 키이다.ii. For data [y1, y2, ..., yn1] from sensors in the encryption subgroup, the cluster head decrypts the received data so that [d1, d2, ... dn2] = Dk ([y1, y2, ..., yn2]). In this case, D is a decryption method and K is a shared key between corresponding sensor nodes and the cluster head.

iii. 그 후에, 클러스터 헤드는 (i) 및 (ii)의 결과에따른 두개의 서브그룹들의 각 부분 수집값 RPAV 및 EPAV에 수집 함수를 수행하여 PAV를 생성하고, 이를 암호화하여 상기 기지국에 전송한다. iii. Thereafter, the cluster head performs a collection function on each partial collection value RPAV and EPAV of the two subgroups according to the results of (i) and (ii) to generate a PAV, encrypts it, and sends it to the base station.

기지국 측에서, 상기 여러 클러스터 헤드들로부터 수신한 여러 암호화된 PAV에 대해, 최종 수집 결과를 유도하기 위해 복호화하여 PAVs를 수신하고 그리고 그것들에 BS의 수집 함수를 적용한다.At the base station side, for the various encrypted PAVs received from the various cluster heads, the PAVs are received by decryption to derive the final collection result and the BS's collection function is applied to them.

본 발명에서 수집 값을 여러 종류의 값들로 변환하기 위해 사용되는 수학적인 수집 함수 f(a1, a1,...,ac)는, c개의 입력을 받아 수집 함수의 유형에 따라 다른 어떤 단일의 값(agg라 하자)을 출력한다. 예를 들어, 합산 수집 함수는

Figure 112008086453716-pat00001
와 같이 연산하고, 평균(mean) 수집 함수는
Figure 112008086453716-pat00002
와 같이 연산한다. 다른 전형적인 수집 함수는 min/max 함수, 카운트 함수(여러 수집 값들을 나타내는 데이터 벡터에서 데이터 레코드의 수를 계산함), 편차 등을 포함한다.In the present invention, the mathematical collection function f (a1, a1, ..., ac) used for converting a collection value into various kinds of values is a single value which takes c inputs and varies according to the type of the collection function. (agg) For example, the summing collection function
Figure 112008086453716-pat00001
And the mean collection function
Figure 112008086453716-pat00002
Calculate as Other typical acquisition functions include min / max functions, count functions (counting the number of data records in a data vector representing multiple collection values), deviations, and the like.

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

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

도 1은 무선 센서 네트워크의 일반적인 노드 구성을 나타낸다.1 shows a general node configuration of a wireless sensor network.

도 2는 본 발명의 일 실시예에 따른 클러스터 기반 무선 센서 네트워크의 토폴로지를 도시한다.2 illustrates a topology of a cluster-based wireless sensor network in accordance with one embodiment of the present invention.

도 3a는 본 발명에 따른 순수 랜덤화 프로토콜을 사용하여 데이터를 수집하는 과정을 개략적으로 도시한다.Figure 3a schematically illustrates the process of collecting data using the pure randomization protocol according to the present invention.

도 3b는 본 발명에 따른 클러스터 헤드의 구성을 도시한다. 3b shows a configuration of a cluster head according to the present invention.

도 4는 본 발명에 따른 하이브리드 프로토콜을 사용하여 데이터를 수집하는 과정을 개략적으로 도시한다.4 schematically illustrates a process of collecting data using a hybrid protocol according to the present invention.

도 5는 도 3a의 순수 랜덤화 프로토콜에 대한 알고리즘을 3 계층으로 나누어 도시한다.FIG. 5 shows the algorithm for the pure randomization protocol of FIG. 3A divided into three layers.

도 6은 도 4의 하이브리드 랜덤화 프로토콜에 대한 알고리즘을 3 계층으로 나누어 도시한다. FIG. 6 illustrates an algorithm for the hybrid randomization protocol of FIG. 4 divided into three layers.

Claims (10)

복수의 센서 노드, 복수의 센서 노드에 연결되는 클러스터 헤드 및 복수의 클러스터 헤드에 연결되는 기지국을 포함하는 센서 네트워크에서의 데이터 수집 방법으로서, 상기 클러스터 헤드가,A data collection method in a sensor network comprising a plurality of sensor nodes, a cluster head connected to a plurality of sensor nodes, and a base station connected to a plurality of cluster heads, the cluster head comprising: 센서 노드로부터 랜덤화된 감지데이터를 수신하는 단계;Receiving randomized sensing data from a sensor node; 상기 수신한 랜덤화된 감지데이터를 디랜덤화하는 단계; Derandomizing the received randomized sensed data; 상기 디랜덤화된 감지데이터에 수집 함수를 실행하여, 부분수집값(PAV)을 생성하는 단계;Generating a partial collection value (PAV) by executing a collection function on the derandomized sensed data; 상기 생성된 부분수집값을 암호화하는 단계;Encrypting the generated partial collection value; 상기 암호화한 부분수집값을 기지국으로 전송하는 단계를 포함하는 데이터 수집 방법.And transmitting the encrypted partial collection value to a base station. 청구항 1에 있어서, The method according to claim 1, 클러스터 헤드 및 상기 클러스터 헤드에 연결된 센서 노드들간에 랜덤화 및 디랜덤화를 위한 분포 파라미터가 공유되어 있는 것을 특징으로 하는 데이터 수집 방법.A distribution parameter for randomization and derandomization is shared between a cluster head and sensor nodes connected to the cluster head. 청구항 2에 있어서, The method according to claim 2, 상기 랜덤화된 감지데이터는, 상기 분포 파라미터에 기반하여 생성된 제1 랜 덤 논스를 이용하여 랜덤화되어 있는 것을 특징으로 하는 데이터 수집 방법.The randomized sensed data is randomized using the first random nonce generated based on the distribution parameter. 청구항 2에 있어서,The method according to claim 2, 상기 디랜덤화하는 단계에서는, 상기 분포 파라미터에 기반하여 생성된 제2 랜덤 논스를 이용하여 디랜덤화되는 것을 특징으로 하는 데이터 수집 방법. In the derandomizing step, derandomization is performed using a second random nonce generated based on the distribution parameter. 복수의 센서 노드, 복수의 센서 노드에 연결되는 클러스터 헤드 및 복수의 클러스터 헤드에 연결되는 기지국을 포함하는 센서 네트워크에서의 데이터 수집 방법으로서, 상기 클러스터 헤드에 연결되는 센서 노드들은 랜덤화를 사용하는 제1 서브그룹과 암호화를 사용하는 제2 서브그룹으로 구분되고, 상기 클러스터 헤드가A data collection method in a sensor network comprising a plurality of sensor nodes, a cluster head connected to a plurality of sensor nodes, and a base station connected to a plurality of cluster heads, wherein the sensor nodes connected to the cluster head are configured to use randomization. Divided into one subgroup and a second subgroup using encryption, wherein the cluster head 제1 서브그룹으로부터 랜덤화된 감지데이터를 수신하고, 제2 서브그룹으로부터 암호화된 감지데이터를 수신하는 단계;Receiving randomized sensed data from a first subgroup, and receiving encrypted sensed data from a second subgroup; 상기 수신한 랜덤화된 감지데이터 및 암호화된 감지데이터에 각각 디랜덤화 및 복호화를 수행하는 단계;Performing derandomization and decryption on the received randomized sensed data and encrypted sensed data, respectively; 상기 디랜덤화 및 복호화된 감지데이터에 수집 함수를 실행하여 각각 랜덤화 부분수집값(RPAV) 및 암호화 부분수집값(EPAV)을 생성하는 단계;Executing a collection function on the derandomized and decrypted sensed data to generate a randomized partial collection value (RPAV) and an encrypted partial collection value (EPAV), respectively; 상기 랜덤화 부분수집값(RPAV) 및 상기 암호화 부분수집값(EPAV)에 수집 함수를 수행하여 부분수집값(PAV)을 생성하는 단계;Generating a partial collection value (PAV) by performing a collection function on the randomized partial collection value (RPAV) and the encrypted partial collection value (EPAV); 상기 부분수집값을 암호화하여 기지국으로 전송하는 단계를 포함하는 데이터 수집 방법.Encrypting the partial collection value and transmitting the encrypted data to a base station. 청구항 5에 있어서, The method according to claim 5, 제1 서브그룹에 속하는 센서 노드와는 랜덤화 및 디랜덤화를 위한 분포 파라미터가 공유되어 있고,Distribution parameters for randomization and derandomization are shared with sensor nodes belonging to the first subgroup, 제2 서브그룹에 속하는 센서 노드와는 암호화 및 복호화에 대한 대칭 키가 설정되어 있는 것을 특징으로 하는 데이터 수집 방법.And a symmetric key for encryption and decryption is set with the sensor node belonging to the second subgroup. 청구항 5에 있어서,The method according to claim 5, 상기 랜덤화된 감지데이터 및 암호화된 감지데이터에는 상기 랜덤화 및 암호화를 표시하는 플래그가 각각 삽입되어 있는 것을 특징으로 하는 데이터 수집 방법.And a flag indicating the randomization and encryption is inserted into the randomized sensed data and the encrypted sensed data, respectively. 복수의 센서 노드 및 기지국과 연결되는 센서 네트워크에서의 클러스터 헤드로서, A cluster head in a sensor network connected to a plurality of sensor nodes and a base station, 센서 노드로부터 랜덤화된 감지데이터를 수신하는 제1 통신부;A first communication unit configured to receive randomized sensing data from a sensor node; 상기 랜덤화된 감지데이터를 디랜덤화하는 디랜덤화부;A derandomizer for derandomizing the randomized sensed data; 상기 디랜덤화된 감지데이터에 수집 함수를 실행하여, 부분수집값을 생성하는 부분수집값 산출부;A partial collection value calculation unit configured to generate a partial collection value by executing a collection function on the derandomized sensed data; 상기 부분수집값을 기지국으로 전송하는 제2 통신부를 포함하는 클러스터 헤드.And a second communication unit for transmitting the partial collection value to a base station. 복수의 센서 노드 및 기지국과 연결되는 센서 네트워크에서의 클러스터 헤드로서, 상기 클러스터 헤드에 연결되는 센서 노드들은 랜덤화를 사용하는 제1 서브그룹과 암호화를 사용하는 제2 서브그룹으로 구분되고, 상기 클러스터 헤드는,A cluster head in a sensor network connected to a plurality of sensor nodes and a base station, wherein the sensor nodes connected to the cluster head are divided into a first subgroup using randomization and a second subgroup using encryption, and the cluster Head is, 제1 서브그룹으로부터 랜덤화된 감지데이터를 수신하고, 제2 서브그룹으로부터 암호화된 감지데이터를 수신하는 제1 통신부;A first communication unit configured to receive randomized sensed data from the first subgroup and receive encrypted sensed data from the second subgroup; 상기 수신한 랜덤화된 감지데이터에 디랜덤화를 수행하는 디랜덤화부;A derandomizer for derandomizing the received randomized sensed data; 상기 수신한 암호화된 감지데이터에 복호화를 수행하는 복호화부;A decryption unit which decrypts the received encrypted sensed data; 상기 디랜덤화 및 복호화된 감지데이터에 수집 함수를 실행하여 각각 랜덤화 부분수집값 및 암호화 부분수집값을 생성하고, 상기 랜덤화 부분수집값 및 암호화 부분수집값에 수집 함수를 실행하여 부분수집값을 생성하는 부분수집값 산출부; A collection function is executed on the derandomized and decrypted sensed data to generate a randomized partial collection value and an encrypted partial collection value, respectively, and a collection function is performed on the randomized partial collection value and the encrypted partial collection value to perform a partial collection value. A partial collection value calculation unit generating a; 상기 부분수집값을 암호화하여 기지국으로 전송하는 제2 통신부를 포함하는 클러스터 헤드. And a second communication unit for encrypting the partial collection value and transmitting the encrypted portion to the base station. 청구항 9에 있어서,The method according to claim 9, 상기 센서 노드로부터 수신한 감지데이터에 디랜덤화를 수행할지 복호화를 수행할지를 판단하는 제어부를 더 포함하는 클러스터 헤드. And a controller configured to determine whether to derandomize or decode the sensed data received from the sensor node.
KR1020080127976A 2008-12-16 2008-12-16 Secure Data Aggregation Using Data Randomization in Sensor Network and a cluster head therefor KR101026764B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080127976A KR101026764B1 (en) 2008-12-16 2008-12-16 Secure Data Aggregation Using Data Randomization in Sensor Network and a cluster head therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080127976A KR101026764B1 (en) 2008-12-16 2008-12-16 Secure Data Aggregation Using Data Randomization in Sensor Network and a cluster head therefor

Publications (2)

Publication Number Publication Date
KR20100069319A KR20100069319A (en) 2010-06-24
KR101026764B1 true KR101026764B1 (en) 2011-04-11

Family

ID=42367433

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080127976A KR101026764B1 (en) 2008-12-16 2008-12-16 Secure Data Aggregation Using Data Randomization in Sensor Network and a cluster head therefor

Country Status (1)

Country Link
KR (1) KR101026764B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101992303B1 (en) 2018-03-18 2019-06-24 박성근 Data collection, analysis and monitoring system of smart sensor network

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070063118A (en) * 2005-12-14 2007-06-19 한국과학기술정보연구원 Routing method in sensor network

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070063118A (en) * 2005-12-14 2007-06-19 한국과학기술정보연구원 Routing method in sensor network

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101992303B1 (en) 2018-03-18 2019-06-24 박성근 Data collection, analysis and monitoring system of smart sensor network

Also Published As

Publication number Publication date
KR20100069319A (en) 2010-06-24

Similar Documents

Publication Publication Date Title
Cao et al. IIBE: an improved identity-based encryption algorithm for WSN security
Elhoseny et al. Reliable data transmission model for mobile ad hoc network using signcryption technique
Fotohi et al. Securing wireless sensor networks against denial‐of‐sleep attacks using RSA cryptography algorithm and interlock protocol
Sahingoz Large scale wireless sensor networks with multi-level dynamic key management scheme
Lv et al. Analysis of the security of internet of multimedia things
Kuzminykh et al. Investigation of the IoT device lifetime with secure data transmission
Wu et al. Scalable privacy-preserving big data aggregation mechanism
Mehmood et al. A comprehensive literature review of data encryption techniques in cloud computing and IoT environment
Sreenivasulu et al. NLDA non-linear regression model for preserving data privacy in wireless sensor networks
SriVenkateswaran et al. Secure cluster-based data aggregation in wireless sensor networks with aid of ECC
Mbarek et al. Energy efficient security protocols for wireless sensor networks: SPINS vs TinySec
Puthal Secure data collection and critical data transmission technique in mobile sink wireless sensor networks
Mahamat et al. Achieving efficient energy-aware security in IoT networks: A survey of recent solutions and research challenges
Bhushan Middleware and security requirements for internet of things
KR101026764B1 (en) Secure Data Aggregation Using Data Randomization in Sensor Network and a cluster head therefor
Carrasco et al. Securing a wireless sensor network for human tracking: a review of solutions
Metan et al. Group key management technique based on logic-key tree in the field of wireless sensor network
Adawy et al. Man-In-The Middle Attack Detection Scheme on Data Aggregation in Wireless Sensor Networks.
Kavitha et al. Hybrid cryptographic technique for heterogeneous wireless sensor networks
Ifzarne et al. Compressive sensing based on homomorphic encryption and attack classification using machine learning algorithm in WSN security
Wang et al. Multi-level data fusion algorithm towards privacy protection in wireless sensor networks
Ali et al. A Lightweight Trust-less Authentication Framework for Massive IoT Systems
CN109548014B (en) Low-energy-consumption privacy protection aggregation method based on mobile aggregators
MSS et al. An Adaptive Security Based Communication System For Dynamic Wireless Sensor Networks
Aruna Deepthi et al. Image Transmission Using Leach and Security Using RSA in Wireless Sensor Networks

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: 20140303

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150226

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160226

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170308

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190326

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20200114

Year of fee payment: 10