KR101349849B1 - Universal secure information storage device - Google Patents

Universal secure information storage device Download PDF

Info

Publication number
KR101349849B1
KR101349849B1 KR1020130057237A KR20130057237A KR101349849B1 KR 101349849 B1 KR101349849 B1 KR 101349849B1 KR 1020130057237 A KR1020130057237 A KR 1020130057237A KR 20130057237 A KR20130057237 A KR 20130057237A KR 101349849 B1 KR101349849 B1 KR 101349849B1
Authority
KR
South Korea
Prior art keywords
information
encryption
key
module
data
Prior art date
Application number
KR1020130057237A
Other languages
Korean (ko)
Inventor
박승옥
김철수
최재식
손원장
Original Assignee
(주)세이퍼존
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)세이퍼존 filed Critical (주)세이퍼존
Priority to KR1020130057237A priority Critical patent/KR101349849B1/en
Application granted granted Critical
Publication of KR101349849B1 publication Critical patent/KR101349849B1/en

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/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/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/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
    • G06F21/72Protecting 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 in cryptographic circuits
    • 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
    • G06F21/77Protecting 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 in smart cards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0622Securing storage systems in relation to access
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Storage Device Security (AREA)

Abstract

The present invention relates to a universal secure information storage device comprising: an encryption block processing platform for processing encryption operations by at least one encryption algorithm, encrypting attacks using a change in current consumption according to encryption key values used in the encryption algorithm, creating decryption keys for decryption operations, performing the scheduling function of the decryption keys, and processing a block size and a key length more than a predetermined bit; a hardware platform for realizing at least one controller which executes a function for controlling access to smart cards, USB devices, and secure digital (SD) cards, a function for controlling writing on a memory, a function for controlling input and output ports for serial communication, and a function for controlling host connection devices; and at least one software for realizing writing and reading on the memory, a bootloader, a USB device driver, an SD card driver, a smart card driver, a driver for input and output ports for serial communication, a device driver for a key input function, and a driver for host connection devices. Thus, the universal secure information storage device of the present invention can be used as a security token by executing data encryption and decryption operations and a certificate storing function, can be used as a portable storage means of various information terminal devices by supporting functions of a smart card interface, a USB interface, an SD card interface, and a serial communication interface, thereby controlling the leakage of personal information and the loss of personal data, and unauthorized data access. [Reference numerals] (110) Encryption block processing platform; (120) Hardware platform; (130) Software platform

Description

범용 보안 저장 장치{ UNIVERSAL SECURE INFORMATION STORAGE DEVICE }UNIVERSAL SECURE INFORMATION STORAGE DEVICE}

본 발명은 범용 보안 저장 장치에 관한 것으로, 보다 상세하게는 데이터의 암호/복호화 작업 및 인증서 저장 기능을 지원하여 보안 토큰으로 활용할 수 있고, 스마트카드 인터페이스, USB 인터페이스, SD 카드 인터페이스 및 직렬 통신 인터페이스 기능을 지원할 수 있어 휴대용 저장 수단으로 활용할 수 있으며, 그로 인해 정보 유출 및 데이터 분실, 허가되지 않은 데이터 접속을 통제할 수 있는 범용 보안 저장 장치에 관한 것이다.
The present invention relates to a general-purpose secure storage device, and more particularly, it can be utilized as a security token by supporting data encryption / decryption operations and certificate storage functions, and has a smart card interface, a USB interface, an SD card interface, and a serial communication interface function. It can be used as a portable storage means that can support information leakage, data loss, unauthorized secure data access to a general-purpose secure storage device.

최근 수년간 스마트폰, 태블릿 PC 등의 통신 가능 정보 단말기의 보급이 급격히 확대되어 왔으며, 이러한 추세는 앞으로도 지속되어 종전의 피처폰, 핸드폰 등을 대체할 것으로 예상된다.In recent years, the spread of communication information terminals such as smartphones and tablet PCs has been rapidly expanded, and this trend is expected to continue to replace conventional feature phones and mobile phones.

이러한 변화에 부응하여 스마트폰, 태블릿 PC 뿐만 아니라 개인용 PC 등의 정보 단말기기는 와이파이(Wi-Fi)나 블루투스 등 범용 통신 네트워크통신 네트워크에 노출되고, 외부 메모리 장치 등을 통한 데이터 유출이 가능하며, 또한 악성 코드가 단말기에 설치되어 데이터를 유출하는 우려도 배제할 수 없어 장비들의 정보 보안을 강화할 필요가 있다.In response to this change, information terminals such as smartphones and tablet PCs as well as personal PCs are exposed to universal communication network communication networks such as Wi-Fi or Bluetooth, and data leakage through external memory devices is possible. It is necessary to reinforce the information security of devices because malicious code is installed on the terminal and the risk of data leakage can not be excluded.

최근 정보 단말 기기의 데이터 분실에 따른 개인정보 유출 및 불법 데이터 복제와 공인인증서 유출 문제들이 사회적으로 이슈가 되면서 서비스 제공업체인 은행, 정부 및 기업들은 해킹 및 개인정보 유출의 위협에 대항하기 위해 보안을 강화하고 있다.Recently, as personal information leakage, illegal data duplication, and public certificate leakage due to data loss of information terminal devices have become social issues, service providers, banks, governments, and corporations have secured security to counter the threat of hacking and personal information leakage. It is strengthening.

개인이나 소규모 사업자도 별도의 시스템 없이 개인용 PC, 개인 외장디스크(HDD, SSD) 사용 시, 온라인과 오프라인에서 개인정보 및 개인 데이터를 안전하게 관리해야 할 의무가 있다.Individuals and small businesses are also obliged to securely manage personal information and personal data online and offline when using personal PCs or external HDDs (HDDs, SSDs) without a separate system.

'2011년 행정안전부 공인인증서 이용관리의 안정성 강화대책' 시행에 따라 공인 인증서의 안전한 저장 매체인 보안토큰 사용을 의무화하였고, 2011년 9월 '개인정보보호법' 시행에 따라 공공부문과 민간부문으로 그 사용의 범위가 확대되고 있는 추세이다.In accordance with the Enforcement Measures for Reinforcing Stability of Management of Accredited Certificates by the Ministry of Public Administration and Security in 2011, the use of security tokens, a safe storage medium for accredited certificates, has been mandated. The range of use is expanding.

이에 따라, 인증서와 개인 정보 등과 같이 보안을 필요로 하는 정보가 저장된 스마트 카드와 대용량의 정보 저장장치가 USB에 일체로 구비된 보안 토큰 및 정보 저장장치 일체형 USB가 개발되고 있다.Accordingly, a smart card storing information requiring security, such as a certificate and personal information, and a security token and a USB integrated information storage device having a large capacity information storage device integrated with the USB are being developed.

보안 토큰 및 보안 저장장치 일체형 USB는 PC 등의 USB 포트에 항상 USB 접속을 하여 메모리 내의 보안 정보를 전송하고, 인증 처리 과정을 거친다 따라서, USB를 항상 PC에 꽂아 사용해야 하므로 USB 포트가 없는 스마트폰이나 스마트 패드에서 이용할 수 없다는 문제점이 있다. Security token and secure storage device integrated USB always transmits security information in memory by USB connection to USB port such as PC and goes through authentication process. Therefore, it is necessary to use USB plugged into a PC. There is a problem that can not be used in the smart pad.

