KR102036256B1 - Android embedded system with enhanced security - Google Patents
Android embedded system with enhanced security Download PDFInfo
- Publication number
- KR102036256B1 KR102036256B1 KR1020170168015A KR20170168015A KR102036256B1 KR 102036256 B1 KR102036256 B1 KR 102036256B1 KR 1020170168015 A KR1020170168015 A KR 1020170168015A KR 20170168015 A KR20170168015 A KR 20170168015A KR 102036256 B1 KR102036256 B1 KR 102036256B1
- Authority
- KR
- South Korea
- Prior art keywords
- board
- application
- security chip
- security
- encryption key
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Mathematical Physics (AREA)
- Storage Device Security (AREA)
Abstract
본 발명은 보안성이 강화된 안드로이드 임베디드 보드에 관한 것으로서, 어플리케이션을 실행시키는 보드; 상기 보드에 설치되는 보안칩; 상기 보드에 설치되며 상기 보드를 제어하되, 상기 보안칩이 인지되는 경우 작동되는 CPU; 및 상기 보드가 외부장치와 정보를 교환할 수 있도록 상기 보드에 설치되되, EtherCAT(Ethernet for Control Automation Technology)에 대응되도록 마련되는 네트워크카드를 포함하되, 상기 보드에 설치되는 파일시스템은, 상기 어플리케이션이 상기 보안칩에 대응되는 암호키를 포함하는 경우, 상기 어플리케이션을 실행하고 상기 보드부를 동작시키며, 상기 보드에 설치되는 파일시스템은, 상기 어플리케이션이 실행되는 경우 상기 어플리케이션에 접근하되 상기 어플리케이션이 암호키를 포함하지 않는 경우 상기 어플리케이션의 접근을 차단하는 API모듈을 포함하며, 상기 API모듈은, 상기 어플리케이션이 암호키를 포함하는 상태로 파일시스템에서 실행되는 경우 상기 어플리케이션의 실행을 허용하되, 상기 보안칩이 인지되지 않으면, 상기 네트워크카드의 동작을 차단하며, 상기 API모듈은, 상기 어플리케이션이 암호키를 포함하는 상태로 파일시스템에서 실행되는 경우 상기 어플리케이션의 실행을 허용하되, 상기 보안칩이 인지되면, 상기 네트워크카드의 동작을 허용하고, 이후, 상기 보안칩의 파라메터 정보를 리드하여 키값을 생성한 후 상기 키값과 상기 어플리케이션의 암호키를 비교하여 상호 일치되지 않으면, 상기 네트워크카드의 동작을 차단하는 것을 특징으로 한다.
본 발명에 따르면, 보안칩에 대응되는 암호키를 가지는 어플리케이션만이 보안칩이 설치된 보드에서 실행될 수 있으므로, 임베디드 시스템의 보안성이 대폭적으로 강화될 수 있는 효과가 있다.The present invention relates to a security-enhanced Android embedded board, the board for executing the application; A security chip installed on the board; A CPU installed on the board and controlling the board, the CPU operating when the security chip is recognized; And a network card installed on the board so that the board can exchange information with an external device, the network card being provided to correspond to EtherCAT (Ethernet for Control Automation Technology), and the file system installed on the board includes: In the case of including the encryption key corresponding to the security chip, running the application and operating the board unit, the file system installed on the board, when the application is executed, the application accesses the application, but the application enters the encryption key If it does not include an API module for blocking the access of the application, the API module, if the application is executed in the file system with the encryption key, but the execution of the application, the security chip is If not recognized, the operation of the network card Blocking, the API module allows the execution of the application when the application is executed in the file system containing the encryption key, if the security chip is recognized, and allows the operation of the network card, and then, After generating the key value by reading the parameter information of the security chip, and compares the key value and the encryption key of the application, it is characterized in that the operation of the network card is blocked.
According to the present invention, since only an application having an encryption key corresponding to the security chip can be executed on a board on which the security chip is installed, the security of the embedded system can be greatly enhanced.
Description
본 발명은 보안성이 강화된 안드로이드 임베디드 보드에 관한 것으로서, 보다 상세하게는, 보안칩에 설치된 보드에서 보안칩에 대응되는 암호키를 가지는 어플리케이션만이 실행되도록 하여 보안성을 대폭적으로 강화시킨 보안성이 강화된 안드로이드 임베디드 보드에 관한 것이다.The present invention relates to a security-enhanced Android embedded board, and more particularly, to secure only the application having an encryption key corresponding to the security chip on the board installed in the security chip to significantly enhance the security This is about enhanced Android embedded board.
임베디드 시스템은 자동화된 공장시설 부터 키오스크 등 산업계 전반에 이용되고 있다. 이러한 임베디드 시스템은 무엇보다도 안정성과 보안성이 담보되어야 하기 때문에, 임베디스 시스템을 보호 하기 위한 여러 방법들이 연구, 개발되고 있다.Embedded systems are used throughout the industry, from automated factory facilities to kiosks. Since such embedded systems must be secured first and foremost, various methods for protecting embedded systems have been researched and developed.
종래의 임베디드 시스템의 보안 방법으로는 임베디드 보드에 복사 방지가 불가능한 보안칩을 설치하는 방법이 있다. 이러한 종래의 방법은 보드 제작의 단가가 상승되지만, 물리적으로 보드의 복사를 방지할 수 있으므로 실질적으로 많이 이용되고 있다.As a security method of a conventional embedded system, there is a method of installing a security chip that is not copy protected on an embedded board. Such a conventional method increases the cost of manufacturing the board, but is substantially used because it can physically prevent the copying of the board.
그러나, 상술한 종래의 방법에 따른 보안칩이 설치된 임베디드 보드의 경우, 하드웨어적인 복사가 방지될 뿐, 임베디드 보드에서 실행되는 전용 소프트웨어(어플리케이션)에 대한 조치는 전무한 상태여서, 보안성이 상대적으로 취약하다는 문제가 있다.However, in the case of the embedded board in which the security chip according to the conventional method described above is installed, only copying of the hardware is prevented, and there is no action on dedicated software (application) running on the embedded board, so the security is relatively weak. There is a problem.
본 발명의 목적은 종래의 문제점을 해결하기 위한 것으로서, 보안칩이 설치된 보드에서 보안칩에 대응되는 암호키를 가지는 어플리케이션만이 실행되도록 하여 보안성을 대폭적으로 강화시킨 보안성이 강화된 안드로이드 임베디드 보드을 제공함에 있다.An object of the present invention is to solve the conventional problems, security-enhanced Android embedded board that greatly enhances the security by running only the application having a cryptographic key corresponding to the security chip on the board installed security chip In providing.
상기 목적은, 본 발명에 따라, 어플리케이션을 실행시키는 보드; 상기 보드에 설치되는 보안칩; 상기 보드에 설치되며 상기 보드를 제어하되, 상기 보안칩이 인지되는 경우 작동되는 CPU; 및 상기 보드가 외부장치와 정보를 교환할 수 있도록 상기 보드에 설치되되, EtherCAT(Ethernet for Control Automation Technology)에 대응되도록 마련되는 네트워크카드를 포함하되, 상기 보드에 설치되는 파일시스템은, 상기 어플리케이션이 상기 보안칩에 대응되는 암호키를 포함하는 경우, 상기 어플리케이션을 실행하고 상기 보드부를 동작시키며, 상기 보드에 설치되는 파일시스템은, 상기 어플리케이션이 실행되는 경우 상기 어플리케이션에 접근하되 상기 어플리케이션이 암호키를 포함하지 않는 경우 상기 어플리케이션의 접근을 차단하는 API모듈을 포함하며, 상기 API모듈은, 상기 어플리케이션이 암호키를 포함하는 상태로 파일시스템에서 실행되는 경우 상기 어플리케이션의 실행을 허용하되, 상기 보안칩이 인지되지 않으면, 상기 네트워크카드의 동작을 차단하며, 상기 API모듈은, 상기 어플리케이션이 암호키를 포함하는 상태로 파일시스템에서 실행되는 경우 상기 어플리케이션의 실행을 허용하되, 상기 보안칩이 인지되면, 상기 네트워크카드의 동작을 허용하고, 이후, 상기 보안칩의 파라메터 정보를 리드하여 키값을 생성한 후 상기 키값과 상기 어플리케이션의 암호키를 비교하여 상호 일치되지 않으면, 상기 네트워크카드의 동작을 차단하는 것을 특징으로 하는 보안성이 강화된 안드로이드 임베디드 보드에 의해 달성된다.The object is, according to the present invention, a board for executing an application; A security chip installed on the board; A CPU installed on the board and controlling the board, the CPU operating when the security chip is recognized; And a network card installed on the board so that the board can exchange information with an external device, the network card being provided to correspond to EtherCAT (Ethernet for Control Automation Technology), and the file system installed on the board includes: In the case of including the encryption key corresponding to the security chip, running the application and operating the board unit, the file system installed on the board, when the application is executed, the application accesses the application, but the application enters the encryption key If it does not include an API module for blocking the access of the application, the API module, if the application is executed in the file system with the encryption key, but the execution of the application, the security chip is If not recognized, the operation of the network card Blocking, the API module allows the execution of the application when the application is executed in the file system containing the encryption key, if the security chip is recognized, and allows the operation of the network card, and then, After generating the key value by reading the parameter information of the security chip and compares the key value and the encryption key of the application, if not matched with each other, the security-enhanced Android embedded board, characterized in that to block the operation of the network card Is achieved by.
또한, 상기 보드에 설치되는 OS(Operating System)는, 안드로이드(Android)일 수 있다.In addition, an operating system (OS) installed on the board may be Android.
삭제delete
또한, 상기 CPU는, ARM 계열일 수 있다.In addition, the CPU may be an ARM series.
삭제delete
본 발명에 따르면, 보안칩에 대응되는 암호키를 가지는 어플리케이션만이 보안칩이 설치된 보드에서 실행될 수 있으므로, 임베디드 시스템의 보안성이 대폭적으로 강화될 수 있는 효과가 있다.According to the present invention, since only an application having an encryption key corresponding to the security chip can be executed on a board on which the security chip is installed, the security of the embedded system can be greatly enhanced.
도 1은 본 발명의 일실시예에 따른 보안성이 강화된 안드로이드 임베디드 보드의 전체 구성을 도시한 것이고,
도 2는 본 발명의 일실시예에 따른 보안성이 강화된 안드로이드 임베디드 보드의 계층 구조 및 정보 흐름을 도시한 것이고,
도 3은 본 발명의 일실시예에 따른 보안성이 강화된 안드로이드 임베디드 보드의 CPU와 보안칩의 암호화 통신 과정을 도시한 것이고,
도 4는 본 발명의 일실시예에 따른 보안성이 강화된 안드로이드 임베디드 보드에서 API모듈이 암호키의 정보 처리 과정을 도시한 것이다.1 is a view showing the overall configuration of a security-enhanced Android embedded board according to an embodiment of the present invention,
2 illustrates a hierarchical structure and information flow of a security-enhanced Android embedded board according to an embodiment of the present invention.
3 illustrates an encryption communication process between a CPU and a security chip of a security-enhanced Android embedded board according to an embodiment of the present invention.
4 is a diagram illustrating an information processing procedure of an encryption key of an API module in a security-enhanced Android embedded board according to an embodiment of the present invention.
이하, 본 발명의 일부 실시 예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다.Hereinafter, some embodiments of the present invention will be described in detail with reference to the accompanying drawings. In adding reference numerals to the components of each drawing, it should be noted that the same reference numerals are assigned to the same components as much as possible even though they are shown in different drawings.
그리고 본 발명의 실시 예를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 실시예에 대한 이해를 방해한다고 판단되는 경우에는 그 상세한 설명은 생략한다.In the following description of embodiments of the present invention, detailed descriptions of related well-known configurations or functions will be omitted when it is determined that the understanding of the embodiments of the present invention is prevented.
또한, 본 발명의 실시 예의 구성 요소를 설명하는 데 있어서, 제1, 제2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다.In addition, in describing the components of the embodiments of the present disclosure, terms such as first, second, A, B, (a), and (b) may be used. These terms are only for distinguishing the components from other components, and the nature, order or order of the components are not limited by the terms.
이하에서는 도면을 참조하여 본 발명의 일실시예에 따른 보안성이 강화된 안드로이드 임베디드 보드에 대해서 상세히 설명한다.Hereinafter, a security embedded Android embedded board according to an embodiment of the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명의 일실시예에 따른 보안성이 강화된 안드로이드 임베디드 보드의 전체 구성을 도시한 것이고, 도 2는 본 발명의 일실시예에 따른 보안성이 강화된 안드로이드 임베디드 보드의 계층 구조 및 정보 흐름을 도시한 것이고, 도 3은 본 발명의 일실시예에 따른 보안성이 강화된 안드로이드 임베디드 보드의 CPU와 보안칩의 암호화 통신 과정을 도시한 것이고, 도 4는 본 발명의 일실시예에 따른 보안성이 강화된 안드로이드 임베디드 보드에서 API모듈이 암호키의 정보 처리 과정을 도시한 것이다.1 is a view showing the overall configuration of a security-enhanced Android embedded board according to an embodiment of the present invention, Figure 2 is a hierarchical structure of the security-enhanced Android embedded board according to an embodiment of the present invention and Figure 3 shows the flow of information, Figure 3 shows the encryption communication process of the CPU and the security chip of the security-enhanced Android embedded board according to an embodiment of the present invention, Figure 4 is an embodiment of the present invention According to the security-enhanced Android embedded board, the API module shows the encryption key information processing.
도 1 내지 도 4에 도시된 바와 같이, 본 발명의 일실시예에 따른 보안성이 강화된 안드로이드 임베디드 보드(100)은 보드(110)와, 보안칩(120)과, CPU(130)와, 네트워크카드(140)를 포함한다.As shown in Figures 1 to 4, the security embedded Android embedded
보드(110)는 어플리케이션을 실행시키는 것으로써, 후술하는 보안칩(120)과 CPU(130)와 네트워크카드(140)가 설치된다. 상술한 보드(110)는 공작기계, 로봇 등 산업 자동화 장치를 제어하는데 사용될 수 있고, 키오스크, 버스 전광판 등의 일반 산업에 이용되는 특수 장치를 제어하는데 사용될 수 있다.The
한편, 여기서, 어플리케이션이란, 보드(110)의 파일시스템(110a)에 설치, 작동되는 전용 소프트웨어로써, 보드(110)의 사용 용도에 따라 각각 특정한 내용을 포함할 수 있다. 이러한 어플리케이션은 궁극적으로 보드(110)에 설치되는 네트워크카드(140)에 전기적으로 연결되는 외부장치와 정보를 교환하여, 외부장치를 제어한다.In this case, the application is dedicated software installed and operated in the
정상적인 어플리케이션, 즉, 정품 어플리케이션의 경우, 후술하는 보안칩(120)에 대응되는 암호키카 포함되는데, 이러한 암호키는 어플리케이션이 파일시스템(110a)에서 실행되는 경우, API모듈(110b)로 전달된다.In the case of a normal application, that is, a genuine application, an encryption key corresponding to the
한편, 상술한 보드(110)에 설치되는 OS(Operating System)는 안드로이드(Android)가 설치되는 것이 바람직하다. 안드로이드는 윈도우즈(Windows)에 비해 개방성이 크며, 가격이 저렴하며, 모바일 기기, 기타 각종 시스템에 대부분 적용되고 있기 때문이다.On the other hand, the operating system (OS) installed in the above-described
보드(110)에 설치되는 파일시스템(110a)은, API모듈(110b)을 포함한다.The
API모듈(110b)은 Application Programming Interface의 약자로, 어플리케이션과 OS(Operating System) 사이의 통신에 사용되는 인터페이스, 즉, 형식체계를 의미한다. 이러한 API모듈(110b)에는 OS에서 수행되는 여러가지 기능에 대한 함수가 포함되는데, 예를 들면, 도 2에 도시된 바와 같이, API모듈(110b)은 통신관련 함수(Ethernet Manager), 보안관련 함수(Security) 등을 포함할 수 있다.The
이러한 API모듈(110b)은 도 2 및 도 4에 도시된 바와 같이, 파일시스템(110a)에서 어플리케이션이 실행되는 경우, 어플리케이션에 접근하되, 어플리케이션이 암호키를 포함하지 않거나, 후술하는 보안칩(120)에 대응되는 암호키를 포함하지 않는 경우, 하드웨어모듈의 작동을 차단한다.As shown in FIGS. 2 and 4, when the application is executed in the
보다 상세하게, API모듈(110b)은 파일시스템(110a)에서 어플리케이션이 실행되는 상태에서 암호키가 입력되지 않는 경우에는 즉시 어플리케이션의 접근을 차단한다. 또한, API모듈(110b)은 파일시스템(110a)에서 어플리케이션이 실행되는 상태에서 암호키가 있는 경우, 어플리케이션을 계속해서 실행시키는데, 하드웨어모듈 레벨에서 어떠한 보안칩(120)도 인지되지 않는 경우, 네트워크카드(140) 등의 하드웨어모듈의 작동을 차단한다. 또한, API모듈(110b)은 파일시스템(110a)에서 어플리케이션이 실행되는 상태에서 암호키가 있는 경우, 어플리케이션을 계속해서 실행시키는데, 하드웨어모듈 레벨에서 보안칩(120)이 인지되면, 보안칩(120)의 파라메터 정보를 리드하여 키값을 생성한다. 이후, API모듈(110b)은 생성된 키값과 어플리케이션의 암호키를 비교하여 일치되지 않는 경우, 네트워크카드(140) 등의 하드웨어모듈의 작동을 차단한다.More specifically, the
이러한 API모듈(110b)에 따르면, 보안칩(120)에 대응되는 정품 어플리케이션이 아닌 경우 어플리케이션의 실행이 파일시스템(110a) 레벨에서 차단되게 되며, 보드(110)에 보안칩(120)이 설치되지 않았거나, 설치되었더라도 유효한 보안칩(120)이 아닌 경우, 어플리케이션의 실행이 효과적으로 차단될 수 있다. 즉, 상술한 API모듈(110b)에 따르면, 불법적인 어플리케이션 복제품 또는 불법적으로 복사된 보드 등이 사용되는 것이 원천적으로 차단될 수 있다. 결과적으로 상술한 API모듈(110b)에 따르면, 임베디드 시스템에 전체적인 보안성이 크게 향상되는 효과가 있다.According to the
한편, 보드(110)에 설치되는 OS는 라이브러리 모듈과, HAL모듈을 포함한다.On the other hand, the OS installed on the
라이브러리 모듈은 OS의 일부분으로, API모듈(110b)를 통해 입력되는 정보가 후술하는 HAL모듈로 전달될 수 있도록, 링킹하는 역할을 수행한다. 이러한 라이브러리 모듈은 API모듈(110b)에 포함되는 함수와 대응되는 함수의 집합들로 마련되는데, 예를 들면, 도 2에 도시된 바와 같이, API모듈(110b)의 통신관련 함수는 라이브러리 모듈의 연결함수(Connectivity)에 대응된다. 상술한 이러한 링킹에 따르면, 어플리케이션의 정보가 HAL모듈에 전달될 수 있다.The library module is a part of the OS and performs linking so that information input through the
HAL모듈은 Hardware Abstraction Layer의 약자로, OS와 하드웨어와의 인터페이스, 즉, 형식체계를 의미한다. 이러한 HAL모듈은 후술하는 하드웨어모듈에 수행되는 기능에 대응되는 인터페이스를 제공한다. HAL모듈에 포함되는 인터페이스는 라이브러리 모듈에 포함되는 함수에 대응되도록 마련되는데, 예를 들면, 도 2에 도시된 바와 같이, 통신관련 이더넷 기반의 필드버스 시스템인 EtherCAT(Ethernet for Control Automation Technology)는 API모듈(110b)의 통신관련 함수에 대응되는 연결함수(Connectivity)에 대응된다.HAL module stands for Hardware Abstraction Layer, which means the interface between OS and hardware, that is, formal system. The HAL module provides an interface corresponding to a function performed on a hardware module described later. The interface included in the HAL module is provided to correspond to a function included in the library module. For example, as shown in FIG. 2, EtherCAT (Ethernet for Control Automation Technology), which is a communication-based Ethernet-based fieldbus system, is an API. Corresponds to a connectivity corresponding to a communication related function of the
또한, 보드(110)는 커널모듈을 포함한다.In addition, the
커널모듈은 하드웨어 레벨, 보드(110)에서 작동되는 것으로써, HAL모듈을 통해 입력되는 정보가 보드(110)에 설치된 각각의 하드웨어모듈로 전달될 수 있도록, 링킹하는 역할을 수행한다. 즉, 커널모듈은 라이브러리 모듈과 유사하게 작동되지만, 하드웨어 레벨에서의 작동이라는 점에서 라이브러리 모듈과 차이가 있다. 도 2에 도시된 바와 같이, 커널모듈의 EtherCAT 커널은 HAL모듈의 EtherCAT에 대응된다.The kernel module operates at the hardware level, the
하드웨어모듈은 보드(110)의 각각의 기능을 수행하는 물리적인 부분의 의미하는 것으로써, 키패드, 네트워크카드(140) 등을 포함한다. 도 2에 도시된 바와 같이, 어플리케이션에서 API모듈(110b)를 거쳐 HAL모듈로 전달된 정보는 하드웨어모듈의 한 종류인 네트워크카드(140)를 작동시키게 되며, 이에 의해서, 어플리케이션에 포함되는 정보가 외부장치로 전달될 수 있다.The hardware module means a physical part that performs each function of the
보안칩(120)은 후술하는 CPU(130)와 암호화 통신함으로써, 보드(110), 즉, 하드웨어 인증을 실시하는데 이용되는 것으로써, 패키징된 반도체로 마련되어 보드(110)에 설치된다.The
상술한 보안칩(120)은 패키징된 반도체로 마련되므로 복사가 불가능한데, 이러한 보안칩(120)에 의해서, 보드(110)가 정품 보드(110)인지 아닌지가 판별될 수 있다. 구체적인 과정은 다음과 같다.Since the
도 4에 도시된 바와 같이, 먼저, 보드(110)에 전원이 인가되어 구동되면, CPU(130)가 플레인 텍스트, 즉, 암호되기 전의 문장을 생성한다. 이후, CPU(130)는 생성된 플레인 텍스트를 내부의 암호화 라이브러리를 이용하여 사이퍼 텍스트, 즉, 암호화된 문장으로 변환한다. 한편, 플레인 텍스트를 전달받은 보안칩(120)은 CPU(130)의 암호화 라이브러리와 동일한 규칙으로 작동되는 내부의 회로 동작을 거쳐 플레인 텍스트를 일정한 규칙으로 암호화하여 사이퍼 텍스트, 즉, 암호된 문장을 생성한다. 이후, CPU(130)가 보안칩(120)으로 사이퍼 텍스트를 요청하면, 보안칩(120)은 CPU(130)로 사이퍼 텍스트를 전송하는데, 이때, CPU(130)는 내부적으로 생성된 사이퍼 텍스트와 보안칩(120)으로부터 전달된 사이퍼 텍스트를 비교하는 작업을 실시한다. 비교결과, 양 사이퍼 텍스트가 일치하는 경우, CPU(130)는 보드(110)를 정상적으로 작동시키며, 일치하지 않는 경우, CPU(130)는 보안칩(120)으로 다시 사이퍼 텍스트를 요청하는 것을 반복한후, 계속해서 일치되지 않으면, 보드(110)의 동작을 중단시킨다.As shown in FIG. 4, first, when power is applied and driven to the
상술한 과정에 따르면, 보드(110)에 설치된 CPU(130)에 대응되는 보안칩(120)이 보드(110)에 설치된 경우에만 보드(110)가 작동된다. 따라서, 보드(110)를 불법적으로 복사하는 경우, 보안칩(120)의 복사는 정상적으로 실시되지 않으므로, 이러한 경우에는 사이퍼 텍스트의 불일치로 보드(110)가 동작하지 않게되는 것이다. According to the above-described process, the
결과적으로 상술한 과정에 따르면, 정상적으로 제조된 보드(110), 즉, 정품 보드(110) 만이 작동될 수 있으므로, 임베디드 시스템에 전체적인 보안성이 크게 향상될 수 있다.As a result, according to the above-described process, since only the normally manufactured
CPU(130)는 보드(110)를 제어하는 것으로써, 보드(110)에 설치되며, 상술한 보안칩(120)과 암호화통신을 수행한다.The
CPU(130)는 보드(110)에 전원이 인가되는 경우 작동되는데, 이때, 보드(110)는 먼저, 보안칩(120)과의 암호화통신을 수행하여, 보드(110)가 정품의 보드(110)인지를 판단한다. 이에 대한 상세한 설명은 상술한 보안칩(120)에서의 설명과 같다.The
한편, CPU(130)가 동작하여 정상적인 보안칩(120)이 보드(110)에 설치되었음이 확인되는 경우, CPU(130)는 정상작동하게 되며, 이후, 파일시스템(110a)에서 정상적인, 즉, 보안칩(120)에 대응되는 암호키를 가진 어플리케이션이 실행되는 경우, CPU(130)의 동작에 따라 API모듈(110b)은 네트워크카드(140) 등의 하드웨어모듈을 작동시켜 외부장치를 제어한다.On the other hand, when the
상술한 CPU(130)는 ARM(Acorn Computers) 社에서 제조된 ARM 계열 CPU(130)로 마련되는 것이 바람직하다. ARM 계열 CPU(130)는 인텔 社에서 제조된 CPU(130)에 비해서 가격 대비 성능이 우수하기 때문이다.The above-described
네트워크카드(140)는 상술한 하드웨어모듈의 한 종류로써, 보드(110)가 외부장치와 정보를 교환할 수 있도록 보드(110)에 설치된다.The
이러한 네트워크카드(140)는 EtherCAT(Ethernet for Control Automation Technology)에 대응되도록 마련되는 것이 바람직하다. EtherCAT은 여러가지 산업용 장비의 통신에 대응되는 프로토콜로써, 산업 자동화에 최적화되어 있기 때문이다.The
상술한 바와 같은, 보드(110)와 보안칩(120)과, CPU(130)와, 네트워크카드(140)를 포함하는 본 발명의 일실시예에 따른 보안성이 강화된 안드로이드 임베디드 보드(100)에 따르면, 1차적으로 보안칩(120)에 대한 인증을 거치고, 2차적으로 보안칩(120)에 대응되는 암호키를 가진 정상적인 어플리케이션이 실행되는 경우에만 보드(110)가 동작되기 때문에, 임베디드 시스템의 보안성이 대폭적으로 강화될 수 있는 효과가 있다.As described above, the
본 발명은 특히, 보안칩(120)을 제외한 보드(110) 전체를 복사한 후, 펌웨어 조작을 통해 CPU(130)가 보안칩(120) 없이 보드(110)를 제어 가능하도록 해킹한 다음, 불법 복사된 전용어플리케이션을 보드(110)에 설치하여 사용하는 경우 매우 효과적으로 적용될 수 있다. 상술한 바와 같이, CPU(130)가 보안칩(120) 인증을 통해 동작하는 것을 펌웨어 조작을 통해 회피하더라도, 불법 복사된 어플리케이션 실행시에 API모듈(110b)에서 보안칩(120)의 존재 여부를 다시 확인하는 과정을 통해, 보안칩(120)이 보드(110)에 설치되지 않은 경우에는 보드(110)의 동작이 차단되기 때문이다.In particular, the present invention, after copying the
또한, 본 발명은, 보안칩(120)을 제외한 보드(110) 전체를 복사한 후, 펌웨어 조작을 통해 CPU(130)가 보안칩(120) 없이 보드(110)를 제어 가능하도록 해킹한 다음, 불법 복제자가 스스로 개발한 어플리케이션을 보드(110)에 설치하여 사용하는 경우, 매우 효과적으로 적용될 수 있다. 상술한 바와 같이, CPU(130)가 보안칩(120) 인증을 통해 동작하는 것을 펌웨어 조작을 통해 회피하더라도, 자신이 개발한 어플리케이션은 암호키를 포함하지 않으므로 어플리케이션의 실행시, API모듈(110b)에서 어플리케이션의 실행이 바로 차단되기 때문이다.In addition, the present invention, after copying the
이상에서, 본 발명의 실시 예를 구성하는 모든 구성 요소들이 하나로 결합하거나 결합하여 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다.In the above description, all elements constituting the embodiments of the present invention are described as being combined or operating in combination, but the present invention is not necessarily limited to the embodiments. In other words, within the scope of the present invention, all of the components may be selectively operated in combination with one or more.
또한, 이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재할 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미가 있다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.In addition, the terms "comprise", "comprise" or "having" described above mean that the corresponding component may be inherent unless specifically stated otherwise, and thus excludes other components. It should be construed that it may further include other components instead. All terms, including technical and scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art unless otherwise defined. Terms used generally, such as terms defined in a dictionary, should be interpreted to coincide with the contextual meaning of the related art, and shall not be interpreted in an ideal or excessively formal sense unless explicitly defined in the present invention.
그리고 이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다.In addition, the above description is merely illustrative of the technical idea of the present invention, and those skilled in the art to which the present invention pertains may various modifications and changes without departing from the essential characteristics of the present invention.
따라서, 본 발명에 개시된 실시 예들은 본 발명의 기술 사상을 한정하기 위한것이 아니라 설명하기 위한 것이고, 이러한 실시 예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.Therefore, the embodiments disclosed in the present invention are not intended to limit the technical idea of the present invention but to describe the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The protection scope of the present invention should be interpreted by the following claims, and all technical ideas within the equivalent scope should be interpreted as being included in the scope of the present invention.
100 : 본 발명의 일실시예에 따른 보안성이 강화된 안드로이드 임베디드 보드
110 : 보드
110a : 파일시스템
110b : API모듈
120 : 보안칩
130 : CPU
140 : 네트워크카드100: Android embedded board with enhanced security according to an embodiment of the present invention
110: board
110a: filesystem
110b: API module
120: security chip
130: CPU
140: network card
Claims (5)
상기 보드에 설치되는 보안칩;
상기 보드에 설치되며 상기 보드를 제어하되, 상기 보안칩이 인지되는 경우 작동되는 CPU; 및
상기 보드가 외부장치와 정보를 교환할 수 있도록 상기 보드에 설치되되, EtherCAT(Ethernet for Control Automation Technology)에 대응되도록 마련되는 네트워크카드를 포함하되,
상기 보드에 설치되는 파일시스템은,
상기 어플리케이션이 상기 보안칩에 대응되는 암호키를 포함하는 경우, 상기 어플리케이션을 실행하고 상기 보드를 동작시키며,
상기 보드에 설치되는 파일시스템은,
상기 어플리케이션이 실행되는 경우 상기 어플리케이션에 접근하되 상기 어플리케이션이 암호키를 포함하지 않는 경우 상기 어플리케이션의 접근을 차단하는 API모듈을 포함하며,
상기 API모듈은,
상기 어플리케이션이 암호키를 포함하는 상태로 파일시스템에서 실행되는 경우 상기 어플리케이션의 실행을 허용하되, 상기 보안칩이 인지되지 않으면, 상기 네트워크카드의 동작을 차단하며,
상기 API모듈은,
상기 어플리케이션이 암호키를 포함하는 상태로 파일시스템에서 실행되는 경우 상기 어플리케이션의 실행을 허용하되, 상기 보안칩이 인지되면, 상기 네트워크카드의 동작을 허용하고, 이후, 상기 보안칩의 파라메터 정보를 리드하여 키값을 생성한 후 상기 키값과 상기 어플리케이션의 암호키를 비교하여 상호 일치되지 않으면, 상기 네트워크카드의 동작을 차단하는 것을 특징으로 하는 보안성이 강화된 안드로이드 임베디드 보드.A board for executing an application;
A security chip installed on the board;
A CPU installed on the board and controlling the board, the CPU operating when the security chip is recognized; And
The board is installed on the board to exchange information with an external device, including a network card provided to correspond to EtherCAT (Ethernet for Control Automation Technology),
The file system installed on the board,
When the application includes an encryption key corresponding to the security chip, the application is executed and the board is operated;
The file system installed on the board,
When the application is running includes the API module for accessing the application but blocking the access of the application if the application does not include an encryption key,
The API module,
Allows the application to run when the application is executed in the file system with an encryption key, but blocks the operation of the network card if the security chip is not recognized.
The API module,
When the application is executed in the file system with an encryption key, the execution of the application is allowed, but if the security chip is recognized, the operation of the network card is allowed, and then the parameter information of the security chip is read. After generating a key value by comparing the key value and the encryption key of the application, if not matched, security-enhanced Android embedded board, characterized in that to block the operation of the network card.
상기 보드에 설치되는 OS(Operating System)는,
안드로이드(Android)인 것을 특징으로 하는 보안성이 강화된 안드로이드 임베디드 보드.The method according to claim 1,
OS (Operating System) is installed on the board,
Security-enhanced Android embedded board, characterized in that Android (Android).
상기 CPU는,
ARM 계열인 것을 특징으로 하는 보안성이 강화된 안드로이드 임베디드 보드.The method according to claim 3,
The CPU,
Security-enhanced Android embedded board characterized in that the ARM series.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170168015A KR102036256B1 (en) | 2017-12-08 | 2017-12-08 | Android embedded system with enhanced security |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170168015A KR102036256B1 (en) | 2017-12-08 | 2017-12-08 | Android embedded system with enhanced security |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190068030A KR20190068030A (en) | 2019-06-18 |
KR102036256B1 true KR102036256B1 (en) | 2019-11-26 |
Family
ID=67103351
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170168015A KR102036256B1 (en) | 2017-12-08 | 2017-12-08 | Android embedded system with enhanced security |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102036256B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102173535B1 (en) * | 2020-06-01 | 2020-11-03 | 젝스컴퍼니 주식회사 | Embedded board based on android enhenced real time response |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101761799B1 (en) * | 2015-06-01 | 2017-07-26 | 한국전자통신연구원 | Apparatus and method for managing data security of terminal |
-
2017
- 2017-12-08 KR KR1020170168015A patent/KR102036256B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101761799B1 (en) * | 2015-06-01 | 2017-07-26 | 한국전자통신연구원 | Apparatus and method for managing data security of terminal |
Also Published As
Publication number | Publication date |
---|---|
KR20190068030A (en) | 2019-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109937419B (en) | Initialization method for security function enhanced device and firmware update method for device | |
US11132468B2 (en) | Security processing unit of PLC and bus arbitration method thereof | |
KR102434444B1 (en) | Method and Apparatus for Device Security Verification Utilizing a Virtual Trusted Computing Base | |
EP1944712B1 (en) | Methods and apparatus for protecting data | |
US9047468B2 (en) | Migration of full-disk encrypted virtualized storage between blade servers | |
JP4808279B2 (en) | Computer readable medium and method for unsealing bit strings | |
RU2690887C2 (en) | Modular safety control device | |
Maes et al. | A pay-per-use licensing scheme for hardware IP cores in recent SRAM-based FPGAs | |
US20070101156A1 (en) | Methods and systems for associating an embedded security chip with a computer | |
US9594915B2 (en) | Information processing apparatus | |
US11436324B2 (en) | Monitoring parameters of controllers for unauthorized modification | |
US11537732B2 (en) | Unlocking access of information responsive to validation of program codes of virtual entities | |
JP4791250B2 (en) | Microcomputer and its software falsification prevention method | |
CN110968901A (en) | DVFS power management method and corresponding system | |
US10452565B2 (en) | Secure electronic device | |
JP5173802B2 (en) | Security system and method for ensuring the integrity of at least one device system comprising a plurality of devices | |
CN101238470B (en) | Method for operating computing device, method for manufacturing software | |
KR102036256B1 (en) | Android embedded system with enhanced security | |
US11960737B2 (en) | Self-deploying encrypted hard disk, deployment method thereof, self-deploying encrypted hard disk system and boot method thereof | |
KR101065904B1 (en) | Transfer of security data between two memories | |
KR101885146B1 (en) | Method and apparatus for protecting an application | |
CN2927185Y (en) | Data safety transmission equipment | |
CN116436681B (en) | TrustZone-based security isolation system, trustZone-based security isolation method, trustZone-based security isolation terminal and storage medium | |
CN117034330B (en) | macOS-based safety protection method, macOS-based safety protection equipment and storage medium | |
EP4145318A1 (en) | System and method for monitoring delivery of messages passed between processes from different operating systems |
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 |