[go: up one dir, main page]

KR101869067B1 - Data encryption storing apparatus for encryption key change and update through key positioning and operating method thereof - Google Patents

Data encryption storing apparatus for encryption key change and update through key positioning and operating method thereof Download PDF

Info

Publication number
KR101869067B1
KR101869067B1 KR1020160115827A KR20160115827A KR101869067B1 KR 101869067 B1 KR101869067 B1 KR 101869067B1 KR 1020160115827 A KR1020160115827 A KR 1020160115827A KR 20160115827 A KR20160115827 A KR 20160115827A KR 101869067 B1 KR101869067 B1 KR 101869067B1
Authority
KR
South Korea
Prior art keywords
data
encryption key
encryption
encrypted
key
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
KR1020160115827A
Other languages
Korean (ko)
Other versions
KR20180028306A (en
Inventor
박동규
나형수
Original Assignee
주식회사 한컴시큐어
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 한컴시큐어 filed Critical 주식회사 한컴시큐어
Priority to KR1020160115827A priority Critical patent/KR101869067B1/en
Publication of KR20180028306A publication Critical patent/KR20180028306A/en
Application granted granted Critical
Publication of KR101869067B1 publication Critical patent/KR101869067B1/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/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
    • 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/12Transmitting and receiving encryption devices synchronised or initially set up in a particular manner

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

키 포지셔닝을 활용하여 암호화키 변경 및 갱신이 가능한 데이터 암호화 저장 장치 및 그 동작 방법이 개시된다. 본 발명에 따른 데이터 암호화 저장 장치 및 그 동작 방법은 데이터베이스에 저장될 새로운 평문 데이터가 입력되면, 상기 평문 데이터의 특성에 따른 데이터 특성 그룹에 대응하는 암호화키로 상기 평문 데이터를 암호화함으로써, 기존의 하나의 암호화키를 이용하여 일괄적으로 데이터 암호화를 수행하는 데이터 암호화 저장 기법에 비해 보안이 강화되는 장점이 있다.A data encryption storage device capable of changing and renewing an encryption key utilizing key positioning is disclosed. The data encryption and storage apparatus and the method of operating the same according to the present invention encrypt new plaintext data with an encryption key corresponding to a data characteristic group according to the characteristics of the plaintext data, The security is enhanced as compared with the data encryption storage method in which data encryption is performed in batch by using the encryption key.

Description

키 포지셔닝을 활용하여 암호화키 변경 및 갱신이 가능한 데이터 암호화 저장 장치 및 그 동작 방법{DATA ENCRYPTION STORING APPARATUS FOR ENCRYPTION KEY CHANGE AND UPDATE THROUGH KEY POSITIONING AND OPERATING METHOD THEREOF}TECHNICAL FIELD [0001] The present invention relates to a data encryption storage device capable of changing and renewing an encryption key by utilizing key positioning, and a data encryption storage device capable of changing and updating an encryption key using key positioning.

본 발명은 다수의 평문 데이터들을 암호화하여 데이터베이스에 저장하는 시스템에서 데이터의 노출에 따른 보안 상의 위협을 방어하기 위한 기술들과 관련된다.The present invention relates to techniques for protecting security threats from exposure to data in a system for encrypting and storing a plurality of plaintext data in a database.

최근, 인터넷 등이 널리 보급됨에 따라, 사용자들은 전자상거래 사이트 등을 통해 쇼핑을 하거나, 인터넷뱅킹과 같은 웹 기반의 금융 거래를 이용하는 경우가 증가하고 있다.Recently, with the widespread use of the Internet and the like, users are increasingly shopping through e-commerce sites or using web-based financial transactions such as Internet banking.

보통, 사용자들이 이러한 웹 기반의 서비스를 이용하기 위해서는 보안 상의 문제로 웹 사이트에 회원으로 등록할 필요가 있다.In general, users need to register as a member of a web site because of security concerns in order to use these web-based services.

또한, 최근에는 대부분의 웹 사이트에서 사용자들을 회원으로 가입하도록 유도하여 가입된 회원만이 웹 사이트에서 제공하는 정보나 기능을 모두 이용할 수 있도록 제한을 두는 경우가 많다.Also, in recent years, most web sites have been encouraging users to join as members, limiting their access to all the information and functions provided by the website.

보통, 일반적인 웹 사이트에서는 회원 가입 시에 사용자들의 주민등록번호와 같은 개인 정보를 수집하는 경우가 많다. 이렇게 수집된 개인 정보는 각 사이트 운영사의 개인 정보 데이터베이스에 저장되어 관리되곤 한다.Generally, in general websites, personal information such as users' resident registration numbers are collected at the time of membership. The collected personal information is stored and managed in the personal information database of each site operator.

이로 인해, 최근에는 키로깅(Keylogging), 스니핑(Sniffing), 피싱(Phishing) 등 점차 고도화되어 가고 있는 해킹 기술로 인해 개인 정보가 유출되어 경제적, 사회적 피해가 발생하는 경우가 비일비재하여 개인 정보 보호의 필요성이 증가하고 있다.Due to this, in recent years, personal information is leaked due to increasingly advanced hacking techniques such as keylogging, sniffing, phishing, etc., resulting in economic and social damages. The need is increasing.

이에 따라, 각 사이트의 운영사는 개인 정보 데이터베이스에 저장되어 있는 회원들의 개인 정보의 유출을 방지하기 위해, 다양한 암호화 기술을 이용하여 회원들의 개인 정보를 암호화하여 개인 정보 데이터베이스에 저장해 두는 경우가 많다.Accordingly, in order to prevent leakage of personal information of members stored in the personal information database, the operator of each site often encrypts the personal information of members using various encryption techniques and stores the personal information in a personal information database.

이렇게, 많은 양의 데이터를 암호화하여 저장 및 관리하는 가장 대표적인 기술로는 소정의 암호화키를 생성한 후 해당 암호화키를 이용하여 평문 데이터들을 암호화한 후 암호화된 데이터들을 데이터베이스에 저장하는 방식이 존재한다.As a typical technique for encrypting, storing and managing a large amount of data, there is a method of generating a predetermined encryption key, encrypting the plaintext data using the encryption key, and storing the encrypted data in a database .

하지만, 이러한 데이터 암호화 관리 방식은 암호화키가 노출되는 경우, 데이터베이스에 저장되어 있는 데이터들이 제3자에게 손쉽게 노출될 수 있다는 점에서 보안 상의 취약성을 가지고 있다.However, this data encryption management method has a security vulnerability in that data stored in the database can be easily exposed to a third party when an encryption key is exposed.

따라서, 데이터베이스에 저장되어 있는 암호화 데이터들의 노출 가능성을 최소화하기 위해서, 하나의 암호화키로 모든 평문 데이터들을 암호화하여 관리하는 것이 아니라, 상황에 따라 평문 데이터의 암호화에 사용되는 암호화키를 이전 암호화키와는 다른 암호화키를 사용하도록 하고, 이미 암호화되어 있는 암호화 데이터들도 이전 암호화키와는 다른 암호화키로 다시 암호화를 수행하는 방식의 갱신 작업을 수행함으로써, 보안을 강화할 수 있는 데이터 암호화 저장 기법의 도입이 필요하다.Therefore, in order to minimize the possibility of exposure of the encrypted data stored in the database, it is not necessary to encrypt and manage all plaintext data with one encryption key, but rather to encrypt the encryption key used for encryption of plaintext data with the previous encryption key It is necessary to use a different encryption key and to update the already encrypted data with an encryption key different from the previous encryption key to implement a data encryption storage technique capable of enhancing security Do.

본 발명은 데이터베이스에 저장되어 있는 암호화 데이터들의 노출 가능성을 최소화하기 위해서, 하나의 암호화키로 모든 평문 데이터들을 암호화하여 저장하는 것이 아니라, 상황에 따라 평문 데이터의 암호화에 사용되는 암호화키를 이전 암호화키와는 다른 암호화키를 사용하도록 하고, 이미 암호화되어 있는 암호화 데이터들도 이전 암호화키와는 다른 암호화키로 다시 암호화를 수행하는 방식의 갱신 작업을 수행함으로써, 보안을 강화할 수 있는 데이터 암호화 저장 기법을 제공하고자 한다.In order to minimize the possibility of exposure of the encrypted data stored in the database, the encryption key used for encrypting the plaintext data may be encrypted with a previous encryption key To provide a data encryption storage method capable of enhancing security by performing a renewal operation of using a different encryption key and encrypting the already encrypted data with an encryption key different from the previous encryption key do.

본 발명의 일실시예에 따른 데이터 암호화 저장 장치는 복수의 암호화키들과 상기 복수의 암호화키들 각각을 식별하기 위한 식별 값 서로 대응되어 저장되어 있는 키 저장부, 데이터베이스에 암호화되어 저장될 평문 데이터의 특성에 따라 미리 구분된 복수의 데이터 특성 그룹들 별로, 상기 복수의 암호화키들 중 상기 복수의 데이터 특성 그룹들 각각에 포함되는 평문 데이터의 암호화에 사용되도록 미리 지정된 암호화키에 대한 식별 값이 하나씩 대응되어 기록되어 있는 암호화키 테이블을 저장하여 유지하는 암호화키 테이블 유지부, 복수의 암호화 데이터들 - 상기 복수의 암호화 데이터들은 복수의 평문 데이터들이 상기 복수의 암호화키들 중 상기 암호화키 테이블 상에서 상기 복수의 평문 데이터들 각각이 속하는 데이터 특성 그룹에 대응되어 저장되어 있는 암호화키로 암호화가 수행됨에 따라 생성된 데이터임 - 이 저장되어 있는 상기 데이터베이스, 제1 평문 데이터와 상기 제1 평문 데이터에 대한 데이터 저장 명령이 입력되면, 상기 제1 평문 데이터의 특성을 확인하여 상기 암호화키 테이블로부터 상기 제1 평문 데이터가 속하는 데이터 특성 그룹에 대응되어 저장되어 있는 제1 암호화키에 대한 식별 값을 추출하는 식별 값 추출부, 상기 추출된 제1 암호화키에 대한 식별 값을 기초로 상기 키 저장부로부터 상기 추출된 제1 암호화키에 대한 식별 값에 대응되어 저장되어 있는 상기 제1 암호화키를 추출하는 암호화키 추출부 및 상기 추출된 제1 암호화키를 기초로 상기 제1 평문 데이터에 대한 암호화를 수행하여 제1 암호화 데이터를 생성한 후 상기 제1 암호화 데이터를 상기 데이터베이스에 저장하는 데이터 저장부를 포함한다.The data encryption and storage apparatus according to an embodiment of the present invention includes a key storage unit that stores a plurality of encryption keys and an identification value for identifying each of the plurality of encryption keys in association with each other, For each of the plurality of data characteristic groups, the identification values of encryption keys previously designated to be used for encryption of the plaintext data contained in each of the plurality of data characteristic groups, A plurality of pieces of plaintext data are stored in the plurality of plaintext data in the encryption key table among the plurality of plaintext keys, Corresponding to the data property group to which each belongs When the data storage command for the database, the first plaintext data and the first plaintext data in which the encryption is performed is input, the characteristic of the first plaintext data is confirmed An identification value extracting unit for extracting an identification value for a first encryption key stored corresponding to a data property group to which the first plain text data belongs from the encryption key table, An encryption key extraction unit for extracting the first encryption key stored in association with the extracted identification value for the first encryption key from the key storage unit based on the extracted first encryption key, Encrypting the plaintext data to generate first encrypted data, and transmitting the first encrypted data to the database And a data storage unit for storing the data.

또한, 본 발명의 일실시예에 따른 데이터 암호화 저장 장치의 동작 방법은 복수의 암호화키들과 상기 복수의 암호화키들 각각을 식별하기 위한 식별 값 서로 대응되어 저장되어 있는 키 저장부를 유지하는 단계, 데이터베이스에 암호화되어 저장될 평문 데이터의 특성에 따라 미리 구분된 복수의 데이터 특성 그룹들 별로, 상기 복수의 암호화키들 중 상기 복수의 데이터 특성 그룹들 각각에 포함되는 평문 데이터의 암호화에 사용되도록 미리 지정된 암호화키에 대한 식별 값이 하나씩 대응되어 기록되어 있는 암호화키 테이블을 저장하여 유지하는 단계, 복수의 암호화 데이터들 - 상기 복수의 암호화 데이터들은 복수의 평문 데이터들이 상기 복수의 암호화키들 중 상기 암호화키 테이블 상에서 상기 복수의 평문 데이터들 각각이 속하는 데이터 특성 그룹에 대응되어 저장되어 있는 암호화키로 암호화가 수행됨에 따라 생성된 데이터임 - 이 저장되어 있는 상기 데이터베이스를 유지하는 단계, 제1 평문 데이터와 상기 제1 평문 데이터에 대한 데이터 저장 명령이 입력되면, 상기 제1 평문 데이터의 특성을 확인하여 상기 암호화키 테이블로부터 상기 제1 평문 데이터가 속하는 데이터 특성 그룹에 대응되어 저장되어 있는 제1 암호화키에 대한 식별 값을 추출하는 단계, 상기 추출된 제1 암호화키에 대한 식별 값을 기초로 상기 키 저장부로부터 상기 추출된 제1 암호화키에 대한 식별 값에 대응되어 저장되어 있는 상기 제1 암호화키를 추출하는 단계 및 상기 추출된 제1 암호화키를 기초로 상기 제1 평문 데이터에 대한 암호화를 수행하여 제1 암호화 데이터를 생성한 후 상기 제1 암호화 데이터를 상기 데이터베이스에 저장하는 단계를 포함한다.According to another aspect of the present invention, there is provided a method of operating a data encryption and storage apparatus, the method comprising: maintaining a key storage unit corresponding to a plurality of encryption keys and identification values for identifying the plurality of encryption keys, A plurality of data characteristic groups, which are preliminarily classified according to characteristics of plaintext data to be encrypted and stored, a predetermined encryption key to be used for encryption of plaintext data included in each of the plurality of data characteristic groups among the plurality of encryption keys Storing a plurality of pieces of encrypted data, wherein the plurality of pieces of plaintext data includes a plurality of pieces of plaintext data, the plurality of pieces of plaintext data including a plurality of pieces of plaintext data, Lt; RTI ID = 0.0 > Storing the first plain text data and the data storage command for the first plain text data in the database, wherein the first plain text data and the first plain text data are stored in the database, Extracting an identification value for a first encryption key corresponding to a data property group to which the first plain text data belongs from the encryption key table by checking a characteristic of the first plain text data, Extracting the first encryption key stored corresponding to the extracted identification value for the first encryption key from the key storage unit based on the identification value for the extracted first encryption key, Encrypting the first plain text data to generate first encrypted data, And storing it in a database.

본 발명에 따른 데이터 암호화 저장 장치 및 그 동작 방법은 데이터베이스에 저장될 새로운 평문 데이터가 입력되면, 상기 평문 데이터의 특성에 따른 데이터 특성 그룹에 대응하는 암호화키로 상기 평문 데이터를 암호화함으로써, 기존의 하나의 암호화키를 이용하여 일괄적으로 데이터 암호화를 수행하는 데이터 암호화 저장 기법에 비해 보안이 강화되는 장점이 있다.The data encryption and storage apparatus and the method of operating the same according to the present invention encrypt new plaintext data with an encryption key corresponding to a data characteristic group according to the characteristics of the plaintext data, The security is enhanced as compared with the data encryption storage method in which data encryption is performed in batch by using the encryption key.

또한, 본 발명에 따른 데이터 암호화 저장 장치 및 그 동작 방법은 관리자에 의해 데이터베이스에 저장되어 있는 복수의 암호화 데이터들에 대한 암호화키 전부 갱신 명령이 입력되면, 상기 복수의 암호화 데이터들 중에서 암호화키의 유지를 위해서 미리 지정된 최신의 유효기한을 갖는 암호화키가 아닌, 이전의 유효기한을 갖는 암호화키들로 암호화가 수행된 암호화 데이터들만을 추출하여 추출된 암호화 데이터들을 상기 최신의 유효기한을 갖는 암호화키로 다시 암호화를 수행함으로써, 이전의 유효기한을 갖는 암호화키들이 노출되더라도 암호화 데이터의 갱신으로 인해 평문 데이터가 노출될 위험성을 최소화할 수 있다.In addition, the data encryption / storage device and the method of operating the same according to the present invention are characterized in that when an encryption key all-update command for a plurality of pieces of encrypted data stored in a database is input by an administrator, And extracts only the encrypted data that has been encrypted with the encryption keys having the previous expiration date, and encrypts the extracted encrypted data again with the encryption key having the latest validity period , It is possible to minimize the risk that the plaintext data is exposed due to the update of the encrypted data even if the encryption keys having the previous expiration date are exposed.

또한, 본 발명에 따른 데이터 암호화 저장 장치 및 그 동작 방법은 관리자에 의해 데이터베이스에 저장되어 있는 복수의 암호화 데이터들에 대한 암호화키 일부 갱신 명령이 입력되면, 상기 복수의 암호화 데이터들 중에서 암호화키의 유지를 위해서 미리 지정된 유효기한이 경과한 암호화키로 암호화가 수행된 암호화 데이터들만을 추출하여 추출된 암호화 데이터들을 최신의 유효기한을 갖는 암호화키로 다시 암호화를 수행함으로써, 유효기한이 경과한 암호화키들이 노출되더라도 암호화 데이터의 갱신으로 인해 평문 데이터가 노출될 위험성을 최소화할 수 있다.According to another aspect of the present invention, there is provided a data encryption / storage apparatus and a method of operating the same, wherein when an encryption key partial update command for a plurality of pieces of encrypted data stored in a database is input by an administrator, Only the encrypted data whose encryption has been performed with the encryption key that has passed the predetermined expiration date is extracted and the extracted encrypted data is encrypted again with the encryption key having the latest expiration date so that even if the encryption keys whose expiration date has expired are exposed The risk of exposure of plaintext data due to updating of the encrypted data can be minimized.

도 1은 본 발명의 일실시예에 따른 데이터 암호화 저장 장치의 구조를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 데이터 암호화 저장 장치의 동작을 설명하기 위한 도면이다.
도 3은 본 발명의 일실시예에 따른 데이터 암호화 저장 장치의 동작 방법을 도시한 순서도이다.
1 is a diagram illustrating a structure of a data encryption / storage device according to an embodiment of the present invention.
2 is a view for explaining the operation of the data encryption / storage apparatus according to an embodiment of the present invention.
3 is a flowchart illustrating a method of operating a data encryption storage device according to an embodiment of the present invention.

이하에서는 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명하기로 한다. 이러한 설명은 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였으며, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 본 명세서 상에서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 사람에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.Hereinafter, embodiments according to the present invention will be described in detail with reference to the accompanying drawings. It is to be understood that the description is not intended to limit the invention to the specific embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals in the drawings are used for similar elements and, unless otherwise defined, all terms used in the specification, including technical and scientific terms, are to be construed in a manner that is familiar to those skilled in the art. It has the same meaning as commonly understood by those who have it.

도 1은 본 발명의 일실시예에 따른 데이터 암호화 저장 장치의 구조를 도시한 도면이다.1 is a diagram illustrating a structure of a data encryption / storage device according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일실시예에 따른 데이터 암호화 저장 장치(110)는 키 저장부(111), 암호화키 테이블 유지부(112), 데이터베이스(113), 식별 값 추출부(114), 암호화키 추출부(115) 및 데이터 저장부(116)를 포함한다.1, a data encryption / storage device 110 according to an exemplary embodiment of the present invention includes a key storage unit 111, an encryption key table storage unit 112, a database 113, an identification value extraction unit 114, An encryption key extraction unit 115, and a data storage unit 116.

키 저장부(111)에는 복수의 암호화키들과 상기 복수의 암호화키들 각각을 식별하기 위한 식별 값 서로 대응되어 저장되어 있다.The key storage unit 111 stores a plurality of encryption keys and an identification value for identifying each of the plurality of encryption keys in association with each other.

암호화키 테이블 유지부(112)는 데이터베이스(113)에 암호화되어 저장될 평문 데이터의 특성에 따라 미리 구분된 복수의 데이터 특성 그룹들 별로, 상기 복수의 암호화키들 중 상기 복수의 데이터 특성 그룹들 각각에 포함되는 평문 데이터의 암호화에 사용되도록 미리 지정된 암호화키에 대한 식별 값이 하나씩 대응되어 기록되어 있는 암호화키 테이블을 저장하여 유지한다.The encryption key table storage unit 112 stores the encrypted data in each of the plurality of data characteristic groups of the plurality of encryption keys for each of a plurality of data characteristic groups previously classified according to the characteristics of plain text data to be encrypted and stored in the database 113 And stores and holds an encryption key table in which identification values for encryption keys predetermined to be used for encryption of the included plain text data are recorded in association with each other.

데이터베이스(113)에는 복수의 암호화 데이터들이 저장되어 있다.The database 113 stores a plurality of encrypted data.

여기서, 상기 복수의 암호화 데이터들은 복수의 평문 데이터들이 상기 복수의 암호화키들 중 상기 암호화키 테이블 상에서 상기 복수의 평문 데이터들 각각이 속하는 데이터 특성 그룹에 대응되어 저장되어 있는 암호화키로 암호화가 수행됨에 따라 생성된 데이터이다.Here, the plurality of pieces of encrypted data are generated as a plurality of plaintext data is encrypted with an encryption key stored in the encryption key table of the plurality of encryption keys in correspondence with the data property group to which each of the plurality of plaintext data belongs Lt; / RTI >

식별 값 추출부(114)는 제1 평문 데이터와 상기 제1 평문 데이터에 대한 데이터 저장 명령이 입력되면, 상기 제1 평문 데이터의 특성을 확인하여 상기 암호화키 테이블로부터 상기 제1 평문 데이터가 속하는 데이터 특성 그룹에 대응되어 저장되어 있는 제1 암호화키에 대한 식별 값을 추출한다.The identification value extraction unit 114 identifies the characteristics of the first plaintext data and stores the data to which the first plaintext data belongs from the encryption key table when a data storage command for the first plaintext data and the first plaintext data is input, And extracts an identification value for the first encryption key stored corresponding to the characteristic group.

암호화키 추출부(115)는 상기 추출된 제1 암호화키에 대한 식별 값을 기초로 키 저장부(111)로부터 상기 추출된 제1 암호화키에 대한 식별 값에 대응되어 저장되어 있는 상기 제1 암호화키를 추출한다.The encryption key extracting unit 115 extracts from the key storage unit 111 based on the extracted identification value of the first encryption key, the first encryption key stored in association with the extracted identification value for the first encryption key, Extract the key.

데이터 저장부(116)는 상기 추출된 제1 암호화키를 기초로 상기 제1 평문 데이터에 대한 암호화를 수행하여 제1 암호화 데이터를 생성한 후 상기 제1 암호화 데이터를 데이터베이스(113)에 저장한다.The data storage unit 116 encrypts the first plaintext data based on the extracted first encryption key to generate first encrypted data, and then stores the first encrypted data in the database 113.

이때, 본 발명의 일실시예에 따르면, 키 저장부(111)에는 상기 복수의 암호화키들 각각에 대해 상기 복수의 암호화키들 각각에 대한 미리 지정된 유효기한에 대한 정보가 추가로 대응되어 저장되어 있을 수 있다.According to an embodiment of the present invention, the key storage unit 111 may store information on a predetermined expiration date for each of the plurality of encryption keys in association with each of the plurality of encryption keys have.

이때, 데이터 암호화 저장 장치(110)는 암호화키 확인부(117), 암호화키 식별부(118), 암호화 데이터 확인부(119), 복호화부(120) 및 데이터 갱신부(121)를 더 포함할 수 있다.The data encryption and storage apparatus 110 further includes an encryption key verification unit 117, an encryption key identification unit 118, an encrypted data verification unit 119, a decryption unit 120, and a data update unit 121 .

암호화키 확인부(117)는 상기 복수의 암호화 데이터들에 대한 암호화키 전부 갱신 명령이 입력되면, 키 저장부(111)로부터 상기 복수의 암호화키들 중 가장 최신의 유효기한에 대한 정보에 대응되어 저장되어 있는 제2 암호화키를 확인한다.The encryption key verification unit 117 receives, from the key storage unit 111, information corresponding to the latest validity period of the plurality of encryption keys and stores And confirms the second encryption key.

암호화키 식별부(118)는 데이터베이스(113) 상에 저장되어 있는 상기 복수의 암호화 데이터들 각각에 대해 상기 복수의 암호화 데이터들 각각의 암호화에 사용된 암호화키를 식별한다.The encryption key identifying unit 118 identifies an encryption key used for encrypting each of the plurality of pieces of encrypted data with respect to each of the plurality of pieces of encrypted data stored in the database 113. [

암호화 데이터 확인부(119)는 상기 복수의 암호화 데이터들 각각의 암호화에 사용된 암호화키의 식별이 완료되면, 상기 복수의 암호화 데이터들 중 상기 제2 암호화키로 암호화가 수행되지 않은 적어도 하나의 제2 암호화 데이터를 확인한다.When the identification of the encryption key used for encrypting each of the plurality of pieces of encrypted data is completed, the encrypted data verification unit 119 identifies the at least one second encryption key that is not encrypted with the second encryption key, Check the encryption data.

복호화부(120)는 데이터베이스(113)로부터 상기 적어도 하나의 제2 암호화 데이터를 추출하고, 키 저장부(111)로부터 상기 적어도 하나의 제2 암호화 데이터 각각의 암호화에 사용된 암호화키를 추출한 후 추출된 암호화키를 기초로 상기 적어도 하나의 제2 암호화 데이터를 복호화하여 적어도 하나의 제2 평문 데이터를 생성한다.The decryption unit 120 extracts the at least one second encrypted data from the database 113, extracts the encryption key used for encryption of each of the at least one second encrypted data from the key storage unit 111, And decrypts the at least one second encrypted data based on the decrypted encryption key to generate at least one second plaintext data.

데이터 갱신부(121)는 키 저장부(111)로부터 상기 제2 암호화키를 추출하고, 상기 추출된 제2 암호화키를 기초로 상기 적어도 하나의 제2 평문 데이터 각각을 암호화하여 적어도 하나의 제1 갱신 데이터를 생성한 후 데이터베이스(113)에 저장되어 있는 상기 적어도 하나의 제2 암호화 데이터를 상기 적어도 하나의 제1 갱신 데이터로 대체한다.The data updating unit 121 extracts the second encryption key from the key storage unit 111 and encrypts each of the at least one second plaintext data based on the extracted second encryption key to generate at least one first And replaces the at least one second encrypted data stored in the database 113 with the at least one first update data after generating the update data.

이때, 본 발명의 일실시예에 따르면, 상기 복수의 데이터 특성 그룹들은 데이터베이스(113)에 암호화되어 저장될 평문 데이터를 구성하는 데이터열에서 선정된(predetermined) 제1 자리에 위치하는 일부 데이터 값의 특성에 따라 구분된 그룹들일 수 있고, 상기 복수의 암호화 데이터들은 상기 복수의 평문 데이터들 각각에 대해, 상기 복수의 평문 데이터들 각각을 구성하는 데이터열에서 선정된 제2 자리(상기 선정된 제2 자리는 상기 선정된 제1 자리와 중복되지 않음)에 위치하는 적어도 하나의 데이터 값에 대해서만 대응되는 암호화키로 암호화가 수행된 데이터일 수 있다.In this case, according to an embodiment of the present invention, the plurality of data characteristic groups are grouped into a plurality of data characteristic groups, which are stored in the database 113, And the plurality of encrypted data may be grouped according to characteristics, and for each of the plurality of plaintext data, a plurality of pieces of plaintext data may be divided into a plurality of plaintext data, And the data is encrypted with an encryption key corresponding to at least one data value located in the predetermined first digit, which is not overlapped with the predetermined first digit.

이때, 식별 값 추출부(114)는 상기 제1 평문 데이터와 상기 제1 평문 데이터에 대한 데이터 저장 명령이 입력되면, 상기 제1 평문 데이터를 구성하는 데이터열에서 상기 선정된 제1 자리에 위치하는 일부 데이터 값의 특성을 확인하여 상기 암호화키 테이블로부터 상기 제1 평문 데이터가 속하는 데이터 특성 그룹에 대응되어 저장되어 있는 상기 제1 암호화키에 대한 식별 값을 추출할 수 있고, 데이터 저장부(116)는 상기 제1 평문 데이터를 구성하는 데이터열에서 상기 선정된 제2 자리에 위치하는 적어도 하나의 제1 데이터 값에 대해서만 상기 제1 암호화키를 기초로 암호화를 수행하여 상기 제1 암호화 데이터를 생성할 수 있다.At this time, if the data storage instruction for the first plaintext data and the first plaintext data is inputted, the identification value extracting unit 114 extracts the identification data of the first plaintext data The data storage unit 116 may extract the identification value of the first encryption key stored in the encryption key table corresponding to the data property group to which the first plain text data belongs, Performs encryption based on the first encryption key only for at least one first data value located in the second predetermined position in the data string constituting the first plain text data to generate the first encrypted data .

이때, 본 발명의 일실시예에 따르면, 암호화키 식별부(118)는 특성 그룹 확인부(122), 추출부(123) 및 식별부(124)를 포함할 수 있다.According to an embodiment of the present invention, the encryption key identifying unit 118 may include a property group identifying unit 122, an extracting unit 123, and an identifying unit 124.

특성 그룹 확인부(122)는 데이터베이스(113)를 참조하여 상기 복수의 암호화 데이터들 각각에 대해, 상기 복수의 암호화 데이터들 각각을 구성하는 데이터열에서 상기 선정된 제1 자리에 위치하는 일부 데이터 값의 특성을 확인해서 상기 복수의 데이터 특성 그룹들 중 상기 복수의 암호화 데이터들 각각이 속하는 데이터 특성 그룹을 확인한다.The characteristic group identifying unit 122 refers to the database 113 and determines a characteristic value of each of the plurality of pieces of encrypted data, And identifies a data property group to which each of the plurality of encrypted data belongs among the plurality of data property groups.

추출부(123)는 상기 복수의 암호화 데이터들 각각이 속하는 데이터 특성 그룹의 확인이 완료되면, 상기 암호화키 테이블로부터 상기 복수의 암호화 데이터들 각각이 속하는 데이터 특성 그룹에 대응되어 저장되어 있는 암호화키에 대한 식별 값을 추출한다.The extraction unit 123 extracts, from the encryption key table, an encryption key stored in association with the data property group to which each of the plurality of encryption data belongs, when the confirmation of the data property group to which each of the plurality of encryption data belongs is completed And extracts an identification value for each of them.

식별부(124)는 상기 복수의 암호화 데이터들 각각에 대해서 추출된 암호화키에 대한 식별 값과 키 저장부(111)에 저장되어 있는 상기 복수의 암호화키들 각각에 대응하는 식별 값을 매칭시켜 상기 복수의 암호화 데이터들 각각의 암호화에 사용된 암호화키를 식별한다.The identification unit 124 matches the identification value of the extracted encryption key with respect to each of the plurality of encrypted data and the identification value corresponding to each of the plurality of encryption keys stored in the key storage unit 111, Lt; RTI ID = 0.0 > encryption < / RTI >

또한, 본 발명의 일실시예에 따르면, 암호화키 확인부(117)는 상기 복수의 암호화 데이터들에 대한 암호화키 일부 갱신 명령이 입력되면, 데이터 암호화 저장 장치(110)에 설정되어 있는 현재 시간에 대한 정보를 확인한 후 키 저장부(111)로부터 상기 복수의 암호화키들 중 상기 현재 시간이 속해있는 유효기한보다 과거의 유효기한에 대한 정보에 대응되어 저장되어 있는 적어도 하나의 제3 암호화키를 확인할 수 있다.In addition, according to an embodiment of the present invention, when an encryption key partial updating command for the plurality of pieces of encrypted data is inputted, the encryption key checking unit 117 checks the current time set in the data encryption / And then confirms at least one third encryption key stored in association with the information on the expiration date past the expiration date to which the current time belongs among the plurality of encryption keys from the key storage unit 111 have.

이때, 암호화키 식별부(118)는 데이터베이스(113) 상에 저장되어 있는 상기 복수의 암호화 데이터들 각각에 대해 상기 복수의 암호화 데이터들 각각의 암호화에 사용된 암호화키를 식별할 수 있고, 암호화 데이터 확인부(119)는 상기 복수의 암호화 데이터들 각각의 암호화에 사용된 암호화키의 식별이 완료되면, 상기 복수의 암호화 데이터들 중 상기 적어도 하나의 제3 암호화키로 암호화가 수행된 적어도 하나의 제3 암호화 데이터를 확인할 수 있다.At this time, the encryption key identifying unit 118 can identify the encryption key used for encryption of each of the plurality of pieces of encrypted data with respect to each of the plurality of pieces of encrypted data stored in the database 113, When the identification of the encryption key used for encryption of each of the plurality of pieces of encrypted data is completed, the identifying unit 119 identifies the at least one third of the plurality of pieces of encrypted data, Encrypted data can be verified.

그리고, 복호화부(120)는 데이터베이스(113)로부터 상기 적어도 하나의 제3 암호화 데이터를 추출하고, 키 저장부(111)로부터 상기 적어도 하나의 제3 암호화 데이터 각각의 암호화에 사용된 암호화키를 추출한 후 추출된 암호화키를 기초로 상기 적어도 하나의 제3 암호화 데이터를 복호화하여 적어도 하나의 제3 평문 데이터를 생성할 수 있고, 데이터 갱신부(121)는 키 저장부(111)로부터 상기 복수의 암호화키들 중 가장 최신의 유효기한에 대한 정보에 대응되어 저장되어 있는 상기 제2 암호화키를 추출하고, 상기 제2 암호화키를 기초로 상기 적어도 하나의 제3 평문 데이터 각각을 암호화하여 적어도 하나의 제2 갱신 데이터를 생성한 후 데이터베이스(113)에 저장되어 있는 상기 적어도 하나의 제3 암호화 데이터를 상기 적어도 하나의 제2 갱신 데이터로 대체할 수 있다.The decryption unit 120 extracts the at least one third encrypted data from the database 113 and extracts the encryption key used for encryption of each of the at least one third encrypted data from the key storage unit 111 And the data updating unit 121 may generate at least one third plaintext data by decrypting the at least one third encrypted data based on the extracted encryption key, Extracting the stored second encryption key corresponding to information on the latest validity period of the keys and encrypting each of the at least one third plain-text data based on the second encryption key to generate at least one second After generating the update data, the at least one third encrypted data stored in the database 113 is replaced with the at least one second update data Can.

이하에서는 도 2를 참조하여, 본 발명의 일실시예에 따른 데이터 암호화 저장 장치(110)의 동작에 대해 예를 들어 상세히 설명하기로 한다.Hereinafter, the operation of the data encryption / storage device 110 according to an embodiment of the present invention will be described in detail with reference to FIG.

우선, 데이터 암호화 저장 장치(110)를 통해 데이터베이스(113)에 암호화되어 저장되는 평문 데이터가 "123456-1234567"과 같은 데이터열을 갖는 "주민등록번호"인 것으로 가정하고, 본 발명에 따른 데이터 암호화 저장 장치(110)는 "123456-1234567"과 같은 데이터열을 갖는 "주민등록번호" 데이터에서 뒤에서 6번째 자리까지 위치하는 데이터 값들에 대해서만 소정의 암호화키를 통해 암호화를 수행한 후 해당 암호화 데이터를 데이터베이스(113)에 저장한다고 가정하자.It is assumed that the plaintext data encrypted and stored in the database 113 via the data encryption storage device 110 is a "resident registration number" having a data string such as "123456-1234567", and the data encryption storage device The encryption unit 110 encrypts only the data values located from the rear to the 6th digit in the "resident registration number" data having the data string such as "123456-1234567" through the predetermined encryption key, .

예컨대, "123456-1234567"이라는 평문 데이터는 소정의 암호화키를 통해 뒤에서 6번째 자리까지 위치하는 데이터 값들에 대해서만 암호화됨으로써, "123456-1aBrDsa"라는 암호화 데이터로 변경되어 데이터베이스(113)에 저장될 수 있다.For example, plaintext data "123456-1234567" is encrypted only for data values located from the back to the sixth digit through a predetermined encryption key, thereby being changed to encrypted data "123456-1aBrDsa" have.

그리고, 키 저장부(111)에는 도면부호 210에 도시된 바와 같이, 암호화키 1(211), 암호화키 2(212), 암호화키 3(213), 암호화키 4(214)가 저장되어 있고, 각 암호화키들(211, 212, 213, 214)에 대해, 각 암호화키들(211, 212, 213, 214)의 유지를 위한 미리 지정된 유효기한에 대한 정보가 대응되어 저장되어 있으며, 이와 동시에 각 암호화키들(211, 212, 213, 214)에 대해 각 암호화키들(211, 212, 213, 214)을 식별하기 위한 식별 값으로 "1, 2, 3, 4"라는 식별 값이 저장되어 있다고 가정한다.The encryption key 1 (211), the encryption key 2 (212), the encryption key 3 (213), and the encryption key 4 (214) are stored in the key storage unit (111) Information on a predetermined expiration date for holding each of the encryption keys 211, 212, 213, and 214 is stored in association with each of the encryption keys 211, 212, 213, and 214, It is assumed that identification values "1, 2, 3, 4" are stored as identification values for identifying the encryption keys 211, 212, 213, 214 with respect to the encryption keys 211, 212, 213,

그리고, 암호화키 테이블 유지부(112)를 통해서 유지되는 암호화키 테이블에는 도면부호 220에 도시된 바와 같이, 데이터베이스(113)에 암호화되어 저장될 평문 데이터의 특성에 따라 미리 구분된 복수의 데이터 특성 그룹들(221, 222, 223, 224) 별로, 각 암호화키들(211, 212, 213, 214) 중 복수의 데이터 특성 그룹들(221, 222, 223, 224) 각각에 포함되는 평문 데이터의 암호화에 사용되도록 미리 지정된 암호화키에 대한 식별 값이 하나씩 대응되어 기록되어 있다고 가정한다.The encryption key table stored in the encryption key table storage unit 112 includes a plurality of data characteristic groups (hereinafter referred to as " data characteristic groups ") previously classified according to characteristics of plaintext data to be encrypted and stored in the database 113 Is used for encrypting plaintext data contained in each of a plurality of data property groups 221, 222, 223, and 224 among the encryption keys 211, 212, 213, and 214 for each of the encryption keys 221, 222, 223, It is assumed that identification values for the predetermined encryption key are recorded in association with each other one by one.

여기서, 복수의 데이터 특성 그룹들(221, 222, 223, 224)은 데이터베이스(113)에 암호화되어 저장될 평문 데이터를 구성하는 데이터열에서 선정된 제1 자리에 위치하는 일부 데이터 값의 특성에 따라 구분된 그룹들로서, 본 실시예에서는 "123456-1234567"과 같은 데이터열을 갖는 "주민등록번호" 데이터에서 첫 번째 자리에 위치하는 데이터 값의 특성에 따라 데이터 특성 그룹 1(221), 데이터 특성 그룹 2(222), 데이터 특성 그룹 3(223), 데이터 특성 그룹 4(224)로 구분된다고 가정하자.Here, the plurality of data characteristic groups 221, 222, 223, and 224 may be classified into a plurality of data characteristic groups 221, 222, 223, and 224 according to the characteristics of some data values located at the first predetermined position in the data string constituting the plain- In this embodiment, data attribute group 1 (221), data attribute group 2 (221), and data attribute group 2 are classified according to the characteristics of the data value located at the first place in the "resident registration number" data having the data string "123456-1234567" 222, a data property group 3 223, and a data property group 4 224, respectively.

예컨대, "123456-1234567"과 같은 데이터열을 갖는 "주민등록번호" 데이터에서 첫 번째 자리의 데이터 값이 "8"로 시작하는 데이터들은 모두 데이터 특성 그룹 1(221)에 속하는 데이터이고, 첫 번째 자리의 데이터 값이 "7"로 시작하는 데이터들은 모두 데이터 특성 그룹 2(222)에 속하는 데이터이며, 첫 번째 자리의 데이터 값이 "6"으로 시작하는 데이터들은 모두 데이터 특성 그룹 3(223)에 속하는 데이터이고, 첫 번째 자리의 데이터 값이 "5"로 시작하는 데이터들은 모두 데이터 특성 그룹 4(224)에 속하는 데이터로 구분된다고 가정하자.For example, in the " resident registration number "data having a data string such as" 123456-1234567 ", data in which the data value of the first digit starts with "8 " All the data whose data value begins with " 7 " are data belonging to the data property group 2 222, and all data whose data value of the first digit starts with "6 " , And data whose first data value starts with "5 " are all divided into data belonging to data property group 4 (224).

여기서, 복수의 데이터 특성 그룹들(221, 222, 223, 224)을 구분하는 방식은 본 발명의 일례에 불과한 것으로, 복수의 데이터 특성 그룹들(221, 222, 223, 224)은 다양한 기준에 의해서 구분될 수 있다.The method of distinguishing the plurality of data characteristic groups 221, 222, 223 and 224 is only one example of the present invention. The plurality of data characteristic groups 221, 222, 223, Can be distinguished.

예컨대, "123456-1234567"과 같은 데이터열을 갖는 "주민등록번호" 데이터에서 앞에서 두 번째 자리까지의 일부 데이터 값이 "80"으로 시작하는 데이터들은 모두 데이터 특성 그룹 1(221)에 속하는 데이터이고, 앞에서 두 번째 자리까지의 일부 데이터 값이 "81"로 시작하는 데이터들은 모두 데이터 특성 그룹 2(222)에 속하는 데이터이며, 앞에서 두 번째 자리까지의 일부 데이터 값이 "82"로 시작하는 데이터들은 모두 데이터 특성 그룹 3(223)에 속하는 데이터이고, 앞에서 두 번째 자리까지의 일부 데이터 값이 "83"으로 시작하는 데이터들은 모두 데이터 특성 그룹 4(224)에 속하는 데이터로 구분되는 등 다양한 방식으로 데이터 특성 그룹을 구분해 둘 수 있다.For example, in a "resident registration number" data having a data string such as "123456-1234567", data in which some data values from the first to the second place start with "80" are data belonging to the data property group 1 221 Data whose partial data values up to the second digit are "81" are all data belonging to the data property group 2 (222), and data whose partial data values from the first to the second digits start with & The data belonging to the property group 3 223 and the data whose partial data values starting from the first digit are "83 " are all classified into data belonging to the data property group 4 224, Can be distinguished.

또한, 데이터베이스(113)에는 도면부호 230에 도시된 바와 같이, 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10(231, 232, 233, 234, 235, 236, 237, 238, 239, 240)이 저장되어 있다고 가정한다.2, 3, 4, 5, 6, 7, 8, 9, 10 (231, 232, 233, 234, 235, 236, 237, 238, 239 and 240 are stored.

이때, 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10(231, 232, 233, 234, 235, 236, 237, 238, 239, 240)은 평문 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10에 각각 대응하는 암호화 데이터들로, 각 평문 데이터들이 데이터 암호화 저장 장치(110)에 입력될 때, 도면부호 220에 도시된 암호화키 테이블 상에서 각 평문 데이터들이 속하는 데이터 특성 그룹에 대응되어 저장되어 있는 암호화키로 암호화가 수행됨에 따라 생성된 데이터인 것으로 가정한다.At this time, the encrypted data 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (231, 232, 233, 234, 235, 236, 237, 238, 239, 240) When the respective plaintext data is input to the data encryption storage device 110 with the encryption data corresponding to each of the encryption keys corresponding to the encryption keys 3, 4, 5, 6, 7, 8, 9, It is assumed that the data is generated as the encryption is performed with the encryption key stored corresponding to the data property group to which each plaintext data belongs.

예컨대, 평문 데이터 1이 "701234-1234567"이라고 하는 경우, 상기 평문 데이터 1은 첫 번째 자리에 위치하는 데이터 값이 "7"이라는 점에서 데이터 특성 그룹 2(222)에 속하는 데이터이기 때문에 상기 평문 데이터 1에 대응하는 암호화 데이터 1(231)은 상기 평문 데이터 1이 암호화키 2(212)로 암호화되어 생성된 데이터일 수 있다.For example, when the plain text data 1 is "701234-1234567 ", since the plaintext data 1 belongs to the data characteristic group 2 222 in that the data value located at the first position is" 7 " The encrypted data 1 (231) corresponding to the plaintext data 1 may be data generated by encrypting the plaintext data 1 with the encryption key 2 (212).

이러한 상황 하에서 데이터 암호화 저장 장치(110)에 새로운 제1 평문 데이터가 입력되면서, 상기 제1 평문 데이터에 대한 데이터 저장 명령이 입력되면, 식별 값 추출부(114)는 상기 제1 평문 데이터를 구성하는 데이터열에서 첫 번째 자리에 위치하는 일부 데이터 값의 특성을 확인하여 상기 암호화키 테이블로부터 상기 제1 평문 데이터가 속하는 데이터 특성 그룹에 대응되어 저장되어 있는 암호화키에 대한 식별 값을 추출할 수 있다.Under this circumstance, when the new first plaintext data is input to the data encryption storage device 110 and the data save command for the first plaintext data is inputted, the identification value extractor 114 constructs the first plaintext data It is possible to extract the identification value of the encryption key stored corresponding to the data property group to which the first plaintext data belongs from the encryption key table by checking the characteristics of some data values located at the first position in the data string.

만약, 상기 제1 평문 데이터가 "831234-7654321"이라고 하는 경우, 상기 제1 평문 데이터를 구성하는 데이터열에서 첫 번째 자리에 위치하는 데이터 값이 "8"이기 때문에 식별 값 추출부(114)는 상기 제1 평문 데이터가 데이터 특성 그룹 1(221)에 속하는 것으로 확인한 후 도면부호 220에 도시된 상기 암호화키 테이블로부터 데이터 특성 그룹 1(221)에 대응되어 저장되어 있는 식별 값인 "1"을 추출할 수 있다.If the first plaintext data is "831234-7654321 ", the data value located at the first position in the data string constituting the first plaintext data is" 8 " After confirming that the first plaintext data belongs to the data property group 1 (221), extracts an identification value "1 " stored in correspondence with the data property group 1 (221) from the encryption key table 220 .

그러고 나서, 암호화키 추출부(115)는 상기 추출된 식별 값 "1"을 기초로 도면부호 210에 도시된 바와 같은 키 저장부(111)로부터 상기 추출된 식별 값 "1"에 대응되어 저장되어 있는 암호화키 1(211)을 상기 제1 평문 데이터를 암호화하기 위한 암호화키로 추출할 수 있다.Then, the encryption key extracting unit 115 stores the extracted identification value " 1 "corresponding to the extracted identification value " 1" from the key storage unit 111 as shown in reference numeral 210 And extracts the encryption key 1 (211) with the encryption key for encrypting the first plaintext data.

그 이후, 데이터 저장부(116)는 상기 제1 평문 데이터를 구성하는 데이터열에서 뒤에서 6번째 자리까지 위치하는 데이터 값인 "654321"에 대해서만 암호화키 1(211)로 암호화를 수행함으로써, "831234-7AEdouQ"라는 제1 암호화 데이터를 생성한 후 상기 제1 암호화 데이터를 데이터베이스(113) 상에 신규로 저장할 수 있다.Thereafter, the data storage unit 116 performs encryption with the encryption key 1 (211) only for the data value "654321" located from the back to the 6th digit in the data string constituting the first plaintext data, Quot; 7AEdouQ ", and then stores the first encrypted data in the database 113 as a new one.

이러한 방식으로, 본 발명에 따른 데이터 암호화 저장 장치(110)는 데이터베이스(113)에 저장될 새로운 평문 데이터가 입력되면, 상기 평문 데이터의 특성에 따른 데이터 특성 그룹에 대응하는 암호화키로 상기 평문 데이터를 암호화하기 때문에 항상 동일한 암호화키를 이용하여 평문 데이터를 암호화하지 않는다는 점에서 기존의 하나의 암호화키를 이용하여 일괄적으로 데이터 암호화 관리를 수행하는 데이터 암호화 저장 기법에 비해 보안이 강화되는 장점이 있다.In this way, when the new plaintext data to be stored in the database 113 is input, the data encryption / storage device 110 according to the present invention encrypts the plaintext data with an encryption key corresponding to the data characteristic group according to the characteristics of the plaintext data Therefore, the security of the plaintext data is not always encrypted by using the same encryption key. Therefore, security is enhanced compared with a data encryption storage method in which data encryption management is performed in a lump using an existing one encryption key.

이렇게, 데이터베이스(113) 상에 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10(231, 232, 233, 234, 235, 236, 237, 238, 239, 240)이 각각 소정의 암호화키로 암호화되어 있는 상태에서 관리자에 의해 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10(231, 232, 233, 234, 235, 236, 237, 238, 239, 240)에 대한 암호화키 전부 갱신 명령이 입력되면, 암호화키 확인부(117)는 키 저장부(111)로부터 암호화키 1(211), 암호화키 2(212), 암호화키 3(213), 암호화키 4(214) 중 가장 최신의 유효기한에 대한 정보에 대응되어 저장되어 있는 암호화키인 암호화키 4(214)를 확인할 수 있다.The encrypted data 1, 2, 3, 4, 5, 6, 7, 8, 9 and 10 (231, 232, 233, 234, 235, 236, 237, 238, 239, 240) 2, 3, 4, 5, 6, 7, 8, 9, 10 (231, 232, 233, 234, 235, 236, 237, The encryption key verification unit 117 reads the encryption key 1 (211), the encryption key 2 (212), the encryption key 3 (231, 238, 239, 240) 213), and the encryption key 4 (214), which is an encryption key stored in association with the latest validity period of the encryption key 4 (214).

이때, 암호화키 식별부(118)에 포함되어 있는 특성 그룹 확인부(122)는 데이터베이스(113)를 참조하여 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10(231, 232, 233, 234, 235, 236, 237, 238, 239, 240) 각각에 대해, 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10(231, 232, 233, 234, 235, 236, 237, 238, 239, 240) 각각을 구성하는 데이터열에서 첫 번째 자리에 위치하는 데이터 값의 특성을 확인해서 복수의 데이터 특성 그룹들(221, 222, 223, 224) 중 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10(231, 232, 233, 234, 235, 236, 237, 238, 239, 240) 각각이 속하는 데이터 특성 그룹을 확인할 수 있다.At this time, the characteristic group identifying unit 122 included in the encryption key identifying unit 118 refers to the database 113 to obtain the encrypted data 1, 2, 3, 4, 5, 6, 7, 8, 9, 2, 3, 4, 5, 6, 7, 8, 9, 10 (231, 232, 233, 234, 235, 236, 237, 238, 239, 222, 223, 224, 234, 234, 234, 236, 234, 235, 236, 237, 238, 239, and 240 by checking the characteristics of the data values located at the first positions in the data strings constituting each of the data characteristic groups The data attribute group to which the encrypted data 1, 2, 3, 4, 5, 6, 7, 8, 9 and 10 (231, 232, 233, 234, 235, 236, 237, 238, 239, can confirm.

관련해서, 암호화 데이터 1, 2, 3, 4(231, 232, 233, 234)에 대해서는 첫 번째 자리에 위치하는 데이터 값이 "8"이라고 하고, 암호화 데이터 4, 5, 6, 7(234, 235, 236, 237)에 대해서는 첫 번째 자리에 위치하는 데이터 값이 "7"이라고 하며, 암호화 데이터 8, 9(238, 239)에 대해서는 첫 번째 자리에 위치하는 데이터 값이 "6", 암호화 데이터 10(240)에 대해서는 첫 번째 자리에 위치하는 데이터 값이 "5"라고 하는 경우, 특성 그룹 확인부(122)는 암호화 데이터 1, 2, 3, 4(231, 232, 233, 234)에 대해 데이터 특성 그룹 1(221)에 속하는 것으로 확인할 수 있고, 암호화 데이터 4, 5, 6, 7(234, 235, 236, 237)에 대해 데이터 특성 그룹 2(222)에 속하는 것으로 확인할 수 있으며, 암호화 데이터 8, 9(238, 239)에 대해 데이터 특성 그룹 3(223)에 속하는 것으로 확인할 수 있고, 암호화 데이터 10(240)에 대해 데이터 특성 그룹 4(224)에 속하는 것으로 확인할 수 있다.With respect to the encrypted data 1, 2, 3 and 4 (231, 232, 233 and 234), the data value located at the first position is "8", and the encrypted data 4, 5, 6, 235, 236, and 237, the data value located at the first digit is "7", and the data value located at the first digit for the encrypted data 8, 9 (238, 239) 2, 3 and 4 (231, 232, 233, and 234), when the data value located at the first position is "5" It can be confirmed to belong to the data property group 1 221 and can be confirmed to belong to the data property group 2 222 for the encrypted data 4, 5, 6, 7 (234, 235, 236, 237) 8, 9 (238, 239) belonging to the data property group 3 (223), and the encrypted data 10 (240) It can be confirmed that it belongs to the sex group 4 (224).

이렇게, 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10(231, 232, 233, 234, 235, 236, 237, 238, 239, 240) 각각이 속하는 데이터 특성 그룹의 확인이 완료되면, 추출부(123)는 도면부호 220에 도시된 바와 같은 상기 암호화키 테이블로부터 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10(231, 232, 233, 234, 235, 236, 237, 238, 239, 240) 각각이 속하는 데이터 특성 그룹에 대응되어 저장되어 있는 암호화키에 대한 식별 값을 추출할 수 있다.In this way, the data attribute group to which the encrypted data 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (231, 232, 233, 234, 235, 236, 237, 238, 239, 2, 3, 4, 5, 6, 7, 8, 9, 10 (231, 232) from the encryption key table as shown at reference numeral 220 233, 234, 235, 236, 237, 238, 239, and 240 belong to the data property group.

즉, 추출부(123)는 암호화 데이터 1, 2, 3, 4(231, 232, 233, 234)에 대해 "1"이라는 식별 값을 추출할 수 있고, 암호화 데이터 4, 5, 6, 7(234, 235, 236, 237)에 대해 "2"라는 식별 값을 추출할 수 있으며, 암호화 데이터 8, 9(238, 239)에 대해 "3"이라는 식별 값을 추출할 수 있고, 암호화 데이터 10(240)에 대해 "4"라는 식별 값을 추출할 수 있다.That is, the extracting unit 123 can extract the identification value "1 " for the encrypted data 1, 2, 3 and 4 (231, 232, 233 and 234) 233, 235, 236, and 237, and an identification value of "3" can be extracted for the encrypted data 8, 9 (238, 239) 240, "4"

그러고 나서, 식별부(124)는 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10(231, 232, 233, 234, 235, 236, 237, 238, 239, 240) 각각에 대해서 추출된 암호화키에 대한 식별 값과 키 저장부(111)에 저장되어 있는 암호화키들(211, 212, 213, 214) 각각에 대응하는 식별 값을 서로 매칭시켜 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10(231, 232, 233, 234, 235, 236, 237, 238, 239, 240) 각각의 암호화에 사용된 암호화키를 식별할 수 있다.Then, the identification unit 124 encrypts the encrypted data 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (231, 232, 233, 234, 235, 236, 237, 238, And the identification values corresponding to the encryption keys 211, 212, 213, and 214 stored in the key storage unit 111 are matched with each other to generate encrypted data 1, 2, 234, 235, 236, 237, 238, 239, and 240 of the first, second, third, fourth, fifth, sixth, seventh,

즉, 식별부(124)는 암호화 데이터 1, 2, 3, 4(231, 232, 233, 234)가 암호화키 1(211)로 암호화되었음을 식별할 수 있고, 암호화 데이터 4, 5, 6, 7(234, 235, 236, 237)에 대해 암호화키 2(212)로 암호화되었음을 식별할 수 있으며, 암호화 데이터 8, 9(238, 239)에 대해 암호화키 3(213)으로 암호화되었음을 식별할 수 있고, 암호화 데이터 10(240)에 대해 암호화키 4(214)로 암호화되었음을 식별할 수 있다.That is, the identification unit 124 can identify that the encrypted data 1, 2, 3, 4 (231, 232, 233, 234) is encrypted by the encryption key 1 211, (234, 235, 236, 237) can be identified as having been encrypted with the encryption key 2 (212), and encrypted data 8, 9 (238, 239) , And that the encrypted data 10 (240) has been encrypted with the encryption key 4 (214).

이렇게, 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10(231, 232, 233, 234, 235, 236, 237, 238, 239, 240) 각각의 암호화에 사용된 암호화키의 식별이 완료되면, 암호화 데이터 확인부(119)는 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10(231, 232, 233, 234, 235, 236, 237, 238, 239, 240) 중 가장 최신의 유효기한에 대한 정보에 대응되어 저장되어 있는 암호화키인 암호화키 4(214)로 암호화가 수행되지 않은 암호화 데이터들을 확인할 수 있다.In this way, the encrypted data 1, 2, 3, 4, 5, 6, 7, 8, 9 and 10 (231, 232, 233, 234, 235, 236, 237, 238, 239, When the identification of the encryption key is completed, the encrypted data verification unit 119 reads the encrypted data 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (231, 232, 233, 234, 235, 236, 237, 238, 239, and 240, which are stored in correspondence with information on the latest validity period.

본 실시예에서는 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10(231, 232, 233, 234, 235, 236, 237, 238, 239, 240) 중 암호화 데이터 10(240)만이 암호화키 4(214)로 암호화되었다고 가정하였으므로, 암호화 데이터 확인부(119)는 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10(231, 232, 233, 234, 235, 236, 237, 238, 239, 240) 중에서 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9(231, 232, 233, 234, 235, 236, 237, 238, 239)를 확인할 수 있다.In this embodiment, among the encrypted data 1, 2, 3, 4, 5, 6, 7, 8, 9 and 10 (231, 232, 233, 234, 235, 236, 237, 238, 239, 2, 3, 4, 5, 6, 7, 8, 9, 10 (231, 232, 234) 2, 3, 4, 5, 6, 7, 8, 9 (231, 232, 233, 234, 235, 236, 237) among 233, 234, 235, 236, 237, , 238, 239).

그러고 나서, 복호화부(120)는 데이터베이스(113)로부터 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9(231, 232, 233, 234, 235, 236, 237, 238, 239)를 추출하고, 키 저장부(111)로부터 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9(231, 232, 233, 234, 235, 236, 237, 238, 239) 각각의 암호화에 사용된 암호화키를 추출한 후 추출된 암호화키를 기초로 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9(231, 232, 233, 234, 235, 236, 237, 238, 239)를 복호화하여 평문 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9를 생성할 수 있다.Then, the decryption unit 120 receives encrypted data 1, 2, 3, 4, 5, 6, 7, 8, 9 (231, 232, 233, 234, 235, 236, 237, 238, 239, 235, 236, 237, 238, 239 (231, 232, 233, 234, 235, 236, 237, 238, 239) from the key storage unit 2, 3, 4, 5, 6, 7, 8, and 9 (231, 232, 233, 234, 235, and 236) based on the extracted encryption key after extracting the encryption keys used for the respective encryption 2, 3, 4, 5, 6, 7, 8, and 9 can be generated by decrypting the plaintext data 237, 238,

그리고, 데이터 갱신부(121)는 키 저장부(111)로부터 암호화키 1(211), 암호화키 2(212), 암호화키 3(213), 암호화키 4(214) 중 가장 최신의 유효기한에 대한 정보에 대응되어 저장되어 있는 암호화키 4(214)를 추출할 수 있고, 상기 추출된 암호화키 4(214)를 기초로 상기 평문 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9 각각을 암호화하여 갱신 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9를 생성한 후 데이터베이스(113)에 저장되어 있는 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9(231, 232, 233, 234, 235, 236, 237, 238, 239)를 각각 갱신 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9로 대체할 수 있다.The data updating unit 121 updates the latest validity period of the encryption key 1 211, the encryption key 2 212, the encryption key 3 213 and the encryption key 4 214 from the key storage unit 111 2, 3, 4, 5, 6, 7, 8 (4) based on the extracted encryption key 4 (214) 2, 3, 4, 5, and 6 stored in the database 113 after generating the update data 1, 2, 3, 4, 5, 6, , 7, 8, 9 (231, 232, 233, 234, 235, 236, 237, 238, 239) can be replaced with update data 1, 2, 3, 4, 5, 6, 7, have.

결국, 본 발명에 따른 데이터 암호화 저장 장치(110)는 관리자에 의해 데이터베이스(113)에 저장되어 있는 복수의 암호화 데이터들에 대한 암호화키 전부 갱신 명령이 입력되면, 상기 복수의 암호화 데이터들 중에서 암호화키의 유지를 위해서 미리 지정해 둔 유효기한이 가장 최신의 유효기한을 갖는 암호화키가 아닌, 이전의 유효기한을 갖는 암호화키들로 암호화가 수행된 암호화 데이터들만을 추출하여 추출된 암호화 데이터들을 상기 최신의 유효기한을 갖는 암호화키로 다시 암호화를 수행함으로써, 상기 이전의 유효기한을 갖는 암호화키들이 노출되더라도 암호화 데이터의 갱신으로 인해 평문 데이터가 노출될 위험성을 최소화할 수 있다.As a result, the data encryption / storage device 110 according to the present invention, when an encryption key all-update command for a plurality of pieces of encrypted data stored in the database 113 is input by an administrator, Only the encrypted data whose encryption has been performed by the encryption keys having the expiration date that is not the encryption key having the latest validity period designated in advance for the maintenance of the encrypted data, By performing the encryption again with the encryption key having the expiration date, the risk of exposing the plain text data due to the update of the encrypted data can be minimized even if the encryption keys having the previous expiration date are exposed.

지금까지는, 관리자에 의해서 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10(231, 232, 233, 234, 235, 236, 237, 238, 239, 240)에 대한 암호화키 전부 갱신 명령이 입력될 경우, 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10(231, 232, 233, 234, 235, 236, 237, 238, 239, 240) 중에서 최신의 유효기한을 갖는 암호화키가 아닌, 이전의 유효기한을 갖는 암호화키들로 암호화가 수행된 암호화 데이터들만을 추출하여 추출된 암호화 데이터들을 상기 최신의 유효기한을 갖는 암호화키로 다시 암호화를 수행하는 데이터 갱신 과정에 대해 설명하였다.Up to this point, it has been assumed that the encryption is performed for the encrypted data 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (231, 232, 233, 234, 235, 236, 237, 238, 239, 240) 23, 237, 238, 239, 236, 237, 238, 239, 236, 237, 238, 239, 240 and extracts only the encrypted data that has been encrypted with the encryption keys having the previous expiration date, and encrypts the extracted encrypted data again with the encryption key having the latest expiration date And the data update process performed.

관련해서, 본 발명의 다른 일실시예에 따르면, 관리자에 의해 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10(231, 232, 233, 234, 235, 236, 237, 238, 239, 240)에 대한 암호화키 일부 갱신 명령이 인가되면, 암호화키 확인부(117)는 데이터 암호화 저장 장치(110)에 설정되어 있는 현재 시간에 대한 정보를 확인한 후 키 저장부(111)로부터 암호화키 1(211), 암호화키 2(212), 암호화키 3(213), 암호화키 4(214) 중 상기 현재 시간이 속해있는 유효기한보다 과거의 유효기한에 대한 정보에 대응되어 저장되어 있는 적어도 하나의 암호화키를 확인할 수 있다.According to another embodiment of the present invention, encrypted data 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (231, 237, 238, 239, and 240, the encryption key verification unit 117 checks the information on the current time set in the data encryption / storage device 110, 111 corresponding to the information on the expiration date in the past that is the expiration date to which the current time belongs among the encryption key 1 (211), the encryption key 2 (212), the encryption key 3 (213), and the encryption key 4 (214) It is possible to confirm at least one encryption key stored.

예컨대, 상기 현재 시간이 2016년 4월 15일로 확인되었다면, 암호화키 확인부(117)는 키 저장부(111)로부터 암호화키 1(211), 암호화키 2(212), 암호화키 3(213), 암호화키 4(214) 중 상기 현재 시간인 2016년 4월 15일이 속해있는 유효기한인 "2015.01.01~2016.05.31"과 "2016.01.01~2017.05.31"보다 과거의 유효기한인 "2013.01.01~2014.05.31" 및 "2014.01.01~2015.05.31"에 대한 정보에 대응되어 저장되어 있는 암호화키로 암호화키 1(211)과 암호화키 2(212)를 확인할 수 있다.For example, if the current time is confirmed to be April 15, 2016, the encryption key verification unit 117 receives the encryption key 1 211, the encryption key 2 212, the encryption key 3 213 from the key storage unit 111, 2015.01.01 ~ 2016.05.31 "and" 2016.01.01 ~ 2017.05.31 ", which are the expiration date of April 15, 2016, of the encryption key 4 (214) The encryption key 1 (211) and the encryption key 2 (212) can be confirmed with the encryption key stored corresponding to the information on "2013.01.01 ~ 2014.05.31" and "2014.01.01 ~ 2015.05.31".

이때, 암호화키 식별부(118)는 데이터베이스(113) 상에 저장되어 있는 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10(231, 232, 233, 234, 235, 236, 237, 238, 239, 240) 각각에 대해 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10(231, 232, 233, 234, 235, 236, 237, 238, 239, 240) 각각의 암호화에 사용된 암호화키를 식별할 수 있다.At this time, the encryption key identifying unit 118 identifies the encrypted data 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (231, 232, 233, 234, 235 3, 4, 5, 6, 7, 8, 9, 10 (231, 232, 233, 234, 235, 236, 237, 236, 238, 239, and 240, respectively.

그리고, 암호화 데이터 확인부(119)는 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10(231, 232, 233, 234, 235, 236, 237, 238, 239, 240) 각각의 암호화에 사용된 암호화키의 식별이 완료되면, 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10(231, 232, 233, 234, 235, 236, 237, 238, 239, 240) 중 암호화키 1(211)과 암호화키 2(212)로 암호화가 수행된 적어도 하나의 암호화 데이터를 확인할 수 있다.23, 237, 238, 239, 236, 237, 238, 239, 236, 237, 238, 239, 2, 3, 4, 5, 6, 7, 8, 9, 10 (231, 232, 233, 234, 235, 236, 237, 238, 239, and 240, at least one of the encrypted data encrypted by the encryption key 1 211 and the encryption key 2 212 can be identified.

앞서 설명한 실시예에서, 암호화 데이터 1, 2, 3, 4(231, 232, 233, 234)가 암호화키 1(211)로 암호화되었고, 암호화 데이터 4, 5, 6, 7(234, 235, 236, 237)이 암호화키 2(212)로 암호화되었으며, 암호화 데이터 8, 9(238, 239)가 암호화키 3(213)으로 암호화되었고, 암호화 데이터 10(240)이 암호화키 4(214)로 암호화되었다고 가정하였기 때문에, 암호화 데이터 확인부(119)는 암호화 데이터 1, 2, 3, 4, 5, 6, 7, 8, 9, 10(231, 232, 233, 234, 235, 236, 237, 238, 239, 240) 중 암호화키 1(211)과 암호화키 2(212)로 암호화가 수행된 적어도 하나의 암호화 데이터로 암호화 데이터 1, 2, 3, 4, 5, 6, 7(231, 232, 233, 234, 235, 236, 237)를 확인할 수 있다.The encrypted data 1, 2, 3, 4 (231, 232, 233, 234) is encrypted by the encryption key 1 211 and the encrypted data 4, 5, 6, 7 237 are encrypted with the encryption key 2 212 and the encrypted data 8 and 9 238 and 239 are encrypted with the encryption key 3 213 and the encrypted data 10 240 is encrypted with the encryption key 4 214 The encrypted data verification unit 119 checks the encrypted data 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (231, 232, 233, 234, 235, 236, 237, 238 2, 3, 4, 5, 6, and 7 (231, 232, and 231) are encrypted with at least one of the encryption keys 1, 211, 233, 234, 235, 236, 237).

그러고 나서, 복호화부(120)는 데이터베이스(113)로부터 암호화 데이터 1, 2, 3, 4, 5, 6, 7(231, 232, 233, 234, 235, 236, 237)를 추출하고, 키 저장부(111)로부터 암호화 데이터 1, 2, 3, 4, 5, 6, 7(231, 232, 233, 234, 235, 236, 237) 각각의 암호화에 사용된 암호화키를 추출한 후 추출된 암호화키를 기초로 암호화 데이터 1, 2, 3, 4, 5, 6, 7(231, 232, 233, 234, 235, 236, 237)을 복호화하여 평문 데이터 1, 2, 3, 4, 5, 6, 7을 생성할 수 있다.Then, the decryption unit 120 extracts the encrypted data 1, 2, 3, 4, 5, 6, 7 (231, 232, 233, 234, 235, 236, 237) from the database 113, Extracts an encryption key used for encryption of each of the encrypted data 1, 2, 3, 4, 5, 6 and 7 (231, 232, 233, 234, 235, 236, 237) 2, 3, 4, 5, 6, 7 (231, 232, 233, 234, 235, 236, 237) 7 < / RTI >

이때, 데이터 갱신부(121)는 키 저장부(111)로부터 암호화키 1(211), 암호화키 2(212), 암호화키 3(213), 암호화키 4(214) 중 가장 최신의 유효기한에 대한 정보에 대응되어 저장되어 있는 암호화키 4(214)를 추출할 수 있고, 암호화키 4(214)를 기초로 상기 평문 데이터 1, 2, 3, 4, 5, 6, 7 각각을 암호화하여 갱신 데이터 1, 2, 3, 4, 5, 6, 7을 생성한 후 데이터베이스(113)에 저장되어 있는 암호화 데이터 1, 2, 3, 4, 5, 6, 7(231, 232, 233, 234, 235, 236, 237) 각각을 상기 갱신 데이터 1, 2, 3, 4, 5, 6, 7로 대체할 수 있다.At this time, the data updating unit 121 updates the latest validity period of the encryption key 1 (211), the encryption key 2 (212), the encryption key 3 (213), and the encryption key 4 (214) from the key storage unit 111 2, 3, 4, 5, 6, and 7 are encrypted and updated based on the encryption key 4 (214) based on the encryption key 4 (214) 3, 4, 5, 6, and 7 (231, 232, 233, 234, and 234) stored in the database 113 after generating the data 1, 2, 3, 4, 5, 6, 235, 236, and 237 can be replaced with the update data 1, 2, 3, 4, 5, 6, and 7, respectively.

결국, 본 발명에 따른 데이터 암호화 저장 장치(110)는 관리자에 의해 데이터베이스(113)에 저장되어 있는 복수의 암호화 데이터들에 대한 암호화키 일부 갱신 명령이 입력되면, 상기 복수의 암호화 데이터들 중에서 암호화키의 유지를 위해서 미리 지정한 유효기한이 경과한 암호화키로 암호화가 수행된 암호화 데이터들만을 추출하여 추출된 암호화 데이터들을 최신의 유효기한을 갖는 암호화키로 다시 암호화를 수행함으로써, 유효기한이 경과한 암호화키들이 노출되더라도 암호화 데이터의 갱신으로 인해 평문 데이터가 노출될 위험성을 최소화할 수 있다.As a result, when the encryption key partial updating command for a plurality of pieces of encrypted data stored in the database 113 is input by the administrator, the data encryption / decryption storage unit 110 according to the present invention encrypts the encryption key By extracting only the encrypted data whose encryption has been performed with the encryption key that has passed the predetermined expiration date for retention and encrypting the extracted encrypted data with the encryption key having the latest validity period, Even if exposed, the risk of exposure of plaintext data due to updating of encrypted data can be minimized.

또한, 암호화키 일부 갱신 명령에 따른 암호화 데이터 갱신 과정은 앞서 설명한 암호화키 전부 갱신 명령에 따른 암호화 데이터 갱신 과정보다 갱신할 암호화 데이터의 양이 적기 때문에 암호화 데이터 갱신 과정을 보다 빠르게 처리할 수 있는 장점이 있다.The encrypted data update process according to the partial update command of the encryption key is advantageous in that it can process the encrypted data update process more quickly since the amount of the encrypted data to be updated is smaller than the encrypted data update process according to the previously described encryption key update command have.

본 발명의 일실시예에 따르면, 데이터 암호화 저장 장치(110)는 관리자가 수동으로 관련 명령을 인가할 경우에 암호화키 전부 갱신 명령에 따른 암호화 데이터 갱신 과정과 암호화키 일부 갱신 명령에 따른 암호화 데이터 갱신 과정이 수행되도록 구성될 수도 있으나, 관리자가 미리 설정해 놓은 데이터 갱신 처리 스케줄에 따라, 자동으로 해당 일자가 되면 암호화 데이터 갱신 과정이 수행되도록 구성될 수도 있다.According to an embodiment of the present invention, the data encryption / decryption storage device 110 may be configured such that when an administrator manually applies an associated command, the encrypted data update process according to the update all- However, it may be configured such that the encrypted data update process is performed automatically when the date is automatically set in accordance with the data update process schedule preset by the administrator.

도 3은 본 발명의 일실시예에 따른 데이터 암호화 저장 장치의 동작 방법을 도시한 순서도이다.3 is a flowchart illustrating a method of operating a data encryption storage device according to an embodiment of the present invention.

단계(S310)에서는 복수의 암호화키들과 상기 복수의 암호화키들 각각을 식별하기 위한 식별 값 서로 대응되어 저장되어 있는 키 저장부를 유지한다.In step S310, a key storage unit, which stores a plurality of encryption keys and identification values for identifying the plurality of encryption keys, is stored.

단계(S320)에서는 데이터베이스에 암호화되어 저장될 평문 데이터의 특성에 따라 미리 구분된 복수의 데이터 특성 그룹들 별로, 상기 복수의 암호화키들 중 상기 복수의 데이터 특성 그룹들 각각에 포함되는 평문 데이터의 암호화에 사용되도록 미리 지정된 암호화키에 대한 식별 값이 하나씩 대응되어 기록되어 있는 암호화키 테이블을 저장하여 유지한다.In step S320, for each of the plurality of data characteristic groups previously classified according to the characteristics of the plain text data to be encrypted and stored in the database, encryption of the plain text data included in each of the plurality of data characteristic groups among the plurality of encryption keys And stores the encryption key table in which the identification values for the encryption keys predetermined for use are mapped one by one and stores them.

단계(S330)에서는 복수의 암호화 데이터들(상기 복수의 암호화 데이터들은 복수의 평문 데이터들이 상기 복수의 암호화키들 중 상기 암호화키 테이블 상에서 상기 복수의 평문 데이터들 각각이 속하는 데이터 특성 그룹에 대응되어 저장되어 있는 암호화키로 암호화가 수행됨에 따라 생성된 데이터임)이 저장되어 있는 상기 데이터베이스를 유지한다.In step S330, a plurality of pieces of encrypted data (the plurality of pieces of encrypted data are stored in the encryption key table among the plurality of encryption keys in correspondence with the data characteristic group to which each of the plurality of plaintext data belongs Which is the data generated as the encryption is performed with the encryption key included in the encryption key).

단계(S340)에서는 제1 평문 데이터와 상기 제1 평문 데이터에 대한 데이터 저장 명령이 입력되면, 상기 제1 평문 데이터의 특성을 확인하여 상기 암호화키 테이블로부터 상기 제1 평문 데이터가 속하는 데이터 특성 그룹에 대응되어 저장되어 있는 제1 암호화키에 대한 식별 값을 추출한다.In step S340, when a data storage command for the first plaintext data and the first plaintext data is input, the control unit checks the characteristics of the first plaintext data and extracts, from the encryption key table, a data property group to which the first plaintext data belongs And extracts an identification value for the first encryption key stored correspondingly.

단계(S350)에서는 상기 추출된 제1 암호화키에 대한 식별 값을 기초로 상기 키 저장부로부터 상기 추출된 제1 암호화키에 대한 식별 값에 대응되어 저장되어 있는 상기 제1 암호화키를 추출한다.In step S350, the first encryption key stored corresponding to the extracted identification value of the first encryption key is extracted from the key storage unit based on the extracted identification value of the first encryption key.

단계(S360)에서는 상기 추출된 제1 암호화키를 기초로 상기 제1 평문 데이터에 대한 암호화를 수행하여 제1 암호화 데이터를 생성한 후 상기 제1 암호화 데이터를 상기 데이터베이스에 저장한다.In step S360, the first encryption unit 110 encrypts the first plaintext data based on the extracted first encryption key to generate first encrypted data, and then stores the first encrypted data in the database.

이때, 본 발명의 일실시예에 따르면, 상기 키 저장부에는 상기 복수의 암호화키들 각각에 대해 상기 복수의 암호화키들 각각에 대한 미리 지정된 유효기한에 대한 정보가 추가로 대응되어 저장되어 있을 수 있다.According to an embodiment of the present invention, the key storage unit may further store information on a predetermined expiration time for each of the plurality of encryption keys in association with each of the plurality of encryption keys.

이때, 상기 데이터 암호화 저장 장치의 동작 방법은 상기 복수의 암호화 데이터들에 대한 암호화키 전부 갱신 명령이 입력되면, 상기 키 저장부로부터 상기 복수의 암호화키들 중 가장 최신의 유효기한에 대한 정보에 대응되어 저장되어 있는 제2 암호화키를 확인하는 단계, 상기 데이터베이스 상에 저장되어 있는 상기 복수의 암호화 데이터들 각각에 대해 상기 복수의 암호화 데이터들 각각의 암호화에 사용된 암호화키를 식별하는 단계, 상기 복수의 암호화 데이터들 각각의 암호화에 사용된 암호화키의 식별이 완료되면, 상기 복수의 암호화 데이터들 중 상기 제2 암호화키로 암호화가 수행되지 않은 적어도 하나의 제2 암호화 데이터를 확인하는 단계, 상기 데이터베이스로부터 상기 적어도 하나의 제2 암호화 데이터를 추출하고, 상기 키 저장부로부터 상기 적어도 하나의 제2 암호화 데이터 각각의 암호화에 사용된 암호화키를 추출한 후 추출된 암호화키를 기초로 상기 적어도 하나의 제2 암호화 데이터를 복호화하여 적어도 하나의 제2 평문 데이터를 생성하는 단계 및 상기 키 저장부로부터 상기 제2 암호화키를 추출하고, 상기 추출된 제2 암호화키를 기초로 상기 적어도 하나의 제2 평문 데이터 각각을 암호화하여 적어도 하나의 제1 갱신 데이터를 생성한 후 상기 데이터베이스에 저장되어 있는 상기 적어도 하나의 제2 암호화 데이터를 상기 적어도 하나의 제1 갱신 데이터로 대체하는 단계를 더 포함할 수 있다.Here, the method of operating the data encryption / decryption device may further include receiving, from the key storage unit, information on the latest validity period of the plurality of encryption keys when the encryption key update command for the plurality of encrypted data is input Identifying a stored second encryption key, identifying an encryption key used to encrypt each of the plurality of encrypted data for each of the plurality of encrypted data stored on the database, Checking at least one second encrypted data which is not encrypted with the second encryption key among the plurality of encrypted data when identification of the encryption key used for encryption of each of the encrypted data is completed, Extracts at least one second encrypted data, Extracting an encryption key used for encrypting each of the at least one second encrypted data, and generating at least one second plain text data by decrypting the at least one second encrypted data based on the extracted encryption key; Extracting the second encryption key from the key storage unit, encrypting each of the at least one second plaintext data based on the extracted second encryption key to generate at least one first update data, and storing the at least one first update data in the database And replacing the at least one second encrypted data with the at least one first update data.

이때, 본 발명의 일실시예에 따르면, 상기 복수의 데이터 특성 그룹들은 상기 데이터베이스에 암호화되어 저장될 평문 데이터를 구성하는 데이터열에서 선정된 제1 자리에 위치하는 일부 데이터 값의 특성에 따라 구분된 그룹들이고, 상기 복수의 암호화 데이터들은 상기 복수의 평문 데이터들 각각에 대해, 상기 복수의 평문 데이터들 각각을 구성하는 데이터열에서 선정된 제2 자리(상기 선정된 제2 자리는 상기 선정된 제1 자리와 중복되지 않음)에 위치하는 적어도 하나의 데이터 값에 대해서만 대응되는 암호화키로 암호화가 수행된 데이터일 수 있다.According to an embodiment of the present invention, the plurality of data characteristic groups are divided into a plurality of data characteristic groups, which are classified according to the characteristics of some data values located in the first place selected in the data string constituting the plain- Wherein the plurality of pieces of encrypted data are for a plurality of plaintext data, a second digit selected from a data string constituting each of the plurality of plaintext data (the selected second digit is the first The data may be encrypted with an encryption key corresponding only to at least one data value located at a position where the encryption key is not duplicated.

이때, 단계(S340)에서는 상기 제1 평문 데이터와 상기 제1 평문 데이터에 대한 데이터 저장 명령이 입력되면, 상기 제1 평문 데이터를 구성하는 데이터열에서 상기 선정된 제1 자리에 위치하는 일부 데이터 값의 특성을 확인하여 상기 암호화키 테이블로부터 상기 제1 평문 데이터가 속하는 데이터 특성 그룹에 대응되어 저장되어 있는 상기 제1 암호화키에 대한 식별 값을 추출할 수 있고, 단계(S360)에서는 상기 제1 평문 데이터를 구성하는 데이터열에서 상기 선정된 제2 자리에 위치하는 적어도 하나의 제1 데이터 값에 대해서만 상기 제1 암호화키를 기초로 암호화를 수행하여 상기 제1 암호화 데이터를 생성할 수 있다.At this time, if a data storage command for the first plaintext data and the first plaintext data is inputted in step S340, the data stored in the first plaintext data in the data string constituting the first plaintext data From the encryption key table, an identification value for the first encryption key stored in association with the data property group to which the first plain text data belongs, from the encryption key table. In step S360, It is possible to generate the first encrypted data by performing encryption based on the first encryption key only for at least one first data value located in the second predetermined position in the data string constituting the data.

이때, 본 발명의 일실시예에 따르면, 상기 암호화키를 식별하는 단계는 상기 데이터베이스를 참조하여 상기 복수의 암호화 데이터들 각각에 대해, 상기 복수의 암호화 데이터들 각각을 구성하는 데이터열에서 상기 선정된 제1 자리에 위치하는 일부 데이터 값의 특성을 확인해서 상기 복수의 데이터 특성 그룹들 중 상기 복수의 암호화 데이터들 각각이 속하는 데이터 특성 그룹을 확인하는 단계, 상기 복수의 암호화 데이터들 각각이 속하는 데이터 특성 그룹의 확인이 완료되면, 상기 암호화키 테이블로부터 상기 복수의 암호화 데이터들 각각이 속하는 데이터 특성 그룹에 대응되어 저장되어 있는 암호화키에 대한 식별 값을 추출하는 단계 및 상기 복수의 암호화 데이터들 각각에 대해서 추출된 암호화키에 대한 식별 값과 상기 키 저장부에 저장되어 있는 상기 복수의 암호화키들 각각에 대응하는 식별 값을 매칭시켜 상기 복수의 암호화 데이터들 각각의 암호화에 사용된 암호화키를 식별하는 단계를 포함할 수 있다.According to an embodiment of the present invention, the step of identifying the encryption key may include, for each of the plurality of encrypted data, referring to the database, extracting, from the data string constituting each of the plurality of encrypted data, Identifying a data property group to which each of the plurality of encrypted data belongs among the plurality of data property groups by checking a characteristic of a part of data values located at a first position, Extracting an identification value for an encryption key corresponding to a data property group to which each of the plurality of encrypted data belongs from the encryption key table when the confirmation of the group is completed, And an identification value for the extracted encryption key and stored in the key storage unit And identifying an encryption key used for encryption of each of the plurality of encrypted data by matching an identification value corresponding to each of the plurality of encryption keys having the encryption key.

또한, 본 발명의 일실시예에 따르면, 상기 데이터 암호화 저장 장치의 동작 방법은 상기 복수의 암호화 데이터들에 대한 암호화키 일부 갱신 명령이 입력되면, 상기 데이터 암호화 저장 장치에 설정되어 있는 현재 시간에 대한 정보를 확인한 후 상기 키 저장부로부터 상기 복수의 암호화키들 중 상기 현재 시간이 속해있는 유효기한보다 과거의 유효기한에 대한 정보에 대응되어 저장되어 있는 적어도 하나의 제3 암호화키를 확인하는 단계, 상기 데이터베이스 상에 저장되어 있는 상기 복수의 암호화 데이터들 각각에 대해 상기 복수의 암호화 데이터들 각각의 암호화에 사용된 암호화키를 식별하는 단계, 상기 복수의 암호화 데이터들 각각의 암호화에 사용된 암호화키의 식별이 완료되면, 상기 복수의 암호화 데이터들 중 상기 적어도 하나의 제3 암호화키로 암호화가 수행된 적어도 하나의 제3 암호화 데이터를 확인하는 단계, 상기 데이터베이스로부터 상기 적어도 하나의 제3 암호화 데이터를 추출하고, 상기 키 저장부로부터 상기 적어도 하나의 제3 암호화 데이터 각각의 암호화에 사용된 암호화키를 추출한 후 추출된 암호화키를 기초로 상기 적어도 하나의 제3 암호화 데이터를 복호화하여 적어도 하나의 제3 평문 데이터를 생성하는 단계 및 상기 키 저장부로부터 상기 복수의 암호화키들 중 가장 최신의 유효기한에 대한 정보에 대응되어 저장되어 있는 상기 제2 암호화키를 추출하고, 상기 제2 암호화키를 기초로 상기 적어도 하나의 제3 평문 데이터 각각을 암호화하여 적어도 하나의 제2 갱신 데이터를 생성한 후 상기 데이터베이스에 저장되어 있는 상기 적어도 하나의 제3 암호화 데이터를 상기 적어도 하나의 제2 갱신 데이터로 대체하는 단계를 더 포함할 수 있다.According to still another aspect of the present invention, there is provided a method for operating a data encryption / decryption storage device, the method comprising: receiving, when a partial encryption key update command for the plurality of encrypted data is input, Checking at least one third encryption key stored in association with information on a past validity period of the current time among the plurality of encryption keys from the key storage unit, The method comprising: identifying an encryption key used for encrypting each of the plurality of encrypted data for each of the plurality of encrypted data stored in a database; identifying an encryption key used for encrypting each of the plurality of encrypted data; The at least one third cipher among the plurality of cipher data The method comprising the steps of: identifying at least one third encrypted data that has been encrypted with a key, extracting the at least one third encrypted data from the database, and encrypting each of the at least one third encrypted data from the key storage Decrypting the at least one third encrypted data based on the extracted encryption key to generate at least one third plain text data; extracting the latest one of the plurality of encryption keys from the key storage unit Extracting the stored second encryption key corresponding to the information on the expiration date and encrypting each of the at least one third plain text data based on the second encryption key to generate at least one second update data The third encrypted data stored in the database, And replacing the second update data with at least one second update data.

이상, 도 3을 참조하여 본 발명의 일실시예에 따른 데이터 암호화 저장 장치의 동작 방법에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 데이터 암호화 저장 장치의 동작 방법은 도 1 내지 도 2를 이용하여 설명한 데이터 암호화 저장 장치(110)의 동작에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.The operation of the data encryption and storage apparatus according to an embodiment of the present invention has been described above with reference to FIG. Here, the method of operating the data encryption / storage device according to an embodiment of the present invention may correspond to the configuration of the operation of the data encryption / storage device 110 described with reference to FIGS. 1 and 2, Is omitted.

본 발명의 일실시예에 따른 데이터 암호화 저장 장치의 동작 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.The method of operating the data encryption storage device according to an exemplary embodiment of the present invention may be implemented as a computer program stored in a storage medium for execution through a combination with a computer.

또한, 본 발명의 일실시예에 따른 데이터 암호화 저장 장치의 동작 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.In addition, the method of operating the data encryption / storage device according to an exemplary embodiment of the present invention may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions recorded on the medium may be those specially designed and constructed for the present invention or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. As described above, the present invention has been described with reference to particular embodiments, such as specific elements, and specific embodiments and drawings. However, it should be understood that the present invention is not limited to the above- And various modifications and changes may be made thereto by those skilled in the art to which the present invention pertains.

따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Accordingly, the spirit of the present invention should not be construed as being limited to the embodiments described, and all of the equivalents or equivalents of the claims, as well as the following claims, belong to the scope of the present invention .

110: 데이터 암호화 저장 장치
111: 키 저장부 112: 암호화키 테이블 유지부
113: 데이터베이스 114: 식별 값 추출부
115: 암호화키 추출부 116: 데이터 저장부
117: 암호화키 확인부 118: 암호화키 식별부
119: 암호화 데이터 확인부 120: 복호화부
121: 데이터 갱신부 122: 특성 그룹 확인부
123: 추출부 124: 식별부
110: Data encryption storage device
111: Key storage unit 112: Encryption key table storage unit
113: Database 114: Identification value extraction unit
115: encryption key extracting unit 116:
117: encryption key verification unit 118: encryption key identification unit
119: Encrypted data verification unit 120: Decryption unit
121: data updating unit 122: characteristic group identifying unit
123: Extraction section 124: Identification section

Claims (12)

데이터 암호화 저장 장치에 있어서,
복수의 암호화키들과 상기 복수의 암호화키들 각각을 식별하기 위한 식별 값이 서로 대응되어 저장되어 있으면서, 상기 복수의 암호화키들 각각에 대해 상기 복수의 암호화키들 각각에 대한 미리 지정된 유효기한에 대한 정보가 추가로 대응되어 저장되어 있는 키 저장부;
데이터베이스에 암호화되어 저장될 평문 데이터의 특성에 따라 미리 구분된 복수의 데이터 특성 그룹들 별로, 상기 복수의 암호화키들 중 상기 복수의 데이터 특성 그룹들 각각에 포함되는 평문 데이터의 암호화에 사용되도록 미리 지정된 암호화키에 대한 식별 값이 하나씩 대응되어 기록되어 있는 암호화키 테이블을 저장하여 유지하는 암호화키 테이블 유지부;
복수의 암호화 데이터들 - 상기 복수의 암호화 데이터들은 복수의 평문 데이터들이 상기 복수의 암호화키들 중 상기 암호화키 테이블 상에서 상기 복수의 평문 데이터들 각각이 속하는 데이터 특성 그룹에 대응되어 저장되어 있는 암호화키로 암호화가 수행됨에 따라 생성된 데이터임 - 이 저장되어 있는 상기 데이터베이스;
제1 평문 데이터와 상기 제1 평문 데이터에 대한 데이터 저장 명령이 입력되면, 상기 제1 평문 데이터의 특성을 확인하여 상기 암호화키 테이블로부터 상기 제1 평문 데이터가 속하는 데이터 특성 그룹에 대응되어 저장되어 있는 제1 암호화키에 대한 식별 값을 추출하는 식별 값 추출부;
상기 추출된 제1 암호화키에 대한 식별 값을 기초로 상기 키 저장부로부터 상기 추출된 제1 암호화키에 대한 식별 값에 대응되어 저장되어 있는 상기 제1 암호화키를 추출하는 암호화키 추출부;
상기 추출된 제1 암호화키를 기초로 상기 제1 평문 데이터에 대한 암호화를 수행하여 제1 암호화 데이터를 생성한 후 상기 제1 암호화 데이터를 상기 데이터베이스에 저장하는 데이터 저장부;
상기 복수의 암호화 데이터들에 대한 암호화키 전부 갱신 명령이 입력되면, 상기 키 저장부로부터 상기 복수의 암호화키들 중 가장 최신의 유효기한에 대한 정보에 대응되어 저장되어 있는 제2 암호화키를 확인하는 암호화키 확인부;
상기 데이터베이스 상에 저장되어 있는 상기 복수의 암호화 데이터들 각각에 대해 상기 복수의 암호화 데이터들 각각의 암호화에 사용된 암호화키를 식별하는 암호화키 식별부;
상기 복수의 암호화 데이터들 각각의 암호화에 사용된 암호화키의 식별이 완료되면, 상기 복수의 암호화 데이터들 중 상기 제2 암호화키로 암호화가 수행되지 않은 적어도 하나의 제2 암호화 데이터를 확인하는 암호화 데이터 확인부;
상기 데이터베이스로부터 상기 적어도 하나의 제2 암호화 데이터를 추출하고, 상기 키 저장부로부터 상기 적어도 하나의 제2 암호화 데이터 각각의 암호화에 사용된 암호화키를 추출한 후 추출된 암호화키를 기초로 상기 적어도 하나의 제2 암호화 데이터를 복호화하여 적어도 하나의 제2 평문 데이터를 생성하는 복호화부; 및
상기 키 저장부로부터 상기 제2 암호화키를 추출하고, 상기 추출된 제2 암호화키를 기초로 상기 적어도 하나의 제2 평문 데이터 각각을 암호화하여 적어도 하나의 제1 갱신 데이터를 생성한 후 상기 데이터베이스에 저장되어 있는 상기 적어도 하나의 제2 암호화 데이터를 상기 적어도 하나의 제1 갱신 데이터로 대체하는 데이터 갱신부
를 포함하는 데이터 암호화 저장 장치.
A data encryption storage device comprising:
Wherein information on a predetermined expiration date for each of the plurality of encryption keys is added to each of the plurality of encryption keys while the plurality of encryption keys and identification values for identifying each of the plurality of encryption keys are stored in association with each other A key storage unit corresponding to the key storage unit;
A plurality of data attribute groups, which are previously classified according to characteristics of plaintext data to be encrypted and stored in the database, encryption and pre-specified encryption for use in encrypting plaintext data included in each of the plurality of data character groups among the plurality of encryption keys An encryption key table holding unit for storing and holding an encryption key table in which identification values for keys are associated one by one and recorded;
Wherein the plurality of pieces of encrypted data are encrypted with an encryption key in which a plurality of plaintext data is stored in the encryption key table corresponding to the data property group to which each of the plurality of plaintext data belongs, The data being generated as it is performed;
And a second storage unit for storing the first plain text data and the first plain text data stored in the encryption key table in correspondence with the data characteristic group to which the first plain text data belongs, An identification value extracting unit for extracting an identification value for the first encryption key;
An encryption key extraction unit for extracting the first encryption key stored corresponding to the extracted identification value of the first encryption key from the key storage unit based on the extracted identification value of the first encryption key;
A data storage unit for encrypting the first plaintext data based on the extracted first encryption key to generate first encrypted data and storing the first encrypted data in the database;
And an encryption unit for encrypting the second encryption key stored in association with the latest validity time information of the plurality of encryption keys from the key storage unit, A key verification unit;
An encryption key identifying unit for identifying an encryption key used to encrypt each of the plurality of pieces of encrypted data with respect to each of the plurality of pieces of encrypted data stored in the database;
When the identification of the encryption key used for encrypting each of the plurality of pieces of encrypted data is completed, the encryption data verification unit confirms at least one second encrypted data that has not been encrypted using the second encryption key among the plurality of pieces of encrypted data part;
Extracting the at least one second encrypted data from the database, extracting an encryption key used for encryption of each of the at least one second encrypted data from the key storage unit, A decryption unit for decrypting the second encrypted data to generate at least one second plaintext data; And
Extracting the second encryption key from the key storage unit, encrypting each of the at least one second plaintext data based on the extracted second encryption key to generate at least one first update data, And for replacing the stored at least one second encrypted data with the at least one first update data,
Lt; / RTI >
삭제delete 제1항에 있어서,
상기 복수의 데이터 특성 그룹들은
상기 데이터베이스에 암호화되어 저장될 평문 데이터를 구성하는 데이터열에서 선정된(predetermined) 제1 자리에 위치하는 일부 데이터 값의 특성에 따라 구분된 그룹들이고,
상기 복수의 암호화 데이터들은
상기 복수의 평문 데이터들 각각에 대해, 상기 복수의 평문 데이터들 각각을 구성하는 데이터열에서 선정된 제2 자리 - 상기 선정된 제2 자리는 상기 선정된 제1 자리와 중복되지 않음 - 에 위치하는 적어도 하나의 데이터 값에 대해서만 대응되는 암호화키로 암호화가 수행된 데이터이며,
상기 식별 값 추출부는
상기 제1 평문 데이터와 상기 제1 평문 데이터에 대한 데이터 저장 명령이 입력되면, 상기 제1 평문 데이터를 구성하는 데이터열에서 상기 선정된 제1 자리에 위치하는 일부 데이터 값의 특성을 확인하여 상기 암호화키 테이블로부터 상기 제1 평문 데이터가 속하는 데이터 특성 그룹에 대응되어 저장되어 있는 상기 제1 암호화키에 대한 식별 값을 추출하고,
상기 데이터 저장부는
상기 제1 평문 데이터를 구성하는 데이터열에서 상기 선정된 제2 자리에 위치하는 적어도 하나의 제1 데이터 값에 대해서만 상기 제1 암호화키를 기초로 암호화를 수행하여 상기 제1 암호화 데이터를 생성하는 데이터 암호화 저장 장치.
The method according to claim 1,
The plurality of data characteristic groups
The groups being classified according to characteristics of some data values located at a predetermined first position in a data string constituting plain text data to be encrypted and stored in the database,
The plurality of encrypted data
Wherein, for each of the plurality of plaintext data, a second digit selected from a data string constituting each of the plurality of plaintext data, wherein the second selected digit is not overlapped with the selected first digit Data encrypted with an encryption key corresponding to at least one data value,
The identification value extracting unit
Wherein when the data storage command for the first plaintext data and the first plaintext data is inputted, a characteristic of the data value located in the first predetermined position is checked in the data string constituting the first plaintext data, Extracting an identification value for the first encryption key corresponding to the data property group to which the first plain text data belongs from the key table,
The data storage unit
Encrypting the at least one first data value located at the second predetermined position in the data string constituting the first plain text data based on the first encryption key to generate the first encrypted data Encrypted storage.
제3항에 있어서,
상기 암호화키 식별부는
상기 데이터베이스를 참조하여 상기 복수의 암호화 데이터들 각각에 대해, 상기 복수의 암호화 데이터들 각각을 구성하는 데이터열에서 상기 선정된 제1 자리에 위치하는 일부 데이터 값의 특성을 확인해서 상기 복수의 데이터 특성 그룹들 중 상기 복수의 암호화 데이터들 각각이 속하는 데이터 특성 그룹을 확인하는 특성 그룹 확인부;
상기 복수의 암호화 데이터들 각각이 속하는 데이터 특성 그룹의 확인이 완료되면, 상기 암호화키 테이블로부터 상기 복수의 암호화 데이터들 각각이 속하는 데이터 특성 그룹에 대응되어 저장되어 있는 암호화키에 대한 식별 값을 추출하는 추출부; 및
상기 복수의 암호화 데이터들 각각에 대해서 추출된 암호화키에 대한 식별 값과 상기 키 저장부에 저장되어 있는 상기 복수의 암호화키들 각각에 대응하는 식별 값을 매칭시켜 상기 복수의 암호화 데이터들 각각의 암호화에 사용된 암호화키를 식별하는 식별부
를 포함하는 데이터 암호화 저장 장치.
The method of claim 3,
The encryption key identifying unit
For each of the plurality of encrypted data by referring to the database, a characteristic of some data value located at the first predetermined position in a data string constituting each of the plurality of encrypted data, A characteristic group identifying unit that identifies a data characteristic group to which each of the plurality of encrypted data belongs;
Extracting an identification value for an encryption key stored in association with a data property group to which each of the plurality of encrypted data belongs from the encryption key table when the confirmation of the data property group to which each of the plurality of encrypted data belongs is completed An extraction unit; And
The identification value of the extracted encryption key is matched with the identification value corresponding to each of the plurality of encryption keys stored in the key storage unit for each of the plurality of encrypted data, An identification unit for identifying the used encryption key
Lt; / RTI >
제1항에 있어서,
상기 암호화키 확인부는
상기 복수의 암호화 데이터들에 대한 암호화키 일부 갱신 명령이 입력되면, 상기 데이터 암호화 저장 장치에 설정되어 있는 현재 시간에 대한 정보를 확인한 후 상기 키 저장부로부터 상기 복수의 암호화키들 중 상기 현재 시간이 속해있는 유효기한보다 과거의 유효기한에 대한 정보에 대응되어 저장되어 있는 적어도 하나의 제3 암호화키를 확인하고,
상기 암호화키 식별부는
상기 데이터베이스 상에 저장되어 있는 상기 복수의 암호화 데이터들 각각에 대해 상기 복수의 암호화 데이터들 각각의 암호화에 사용된 암호화키를 식별하며,
상기 암호화 데이터 확인부는
상기 복수의 암호화 데이터들 각각의 암호화에 사용된 암호화키의 식별이 완료되면, 상기 복수의 암호화 데이터들 중 상기 적어도 하나의 제3 암호화키로 암호화가 수행된 적어도 하나의 제3 암호화 데이터를 확인하고,
상기 복호화부는
상기 데이터베이스로부터 상기 적어도 하나의 제3 암호화 데이터를 추출하고, 상기 키 저장부로부터 상기 적어도 하나의 제3 암호화 데이터 각각의 암호화에 사용된 암호화키를 추출한 후 추출된 암호화키를 기초로 상기 적어도 하나의 제3 암호화 데이터를 복호화하여 적어도 하나의 제3 평문 데이터를 생성하고,
상기 데이터 갱신부는
상기 키 저장부로부터 상기 복수의 암호화키들 중 가장 최신의 유효기한에 대한 정보에 대응되어 저장되어 있는 상기 제2 암호화키를 추출하고, 상기 제2 암호화키를 기초로 상기 적어도 하나의 제3 평문 데이터 각각을 암호화하여 적어도 하나의 제2 갱신 데이터를 생성한 후 상기 데이터베이스에 저장되어 있는 상기 적어도 하나의 제3 암호화 데이터를 상기 적어도 하나의 제2 갱신 데이터로 대체하는 데이터 암호화 저장 장치.
The method according to claim 1,
The encryption key verification unit
Storing a plurality of pieces of cryptographic key update information for the plurality of pieces of cryptographic data; checking information on a current time set in the data encryption and storage device, and if the current time among the plurality of cryptographic keys belongs to At least one third encryption key stored in correspondence with the information on past validity period,
The encryption key identifying unit
Identifying an encryption key used for encryption of each of the plurality of encrypted data for each of the plurality of encrypted data stored in the database,
The encrypted data verifying unit
When the identification of the encryption key used for encrypting each of the plurality of pieces of encrypted data is completed, at least one third piece of encrypted data, which has been encrypted with the at least one third piece of the encryption key,
The decoding unit
Extracting the at least one third encrypted data from the database, extracting an encryption key used for encryption of each of the at least one third encrypted data from the key storage unit, Decrypting the third encrypted data to generate at least one third plaintext data,
The data updating unit
Extracting, from the key storage unit, the second encryption key stored corresponding to the latest validity period information of the plurality of encryption keys, and extracting the at least one third plain text data Encrypt at least one third update data stored in the database, and replace at least one third update data stored in the database with the at least one second update data.
데이터 암호화 저장 장치의 동작 방법에 있어서,
복수의 암호화키들과 상기 복수의 암호화키들 각각을 식별하기 위한 식별 값이 서로 대응되어 저장되어 있으면서, 상기 복수의 암호화키들 각각에 대해 상기 복수의 암호화키들 각각에 대한 미리 지정된 유효기한에 대한 정보가 추가로 대응되어 저장되어 있는 키 저장부를 유지하는 단계;
데이터베이스에 암호화되어 저장될 평문 데이터의 특성에 따라 미리 구분된 복수의 데이터 특성 그룹들 별로, 상기 복수의 암호화키들 중 상기 복수의 데이터 특성 그룹들 각각에 포함되는 평문 데이터의 암호화에 사용되도록 미리 지정된 암호화키에 대한 식별 값이 하나씩 대응되어 기록되어 있는 암호화키 테이블을 저장하여 유지하는 단계;
복수의 암호화 데이터들 - 상기 복수의 암호화 데이터들은 복수의 평문 데이터들이 상기 복수의 암호화키들 중 상기 암호화키 테이블 상에서 상기 복수의 평문 데이터들 각각이 속하는 데이터 특성 그룹에 대응되어 저장되어 있는 암호화키로 암호화가 수행됨에 따라 생성된 데이터임 - 이 저장되어 있는 상기 데이터베이스를 유지하는 단계;
제1 평문 데이터와 상기 제1 평문 데이터에 대한 데이터 저장 명령이 입력되면, 상기 제1 평문 데이터의 특성을 확인하여 상기 암호화키 테이블로부터 상기 제1 평문 데이터가 속하는 데이터 특성 그룹에 대응되어 저장되어 있는 제1 암호화키에 대한 식별 값을 추출하는 단계;
상기 추출된 제1 암호화키에 대한 식별 값을 기초로 상기 키 저장부로부터 상기 추출된 제1 암호화키에 대한 식별 값에 대응되어 저장되어 있는 상기 제1 암호화키를 추출하는 단계;
상기 추출된 제1 암호화키를 기초로 상기 제1 평문 데이터에 대한 암호화를 수행하여 제1 암호화 데이터를 생성한 후 상기 제1 암호화 데이터를 상기 데이터베이스에 저장하는 단계;
상기 복수의 암호화 데이터들에 대한 암호화키 전부 갱신 명령이 입력되면, 상기 키 저장부로부터 상기 복수의 암호화키들 중 가장 최신의 유효기한에 대한 정보에 대응되어 저장되어 있는 제2 암호화키를 확인하는 단계;
상기 데이터베이스 상에 저장되어 있는 상기 복수의 암호화 데이터들 각각에 대해 상기 복수의 암호화 데이터들 각각의 암호화에 사용된 암호화키를 식별하는 단계;
상기 복수의 암호화 데이터들 각각의 암호화에 사용된 암호화키의 식별이 완료되면, 상기 복수의 암호화 데이터들 중 상기 제2 암호화키로 암호화가 수행되지 않은 적어도 하나의 제2 암호화 데이터를 확인하는 단계;
상기 데이터베이스로부터 상기 적어도 하나의 제2 암호화 데이터를 추출하고, 상기 키 저장부로부터 상기 적어도 하나의 제2 암호화 데이터 각각의 암호화에 사용된 암호화키를 추출한 후 추출된 암호화키를 기초로 상기 적어도 하나의 제2 암호화 데이터를 복호화하여 적어도 하나의 제2 평문 데이터를 생성하는 단계; 및
상기 키 저장부로부터 상기 제2 암호화키를 추출하고, 상기 추출된 제2 암호화키를 기초로 상기 적어도 하나의 제2 평문 데이터 각각을 암호화하여 적어도 하나의 제1 갱신 데이터를 생성한 후 상기 데이터베이스에 저장되어 있는 상기 적어도 하나의 제2 암호화 데이터를 상기 적어도 하나의 제1 갱신 데이터로 대체하는 단계
를 포함하는 데이터 암호화 저장 장치의 동작 방법.
A method of operating a data encryption storage device,
Wherein information on a predetermined expiration date for each of the plurality of encryption keys is added to each of the plurality of encryption keys while the plurality of encryption keys and identification values for identifying each of the plurality of encryption keys are stored in association with each other Storing a key storage unit corresponding to the key storage unit;
A plurality of data attribute groups, which are previously classified according to characteristics of plaintext data to be encrypted and stored in the database, encryption and pre-specified encryption for use in encrypting plaintext data included in each of the plurality of data character groups among the plurality of encryption keys Storing and maintaining an encryption key table in which identification values for keys are associated one by one and recorded;
Wherein the plurality of pieces of encrypted data are encrypted with an encryption key in which a plurality of plaintext data is stored in the encryption key table corresponding to the data property group to which each of the plurality of plaintext data belongs, Maintaining the database in which the generated data is stored;
And a second storage unit for storing the first plain text data and the first plain text data stored in the encryption key table in correspondence with the data characteristic group to which the first plain text data belongs, Extracting an identification value for the first encryption key;
Extracting the first encryption key stored corresponding to the extracted identification value of the first encryption key from the key storage unit based on the extracted identification value of the first encryption key;
Encrypting the first plaintext data based on the extracted first encryption key to generate first encrypted data, and storing the first encrypted data in the database;
Confirming a second encryption key stored in association with information on the latest validity period of the plurality of encryption keys from the key storage unit when an encryption key update command for the plurality of encrypted data is input ;
Identifying an encryption key used to encrypt each of the plurality of encrypted data for each of the plurality of encrypted data stored on the database;
Confirming at least one second encrypted data that is not encrypted with the second encryption key among the plurality of encrypted data when identification of the encryption key used to encrypt each of the plurality of encrypted data is completed;
Extracting the at least one second encrypted data from the database, extracting an encryption key used for encryption of each of the at least one second encrypted data from the key storage unit, Decrypting the second encrypted data to generate at least one second plaintext data; And
Extracting the second encryption key from the key storage unit, encrypting each of the at least one second plaintext data based on the extracted second encryption key to generate at least one first update data, Replacing the stored at least one second encrypted data with the at least one first update data
Lt; RTI ID = 0.0 > 1, < / RTI >
삭제delete 제6항에 있어서,
상기 복수의 데이터 특성 그룹들은
상기 데이터베이스에 암호화되어 저장될 평문 데이터를 구성하는 데이터열에서 선정된(predetermined) 제1 자리에 위치하는 일부 데이터 값의 특성에 따라 구분된 그룹들이고,
상기 복수의 암호화 데이터들은
상기 복수의 평문 데이터들 각각에 대해, 상기 복수의 평문 데이터들 각각을 구성하는 데이터열에서 선정된 제2 자리 - 상기 선정된 제2 자리는 상기 선정된 제1 자리와 중복되지 않음 - 에 위치하는 적어도 하나의 데이터 값에 대해서만 대응되는 암호화키로 암호화가 수행된 데이터이며,
상기 제1 암호화키에 대한 식별 값을 추출하는 단계는
상기 제1 평문 데이터와 상기 제1 평문 데이터에 대한 데이터 저장 명령이 입력되면, 상기 제1 평문 데이터를 구성하는 데이터열에서 상기 선정된 제1 자리에 위치하는 일부 데이터 값의 특성을 확인하여 상기 암호화키 테이블로부터 상기 제1 평문 데이터가 속하는 데이터 특성 그룹에 대응되어 저장되어 있는 상기 제1 암호화키에 대한 식별 값을 추출하고,
상기 제1 암호화 데이터를 상기 데이터베이스에 저장하는 단계는
상기 제1 평문 데이터를 구성하는 데이터열에서 상기 선정된 제2 자리에 위치하는 적어도 하나의 제1 데이터 값에 대해서만 상기 제1 암호화키를 기초로 암호화를 수행하여 상기 제1 암호화 데이터를 생성하는 데이터 암호화 저장 장치의 동작 방법.
The method according to claim 6,
The plurality of data characteristic groups
The groups being classified according to characteristics of some data values located at a predetermined first position in a data string constituting plain text data to be encrypted and stored in the database,
The plurality of encrypted data
Wherein, for each of the plurality of plaintext data, a second digit selected from a data string constituting each of the plurality of plaintext data, wherein the second selected digit is not overlapped with the selected first digit Data encrypted with an encryption key corresponding to at least one data value,
The step of extracting the identification value for the first encryption key
Wherein when the data storage command for the first plaintext data and the first plaintext data is inputted, a characteristic of the data value located in the first predetermined position is checked in the data string constituting the first plaintext data, Extracting an identification value for the first encryption key corresponding to the data property group to which the first plain text data belongs from the key table,
The step of storing the first encrypted data in the database
Encrypting the at least one first data value located at the second predetermined position in the data string constituting the first plain text data based on the first encryption key to generate the first encrypted data A method of operating an encrypted storage device.
제8항에 있어서,
상기 암호화키를 식별하는 단계는
상기 데이터베이스를 참조하여 상기 복수의 암호화 데이터들 각각에 대해, 상기 복수의 암호화 데이터들 각각을 구성하는 데이터열에서 상기 선정된 제1 자리에 위치하는 일부 데이터 값의 특성을 확인해서 상기 복수의 데이터 특성 그룹들 중 상기 복수의 암호화 데이터들 각각이 속하는 데이터 특성 그룹을 확인하는 단계;
상기 복수의 암호화 데이터들 각각이 속하는 데이터 특성 그룹의 확인이 완료되면, 상기 암호화키 테이블로부터 상기 복수의 암호화 데이터들 각각이 속하는 데이터 특성 그룹에 대응되어 저장되어 있는 암호화키에 대한 식별 값을 추출하는 단계; 및
상기 복수의 암호화 데이터들 각각에 대해서 추출된 암호화키에 대한 식별 값과 상기 키 저장부에 저장되어 있는 상기 복수의 암호화키들 각각에 대응하는 식별 값을 매칭시켜 상기 복수의 암호화 데이터들 각각의 암호화에 사용된 암호화키를 식별하는 단계
를 포함하는 데이터 암호화 저장 장치의 동작 방법.
9. The method of claim 8,
Wherein identifying the encryption key comprises:
For each of the plurality of encrypted data by referring to the database, a characteristic of some data value located at the first predetermined position in a data string constituting each of the plurality of encrypted data, Identifying a data property group to which each of the plurality of encrypted data belongs;
Extracting an identification value for an encryption key stored in association with a data property group to which each of the plurality of encrypted data belongs from the encryption key table when the confirmation of the data property group to which each of the plurality of encrypted data belongs is completed step; And
The identification value of the extracted encryption key is matched with the identification value corresponding to each of the plurality of encryption keys stored in the key storage unit for each of the plurality of encrypted data, Identifying the used encryption key
Lt; RTI ID = 0.0 > 1, < / RTI >
제6항에 있어서,
상기 복수의 암호화 데이터들에 대한 암호화키 일부 갱신 명령이 입력되면, 상기 데이터 암호화 저장 장치에 설정되어 있는 현재 시간에 대한 정보를 확인한 후 상기 키 저장부로부터 상기 복수의 암호화키들 중 상기 현재 시간이 속해있는 유효기한보다 과거의 유효기한에 대한 정보에 대응되어 저장되어 있는 적어도 하나의 제3 암호화키를 확인하는 단계;
상기 데이터베이스 상에 저장되어 있는 상기 복수의 암호화 데이터들 각각에 대해 상기 복수의 암호화 데이터들 각각의 암호화에 사용된 암호화키를 식별하는 단계;
상기 복수의 암호화 데이터들 각각의 암호화에 사용된 암호화키의 식별이 완료되면, 상기 복수의 암호화 데이터들 중 상기 적어도 하나의 제3 암호화키로 암호화가 수행된 적어도 하나의 제3 암호화 데이터를 확인하는 단계;
상기 데이터베이스로부터 상기 적어도 하나의 제3 암호화 데이터를 추출하고, 상기 키 저장부로부터 상기 적어도 하나의 제3 암호화 데이터 각각의 암호화에 사용된 암호화키를 추출한 후 추출된 암호화키를 기초로 상기 적어도 하나의 제3 암호화 데이터를 복호화하여 적어도 하나의 제3 평문 데이터를 생성하는 단계; 및
상기 키 저장부로부터 상기 복수의 암호화키들 중 가장 최신의 유효기한에 대한 정보에 대응되어 저장되어 있는 상기 제2 암호화키를 추출하고, 상기 제2 암호화키를 기초로 상기 적어도 하나의 제3 평문 데이터 각각을 암호화하여 적어도 하나의 제2 갱신 데이터를 생성한 후 상기 데이터베이스에 저장되어 있는 상기 적어도 하나의 제3 암호화 데이터를 상기 적어도 하나의 제2 갱신 데이터로 대체하는 단계
를 더 포함하는 데이터 암호화 저장 장치의 동작 방법.
The method according to claim 6,
Storing a plurality of pieces of cryptographic key update information for the plurality of pieces of cryptographic data; checking information on a current time set in the data encryption and storage device, and if the current time among the plurality of cryptographic keys belongs to Identifying at least one third encryption key stored in association with information on a past expiration date that is earlier than the expiration date;
Identifying an encryption key used to encrypt each of the plurality of encrypted data for each of the plurality of encrypted data stored on the database;
Identifying at least one third encrypted data that has been encrypted with the at least one third encryption key among the plurality of encrypted data when identification of the encryption key used to encrypt each of the plurality of encrypted data is completed ;
Extracting the at least one third encrypted data from the database, extracting an encryption key used for encryption of each of the at least one third encrypted data from the key storage unit, Decrypting the third encrypted data to generate at least one third plain text data; And
Extracting, from the key storage unit, the second encryption key stored corresponding to the latest validity period information of the plurality of encryption keys, and extracting the at least one third plain text data Replacing the at least one third encrypted data stored in the database with the at least one second update data after encrypting each of the at least one second update data and generating at least one second update data,
Lt; RTI ID = 0.0 > 1, < / RTI >
제6항, 제8항, 제9항 또는 제10항 중 어느 한 항의 방법을 수행하는 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.A computer-readable recording medium recording a program for performing the method of any one of claims 6, 8, 9, and 10. 제6항, 제8항, 제9항 또는 제10항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램.A computer program stored in a storage medium for executing the method of any one of claims 6, 8, 9, or 10 through a combination with a computer.
KR1020160115827A 2016-09-08 2016-09-08 Data encryption storing apparatus for encryption key change and update through key positioning and operating method thereof Expired - Fee Related KR101869067B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160115827A KR101869067B1 (en) 2016-09-08 2016-09-08 Data encryption storing apparatus for encryption key change and update through key positioning and operating method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160115827A KR101869067B1 (en) 2016-09-08 2016-09-08 Data encryption storing apparatus for encryption key change and update through key positioning and operating method thereof

Publications (2)

Publication Number Publication Date
KR20180028306A KR20180028306A (en) 2018-03-16
KR101869067B1 true KR101869067B1 (en) 2018-06-20

Family

ID=61910250

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160115827A Expired - Fee Related KR101869067B1 (en) 2016-09-08 2016-09-08 Data encryption storing apparatus for encryption key change and update through key positioning and operating method thereof

Country Status (1)

Country Link
KR (1) KR101869067B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12406100B2 (en) 2021-11-01 2025-09-02 Samsung Electronics Co., Ltd. Storage device including storage controller and operating method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100769879B1 (en) * 2006-08-31 2007-10-24 연세대학교 산학협력단 Reader Collision Avoidance in Mobile RDF Reader Environment
KR100929336B1 (en) 2001-03-29 2009-12-03 파나소닉 주식회사 Data protection system that protects your data by encrypting it
JP4617805B2 (en) 2004-09-28 2011-01-26 ソニー株式会社 Information distribution system and information distribution method, information processing apparatus and information processing method, reception apparatus and reception method, and program

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101141497B1 (en) * 2008-12-01 2012-05-15 장선영 Test system for holding data security and method of the same
KR101016126B1 (en) * 2008-12-22 2011-02-17 서울대학교산학협력단 Data encryption system and method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100929336B1 (en) 2001-03-29 2009-12-03 파나소닉 주식회사 Data protection system that protects your data by encrypting it
JP4617805B2 (en) 2004-09-28 2011-01-26 ソニー株式会社 Information distribution system and information distribution method, information processing apparatus and information processing method, reception apparatus and reception method, and program
KR100769879B1 (en) * 2006-08-31 2007-10-24 연세대학교 산학협력단 Reader Collision Avoidance in Mobile RDF Reader Environment

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12406100B2 (en) 2021-11-01 2025-09-02 Samsung Electronics Co., Ltd. Storage device including storage controller and operating method

Also Published As

Publication number Publication date
KR20180028306A (en) 2018-03-16

Similar Documents

Publication Publication Date Title
US10986073B2 (en) Vaultless tokenization engine
Ma et al. Cdrep: Automatic repair of cryptographic misuses in android applications
CN106506159A (en) Encryption method and equipment for key safety
CN111104691A (en) Sensitive information processing method and device, storage medium and equipment
US20110055586A1 (en) Secure PIN Character Retrieval and Setting Using PIN Offset Masking
CN110070363B (en) Account management method, verification method and terminal device in blockchain network
CN101350718A (en) A protection method for playing content authority range based on user identification module
CN106529317A (en) Web application encryption and decryption method based on Shadow DOM
CN104881595B (en) The self-help remote unlocking method managed based on PIN code
Tiwari et al. India’s “Aadhaar” Biometric ID: Structure, Security, and Vulnerabilities
KR101936272B1 (en) Data encryption management apparatus for supporting life-cycle management of the encryption key and operating method thereof
KR101869067B1 (en) Data encryption storing apparatus for encryption key change and update through key positioning and operating method thereof
JP4445331B2 (en) Database apparatus, system and program
CN118278957A (en) NFT-based multi-account payment management method, device, equipment and storage medium
CN118395474A (en) Privacy calculation enhanced blockchain solving system for safe circulation of supply chain data
WO2011058629A1 (en) Information management system
KR101879839B1 (en) Database encryption apparatus for supporting life-cycle management of the encryption key for large database and operating method thereof
CN117063439A (en) Method for key management and computer-based system
CN112380574A (en) Data chaining method based on block chain and SE chip
CN110166493A (en) A kind of social client address list dynamic protection method and device
KR102417811B1 (en) Document translation service server which provides document translation services with personal information protection function and the operating method thereof
CN111859408A (en) File encryption and decryption method and device, electronic device, and readable storage medium
KR101451828B1 (en) Data encryption and decryption device and method
KR101693085B1 (en) Device and method for approval of file export
CN103745163B (en) The method for secure storing and device of file

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

D13-X000 Search requested

St.27 status event code: A-1-2-D10-D13-srh-X000

D14-X000 Search report completed

St.27 status event code: A-1-2-D10-D14-srh-X000

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

E13-X000 Pre-grant limitation requested

St.27 status event code: A-2-3-E10-E13-lim-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

PC1903 Unpaid annual fee

St.27 status event code: A-4-4-U10-U13-oth-PC1903

Not in force date: 20210613

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

PC1903 Unpaid annual fee

St.27 status event code: N-4-6-H10-H13-oth-PC1903

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20210613

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301