또한, SD 카드에 IC 칩을 구비한 보안 저장 장치는 SD 인터페이스를 통해 SD 카드에 구비된 메모리와 IC 칩이 접속하고, IC 칩이 SD 인터페이스를 통해 메모리로의 접근을 차단/허용하는 방식이지만, 메모리의 접근이 허용된 이후에 메모리에 대한 접근 권한을 인터럽트하여 메모리에 부정하게 접근하는 것을 차단할 수 없는 문제점이 있다.
In addition, the secure storage device having an IC chip in the SD card is a method in which a memory provided in the SD card and the IC chip are connected through the SD interface, and the IC chip blocks / allows access to the memory through the SD interface. After access to the memory is allowed, there is a problem in that it is impossible to prevent unauthorized access to the memory by interrupting the access right to the memory.

본 발명은 적어도 하나 이상의 암호 알고리즘을 저장 및 실행하여 데이터의 암호/복호화 작업 및 인증서 저장 기능을 실행하여 보안 토큰으로 활용할 수 있고, 스마트카드 인터페이스, USB 인터페이스, SD 카드 인터페이스 및 직렬 통신 인터페이스 기능을 지원할 수 있어 각종 정보 단말기기의 휴대용 저장 수단으로 활용할 수 있으며, 그로 인해 정보 유출 및 데이터 분실, 허가되지 않은 데이터 접속을 통제할 수 있고, 데이터 보안에 대한 안전한 관리가 이루어져 경제적 및 사회적으로 많은 피해를 방지할 수 있는 범용 보안 저장 장치를 제공한다.
The present invention can be used as a security token by storing and executing at least one cryptographic algorithm to execute data encryption / decryption operations and certificate storage functions, and support smart card interface, USB interface, SD card interface and serial communication interface functions. It can be used as a portable storage means of various information terminal devices, thereby controlling information leakage, data loss, unauthorized data access, and safe management of data security to prevent economic and social damage. It provides a general purpose secure storage device.

실시예들 중에서, 범용 보안 저장 장치는 적어도 하나 이상의 암호 알고리즘에 의해 암호화 작업을 처리하고, 상기 암호 알고리즘에서 사용되는 암호키 값에 따라 소모 전류 변화를 이용한 공격에 대한 암호화를 수행하며, 복호화 작업을 위한 복호키를 생성하고, 상기 복호키의 스케줄링 기능을 수행하며, 일정 비트 이상의 블록 크기와 키 길이를 처리하는 암호 블록 처리 플랫폼; 스마트 카드, USB 디바이스 및 SD 카드(Secure Digital Card)의 접속을 위한 제어 기능, 메모리의 쓰기 제어 기능, 직렬 통신을 위한 입출력 포트의 제어 기능, 키입력 제어 기능 및 호스트 연결용 디바이스의 제어 기능을 실행하는 적어도 하나 이상의 제어기를 구현하는 하드웨어 플랫폼; 및 상기 메모리의 쓰기 및 읽기, 부트로더(Bootloder), USB 디바이스 드라이버, SD 카드 드라이버, 스마트 카드 드라이버, 직렬 통신을 위한 입출력 포트의 드라이버, 키입력 기능을 위한 디바이스 드라이버 및 호스트 연결용 디바이스의 드라이버를 구현하는 적어도 하나 이상의 소프트웨어를 포함하되, 상기 하드웨어 플랫폼의 제어기는, 인터넷 주소, 문자열, 전화번호, URL 정보를 포함하여 블랙리스트 정보를 저장하고, 상기 블랙리스트 정보의 위험도에 따라 저장 영역을 구분하는 데이터 저장모듈; 상기 스마트 카드, USB 디바이스, SD 카드, 입출력 포트 또는 호스트 연결용 디바이스의 접속시, 허가되지 않은 데이터 접속을 금지하기 위한 색인정보를 추출하는 정보 추출모듈; 상기 추출된 색인정보와 상기 블랙리스트 정보를 비교하여 상기 허가되지 않은 데이터 접속이 있는지를 검색하는 필터링 모듈; 및 상기 필터링 모듈을 통해 허가되지 않은 데이터 접속이 있는 경우에 경고 메시지를 출력하거나 해당 데이터 접속을 통제하는 접속 통제모듈을 포함하는 것을 특징으로 한다.Among the embodiments, the general-purpose secure storage device processes an encryption operation by at least one encryption algorithm, performs encryption on an attack using a change in current consumption according to an encryption key value used in the encryption algorithm, and performs a decryption operation. A cryptographic block processing platform for generating a decryption key, performing a scheduling function of the decryption key, and processing a block size and a key length of a predetermined bit or more; Control functions for connecting smart cards, USB devices, and SD cards (Secure Digital Cards), write control functions for memory, input / output port control functions for serial communication, key input control functions, and control functions for host connection devices A hardware platform implementing at least one controller; And writing and reading the memory, a boot loader, a USB device driver, an SD card driver, a smart card driver, a driver of an input / output port for serial communication, a device driver for a key input function, and a device driver for a host connection. And at least one software to implement, wherein the controller of the hardware platform stores the blacklist information including an internet address, a string, a phone number, and URL information, and classifies a storage area according to a risk of the blacklist information. Data storage module; An information extraction module for extracting index information for prohibiting unauthorized data access when the smart card, USB device, SD card, input / output port or host connection device is connected; A filtering module for comparing the extracted index information with the blacklist information to search for the unauthorized data connection; And an access control module for outputting a warning message or controlling a corresponding data connection when there is an unauthorized data connection through the filtering module.

이때, 상기 암호 블록 처리 플랫폼은, 단방향키, 대칭키 또는 비대칭키 방식을 이용하는 적어도 하나 이상의 암호화 알고리즘을 저장 및 실행하는 알고리즘 실행 모듈; 상기 알고리즘 실행 모듈의 암호화 결과를 입력받아 랜덤한 비트 스트림을 발생하여 암호키를 생성하는 랜덤 비트 생성 모듈; 및 상기 암호화 작업 또는 복호화 작업이 진행되는 중에 상기 암호화 또는 복호화가 종료된 데이터를 입력받아 순차적으로 저장하는 메모리를 제어하는 제어모듈을 포함한다.In this case, the cryptographic block processing platform includes an algorithm execution module for storing and executing at least one encryption algorithm using a unidirectional key, a symmetric key, or an asymmetric key scheme; A random bit generation module which receives an encryption result of the algorithm execution module and generates a random bit stream to generate an encryption key; And a control module configured to control a memory that sequentially receives the encrypted or decrypted data while the encryption operation or the decryption operation is in progress.

상기 알고리즘 실행 모듈은, 상기 단방향키는 MD5, Serfu, H-Hash, MD2, MD4, SHA, HAVAL 중에서 적어도 하나 이상을 이용하고, 상기 대칭키는 3DES, AES, SEED, ARIA, DES, CRYPTON, RIJNDAEL, CAST256, RC6, RC5, RC4, RC2, TWOFISH, MARS, SERPENT, SKIPJACK, IDEA, SEAL, DESX, RC5, BLOWFISH, CAST128, SAFER 중에서 적어도 하나 이상을 이용하며, 상기 비대칭키는 RSA, EIGamal, ECC, DSS, PKP 중에서 적어도 하나 이상을 이용하는 것을 특징으로 한다.The algorithm execution module, the one-way key is at least one of MD5, Serfu, H-Hash, MD2, MD4, SHA, HAVAL, and the symmetric key is 3DES, AES, SEED, ARIA, DES, CRYPTON, RIJNDAEL , CAST256, RC6, RC5, RC4, RC2, TWOFISH, MARS, SERPENT, SKIPJACK, IDEA, SEAL, DESX, RC5, BLOWFISH, CAST128, SAFER, at least one or more of the asymmetric key, RSA, EIGamal, ECC, It is characterized by using at least one of DSS and PKP.

