KR102057525B1 - 무인 항공기에서 전자 보안 시스템 - Google Patents

무인 항공기에서 전자 보안 시스템 Download PDF

Info

Publication number
KR102057525B1
KR102057525B1 KR1020160182718A KR20160182718A KR102057525B1 KR 102057525 B1 KR102057525 B1 KR 102057525B1 KR 1020160182718 A KR1020160182718 A KR 1020160182718A KR 20160182718 A KR20160182718 A KR 20160182718A KR 102057525 B1 KR102057525 B1 KR 102057525B1
Authority
KR
South Korea
Prior art keywords
encryption
queue
decryption
data
security key
Prior art date
Application number
KR1020160182718A
Other languages
English (en)
Other versions
KR20180077888A (ko
Inventor
김강산
박병관
Original Assignee
단암시스템즈 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 단암시스템즈 주식회사 filed Critical 단암시스템즈 주식회사
Priority to KR1020160182718A priority Critical patent/KR102057525B1/ko
Publication of KR20180077888A publication Critical patent/KR20180077888A/ko
Application granted granted Critical
Publication of KR102057525B1 publication Critical patent/KR102057525B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of 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/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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명에 따른 무인 항공기에서의 전자 보안 시스템은, 상기 무인 항공기의 지상 관제국으로 송신될 평문 데이터를 임시 저장하는 제1큐, 상기 제1큐에 저장된 상기 평문 데이터의 암호화 데이터를 임시 저장하는 제2큐, 상기 제1큐에 상기 평문 데이터의 저장이 완료되면, 쓰기 완료 신호를 발생하고, 독출 명령이 수신되면, 상기 제2큐에 저장된 상기 암호화 데이터를 독출하는 확장 메모리 인터페이스 제어부, 상기 쓰기 완료 신호가 발생되면, 상기 제1큐에 저장된 상기 평문 데이터에 대한 암호화 명령을 생성하고, 상기 평문 데이터에 대한 암호화 완료 신호가 수신되면, 상기 독출 명령을 발생하는 암호화/해독화 제어부, 상기 암호화 명령을 수신하면, 상기 제1큐에 저장된 평문 데이터를 해독된 보안 키를 이용하여 암호화/해독화 엔진부를 통해 암호화하고, 상기 평문 데이터에 대한 암호화가 완료되면, 상기 암호화 데이터를 상기 제2큐에 저장하고, 상기 암호화 완료 신호를 발생하는 암호화/해독화부를 포함한다.

Description

무인 항공기에서 전자 보안 시스템{SYSTEM FOR ELECTRONICALLY SECURING IN UNMANNED AERIAL VEHICLE}
본 발명은 본 발명은 무인 항공기(Unmanned Aerial Vehicle, 이하 "UAV"라 칭하기로 한다.)의 데이터링크(Data-Link) 통신 시스템에서의 송수신 데이터를 암호화/해독화(Encryption/Decryption) 하는 전자 보안 시스템에 관한 것이다.
UAV는 군사적 목적으로 개발이 시작되었지만 최근 기술 발전에 힘입어 방송촬영, 통신중계, 농업, 교통감시, 재난재해 대처, 정찰, 배송, 레저 등의 산업 및 민간 분야로 시장을 급속도로 넓혀나가고 있다. UAV는 무선 통신 기술을 사용하여 원격 조종 또는 자동 조종을 통해 임무를 수행하며 주어진 임무를 제대로 수행하기 위해서는 지속적으로 UAV와 지상 관제 시스템을 이어주는 무선통신 시스템의 고 신뢰성이 매우 중요하다. UAV의 무선 통신 채널은 항시 개방된 상태의 무선 네트워크를 이용하고 있어 무선 보안 공격에 대한 취약성 높은 구조이며, 또한 통신 해킹, 컨트롤러 해킹, 센서 해킹 등 UAV와 관련한 보안 위협 기술을 동원해 UAV를 물리적으로 파손시키거나 탈취해 다른 용도로 악용할 수 가능성이 매우 높은 환경에 놓여 있다. 특히, 무선을 사용하는 통신 보안과 관련하여 데이터 링크 스푸핑(Spoofing)은 UAV의 제어권을 완전하게 장악 할 수 있으므로 더욱 심각한 보안 문제라고 할 수 있다.
종래의 UAV 데이터링크의 보안기술은 DES(Digital Encryption Standard), AES(Advanced Encryption Standard), ARIA(Academy, Research Institute, Agency), SEED와 같은 암호화 알고리즘을 이용하여 데이터를 암호화 한 후 모뎀의 변복조를 통해 송수신하는 구조로 구현 되고 있다. 송신부는 전송 데이터를 암호화 한 후 모뎀을 통해 변조하여 무선 전송하며, 수신부는 수신 데이터를 복조 후 해독화 하여 데이터를 복원 처리하는 것이 일반적이다. 이때 데이터의 암호화는 데이터링크에서 변복조를 수행하는 모뎀부인 데이터 처리부와 함께 내장되어 구현되거나 외부의 별도로 존재하는 암호 장치와 인터페이스 되어 송수신 데이터를 암호화/해독화(Encryption/Decryption) 하게 된다. 또한 암호 키는 데이터링크를 제어하는 제어장치 또는 외부의 저장매체로부터 전송 받아 내부에 저장되며, UAV와 제어국 또는 무선국이 동일한 키를 사용하는 대칭 키 방식의 고정된 암호키를 사용하는 것이 일반적인 UAV데이터링크의 송수신 데이터 암호 키 관리 및 운영 형태이다.
일반적으로 UAV의 데이터링크의 송수신 데이터는 지상 관제 시스템으로부터의 UAV원격명령(Tele-Command)(TC), 상태측정(Telemetry)(TM) 또는 관측 영상 정보들이며, 특히 TC/TM 데이터들은 체계 규격 내에서 일정한 패턴으로 반복되는 형태를 가지므로, 제3자가 무선상에서 반복적으로 송수신 되는 데이터를 수집 또는 관찰할 경우 원본 데이터를 추측하거나 추정할 수 있는 가능성이 일반적인 통신보다 상대적으로 높다.
상기와 같이 종래의 일반적인 UAV데이터링크 보안구조에서 송수신 데이터의 특성, 암호화 적용 방식, 키 관리 구조는 보안 관점에서 기밀성(Confidentiality), 무결성(Integrity), 가용성(Availability) 측면에서 높은 수준의 보안성을 만족하거나 상태를 유지하기 어려우며, 제3자에 의한 무선채널의 관측 가능성과 더불어 UAV가 탈취될 경우 보안 체계가 노출되어 기존 UAV의 운영을 중단 하거나 구조를 변경해야 만 하는 문제점을 가진다.
한국 공개 특허 제10-2015-0001206호 (공개)
본 발명은 상술한 필요성에 따라 안출된 것으로, 본 발명은 무인기 데이터링크 통신 시스템에서 송수신 데이터의 고속 암호화/해독화 시스템을 제공한다. 또한, 본 발명은 무인기 데이터링크에서 물리적으로 복제 불가능한 고유한 식별성을 부여하고, 암호키 관리 및 암호장치의 보안성을 확보하기 위한 전자 보안 시스템을 제공한다.
상술한 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 무인 항공기에서의 전자 보안 시스템은, 상기 무인 항공기의 지상 관제국으로 송신될 평문(Paintext) 데이터를 임시 저장하는 제1큐, 상기 제1큐에 저장된 상기 평문 데이터의 암호화 데이터를 임시 저장하는 제2큐, 상기 제1큐에 상기 평문 데이터의 저장이 완료되면, 쓰기 완료 신호를 발생하고, 독출 명령이 수신되면, 상기 제2큐에 저장된 상기 암호화 데이터를 독출하는 확장 메모리 인터페이스 제어부, 상기 쓰기 완료 신호가 발생되면, 상기 제1큐에 저장된 상기 평문 데이터에 대한 암호화 명령을 생성하고, 상기 평문 데이터에 대한 암호화 완료 신호가 수신되면, 상기 독출 명령을 발생하는 암호화/해독화 제어부, 상기 암호화 명령을 수신하면, 상기 제1큐에 저장된 평문 데이터를 해독된 보안 키를 이용하여 암호화/해독화 엔진부를 통해 암호화하고, 상기 평문 데이터에 대한 암호화가 완료되면, 상기 암호화 데이터를 상기 제2큐에 저장하고, 상기 암호화 완료 신호를 발생하는 암호화/해독화부를 포함한다.
그리고, 물리적으로 복제 불가능한 적어도 하나의 보안 키(Secure Key)를 생성하는 PUF(Physical Unclonable Function) 회로, 상기 PUF 회로에서 생성된 보안 키를 저장하는 비 휘발성 메모리, 상기 저장된 보안 키를 암호화 키를 통해 암호화하는 보안 키 암호화부를 포함하는 보안 키관리부를 더 포함하고, 상기 암호화 키는, 1회 사용되는 난수인 Nonce(Number used ONCE)와, 상기 Nonce에 대한 해쉬(Hash) 함수를 통해 생성된 해쉬 값임을 특징으로 한다.
또한, 상기 보안 키 암호화부에 의해 암호화된 보안 키를 상기 암호화 키를 통해 해독하고, 상기 해독된 암호화 키를 상기 암호화/해독화부로 전달하는 보안 키 해독화부를 더 포함한다.
그리고, 상기 쓰기 완료 신호는, 상기 제1큐에 저장된 상기 평문 데이터의 크기와 상기 평문 데이터가 저장된 상기 제1큐의 메모리 주소를 포함한다.
또한, 상기 암호 완료 신호는, 상기 제2 큐에 저장된 암호화 완료된 데이터의 크기와 상기 암호화 완료된 데이터가 저장된 상기 제2큐의 메모리 주소를 포함한다.
또한, 비행 제어부로부터 상기 평문 데이터를 입력 받아 상기 확장 메모리 인터페이스 제어부를 통해 상기 제1 큐에 저장하고, 상기 확장 메모리 인터페이스 제어부에 의해 독출된 상기 암호화 완료된 데이터를 데이터 처리부로 출력하는 메인 프로세서를 더 포함한다.
상술한 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 무인 항공기에서의 전자 보안 시스템은, 상기 무인 항공기의 지상 관제국으로부터 수신된 암호문(Ciphertext) 데이터를 임시 저장하는 제4큐, 상기 제4큐에 저장된 상기 암호문 데이터의 해독화가 완료된 평문 데이터를 저장하는 제3큐, 상기 제4큐에 상기 암호문 데이터의 저장이 완료되면, 쓰기 완료 신호를 발생하고, 독출 명령이 수신되면, 상기 제3큐에 저장된 상기 해독화가 완료된 평문 데이터를 독출하는 확장 메모리 인터페이스 제어부, 상기 쓰기 완료 신호가 발생되면, 상기 제4큐에 저장된 상기 암호문 데이터에 대한 해독화 명령을 생성하고, 상기 암호문 데이터에 대한 해독화 완료 신호가 수신되면, 상기 독출 명령을 발생하는 암호화/해독화 제어부, 상기 해독화 명령을 수신하면, 상기 제4큐에 저장된 암호문 데이터를 해독된 보안 키를 이용하여 암호화/해독화 엔진부를 통해 해독화하고, 상기 암호문 데이터에 대한 해독화가 완료되면, 상기 해독화된 평문 데이터를 상기 제3큐에 저장하고, 상기 해독화 완료 신호를 발생하는 암호화/해독화부를 포함한다.
그리고, 물리적으로 복제 불가능한 적어도 하나의 보안 키(Secure Key)를 생성하는 PUF(Physical Unclonable Function) 회로, 상기 PUF 회로에서 생성된 보안 키를 저장하는 비 휘발성 메모리, 상기 저장된 보안 키를 암호화 키를 통해 암호화하는 보안 키 암호화부를 더 포함하고, 상기 암호화 키는, 1회 사용되는 난수인 Nonce(Number used ONCE)와, 상기 Nonce에 대한 해쉬(Hash) 함수를 통해 생성된 해쉬 값임을 특징으로 한다.
또한, 상기 보안 키 암호화부에 의해 암호화된 보안 키를 상기 암호화 키를 통해 해독하고, 상기 해독된 암호화 키를 상기 암호화/해독화부로 전달하는 보안 키 해독화부를 더 포함한다.
그리고, 상기 쓰기 완료 신호는, 상기 제4큐에 저장된 상기 암호문 데이터의 크기와 상기 암호문 데이터가 저장된 상기 제4큐의 메모리 주소를 포함한다.
또한, 상기 해독 완료 신호는, 상기 제3큐에 저장된 해독화 완료된 평문 데이터의 크기와 상기 해독화 완료된 평문 데이터가 저장된 상기 제3큐의 메모리 주소를 포함한다.
상술한 본 발명의 실시 예에 따라 무인기 데이터링크 무선 통신 시스템에 있어서 허가되지 않은 제3자에 의한 송수신데이터의 도청, 관측, 탈취에 대한 링크 계층에서의 보안 기술을 제안하며, 이를 통해 무인기 데이터링크 통신 시스템의 보안성을 향상 시킬 수 있는 전자 보안 시스템을 제공한다.
상술한 본 발명의 실시 예에 따라 UAV의 전자 보안 시스템은 데이터 처리부와 별개의 하드웨어로 구현할 수 있어 유니크 한 보안 키에 대한 보안 정도를 높일 수 있고, 데이터의 암호화/해독화 처리 속도를 향상 시킬 수 있다.
도 1은 본 발명의 실시 예에 따른 무인 항공기에서의 전자 보안 시스템의 블록 구성도이다.
도 2는 본 발명의 실시 예에 따른 지상 관제국으로 전송될 평문 데이터의 암호화 과정을 나타낸 도면이다.
도 3은 본 발명의 실시 예에 따른 지상 관제국으로부터 송신된 암호문(Cyphertext) 데이터(310)의 해독화 과정을 나타낸 도면이다.
도 4는 본 발명의 실시 예에 따라 보안 키 관리부가 암호화/해독화 프로세서(160)로 암호화된 보안 키(Secure Key)를 전달하는 과정을 설명하기 위한 도면이다.
도 5는 본 발명의 실시 예에 따라 전자 보안 시스템의 구성 예를 도시한 도면이다.
도 6은 본 발명의 다른 실시 예에 따라 전자 보안 시스템의 구성 예를 도시한 도면이다.
이하의 내용은 단지 본 발명의 원리를 예시한다. 그러므로 당업자는 비록 본 명세서에 명확히 설명되거나 도시되지 않았지만 본 발명의 원리를 구현하고 본 발명의 개념과 범위에 포함된 다양한 장치를 발명할 수 있는 것이다. 또한, 본 명세서에 열거된 모든 조건부 용어 및 실시 예들은 원칙적으로, 본 발명의 개념이 이해되도록 하기 위한 목적으로만 명백히 의도되고, 이와 같이 특별히 열거된 실시 예들 및 상태들에 제한적이지 않는 것으로 이해되어야 한다.
또한, 본 발명의 원리, 관점 및 실시 예들뿐만 아니라 특정 실시 예를 열거하는 모든 상세한 설명은 이러한 사항의 구조적 및 기능적 균등물을 포함하도록 의도되는 것으로 이해되어야 한다. 또한 이러한 균등물들은 현재 공지된 균등물뿐만 아니라 장래에 개발될 균등물 즉 구조와 무관하게 동일한 기능을 수행하도록 발명된 모든 소자를 포함하는 것으로 이해되어야 한다.
따라서, 예를 들어, 본 명세서의 블럭도는 본 발명의 원리를 구체화하는 예시적인 회로의 개념적인 관점을 나타내는 것으로 이해되어야 한다. 이와 유사하게, 모든 흐름도, 상태 변환도, 의사 코드 등은 컴퓨터가 판독 가능한 매체에 실질적으로 나타낼 수 있고 컴퓨터 또는 프로세서가 명백히 도시되었는지 여부를 불문하고 컴퓨터 또는 프로세서에 의해 수행되는 다양한 프로세스를 나타내는 것으로 이해되어야 한다.
프로세서 또는 이와 유사한 개념으로 표시된 기능 블럭을 포함하는 도면에 도시된 다양한 소자의 기능은 전용 하드웨어뿐만 아니라 적절한 소프트웨어와 관련하여 소프트웨어를 실행할 능력을 가진 하드웨어의 사용으로 제공될 수 있다. 프로세서에 의해 제공될 때, 상기 기능은 단일 전용 프로세서, 단일 공유 프로세서 또는 복수의 개별적 프로세서에 의해 제공될 수 있고, 이들 중 일부는 공유될 수 있다.
또한 프로세서, 제어 또는 이와 유사한 개념으로 제시되는 용어의 명확한 사용은 소프트웨어를 실행할 능력을 가진 하드웨어를 배타적으로 인용하여 해석되어서는 아니되고, 제한 없이 디지털 신호 프로세서(DSP) 하드웨어, 소프트웨어를 저장하기 위한 롬(ROM), 램(RAM) 및 비 휘발성 메모리를 암시적으로 포함하는 것으로 이해되어야 한다. 주지관용의 다른 하드웨어도 포함될 수 있다.
본 명세서의 청구범위에서, 상세한 설명에 기재된 기능을 수행하기 위한 수단으로 표현된 구성요소는 예를 들어 상기 기능을 수행하는 회로 소자의 조합 또는 펌웨어/마이크로 코드 등을 포함하는 모든 형식의 소프트웨어를 포함하는 기능을 수행하는 모든 방법을 포함하는 것으로 의도되었으며, 상기 기능을 수행하도록 상기 소프트웨어를 실행하기 위한 적절한 회로와 결합된다. 이러한 청구범위에 의해 정의되는 본 발명은 다양하게 열거된 수단에 의해 제공되는 기능들이 결합되고 청구항이 요구하는 방식과 결합되기 때문에 상기 기능을 제공할 수 있는 어떠한 수단도 본 명세서로부터 파악되는 것과 균등한 것으로 이해되어야 한다.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해질 것이며, 그에 따라 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다.
본 발명은 무인 항공기(Unmanned Aerial Vehicle : UAV) 데이터링크(Data-Link) 통신 시스템에서의 송수신 데이터를 암호화/해독화(Encryption/Decryption) 하는 하드웨어 기반의 암호화/해독화 장치 및 그 방법에 관한 것이다. 특히 하드웨어상에 구현된 다중 데이터 버퍼인 큐(Queue) 및 다중 암호화/해독화 알고리즘 엔진을 사용하여 데이터링크 송수신 데이터를 고속 암호화/해독화 처리하여 암호화/해독화 연산으로 인한 전송지연을 최소화한다. 또한 물리적 복제가 불가능한 PUF(Physically Unclonable Function) 회로를 통해 생성된 고유한 식별자(Unique Identifier)를 이용하여 무인 항공기에서의 암호화/해독화 기능 및 보안키 관리의 보안성을 향상시키는 것을 특징으로 한다.
이하, 첨부된 도면을 참조하여 본 발명의 다양한 실시 예를 상세히 설명하기로 한다.
도 1은 본 발명의 실시 예에 따른 무인 항공기에서의 전자 보안 시스템의 블록 구성도이다.
도 1은 무인 항공기와 무선 통신을 수행하는 지상 제어국 또는 무선국을 포함하는 지상 관제국과의 보안을 강화하기 위하여 하드웨어 기반의 암호화/해독화를 위한 전자 보안 시스템(130)을 도시하고 있다.
도 1에서 비행 제어부(110)는 지상 관제국으로부터 수신된 명령에 따라 UAV의 비행을 제어하며, 각종 정보들을 수집하는 역할을 수행한다. 데이터 처리부(120)는 지상 관제국으로부터 수신된 암호화된 데이터를 복조하여 비행 제어부(110)로 전달하고, 상기 비행 제어부(110)로부터 생성되어 암호화된 데이터를 변조하여 상기 지상 관제국으로 송신한다.
그리고, 전자 보안 시스템(130)은 상기 비행 제어부(110)와 상기 데이터 처리부(120)와의 사이에 전달되는 데이터들의 인터페이싱을 수행하고, 인터페이싱되는 데이터들에 대한 암호화/해독화를 수행한다.
제1 시리얼 인터페이스(Serial Interface) 제어부(140a), 메인 프로세서(140b), 제2 시리얼 인터페이스 제어부(140c)는 메인 프로세서부(140)에 포함된다.
구체적으로, 제1 시리얼 인터페이스(Serial Interface) 제어부(140a)는 메인 프로세서(140b)에서 처리되는 병렬 데이터와 상기 비행 제어부(110)에서 처리되는 직렬 데이터를 서로 변환하여 메인 프로세서(140b)와 비행 제어부(110)와와의 양방향 고속 시리얼 데이터(Serial Data)를 전이중 방식으로 통신하도록 제1시리얼 인터페이스를 제어한다. 제2 시리얼 인터페이스 제어부(140c)는 메인 프로세서(140b)와 상기 데이터 처리부(120)와의 양방향 고속의 시리얼 데이터를 전이중 방식으로 통신하기 위한 제2시리얼 인터페이스를 제어한다.
상기 제1 시리얼 인터페이스 제어부(140a)와 상기 제2 시리얼 인터페이스 제어부(140c)는 Ethernet MAC, UART Controller, SPI, I2C, CAN Controller, USB Controller와 같은 시리얼 통신 제어기를 포함하며, Ethernet, RS232, RS422, CAN, USB와 같은 시리얼 통신을 통하여 송수신 데이터를 입출력 처리한다.
상기 메인 프로세서(140b)는 단일 코어(Single core) 또는 멀티 코어(Multi core)로 구현될 수 있으며, 상기 제1 시리얼 인터페이스(140a)와 상기 제2 시리얼 인터페이스(140c)를 통해 고속으로 송수신되는 데이터에 대한 암호화/해독화를 하기 위해 암호화/해독화 프로세서(160)을 제어한다.
상기 암호화/해독화 프로세서(160)는 FPGA(Field Programmable Gate Array)와 같은 하드웨어 형태로 구현될 수 있으며, 확장 메모리 인터페이스 제어부(Extension Memory Interface Controller)(162), 복수 개의 큐(Queue)들을 포함하는 버퍼부(164), 암호화/해독화 제어부(170), 암호화/해독화부(172), 보안키 해독화부(174), 복수 개의 암호화 엔진들을 포함하는 암호화/해독화 엔진부(176)를 포함한다.
확장 메모리 인터페이스 제어부(162)는 메모리 주소를 통해 메인 프로세서(140b)가 버퍼부(164)에 포함된 큐(Queue)들(164a 164b, 164c, 164d), 암호화/해독화 제어부(170)에 액세스 할 수 있도록 한다. 확장 메모리 인터페이스 제어부(162)는 메인 프로세서(140b)를 통해 입력되는 데이터들이 버퍼부(164)의 큐들(164a 164b, 164c, 164d)에 저장되는 주소를 관리하고, 상기 큐들(164a 164b, 164c, 164d)의 상태들에 대한 큐 상태 신호를 암호화/해독화 제어부(170)로 전송한다.
상기 큐 상태 신호는 큐들(164a 164b, 164c, 164d)의 저장 공간 또는 큐 들(164a 164b, 164c, 164d)에 대한 읽기/쓰기 신호 등을 포함한다.
또한, 확장 메모리 인터페이스 제어부(162)는 상기 암호화/해독화 제어부(170)의 동작 상태 등에 대한 정보를 상기 메인 프로세서(140b)로 출력한다.
상기 암호화/해독화 제어부(170)의 동작 상태에 대한 정보는 암호화/해독화 엔진부(176)에 포함되는 암호화/해독화 엔진들의 동작 상태에 대한 정보를 포함하며, 암호화/해독화 엔진들이 암호화/해독화 동작을 진행 중인 경우에는 비지(Busy) 신호를, 준비 중인 경우에는 레디(Ready) 신호를, 암호화/해독화가 완료된 경우에는 완료(Complete) 신호를 포함한다.
그리고, 확장 메모리 인터페이스 제어부(162)는 버퍼부(164)에 포함된 큐(Queue)들(164a 164b, 164c, 164d)에 대한 데이터 읽기, 데이터 쓰기 동작을 수행한다. 확장 메모리 인터페이스 제어부(162)는 버퍼부(164)에 포함된 큐(Queue)들(164a 164b, 164c, 164d)에 대한 데이터 쓰기가 완료되면, 큐들(164a 164b, 164c, 164d)에 저장된 데이터의 크기와 데이터가 저장된 메모리 주소를 포함하는 쓰기 완료 신호를 생성한다.
따라서, 확장 메모리 인터페이스 제어부(162)는 메인 프로세서(140b)를 통해 입력된 데이터들을 상기 큐들(164a, 164b, 164c, 164d)에 저장하거나, 상기 큐들(164a, 164b, 164c, 164d)에 저장된 데이터를 독출하여 메인 프로세서(140b)로 출력한다.
상기 버퍼부(164)는 복수 개의 큐들(164a, 164b, 164c, 164d)을 포함하며, 상기 큐들(164a, 164b, 164c, 164d)은 메인 프로세서(140b)로부터 입력되는 평문 데이터, 암호문(Cypertext) 데이터, 암호화/해독화부(172)에 의해 암호화된 데이터 또는 해독화된 데이터를 저장하는 선입선출(First In First Out : FIFO) 구조의 메모리이다.
도 1에서와 같이 메인 프로세서(140b)는 제1 시리얼 인터페이스 제어부(140a)를 통해 비행 제어부(110)로부터 전달되는 평문(Plaintext) 데이터를 확장 메모리 인터페이스 제어부(162)를 통해 버퍼부(164)에 출력하고, 상기 평문 데이터에 대해 암호화된 데이터인 암호문(Cyphertext) 데이터를 확장 메모리 인터페이스 제어부(162)를 통해 입력 받아 제2 시리얼 인터페이스 제어부(140c)를 통해 데이터 처리부(120)로 전송한다.
도 1에서 제1큐(164a)는 메인 프로세서(140b)로부터 입력된 평문 데이터가 저장되며, 제2큐(164b)는 상기 제1큐(164a)에 저장된 평문 데이터에 대해 암호화된 데이터가 저장된다. 제4큐(164d)는 상기 메인 프로세서(140b)로부터 입력된 암호문(Cypertext) 데이터가 저장되며, 제3큐(164c)는 상기 제4큐(164c)에 저장된 암호화된 데이터의 해독화된 평문 데이터가 저장된다.
이와 같이 본 발명의 실시 예에서는 메인 프로세서(140b)를 통해 입출력된 데이터와 암호화/해독화된 데이터를 저장하는 큐(Queue)들을 구분함으로써, 평문 데이터를 큐에 저장하는 시간과 평문 데이터에 대한 암호화를 수행하는 시간간의 시간 동기 충돌과 데이터의 오버헤드를 완충하여 데이터 처리 흐름을 원활히 할 수 있어 고속의 암호화/해독화 연산을 지속시킬 수 있다.
본 발명의 실시 예에 따라 암호화/해독화 제어부(170)가 암호화될 평문 데이터가 저장된 큐의 메모리 주소와, 저장된 데이터 크기 또는 해독화될 암호문 데이터가 저장된 큐의 메모리 주소와, 저장된 데이터 크기 정보를 포함하는 쓰기 완료 신호를 확장 메모리 인터페이스 제어부(162)로부터 수신하면, 암호화/해독부(172)로 암호화 명령 또는 해독화 명령을 전송한다. 이때 상기 암호화 명령 또는 해독화 명령에는 암호화/해독화할 데이터의 크기 및 저장된 메모리 주소가 포함된다.
암호화/해독화부(172)는 암호화/해독화 엔진부(176)에 포함된 암호화/해독화 엔진들을 제어하고, 각 엔진들의 동작 상태들을 모니터링한다. 또한, 보안 키 관리부(150)에서 해독된 보안 키를 전달받아, 암호화/해독화 엔진들이 상기 보안 키를 이용하여 버퍼부(164)에 저장된 데이터에 대한 암호화/해독화를 수행하도록 제어한다.
이와 같이 본 발명의 실시 예에서는 확장 메모리 인터페이스 제어부(162)와 암호화/해독화부(172)를 별개로 구성함으로써, 메인 프로세서(140b)가 직접 암호화/해독화 엔진부(176)에 대한 접근 및 상태 모니터링을 차단할 수 있어, 외부로부터의 기밀성을 유지할 수 있다.
구제척으로, 암호화/해독화부(172)는 상기 암호화 명령 또는 해독화 명령에 따라 암호화/해독화 엔진부(176)에 포함된 복수 개의 암호화/해독화 알고리즘 엔진들을 이용하여 상기 버퍼부(164)에 저장된 데이터들에 대하여 암호화/해독화를 수행하고, 암호화/해독화가 완료되면, 암호화된 데이터 또는 해독화된 데이터를 상기 버퍼부(164)에 저장한 후, 암호 완료 또는 해독 완료 신호를 생성하여 암호화/해독화 제어부(170)로 전송한다.
본 발명의 실시 예에서 상기 암호화/해독화 엔진부(176)에는 복수 개의 암호화/해독화 알고리즘 또는 다중 암호학적 해쉬 함수(Hash Function)들을 사용하는 암호화/해독화 엔진을 포함하며, 데이터에 대한 암호화/해독화 연산을 담당한다. 또한, 상기 암호화/해독화 엔진부(176)는 고속의 암호화 연산 처리를 위하여 하드웨어 로직으로 구현될 수도 있으며, 암호화/해독화 알고리즘은 AES (Advanced Encryption Standard) 128/256, DES(Digital Encryption Standard), SEED, ARIA(Academy, Research Institute, Agency). LEA(Lightweight Encryption Algorithm) 등 다양한 암호 알고리즘으로 구성될 수 있으며, 필요에 따라 단일 암호화/해독화 엔진만을 이용하여 암호화/해독화를 수행할 수도 있고, 복수 개의 암호화/해독화 엔진을 이용하여 병렬 암호화/해독화를 수행할 수도 있다.
보안 키 해독화부(174)는 보안 키 관리부(150)에서 암호화된 보안 키(Secure Key)를 해독화하여, 암호화/해독화부(172)로 전달한다. 암호화/해독화부(172)는 상기 보안 키 해독화부(174)에 의해 해독화된 보안 키를 이용하여 암호화/해독화 엔진부(176)를 통해 암호화/해독화를 수행할 수 있다. 본 발명에서는 보안 키 해독화부(174)가 보안 키 관리부(150)에서 보안 키를 암호화한 키인 보안 키 암호화 키(Secure Key Encryption Key)를 미리 저장하고 있는 것을 가정한다.
보안 키 관리부(150)는 PUF(Physically Unclonable Function) 회로(150a), 비휘발성 메모리(Non-volatile Memory)(150b) 및 보안 키 암호화부(150c)를 포함하여 구성된다.
PUF 회로(150a)는 반도체 제조 공정 상의 공정 편차를 이용하여 예측 불가능한(Unpredictable) 디지털 값인 유니크 키(Unique Key)를 생성하여, 비휘발성 메모리(150b)에 저장한다. 이때 생성된 유니크 키는 본 발명에서 사용되는 보안 키(Secure Key)로 사용된다. 보안 키 암호화부(150c)는 상기 비휘발성 메모리(150b)에 저장된 유니크 키인 보안 키를 암호 키로 암호화하여 보안 키 해독화부(174)로 출력한다. 이때 상기 암호화 키는, 1회 사용되는 난수인 Nonce(Number used ONCE)와, 상기 Nonce에 대한 해쉬(Hash) 함수를 통해 생성된 해쉬 값이다. 본 발명의 실시 예에서 보안 키 해독화부(174)는 상기 보안 키 암호화 키(Secure Key Encryption Key)를 미리 알고 있으므로, 보안 키 관리부(150)로부터 전달된 암호화된 보안 키를 상기 보안 키 암호화 키(Secure Key Encryption Key)를 이용하여 해독함으로써, 보안 키를 획득할 수 있다.
상술한 바와 같이 본 발명에서는 FPGA로 구현된 암호화/해독화 프로세서(160)가 내부의 암호화/해독화 엔진부(176)를 통해 데이터의 암호화/해독화를 수행하고, 보안 키 관리부(150)에서 비 휘발성 메모리(150b)에 PUF 회로(150a)에 의해 생성된 유니크한 보안 키를 암호화 키(Encryption Key)로 암호화 하여 암호화/해독화 프로세서(160)로 전달함으로써 보안 키에 대한 물리적인 노출을 방지함으로써 기밀성을 높일 수 있다.
도 2는 본 발명의 실시 예에 따른 지상 관제국으로 전송될 평문 데이터의 암호화 과정을 나타낸 도면이다.
도 2에서는 전자 보안 시스템(130)이 비행 제어부(110)로부터 입력되는 평문 데이터(210)를 암호화한 암호문(Cyphertext) 데이터(220)를 데이터 처리부(120)로 출력하는 것을 보여준다. 상기 암호문 데이터(220)를 입력 받은 데이터 처리부(120)는 상기 암호문 데이터(220)를 변조하여 지상의 관제국으로 송신한다.
도 2를 참조하면, 참조번호 250과 같이 메인 프로세서(140b)는 제1 시리얼 인터페이스 제어부(140a)를 통해 평문 데이터(210)가 수신되면, 암호화/해독화 프로세서(160)의 확장 메모리 인터페이스 제어부(162)로 전달하고, 확장 메모리 인터페이스 제어부(162)는 상기 평문 데이터를 버퍼부(164)의 제1큐(164a)에 저장한다. 상기 도 2에서 참조번호 230은 제1큐(164a)에 저장된 상기 평문 데이터를 나타낸다.
상기 확장 메모리 인터페이스 제어부(162)는 상기 제1큐(164a)에 상기 평문 데이터의 저장을 완료하면, 상기 제1큐(164a)에 저장된 상기 평문 데이터(230)의 크기와 상기 제1큐(164a)에 저장된 메모리 주소를 포함하는 쓰기 완료 신호를 암호화/해독화 제어부(170)로 출력한다.
상기 확장 메모리 인터페이스 제어부(162)로부터 상기 쓰기 완료 신호를 수신한, 암호화/해독화 제어부(170)는 암호화/해독화부(172)로 상기 제1큐(164a)에 저장된 상기 평문 데이터(230)에 대한 암호화를 수행할 것을 명령하는 암호화 명령을 출력한다. 이때 상기 암호화 명령은 상기 제1큐(164a)에 저장된 상기 평문 데이터(230)의 크기 및 메모리 주소가 포함될 수 있다.
암호화/해독화부(172)가 상기 암호화 명령을 수신하면, 상기 제1큐(164a)에 저장된 평문 데이터(230)를 암호화/엔진부(176)를 통해 암호화한다.
이때, 암호화/해독화 엔진부(176)는 보안 키 해독화부(174)에 의해 해독된 보안 키를 통해 상기 평문 데이터(230)에 대한 암호화를 수행한다.
암호화/해독화 엔진부(176)는 N개의 암호화/해독화 엔진들로 구성될 수 있으며, N개의 암호화/해독화 엔진들 중 어느 하나의 암호화/해독화 엔진만을 이용하여 암호화를 수행할 수도 있고, 복수 개의 암호화/해독화 엔진들을 이용하여 상기 평문 데이터에 대한 병렬 암호화 처리를 수행할 수도 있다.
암호화/해독화부(172)는 상기 암호화/엔진부(176)에 의해 상기 평문 데이터(230)에 대한 암호화가 완료되면, 상기 암호화된 암호문 데이터를 상기 제2큐(164b)에 저장(240)하고, 암호화 완료 신호를 암호화/해독화 제어부(170)로 출력한다. 이때 상기 암호화 완료 신호에는 상기 제2큐(164b)에 저장된 암호문(Cyphertext) 데이터(240)의 크기 및 상기 제2큐(164b)에 저장된 암호문 데이터의 메모리 주소가 포함될 수 있다.
또한, 암호화/해독화 제어부(170)는 암호화/해독화부(172)가 사용할 암호화/해독화 엔진을 결정하고, 결정된 암호화/해독화 엔진의 여러 파라미터들을 결정할 수 있다.
상기 암호화 완료 신호를 수신한, 암호화/해독화 제어부(170)은 확장 메모리 인터페이스 제어부(162)로 상기 제2큐(164b)에 저장된 암호문 데이터(240)에 대한 독출 명령을 출력한다.
상기 독출 명령을 수신한 확장 메모리 인터페이스 제어부(162)는 상기 제2큐(164b)에 저장된 암호문 데이터(240)를 읽은 후, 메인 프로세서(140b)로 출력하고, 메인 프로세서(140b)는 제2 시리얼 인터페이스 제어부(140c)를 통해 데이터 처리부(120)로 암호문 송신 데이터 패킷(220)을 출력한다(참조번호 260).
도 3은 본 발명의 실시 예에 따른 지상 관제국으로부터 송신된 암호문(Cyphertext) 데이터(310)의 해독화 과정을 나타낸 도면이다. 도 3에서 참조번호 350, 360, 370은 전자 보안 시스템(130)이 데이터 처리부(120) 로부터 입력되는 암호문(Cyphertext) 데이터(310)를 해독화한 평문(Plaintext) 데이터(320)를 비행 제어부(110)로 출력하는 과정을 보여준다.
상기 암호문 데이터(310)를 수신한 데이터 처리부(120)는 상기 암호문 데이터(310)를 복조하여 전자 보안 시스템(130)으로 출력한다.
도 3을 참조하면, 참조번호 350과 같이 메인 프로세서(140b)는 제2 시리얼 인터페이스 제어부(140c)를 통해 암호문 데이터(310)가 수신되면, 암호화/해독화 프로세서(160)의 확장 메모리 인터페이스 제어부(162)로 전달하고, 확장 메모리 인터페이스 제어부(162)는 상기 암호문 데이터를 버퍼부(164)의 제4큐(164d)에 저장한다. 상기 도 3에서 참조번호 350은 제4큐(164d)에 저장된 상기 암호문 데이터를 나타낸다.
상기 확장 메모리 인터페이스 제어부(162)는 상기 제4큐(164d)에 상기 암호문 데이터의 저장을 완료하면, 상기 제4큐(164d)에 저장된 상기 암호문 데이터(350)의 크기와 상기 제4큐(164d)에 저장된 메모리 주소를 포함하는 쓰기 완료 신호를 암호화/해독화 제어부(170)로 출력한다.
상기 확장 메모리 인터페이스 제어부(162)로부터 상기 쓰기 완료 신호를 수신한, 암호화/해독화 제어부(170)는 암호화/해독화부(172)로 상기 제4큐(164d)에 저장된 상기 암호문 데이터(350)에 대한 해독화를 수행할 것을 명령하는 해독화 명령을 출력한다. 이때 상기 해독화 명령은 상기 제4큐(164d)에 저장된 상기 암호문 데이터(350)의 크기 및 메모리 주소가 포함될 수 있다.
암호화/해독화부(172)는 상기 해독화 명령을 수신하면, 상기 제4큐(164d)에 저장된 암호문 데이터(350)를 암호화/해독화 엔진부(176)를 통해 해독한다.
이때, 암호화/해독화부(172)는 보안 키 해독화부(174)에 의해 해독된 보안 키(Secure Key)를 암호화/엔진부(176)로 전달하고, 암호화/해독화 엔진부(176)는 상기 보안 키를 통해 상기 암호문 데이터(350)에 대한 해독화를 수행한다.
암호화/해독화 엔진부(176)는 N개의 암호화/해독화 엔진들로 구성될 수 있으며, N개의 암호화/해독화 엔진들 중 어느 하나의 암호화/해독화 엔진만을 이용하여 해독화를 수행할 수도 있고, 복수 개의 암호화/해독화 엔진들을 이용하여 상기 암호문 데이터에 대한 병렬 해독화 처리를 수행할 수도 있다.
암호화/해독화부(172)는 상기 암호화/엔진부(176)에 의해 상기 암호문 데이터(350)에 대한 해독화가 완료되면, 상기 해독화된 평문 데이터를 상기 제3큐(164c)에 저장(360)하고, 해독화 완료 신호를 암호화/해독화 제어부(170)로 출력한다. 이때 상기 해독화 완료 신호에는 상기 제3큐(164c)에 저장된 평문(Plaintext) 데이터(340)의 크기 및 상기 제3큐(164c)에 저장된 평문 데이터의 메모리 주소가 포함될 수 있다.
또한, 암호화/해독화 제어부(170)는 암호화/해독화부(172)가 사용할 암호화/해독화 엔진을 결정하고, 결정된 암호화/해독화 엔진의 여러 파라미터들을 결정할 수 있다.
상기 해독화 완료 신호를 수신한, 암호화/해독화 제어부(170)은 확장 메모리 인터페이스 제어부(162)로 상기 제3큐(164c)에 저장된 평문 데이터(340)에 대한 독출 명령을 출력한다.
상기 독출 명령을 수신한 확장 메모리 인터페이스 제어부(162)는 상기 제3큐(164c)에 저장된 평문 데이터(340)를 읽은 후, 메인 프로세서(140b)로 출력하고, 메인 프로세서(140b)는 제1 시리얼 인터페이스 제어부(140a)를 통해 비행 제어부(110)로 평문 수신 데이터 패킷(320)을 출력한다(참조번호 370).
상술한 본 발명의 실시 예에서는 평문 데이터가 저장되는 큐, 평문 데이터의 암호화 데이터가 저장되는 큐와 암호문 데이터가 저장되는 큐, 암호문 데이터의 해독화된 데이터가 저장되는 큐를 각각 지정하여 설명하였지만, 이는 일 실시 예에 불과할 뿐 실제 구현과정에서는 당업자에 의해 서로 구분되는 다른 큐에 저장이 가능하도록 변경이 가능함은 물론이다.
도 4는 본 발명의 실시 예에 따라 보안 키 관리부(150)가 암호화/해독화 프로세서(160)로 암호화된 보안 키(Secure Key)를 전달하는 과정을 설명하기 위한 도면이다. 본 발명에서 설명하는 보안 키는 유무선 통신에서 암호화/해독화에 사용되는 암호 키로서, 마스터 키, 세션 키, 파생 키 등을 포함한다.
보안 키 관리부(150)는 PUF(Physical Unclonable Function) 회로(150a), 비 휘발성 메모리(150b), 보안 키 암호화부(150c)를 포함한다.
PUF(Physical Unclonable Function) 회로(405)는 물리적으로 복제 불가능 한(Physical Unclonable) 적어도 하나의 보안 키(Secure Key)를 생성하는 회로이며, 비 휘발성 메모리(150b)는 상기 PUF 회로에서 생성된 보안 키(410)를 저장한다.
보안 키 암호화부(150c)는 상기 비 휘발성 메모리(150b)에 저장된 보안 키(410)를 암호화 키를 통해 암호화한다(참조번호 430). 이때 상기 보안 키 암호화부(150c)는 1회 사용되는 난수인 Nonce(Number used ONCE)와, 상기 Nonce에 대한 해쉬(Hash) 함수를 통해 생성된 해쉬 값을 통해 상기 보안 키를 암호화할 암호화 키를 생성한다. 그리고, 보안 키 암호화부(150c)는 상기 암호화된 보안 키(430)를 암호화/해독화 프로세서(160)의 보안 키 해독화부(174)로 전달한다.
보안 키 해독화부(174)는 상기 보안 키 관리부(150)로부터 전달된 암호화된 보안 키(430)를 미리 저장하고 있는 보안 키 암호 키(Secure Key Encryption Key)를 통해 해독하고(참조번호 450), 해독된 보안 키를 암호화/해독화부(172)를 통해 암호화/해독화 엔진부(176)로 전달한다(460). 그리고, 암호화/해독화 엔진부(176)는 전달받은 보안 키(470)를 통해 암호화/해독화를 수행한다.
도 4에 도시된 바와 같이 본 발명의 실시 예에서는 보안 키 관리부(150)로부터 보안 키가 암호화/해독화 프로세서(160)로 암호화되어 전달됨으로써, 제3자가 보안 키 관리부(150)와 암호화/해독화 프로세서(160) 사이의 인터페이스에 대한 모니터링 또는 하드웨어적으로 프로빙(Probing)하여 보안 키를 탈취 또는 추측할 수 없도록 한다. 또한, 본 발명의 실시 예에서는 보안 키 관리부(150)가 보안 키를 암호화하여 출력함으로써, 보안 키의 기밀 성을 유지할 수 있다. 도 5는 본 발명의 실시 예에 따라 전자 보안 시스템의 구성 예를 도시한 도면이다.
도 5에서는 전자 보안 시스템(130)이 비행 제어부(510)와 데이터 처리부(520) 사이에서 각각 시리얼 인터페이스를 통해 연결되어, 송수신 되는 데이터들에 대한 암호화/해독화를 수행하는 것을 보여준다.
도 6은 본 발명의 다른 실시 예에 따라 전자 보안 시스템의 구성 예를 도시한 도면이다. 도 6에 따른 전자 보안 시스템(130)은 데이터 처리부(620)의 구성 요소로 포함되어 동작하는 것을 보여주고 있으며, 도 6에서 전자 보안 시스템(130)은 변복조부(640)의 전단에 위치하며, 비행 제어부 인터페이스(630)와 시리얼 인터페이스를 통해 통신을 수행하고, 비행 제어부(610)와의 인터페이스는 비행 제어부 인터페이스(630)가 수행한다. 그리고, 도 6에서 변복조부(640)는 전자 제공 시스템(1360)에서 출력되는 암호문 데이터를 변조하여 RF부(650)를 통해 출력하거나, RF부(650)를 통해 수신된 암호문 데이터를 복조하여 전자 보안 시스템(130)으로 출력한다.
또한, 상술한 본 발명의 다양한 실시 예들에 따른 동작 방법은 프로그램으로 구현되어 다양한 비일시적 판독 가능 매체(non-transitory computer readable medium)에 저장되어 제공될 수 있다. 비일시적 판독 가능 매체란 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상술한 다양한 어플리케이션 또는 프로그램들은 CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리카드, ROM 등과 같은 비일시적 판독 가능 매체에 저장되어 제공될 수 있다.
또한, 이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.
110: 비행제어부 120: 데이터 처리부
130: 전자 보안 시스템 140: 메인 프로세서부
140a: 제1시리얼 인터페이스 제어부
140b: 메인 프로세서
140c: 제2시리얼 인터페이스 제어부
150: 보안 키 관리부 150a: PUF 회로
150b: 비 휘발성 메모리 150c: 보안 키 암호화부
160: 암호화/해독화 프로세서
162: 확장 메모리 인터페이스 제어부
164: 버퍼부 164a: 제1큐
164b: 제2큐 164c: 제3큐
164d: 제4큐 170: 암호화/해독화 제어부
172: 암호화/해독화부 174: 보안 키 해독화부
176: 암호화/해독화 엔진부

Claims (10)

  1. 무인 항공기에서의 전자 보안 시스템에 있어서,
    상기 무인 항공기의 지상 관제국으로 송신될 평문(Paintext) 데이터를 임시 저장하는 제1큐 및 상기 제1큐에 저장된 상기 평문 데이터의 암호화 데이터를 임시 저장하는 제2큐를 포함하는 버퍼부;
    상기 제1큐에 상기 평문 데이터의 저장이 완료되면, 쓰기 완료 신호를 생성하고, 독출 명령이 수신되면, 상기 제2큐에 저장된 상기 암호화 데이터를 독출하는 확장 메모리 인터페이스 제어부;
    상기 쓰기 완료 신호가 생성되면, 상기 제1큐에 저장된 상기 평문 데이터에 대한 암호화 명령을 생성하고, 상기 평문 데이터에 대한 암호화 완료 신호가 수신되면, 상기 독출 명령을 발생하는 암호화/해독화 제어부;
    물리적으로 복제 불가능한 적어도 하나의 보안 키를 생성하고, 암호화 키를 이용하여 상기 생성된 보안 키를 암호화하는 보안 키 관리부;
    상기 보안 키 관리부로부터 암호화 된 보안 키를 전달 받아 해독하고, 상기 해독화된 보안 키를 상기 암호화/해독화 제어부로 전달하는 보안 키 해독화부;
    상기 암호화 명령에 따라 상기 제1큐에 저장된 평문 데이터를 상기 보안 키를 이용하여 암호화하는 적어도 하나의 암호화/해독화 엔진을 포함하는 암호화/해독화 엔진부;
    상기 평문 데이터에 대한 암호화가 완료되면, 상기 암호화/해독화 엔진부로부터 전달 받은 상기 암호화 데이터를 상기 제2큐에 저장하고, 상기 암호화 완료 신호를 생성하여 상기 암호화 완료 신호를 상기 암호화/해독화 제어부로 전달하는 암호화/해독화부; 및
    상기 확장 메모리 인터페이스 제어부로부터 상기 제2큐에 저장된 상기 암호화 데이터를 전달 받아, 상기 암호화 데이터를 변조하여 상기 변조된 암호화 데이터를 상기 지상 관제국으로 송신하는 데이터 처리부;를 포함하는 것을 특징으로 하는 무인 항공기에서의 전자 보안 시스템.
  2. 제1항에 있어서, 상기 보안 키 관리부는,
    상기 보안 키(Secure Key)를 생성하는 PUF(Physical Unclonable Function) 회로;
    상기 PUF 회로에서 생성된 보안 키를 저장하는 비 휘발성 메모리; 및
    상기 저장된 보안 키를 암호화 키를 통해 암호화하는 보안 키 암호화부를 포함하고,
    상기 암호화 키는, 1회 사용되는 난수인 Nonce(Number used ONCE)와, 상기 Nonce에 대한 해쉬(Hash) 함수를 통해 생성된 해쉬 값임을 특징으로 하는 무인 항공기에서의 전자 보안 시스템.
  3. 삭제
  4. 제1항에 있어서,
    상기 쓰기 완료 신호는, 상기 제1큐에 저장된 상기 평문 데이터의 크기와 상기 평문 데이터가 저장된 상기 제1큐의 메모리 주소를 포함하고,
    상기 암호화 완료 신호는, 상기 제2 큐에 저장된 암호화 완료된 데이터의 크기와 상기 암호화 완료된 데이터가 저장된 상기 제2큐의 메모리 주소를 포함함을 특징으로 하는 무인 항공기에서의 전자 보안 시스템.
  5. 제1항에 있어서,
    비행을 제어하는 비행 제어부로부터 상기 평문 데이터를 입력 받아 상기 확장 메모리 인터페이스 제어부를 통해 상기 제1 큐에 저장하고, 상기 확장 메모리 인터페이스 제어부에 의해 독출된 상기 암호화 데이터를 상기 데이터 처리부로 출력하는 메인 프로세서를 더 포함함을 특징으로 하는 무인 항공기에서의 전자 보안 시스템.
  6. 무인 항공기에서 전자 보안 시스템에 있어서,
    상기 무인 항공기의 지상 관제국으로부터 수신된 암호문(Ciphertext) 데이터를 임시 저장하는 제4큐 및 상기 제4큐에 저장된 상기 암호문 데이터의 해독화가 완료된 평문 데이터를 저장하는 제3큐를 포함하는 버퍼부;
    상기 제4큐에 상기 암호문 데이터의 저장이 완료되면, 쓰기 완료 신호를 생성하고, 독출 명령이 수신되면, 상기 제3큐에 저장된 상기 해독화가 완료된 평문 데이터를 독출하는 확장 메모리 인터페이스 제어부;
    상기 쓰기 완료 신호가 생성되면, 상기 제4큐에 저장된 상기 암호문 데이터에 대한 해독화 명령을 생성하고, 상기 암호문 데이터에 대한 해독화 완료 신호가 수신되면, 상기 독출 명령을 발생하는 암호화/해독화 제어부;
    물리적으로 복제 불가능한 적어도 하나의 보안 키를 생성하고, 암호화 키를 이용하여 상기 생성된 보안 키를 암호화하는 보안 키 관리부;
    상기 보안 키 관리부로부터 암호화 된 보안 키를 전달 받아 해독하고, 상기 해독화된 보안 키를 상기 암호화/해독화 제어부로 전달하는 보안 키 해독화부;
    상기 해독화 명령에 따라 상기 제4큐에 저장된 암호문 데이터를 상기 보안 키를 이용하여 해독화하는 적어도 하나의 암호화/해독화 엔진을 포함하는 암호화/해독화 엔진부;
    상기 암호문 데이터에 대한 해독화가 완료되면, 상기 암호화/해독화 엔진부로부터 전달 받은 상기 암호화 데이터를 상기 해독화된 평문 데이터를 상기 제3큐에 저장하고, 상기 해독화 완료 신호를 생성하여 상기 해독화 완료 신호를 상기 암호화/해독화 제어부로 전달하는 암호화/해독화부; 및
    상기 확장 메모리 인터페이스 제어부로부터 상기 제3큐에 저장된 상기 해독화된 평문 데이터를 전달 받아, 상기 해독화된 평문 데이터를 복조하여 상기 복조된 평문 데이터를 비행을 제어하는 비행 제어부로 전달하는 데이터 처리부;를 포함하는 것을 특징으로 하는 무인 항공기에서의 전자 보안 시스템.
  7. 제6항에 있어서, 상기 보안 키 관리부는,
    상기 보안 키(Secure Key)를 생성하는 PUF(Physical Unclonable Function) 회로;
    상기 PUF 회로에서 생성된 보안 키를 저장하는 비 휘발성 메모리; 및
    상기 저장된 보안 키를 암호화 키를 통해 암호화하는 보안 키 암호화부를 포함하고,
    상기 암호화 키는, 1회 사용되는 난수인 Nonce(Number used ONCE)와, 상기 Nonce에 대한 해쉬(Hash) 함수를 통해 생성된 해쉬 값임을 특징으로 하는 무인 항공기에서의 전자 보안 시스템.
  8. 삭제
  9. 제6항에 있어서,
    상기 쓰기 완료 신호는,
    상기 제4큐에 저장된 상기 암호문 데이터의 크기와 상기 암호문 데이터가 저장된 상기 제4큐의 메모리 주소를 포함함을 특징으로 하는 무인 항공기에서의 전자 보안 시스템.
  10. 제6항에 있어서,
    상기 해독화 완료 신호는,
    상기 제3큐에 저장된 해독화 완료된 평문 데이터의 크기와 상기 해독화 완료된 평문 데이터가 저장된 상기 제3큐의 메모리 주소를 포함함을 특징으로 하는 무인 항공기에서의 전자 보안 시스템.
KR1020160182718A 2016-12-29 2016-12-29 무인 항공기에서 전자 보안 시스템 KR102057525B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160182718A KR102057525B1 (ko) 2016-12-29 2016-12-29 무인 항공기에서 전자 보안 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160182718A KR102057525B1 (ko) 2016-12-29 2016-12-29 무인 항공기에서 전자 보안 시스템

Publications (2)

Publication Number Publication Date
KR20180077888A KR20180077888A (ko) 2018-07-09
KR102057525B1 true KR102057525B1 (ko) 2019-12-19

Family

ID=62919569

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160182718A KR102057525B1 (ko) 2016-12-29 2016-12-29 무인 항공기에서 전자 보안 시스템

Country Status (1)

Country Link
KR (1) KR102057525B1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102199808B1 (ko) * 2019-03-26 2021-01-07 한양대학교 에리카산학협력단 드론 센서 기반 진난수 생성 방법 및 장치
KR102146132B1 (ko) * 2019-08-08 2020-08-20 주식회사 페이콕 보안 디바이스 및 방법
WO2021080050A1 (ko) * 2019-10-25 2021-04-29 단암시스템즈 주식회사 고속 암복호화 처리를 위한 무인 항공기에서 전자 보안 시스템
KR102491151B1 (ko) * 2020-08-25 2023-01-26 순천향대학교 산학협력단 무인 항공기 보안 프로토콜 시스템 및 그 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005300449A (ja) 2004-04-15 2005-10-27 Toshiba Corp 自己位置測定システムならびにこれに用いる地上局装置及び移動体搭載装置
JP2009529264A (ja) 2006-03-08 2009-08-13 エアバス フランス 航空機と地上局との間の通信に対する侵入試みの検出方法と装置
JP2016116130A (ja) 2014-12-16 2016-06-23 株式会社電通国際情報サービス 送受信システム
WO2016154946A1 (en) 2015-03-31 2016-10-06 SZ DJI Technology Co., Ltd. Systems and methods for uav mutual authentication
WO2016160593A1 (en) * 2015-03-27 2016-10-06 Amazon Technologies, Inc. Authenticated messages between unmanned vehicles

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005300449A (ja) 2004-04-15 2005-10-27 Toshiba Corp 自己位置測定システムならびにこれに用いる地上局装置及び移動体搭載装置
JP2009529264A (ja) 2006-03-08 2009-08-13 エアバス フランス 航空機と地上局との間の通信に対する侵入試みの検出方法と装置
JP2016116130A (ja) 2014-12-16 2016-06-23 株式会社電通国際情報サービス 送受信システム
WO2016160593A1 (en) * 2015-03-27 2016-10-06 Amazon Technologies, Inc. Authenticated messages between unmanned vehicles
WO2016154946A1 (en) 2015-03-31 2016-10-06 SZ DJI Technology Co., Ltd. Systems and methods for uav mutual authentication

Also Published As

Publication number Publication date
KR20180077888A (ko) 2018-07-09

Similar Documents

Publication Publication Date Title
Allouch et al. MAVSec: Securing the MAVLink protocol for ardupilot/PX4 unmanned aerial systems
US10057052B2 (en) Data encryption cipher using rotating ports
US10979221B2 (en) Generation of keys of variable length from cryptographic tables
KR102057525B1 (ko) 무인 항공기에서 전자 보안 시스템
US7879111B2 (en) System and method for RFID transfer of MAC, keys
US9166793B2 (en) Efficient authentication for mobile and pervasive computing
US9191200B1 (en) System and method for changing the security level of a communications terminal during operation
US7817802B2 (en) Cryptographic key management in a communication network
US20240121224A1 (en) Streaming one time pad virtual private network
JP6293673B2 (ja) セキュアな通信のためのシステムおよび方法
CN106209356A (zh) 用于物联网远程控制的保密控制方法及系统
EP3695560B1 (en) Encryption and decryption of media data
CN104202158A (zh) 一种基于云计算的数据对称和非对称混合加解密方法
US11093627B2 (en) Key provisioning
CN112352398A (zh) 临时广播密钥协定
EP2792099A1 (en) Method and apparatus for implementing key stream hierarchy
CN105515762A (zh) 一种基于rsa和aes加密算法的加密系统及加密方法
Won et al. A secure shuffling mechanism for white-box attack-resistant unmanned vehicles
ES2935614T3 (es) Sistema para asegurar cámaras de seguridad desplegadas
KR102531876B1 (ko) 무인 무기체계 보안 통신을 위한 지능형 스마트 저전력 암호화 방법 및 시스템
KR101311310B1 (ko) 암호 시스템 및 그 방법
KR20170077003A (ko) 대칭키 알고리즘을 이용한 경량 암복호화 방법 및 시스템
KR20170083359A (ko) Aes 알고리즘을 이용한 사물인터넷 기기간 암호화 및 복호화 방법
US20230185970A1 (en) Communication node with secure cryptographic keys and methods for securing therein
CN103780377B (zh) 一种对数据进行保密处理的方法及系统

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