한편, 상기 하드웨어 플랫폼의 제어기는, 인터넷 주소, 문자열, 전화번호, URL 정보를 포함하여 블랙리스트 정보를 저장하고, 상기 블랙리스트 정보의 위험도에 따라 저장 영역을 구분하는 데이터 저장모듈; 상기 스마트 카드, USB 디바이스, SD 카드, 입출력 포트 또는 호스트 연결용 디바이스의 접속시, 허가되지 않은 데이터 접속을 금지하기 위한 색인정보를 추출하는 정보 추출모듈; 상기 추출된 색인정보와 상기 블랙리스트 정보를 비교하여 상기 허가되지 않은 데이터 접속이 있는지를 검색하는 필터링 모듈; 및 상기 필터링 모듈을 통해 허가되지 않은 데이터 접속이 있는 경우에 경고 메시지를 출력하거나 해당 데이터 접속을 통제하는 접속 통제모듈을 포함하는 것을 특징으로 한다.The controller of the hardware platform may include a data storage module configured to store blacklist information including an internet address, a string, a phone number, and URL information, and to classify a storage area according to a risk of the blacklist information; An information extraction module for extracting index information for prohibiting unauthorized data access when the smart card, USB device, SD card, input / output port or host connection device is connected; A filtering module for comparing the extracted index information with the blacklist information to search for the unauthorized data connection; And an access control module for outputting a warning message or controlling a corresponding data connection when there is an unauthorized data connection through the filtering module.

상기 필터링 모듈은 상기 색인 정보가 상기 블랙리스트 정보 중에서 동일한 정보가 존재하는 경우, 상기 색인 정보를 포함하는 특정 길이 이상의 문자열 정보를 읽어와 상기 블랙리스트 정보와의 매칭율이 제1 판정 조건 이상인 정보를 포함하는 매칭정보를 추출하고, 상기 제1 판정 조건에서 추출된 매칭정보가 상기 블랙리스트 정보 중 동일한 문자열이 존재하는 제2 판정조건을 만족하는 경우에 상기 색인 정보를 포함하는 데이터 접속을 허가되지 않은 접속으로 판단하는 것을 특징으로 한다.If the index information includes the same information among the blacklist information, the filtering module reads string information having a specific length or more including the index information, and searches for information in which a matching ratio with the blacklist information is equal to or greater than a first determination condition. Extracts matching information, and if the matching information extracted in the first determination condition satisfies a second determination condition in which the same character string exists among the blacklist information, the data connection including the index information is not permitted. It is characterized by judging by the connection.

상기 필터링 모듈은, 상기 색인 정보가 상기 블랙리스트 정보 중에서 동일한 정보가 존재하지 않은 경우에, 상기 색인 정보를 포함한 데이터 접속을 허가된 데이터 접속으로 판단하고, 상기 색인 정보가 상기 블랙리스트 정보 중에서 동일한 정보가 존재하지만 상기 제1 판정 조건을 만족하지 않은 경우에 상기 색인 정보를 포함한 데이터 접속 정보를 상기 데이터 저장모듈의 저위험도 저장영역에 저장하며, 상기 색인 정보가 상기 블랙리스트 정보 중에서 동일한 정보가 존재하고, 상기 제1 판정 조건을 만족하면서 상기 제2 판정 조건을 만족하지 않은 경우에 상기 색인 정보를 포함한 데이터 접속 정보를 상기 데이터 저장모듈의 중위험도 저장영역에 저장하고, 상기 색인 정보가 상기 블랙리스트 정보 중에서 동일한 정보가 존재하고, 상기 제1 판정 조건 및 제2 판정 조건을 만족하는 경우에 상기 색인 정보를 포함한 데이터 접속 정보를 상기 데이터 저장모듈의 고위험도 저장영역에 저장하는 것을 특징으로 한다.
The filtering module, when the index information does not have the same information among the blacklist information, determines that the data connection including the index information is a permitted data connection, and the index information is the same information among the blacklist information. Is present but does not satisfy the first determination condition, data access information including the index information is stored in a low risk storage area of the data storage module, and the index information includes the same information among the blacklist information. And storing the data access information including the index information in the medium risk storage area of the data storage module when the first determination condition is satisfied and the second determination condition is not satisfied. The same information exists among the information, and the first judgment group And a high risk of the data storage module, a data access information including the index information in the case that satisfies the determination condition 2 is also characterized in that stored in the storage area.

본 발명의 범용 보안 저장 장치는 적어도 하나 이상의 암호 알고리즘을 저장 및 실행하여 데이터의 암호/복호화 작업 및 인증서 저장 기능을 실행하여 보안 토큰으로 활용할 수 있고, 스마트카드 인터페이스, USB 인터페이스, SD 카드 인터페이스 및 직렬 통신 인터페이스 기능을 지원할 수 있어 각종 정보 단말기기의 휴대용 저장 수단으로 활용할 수 있으며, 그로 인해 개인 정보 유출 및 개인 데이터 분실, 허가되지 않은 데이터 접속을 통제할 수 있고, 기업, 금융기관, 공공기관 및 국가기관에 적용하여 데이터 보안에 대한 안전 관리를 수행할 수 있어 경제적 및 사회적으로 많은 피해를 방지할 수 있는 효과가 있다.
The general purpose secure storage device of the present invention stores and executes at least one cryptographic algorithm to execute data encryption / decryption operations and certificate storage functions to be used as security tokens, and includes a smart card interface, a USB interface, an SD card interface, and a serial. It can support the communication interface function, so it can be used as a portable storage means of various information terminal devices, thereby controlling the leakage of personal information, the loss of personal data, and unauthorized access of data, and for companies, financial institutions, public institutions and countries. Applied to institutions, safety management of data security can be carried out, which can prevent economic and social damages.

도 1은 본 발명의 일 실시예에 따른 범용 보안 저장 장치의 구성을 설명하는 도면이다.
도 2는 도 1의 암호 블록 처리 플랫폼의 구성을 설명하는 블록도이다.
도 3은 본 발명의 일 실시예에 따른 범용 보안 저장 장치의 프로세서 부분을 설명을 블록도이다.
도 4는 도 1의 하드웨어 플랫폼의 제어기의 구성을 설명하는 블록도이다.
1 is a diagram illustrating a configuration of a general purpose secure storage device according to an embodiment of the present invention.
FIG. 2 is a block diagram illustrating a configuration of a cryptographic block processing platform of FIG. 1.
Figure 3 is a block diagram illustrating a processor portion of a general purpose secure storage device in accordance with one embodiment of the present invention.
4 is a block diagram illustrating a configuration of a controller of the hardware platform of FIG. 1.

본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.The description of the present invention is merely an example for structural or functional explanation, and the scope of the present invention should not be construed as being limited by the embodiments described in the text. That is, the embodiments are to be construed as being variously embodied and having various forms, so that the scope of the present invention should be understood to include equivalents capable of realizing technical ideas. Also, the purpose or effect of the present invention should not be construed as limiting the scope of the present invention, since it does not mean that a specific embodiment should include all or only such effect.

한편, 본 발명에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.Meanwhile, the meaning of the terms described in the present invention should be understood as follows.

"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.The terms "first "," second ", and the like are intended to distinguish one element from another, and the scope of the right should not be limited by these terms. For example, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component.

어떤 구성요소가 다른 구성요소에 "연결되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.It is to be understood that when an element is referred to as being "connected" to another element, it may be directly connected to the other element, but there may be other elements in between. On the other hand, when an element is referred to as being "directly connected" to another element, it should be understood that there are no other elements in between. On the other hand, other expressions describing the relationship between the components, such as "between" and "immediately between" or "neighboring to" and "directly neighboring to", should be interpreted as well.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다"또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.It should be understood that the singular " include "or" have "are to be construed as including a stated feature, number, step, operation, component, It is to be understood that the combination is intended to specify that it does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.In each step, the identification code (e.g., a, b, c, etc.) is used for convenience of explanation, the identification code does not describe the order of each step, Unless otherwise stated, it may occur differently from the stated order. That is, each step may occur in the same order as described, may be performed substantially concurrently, or may be performed in reverse order.

여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.
All terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs, unless otherwise defined. Commonly used predefined terms should be interpreted to be consistent with the meanings in the context of the related art and can not be interpreted as having ideal or overly formal meaning unless explicitly defined in the present invention.

도 1은 본 발명의 일 실시예에 따른 범용 보안 저장 장치의 구성을 설명하는 도면이다.1 is a diagram illustrating a configuration of a general purpose secure storage device according to an embodiment of the present invention.

도 1을 참고하면, 범용 보안 저장 장치(100)는 암호 블록 처리 플랫폼(110), 하드웨어 플랫폼(120) 및 소프트웨어 플랫폼(130)을 포함한다.Referring to FIG. 1, the universal secure storage device 100 includes a cryptographic block processing platform 110, a hardware platform 120, and a software platform 130.

암호 블록 처리 플랫폼(110)은 적어도 하나 이상의 암호 알고리즘을 이용하여 암호화 작업을 처리하고, 256-bit의 블록 크기와 키 길이를 처리하며, 복호화 작업을 위한 복호키를 생성하고, 복호키의 스케줄러 프로세스를 진행하며, 암호 알고리즘에 사용되는 암호키 값에 따라 소모 전류 변화를 이용한 공격에 대한 암호화를 수행한다.The cryptographic block processing platform 110 processes cryptographic operations using at least one cryptographic algorithm, processes 256-bit block sizes and key lengths, generates decryption keys for decryption operations, and schedules the decryption keys. Proceed to encrypt the attack using the current consumption change according to the encryption key value used in the encryption algorithm.

암호 블록 처리 플랫폼(110)은 Advanced Encryption Standard(AES) 256-bit 하드웨어 가속기를 이용하고, 소모 전류 변화를 이용한 224bit/256bit의 차분전력분석법 (Differential Power Analysis, DPA)의 공격 방어 암호인 ECC(Elliptic Curve Cryptosystem)를 내장한다. The cryptographic block processing platform 110 utilizes an Advanced Encryption Standard (AES) 256-bit hardware accelerator and elliptic ECC (Elliptic), an attack defense cipher of 224bit / 256bit differential power analysis (DPA) using a change in current consumption. Curve Cryptosystem) is built in.

하드웨어 플랫폼(120)은 스마트 카드, USB 디바이스 및 SD 카드(Secure Digital Card)의 접속을 위한 제어 기능, NOR/NAND 플래쉬 메모리의 쓰기 제어 기능, 직렬 통신을 위한 SPI/I2C/UART/GPIO 등의 입출력 포트의 제어 기능, 키패드와 터치 입력을 위한 제어 기능 및 호스트 연결용 디바이스(Serial Advanced Technology Attachment, SATA)의 제어 기능을 실행하는 적어도 하나 이상의 제어기를 구현한다. The hardware platform 120 may control inputs and outputs of smart cards, USB devices, and SD cards (Secure Digital Cards), write control of NOR / NAND flash memory, and SPI / I2C / UART / GPIO for serial communication. At least one controller may be implemented to execute a control function of a port, a control function for a keypad and a touch input, and a control function of a device (Serial Advanced Technology Attachment, SATA).

소프트웨어 플랫폼(130)은 NOR/NAND 플래쉬 메모리의 쓰기 및 읽기, 부트로더(Bootloder), USB 디바이스 드라이버, SD 카드 드라이버, 스마트 카드 드라이버, 직렬 통신을 위한 SPI/I2C/UART/GPIOs 등의 입출력 포트의 드라이버, 키패드와 터치 기능을 위한 디바이스 드라이버 및 SATA의 드라이버를 구현하는 적어도 하나 이상의 소프트웨어를 포함한다.
The software platform 130 writes and reads NOR / NAND flash memory, bootloaders, USB device drivers, SD card drivers, smart card drivers, and SPI / I2C / UART / GPIOs for serial communication. At least one software that implements a driver, a device driver for keypad and touch functions, and a driver for SATA.

도 2는 도 1의 암호 블록 처리 플랫폼의 구성을 설명하는 블록도이다.FIG. 2 is a block diagram illustrating a configuration of a cryptographic block processing platform of FIG. 1.

도 2를 참고하면, 암호 블록 처리 플랫폼(110)은 알고리즘 실행 모듈(210), 랜덤 비트 생성 모듈(220) 및 제어 모듈(230)을 포함한다.Referring to FIG. 2, the cryptographic block processing platform 110 includes an algorithm execution module 210, a random bit generation module 220, and a control module 230.

알고리즘 실행 모듈(210)은 단방향키, 대칭키 또는 비대칭키 방식을 이용하는 적어도 하나 이상의 암호화 알고리즘을 저장 및 실행하여 암호화 작업을 수행한다.The algorithm execution module 210 stores and executes at least one encryption algorithm using a unidirectional key, symmetric key, or asymmetric key method to perform an encryption operation.

일고리즘 실행 모듈(210)은 단방향키로 MD5, Serfu, H-Hash, MD2, MD4, SHA, HAVAL 중에서 적어도 하나 이상을 이용하고, 대칭키로 3DES, AES, SEED, ARIA, DES, CRYPTON, RIJNDAEL, CAST256, RC6, RC5, RC4, RC2, TWOFISH, MARS, SERPENT, SKIPJACK, IDEA, SEAL, DESX, RC5, BLOWFISH, CAST128, SAFER 중에서 적어도 하나 이상을 이용하며, 비대칭키로 RSA, EIGamal, ECC, DSS, PKP 중에서 적어도 하나 이상을 이용할 수 있다. The algorithm execution module 210 uses at least one of MD5, Serfu, H-Hash, MD2, MD4, SHA, and HAVAL as unidirectional keys, and 3DES, AES, SEED, ARIA, DES, CRYPTON, RIJNDAEL, and CAST256 with symmetric keys. Use at least one of, RC6, RC5, RC4, RC2, TWOFISH, MARS, SERPENT, SKIPJACK, IDEA, SEAL, DESX, RC5, BLOWFISH, CAST128, SAFER, and among the RSA, EIGamal, ECC, DSS, PKP with asymmetric keys At least one or more may be used.

일 실시예에서, 알고리즘 실행 모듈(210)은 단방향 키로 SHA-256, 대칭키로 AES/ARIA, 비대칭키로 RSA/ECC를 이용한다. In one embodiment, the algorithm execution module 210 uses SHA-256 as a unidirectional key, AES / ARIA as a symmetric key and RSA / ECC as an asymmetric key.

랜덤 비트 생성 모듈(220)은 알고리즘 실행 모듈(210)의 암호화 결과를 입력받아 랜덤한 비트 스트림을 발생하여 암호키를 생성한다. The random bit generation module 220 receives the encryption result of the algorithm execution module 210 and generates a random bit stream to generate an encryption key.

제어 모듈(230)은 알고리즘 실행 모듈(210)에 의해 암호화 작업이 진행되는 중에 암호화가 종료된 데이터를 입력받아 순차적으로 저장하는 FIFO(First-In First out) 메모리를 제어한다.
The control module 230 controls the FIFO (First-In First out) memory which receives the data whose encryption is completed while the encryption operation is in progress by the algorithm execution module 210 and sequentially stores the data.

도 3은 본 발명의 일 실시예에 따른 범용 보안 저장 장치의 프로세서 부분을 설명을 블록도이다. Figure 3 is a block diagram illustrating a processor portion of a general purpose secure storage device in accordance with one embodiment of the present invention.

도 3을 참고하면, 범용 보안 저장 장치(100)는 보안 프로세서인 ARM 기반의 CPU(300)가 AHB 버스에 접속되고, AHB 버스를 통해 암호블록 처리 플랫폼(110), 소프트웨어 플랫폼(130)으로 구현되는 USB 2.0 디바이스 IP(Inetface Protocol)(131), SD 카드 2.0 IP(132), 정적 SDRAM IP(133), 내부 SRAM IP(134), NAND 플래쉬 IP(135)와 연결된다. Referring to FIG. 3, a general-purpose secure storage device 100 is implemented by a cryptographic block processing platform 110 and a software platform 130 through which an ARM-based CPU 300, which is a secure processor, is connected to an AHB bus and is connected to an AHB bus. It is connected to the USB 2.0 device IP (Inetface Protocol) 131, SD card 2.0 IP 132, static SDRAM IP 133, internal SRAM IP 134, NAND flash IP 135.

암호블록 처리 플랫폼(110)의 알고리즘 실행 모듈(210)은 ARIA/AES(211), ECC(212), RSA(213) 및 SHA(214)를 이용한 암호 알고리즘을 실행할 수 있다. The algorithm execution module 210 of the encryption block processing platform 110 may execute an encryption algorithm using the ARIA / AES 211, the ECC 212, the RSA 213, and the SHA 214.

USB 2.0 디바이스 IP(131)는 PHY 회로(131a)에 접속되어 USB 3.0 인터페이스에 연결된다. PHY 회로(131a)는 USB 포트를 위한 표준 물리 계층 인터페이스이다. 정적 SDRAM IP(133)은 NOR 플래쉬 메모리(101)와 SDRAM(102)에 연결되고, 내부 SRAM IP(134)는 내부 SRAM(103)에 연결되며, NAND 플래쉬 IP(135)는 NAND 플래쉬 메모리(104)에 연결된다. The USB 2.0 device IP 131 is connected to the PHY circuit 131a and connected to the USB 3.0 interface. PHY circuitry 131a is a standard physical layer interface for a USB port. The static SDRAM IP 133 is connected to the NOR flash memory 101 and the SDRAM 102, the internal SRAM IP 134 is connected to the internal SRAM 103, and the NAND flash IP 135 is the NAND flash memory 104. )

또한, 브리지 회로(105)는 고속 버스인 AHB 버스와 저속 버스인 APB 버스에 접속되며, APB 버스에는 스마트 카드 IP(136), SPI/I2C/UART/GPIO 입출력포트(137a~137d), 타이머(106), WTC(Watch Dog Timer)(107) 및 RTC(Real Time Clock)(108)가 접속되어 있다. The bridge circuit 105 is connected to an AHB bus, which is a high-speed bus, and an APB bus, which is a low-speed bus. The APB bus is provided with a smart card IP 136, an SPI / I2C / UART / GPIO input / output port 137a to 137d, and a timer ( 106, a Watch Dog Timer (WTC) 107, and a Real Time Clock (RTC) 108 are connected.

인터럽트 컨트롤러(INTC)(10)는 인터럽트 레벨의 설정과 판정, CPU(300)에 대한 인터럽트 요구를 제어한다.
The interrupt controller (INTC) 10 controls the setting and determination of the interrupt level and the interrupt request for the CPU 300.

도 4는 도 1의 하드웨어 플랫폼의 제어기의 구성을 설명하는 블록도이다.4 is a block diagram illustrating a configuration of a controller of the hardware platform of FIG. 1.

도 4를 참고하면, 하드웨어 플랫폼(120)의 제어기는 ARM 기반의 CPU(300)로서, 데이터 저장모듈(320), 정보 추출 모듈(330), 필터링 모듈(340) 및 접속 통제 모듈(350)을 포함한다.Referring to FIG. 4, the controller of the hardware platform 120 is an ARM-based CPU 300, and includes a data storage module 320, an information extraction module 330, a filtering module 340, and an access control module 350. Include.

데이터 저장 모듈(320)은 메모리(310)에 인터넷 주소, 문자열, 전화번호, URL 정보를 포함하여 블랙리스트 정보를 저장하는데, 메모리(310)는 NOR 플래쉬 메모리(101), SDRAM(102), 내부 SRAM(103), NAND 플래쉬 메모리(103) 중 어느 하나일 수 있다. The data storage module 320 stores the blacklist information including the Internet address, a string, a phone number, and URL information in the memory 310. The memory 310 includes a NOR flash memory 101, an SDRAM 102, and an internal device. It may be one of the SRAM 103 and the NAND flash memory 103.

데이터 저장 모듈(320)은 블랙리스트 정보의 위험도에 따라 고위험도 저장영역(313), 중위험도 저장영역(312), 저위험도 저장영역(311)으로 구분할 수 있다.The data storage module 320 may be divided into a high risk storage region 313, a medium risk storage region 312, and a low risk storage region 311 according to the risk of the blacklist information.

정보 추출 모듈(330)은 스마트 카드, USB 디바이스, SD 카드, 입출력 포트 또는 PC 등의 STAT 디바이스의 접속으로 인해 데이터 전송 또는 유출이 진행될 경우에, 허가되지 않은 데이터 접속을 금지하기 위한 색인정보를 추출한다.The information extraction module 330 extracts index information for prohibiting unauthorized data access when data transfer or leakage occurs due to connection of a STAT device such as a smart card, a USB device, an SD card, an input / output port, or a PC. do.

필터링 모듈(340)은 추출된 색인정보와 블랙리스트 정보를 비교하여 허가되지 않은 데이터 접속이 있는지를 검색하고, 접속 통제 모듈(350)은 필터링 모듈(340)을 통해 허가되지 않은 데이터 접속이 있는 경우에 경고 메시지를 출력하거나 해당 데이터 접속을 통제한다.The filtering module 340 compares the extracted index information and the blacklist information to search for an unauthorized data connection, and the access control module 350 performs an unauthorized data connection through the filtering module 340. Warning message or control of data access.

예들 들어, 블랙리스트 정보 중에 "http://img.kruncles.info/css.html"이 저장되어 있고, 범용 보안 저장 장치(100)가 STAT 디바이스를 통해 PC와 접속된 경우에, PC에서 "http://img.kruncles.info/cdd.html "이라는 URL에 접속을 시도하면 정보 추출 모듈은 'kruncles'의 색인 정보를 추출한다. For example, if "http://img.kruncles.info/css.html" is stored in the blacklist information, and the general purpose secure storage device 100 is connected to the PC through the STAT device, the "http://img.kruncles.info/css.html" is stored in the "http://img.kruncles.info/css.html". If you try to access the URL ": //img.kruncles.info/cdd.html", the information extraction module extracts the index information of 'kruncles'.

필터링 모듈(340)은 블랙리스트 정보에서 'kruncles'의 색인 정보와 동일한 정보가 존재하면, 1차적으로 전체 URL 정보와 블랙리스트 정보를 매칭하기 위해 URL 정보에서 'img.kruncles.info/cdd.html'의 문자열 정보를 읽어와 블랙리스트 정보와의 매칭율이 제1 판정 조건 이상인 정보를 포함하는 매칭 정보를 추출한다.If the same information as the index information of 'kruncles' exists in the blacklist information, the filtering module 340 may primarily use 'img.kruncles.info/cdd.html' in the URL information to match the entire URL information and the blacklist information. The character string information of "'is read, and the matching information containing the information with a matching rate with black list information more than a 1st determination condition is extracted.

제1 판정 조건은 특수 문자나 기호를 제외한 문자열 정보가 블랙리스트 정보와의 매칭율이 70% 이상인 경우일 수 있다.The first determination condition may be a case in which character string information excluding special characters or symbols has a matching rate of 70% or more with blacklist information.

필터링 모듈(340)은 제2 판정 조건을 제1 판정 조건을 만족하는 매칭 정보를 블랙리스트 정보와의 매칭율이 90% 이상인 경우로 하고, 매칭 정보와 블랙리스트 정보와의 매칭율이 90% 이상이므로 "http://img.kruncles.info/cdd.html "의 URL 정보를 허가되지 않은 데이터 접속으로 판단한다.The filtering module 340 sets the second determination condition as the case where the matching information satisfying the first determination condition is 90% or more, and the matching rate between the matching information and the blacklist information is 90% or more. Therefore, the URL information of "http://img.kruncles.info/cdd.html" is determined to be an unauthorized data connection.

접속 통제 모듈(350)은 "http://img.kruncles.info/cdd.html "의 URL 접속을 차단하고, "허가되지 않은 URL에 접속하셨습니다."라는 경고 메시지를 출력할 수 있다. The access control module 350 blocks the URL access of "http://img.kruncles.info/cdd.html" and outputs a warning message "You have accessed an unauthorized URL."

한편, 필터링 모듈(340)은 색인 정보가 블랙리스트 정보 중에서 동일한 정보가 존재하지 않은 경우에, 색인 정보를 포함한 데이터 접속을 허가된 데이터 접속으로 판단한다. 그리고, 필터링 모듈(340)은 허가된 데이터 접속인 경우에 데이터 저장 모듈(320)을 통해 메모리(310)에 화이트 리스트로 저장할 수 있다. On the other hand, the filtering module 340 determines that the data connection including the index information is an authorized data connection when the index information does not have the same information among the blacklist information. In addition, the filtering module 340 may store the white list in the memory 310 through the data storage module 320 in the case of an authorized data connection.

또한, 필터링 모듈(340)은 색인 정보가 블랙리스트 정보 중에서 동일한 정보가 존재하지만 제1 판정 조건을 만족하지 않은 경우에 색인 정보를 포함한 데이터 접속 정보를 데이터 저장모듈(320)을 통해 메모리(310)의 저위험도 저장영역(311)에 저장한다.In addition, the filtering module 340 stores the data access information including the index information in the memory 310 through the data storage module 320 when the same information exists among the blacklist information but does not satisfy the first determination condition. In the low risk storage area 311.

필터링 모듈(340)은 색인 정보가 블랙리스트 정보 중에서 동일한 정보가 존재하면서 제1 판정 조건을 만족하지만 제2 판정 조건을 만족하지 않은 경우에, 색인 정보를 포함한 데이터 접속 정보를 데이터 저장모듈(320)을 통해 중위험도 저장영역(312)에 저장한다. 이때, 접속 통제 모듈(350)은 중위험도 저장영역(312)에 저장된 인터넷 주소, 문자열, 전화번호 및 URL 정보를 사용자에게 블랙리스트로 저장할지에 대한 질의 메시지를 출력하고, 사용자의 답변 메시지(YES/NO)에 따라 블랙리스트 저장 여부를 결정한다. When the index information satisfies the first determination condition while the same information is present among the blacklist information, but does not satisfy the second determination condition, the filtering module 340 stores the data connection information including the index information. It is stored in the medium risk storage area 312 through. At this time, the access control module 350 outputs an inquiry message as to whether to store the Internet address, string, phone number and URL information stored in the medium risk storage area 312 as a blacklist to the user, and the user's response message ( YES / NO) determines whether to save the blacklist.

필터링 모듈(340)은 색인 정보가 블랙리스트 정보 중에서 동일한 정보가 존재하고, 제1 판정 조건 및 제2 판정 조건을 만족하는 경우에 색인 정보를 포함한 데이터 접속 정보를 데이터 저장모듈(320)을 통해 메모리(310)의 고위험도 저장영역(313)에 저장한다. The filtering module 340 stores the data access information including the index information through the data storage module 320 when the index information has the same information among the blacklist information and satisfies the first and second determination conditions. Stored in the high risk storage area 313 (310).

데이터 저장 모듈(320)은 주기적으로 또는 사용자의 요청으로 블랙리스트 정보를 업데이트 하거나 공유하도록 할 수 있다.
The data storage module 320 may update or share the blacklist information periodically or at the user's request.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the present invention as defined by the following claims It can be understood that

100 : 범용 보안 저장 장치 110 : 암호 블록 처리 플랫폼
120 : 하드웨어 플랫폼 130 : 소프트웨어 플랫폼
210 : 알고리즘 실행 모듈 220 : 랜덤비트 생성 모듈
230 : 제어 모듈 300 : CPU
320 : 데이터 저장 모듈 330 : 정보 추출 모듈
340 : 필터링 모듈 350 : 접속 통제 모듈
100: universal secure storage device 110: password block processing platform
120: hardware platform 130: software platform
210: algorithm execution module 220: random bit generation module
230: control module 300: CPU
320: data storage module 330: information extraction module
340: filtering module 350: access control module

Claims (6)

적어도 하나 이상의 암호 알고리즘에 의해 암호화 작업을 처리하고, 상기 암호 알고리즘에서 사용되는 암호키 값에 따라 소모 전류 변화를 이용한 공격에 대한 암호화를 수행하며, 복호화 작업을 위한 복호키를 생성하고, 상기 복호키의 스케줄링 기능을 수행하며, 일정 비트 이상의 블록 크기와 키 길이를 처리하는 암호 블록 처리 플랫폼;
스마트 카드, USB 디바이스 및 SD 카드(Secure Digital Card)의 접속을 위한 제어 기능, 메모리의 쓰기 제어 기능, 직렬 통신을 위한 입출력 포트의 제어 기능, 키입력 제어 기능 및 호스트 연결용 디바이스의 제어 기능을 실행하는 적어도 하나 이상의 제어기를 구현하는 하드웨어 플랫폼; 및
상기 메모리의 쓰기 및 읽기, 부트로더(Bootloder), USB 디바이스 드라이버, SD 카드 드라이버, 스마트 카드 드라이버, 직렬 통신을 위한 입출력 포트의 드라이버, 키입력 기능을 위한 디바이스 드라이버 및 호스트 연결용 디바이스의 드라이버를 구현하는 적어도 하나 이상의 소프트웨어를 포함하는 소프트웨어 플랫폼을 포함하되,
상기 하드웨어 플랫폼의 제어기는,
인터넷 주소, 문자열, 전화번호, URL 정보를 포함하여 블랙리스트 정보를 저장하고, 상기 블랙리스트 정보의 위험도에 따라 저장 영역을 구분하는 데이터 저장모듈;
상기 스마트 카드, USB 디바이스, SD 카드, 입출력 포트 또는 호스트 연결용 디바이스의 접속시, 허가되지 않은 데이터 접속을 금지하기 위한 색인정보를 추출하는 정보 추출모듈;
상기 추출된 색인정보와 상기 블랙리스트 정보를 비교하여 상기 허가되지 않은 데이터 접속이 있는지를 검색하는 필터링 모듈; 및
상기 필터링 모듈을 통해 허가되지 않은 데이터 접속이 있는 경우에 경고 메시지를 출력하거나 해당 데이터 접속을 통제하는 접속 통제모듈을 포함하는 것을 특징으로 하는 범용 보안 저장 장치.
Process the encryption operation by at least one encryption algorithm, perform encryption for an attack using a change in current consumption according to the encryption key value used in the encryption algorithm, generate a decryption key for decryption operation, and decrypt the decryption key A cryptographic block processing platform for performing a scheduling function of and processing a block size and a key length of a predetermined bit or more;
Control functions for connecting smart cards, USB devices, and SD cards (Secure Digital Cards), write control functions for memory, input / output port control functions for serial communication, key input control functions, and control functions for host connection devices A hardware platform implementing at least one controller; And
Write and read the memory, boot loader (Bootloder), USB device driver, SD card driver, smart card driver, driver of input / output port for serial communication, device driver for key input function and device driver for host connection Includes a software platform comprising at least one software,
The controller of the hardware platform,
A data storage module for storing blacklist information including an internet address, a character string, a phone number, and URL information, and classifying a storage area according to a risk of the blacklist information;
An information extraction module for extracting index information for prohibiting unauthorized data access when the smart card, USB device, SD card, input / output port or host connection device is connected;
A filtering module for comparing the extracted index information with the blacklist information to search for the unauthorized data connection; And
And a connection control module for outputting a warning message or controlling a corresponding data connection when there is an unauthorized data connection through the filtering module.
제1항에 있어서, 상기 암호 블록 처리 플랫폼은,
단방향키, 대칭키 또는 비대칭키 방식을 이용하는 적어도 하나 이상의 암호화 알고리즘을 저장 및 실행하는 알고리즘 실행 모듈;
상기 알고리즘 실행 모듈의 암호화 결과를 입력받아 랜덤한 비트 스트림을 발생하여 암호키를 생성하는 랜덤 비트 생성 모듈; 및
상기 암호화 작업 또는 복호화 작업이 진행되는 중에 상기 암호화 또는 복호화가 종료된 데이터를 입력받아 순차적으로 저장하는 메모리를 제어하는 제어모듈을 포함하는 것을 특징으로 하는 범용 보안 저장 장치.
The method of claim 1, wherein the cryptographic block processing platform,
An algorithm execution module for storing and executing at least one encryption algorithm using a unidirectional key, symmetric key, or asymmetric key scheme;
A random bit generation module which receives an encryption result of the algorithm execution module and generates a random bit stream to generate an encryption key; And
And a control module configured to control a memory for sequentially receiving the encrypted or decrypted data while the encryption operation or the decryption operation is in progress.
제2항에 있어서, 상기 알고리즘 실행 모듈은,
상기 단방향키는 MD5, Serfu, H-Hash, MD2, MD4, SHA, HAVAL 중에서 적어도 하나 이상을 이용하고,
상기 대칭키는 3DES, AES, SEED, ARIA, DES, CRYPTON, RIJNDAEL, CAST256, RC6, RC5, RC4, RC2, TWOFISH, MARS, SERPENT, SKIPJACK, IDEA, SEAL, DESX, RC5, BLOWFISH, CAST128, SAFER 중에서 적어도 하나 이상을 이용하며,
상기 비대칭키는 RSA, EIGamal, ECC, DSS, PKP 중에서 적어도 하나 이상을 이용하는 것을 특징으로 하는 범용 보안 저장 장치.
The method of claim 2, wherein the algorithm execution module,
The unidirectional key uses at least one of MD5, Serfu, H-Hash, MD2, MD4, SHA, HAVAL,
The symmetric key is selected from 3DES, AES, SEED, ARIA, DES, CRYPTON, RIJNDAEL, CAST256, RC6, RC5, RC4, RC2, TWOFISH, MARS, SERPENT, SKIPJACK, IDEA, SEAL, DESX, RC5, BLOWFISH, CAST128, SAFER. Using at least one,
The asymmetric key is a general-purpose secure storage device, characterized in that using at least one of RSA, EIGamal, ECC, DSS, PKP.
삭제delete 제1항에 있어서,
상기 필터링 모듈은 상기 색인 정보가 상기 블랙리스트 정보 중에서 동일한 정보가 존재하는 경우,
상기 색인 정보를 포함하는 특정 길이 이상의 문자열 정보를 읽어와 상기 블랙리스트 정보와의 매칭율이 제1 판정 조건 이상인 정보를 포함하는 매칭정보를 추출하고,
상기 제1 판정 조건에서 추출된 매칭정보가 상기 블랙리스트 정보 중 동일한 문자열이 존재하는 제2 판정조건을 만족하는 경우에 상기 색인 정보를 포함하는 데이터 접속을 허가되지 않은 접속으로 판단하는 것을 특징으로 하는 범용 보안 저장 장치.
The method of claim 1,
The filtering module, when the index information has the same information among the blacklist information,
Reading character string information having a specific length including the index information and extracting matching information including information having a matching ratio with the black list information equal to or greater than a first determination condition,
When the matching information extracted from the first determination condition satisfies the second determination condition in which the same character string exists among the blacklist information, the data connection including the index information is determined to be an unauthorized connection. Universal Secure Storage.
제5항에 있어서, 상기 필터링 모듈은,
상기 색인 정보가 상기 블랙리스트 정보 중에서 동일한 정보가 존재하지 않은 경우에, 상기 색인 정보를 포함한 데이터 접속을 허가된 데이터 접속으로 판단하고,
상기 색인 정보가 상기 블랙리스트 정보 중에서 동일한 정보가 존재하지만 상기 제1 판정 조건을 만족하지 않은 경우에 상기 색인 정보를 포함한 데이터 접속 정보를 상기 데이터 저장모듈의 저위험도 저장영역에 저장하며,
상기 색인 정보가 상기 블랙리스트 정보 중에서 동일한 정보가 존재하고, 상기 제1 판정 조건을 만족하면서 상기 제2 판정 조건을 만족하지 않은 경우에 상기 색인 정보를 포함한 데이터 접속 정보를 상기 데이터 저장모듈의 중위험도 저장영역에 저장하고,
상기 색인 정보가 상기 블랙리스트 정보 중에서 동일한 정보가 존재하고, 상기 제1 판정 조건 및 제2 판정 조건을 만족하는 경우에 상기 색인 정보를 포함한 데이터 접속 정보를 상기 데이터 저장모듈의 고위험도 저장영역에 저장하는 것을 특징으로 하는 범용 보안 저장 장치.
The method of claim 5, wherein the filtering module,
If the index information does not have the same information among the blacklist information, it is determined that the data connection including the index information is an authorized data connection,
If the index information includes the same information among the blacklist information but does not satisfy the first determination condition, data access information including the index information is stored in a low risk storage area of the data storage module,
When the index information includes the same information among the blacklist information, the first determination condition is satisfied and the second determination condition is not satisfied, the data access information including the index information is seriously risked by the data storage module. Stores it in storage,
When the index information has the same information among the black list information and satisfies the first and second determination conditions, data access information including the index information is stored in the high risk storage area of the data storage module. General purpose secure storage device, characterized in that.
KR1020130057237A 2013-05-21 2013-05-21 Universal secure information storage device KR101349849B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130057237A KR101349849B1 (en) 2013-05-21 2013-05-21 Universal secure information storage device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130057237A KR101349849B1 (en) 2013-05-21 2013-05-21 Universal secure information storage device

Publications (1)

Publication Number Publication Date
KR101349849B1 true KR101349849B1 (en) 2014-01-10

Family

ID=50145159

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130057237A KR101349849B1 (en) 2013-05-21 2013-05-21 Universal secure information storage device

Country Status (1)

Country Link
KR (1) KR101349849B1 (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9503428B2 (en) 2014-10-10 2016-11-22 Zanguli Llc Secure device and proxy for secure operation of a host data processing system
WO2017209966A1 (en) * 2016-06-03 2017-12-07 Honeywell International Inc. Apparatus and method for device whitelisting and blacklisting to override protections for allowed media at nodes of a protected system
KR20180115582A (en) * 2017-04-13 2018-10-23 양보륜 System for real-time protection of computer storage devices using user behavior analysis and control method thereof
US10205726B2 (en) 2016-06-03 2019-02-12 Honeywell International Inc. Apparatus and method for preventing file access by nodes of a protected system
US10402559B2 (en) 2016-06-03 2019-09-03 Honeywell International Inc. System and method supporting secure data transfer into and out of protected systems using removable media
US10614219B2 (en) 2016-06-03 2020-04-07 Honeywell International Inc. Apparatus and method for locking and unlocking removable media for use inside and outside protected systems
US10643007B2 (en) 2016-06-03 2020-05-05 Honeywell International Inc. System and method for auditing file access to secure media by nodes of a protected system
CN111339519A (en) * 2020-02-18 2020-06-26 山东超越数控电子股份有限公司 Hardware interface protection method and equipment with hardware encryption and decryption functions
US10812517B2 (en) 2016-06-03 2020-10-20 Honeywell International Inc. System and method for bridging cyber-security threat intelligence into a protected system using secure media
US10990671B2 (en) 2018-01-12 2021-04-27 Honeywell International Inc. System and method for implementing secure media exchange on a single board computer
CN113382022A (en) * 2021-08-12 2021-09-10 江西嘉捷鑫源科技有限公司 Serial port data processing method, electronic equipment and readable storage medium
US11425170B2 (en) 2018-10-11 2022-08-23 Honeywell International Inc. System and method for deploying and configuring cyber-security protection solution using portable storage device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KISA, 평가1연구 06-02, (2006.12) *

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10250563B2 (en) 2014-10-10 2019-04-02 Zanguli Llc Secure device and proxy for secure operation of a host data processing system
US9819646B2 (en) 2014-10-10 2017-11-14 Zanguli Llc Secure device and proxy for secure operation of a host data processing system
US9503428B2 (en) 2014-10-10 2016-11-22 Zanguli Llc Secure device and proxy for secure operation of a host data processing system
US10402577B2 (en) 2016-06-03 2019-09-03 Honeywell International Inc. Apparatus and method for device whitelisting and blacklisting to override protections for allowed media at nodes of a protected system
US10643007B2 (en) 2016-06-03 2020-05-05 Honeywell International Inc. System and method for auditing file access to secure media by nodes of a protected system
US10812517B2 (en) 2016-06-03 2020-10-20 Honeywell International Inc. System and method for bridging cyber-security threat intelligence into a protected system using secure media
US10205726B2 (en) 2016-06-03 2019-02-12 Honeywell International Inc. Apparatus and method for preventing file access by nodes of a protected system
US10402559B2 (en) 2016-06-03 2019-09-03 Honeywell International Inc. System and method supporting secure data transfer into and out of protected systems using removable media
WO2017209966A1 (en) * 2016-06-03 2017-12-07 Honeywell International Inc. Apparatus and method for device whitelisting and blacklisting to override protections for allowed media at nodes of a protected system
US10614219B2 (en) 2016-06-03 2020-04-07 Honeywell International Inc. Apparatus and method for locking and unlocking removable media for use inside and outside protected systems
KR102004505B1 (en) 2017-04-13 2019-07-26 양보륜 System for real-time protection of computer storage devices using user behavior analysis and control method thereof
KR20180115582A (en) * 2017-04-13 2018-10-23 양보륜 System for real-time protection of computer storage devices using user behavior analysis and control method thereof
US10990671B2 (en) 2018-01-12 2021-04-27 Honeywell International Inc. System and method for implementing secure media exchange on a single board computer
US11425170B2 (en) 2018-10-11 2022-08-23 Honeywell International Inc. System and method for deploying and configuring cyber-security protection solution using portable storage device
CN111339519A (en) * 2020-02-18 2020-06-26 山东超越数控电子股份有限公司 Hardware interface protection method and equipment with hardware encryption and decryption functions
CN113382022A (en) * 2021-08-12 2021-09-10 江西嘉捷鑫源科技有限公司 Serial port data processing method, electronic equipment and readable storage medium
CN113382022B (en) * 2021-08-12 2021-11-02 江西嘉捷鑫源科技有限公司 Serial port data processing method, electronic equipment and readable storage medium

Similar Documents

Publication Publication Date Title
KR101349849B1 (en) Universal secure information storage device
CN106529308B (en) data encryption method and device and mobile terminal
US9898624B2 (en) Multi-core processor based key protection method and system
EP3274850B1 (en) Protecting a memory
CN100437618C (en) Portable information safety device
CN101551784B (en) Method and device for encrypting data in ATA memory device with USB interface
US10496841B2 (en) Dynamic and efficient protected file layout
CN1878055B (en) Separation type mass data encryption/decryption device and implementing method therefor
US20160117262A1 (en) Hybrid Cryptographic Key Derivation
KR20140019599A (en) Method of managing key for secure storage of data, and and apparatus there-of
EP2839602A1 (en) Multi-issuer secure element partition architecture for nfc enabled devices
CN103345453B (en) Based on supporting the method that the fixed disk data enciphering card of SATA interface is encrypted
WO2016192453A1 (en) Safety control method and apparatus, and terminal
CN104794388A (en) Application program access protection method and application program access protection device
US20170256304A1 (en) Technologies for secure content display with panel self-refresh
CN102024115B (en) Computer with user security subsystem
Zhang et al. Trusttokenf: A generic security framework for mobile two-factor authentication using trustzone
CN103617127A (en) Memory device with subareas and memorizer area dividing method
CN105205416A (en) Mobile hard disk password module
CN109299944B (en) Data encryption method, system and terminal in transaction process
Khelif et al. A versatile emulator of mitm for the identification of vulnerabilities of iot devices, a case of study: smartphones
CN111386513B (en) Data processing method, device and system chip
KR101318668B1 (en) Portable memory card having information security function
Lin et al. Robust and efficient covert channel communications in operating systems: design, implementation and evaluation
US11216565B1 (en) Systems and methods for selectively encrypting controlled information for viewing by an augmented reality device

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated 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: 20161114

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180702

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190501

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20200302

Year of fee payment: 7