KR101193599B1 - System for encryption and decryption of data and thereof - Google Patents

System for encryption and decryption of data and thereof Download PDF

Info

Publication number
KR101193599B1
KR101193599B1 KR1020110051162A KR20110051162A KR101193599B1 KR 101193599 B1 KR101193599 B1 KR 101193599B1 KR 1020110051162 A KR1020110051162 A KR 1020110051162A KR 20110051162 A KR20110051162 A KR 20110051162A KR 101193599 B1 KR101193599 B1 KR 101193599B1
Authority
KR
South Korea
Prior art keywords
data
unit
merged
code
merge
Prior art date
Application number
KR1020110051162A
Other languages
Korean (ko)
Inventor
이창석
Original Assignee
주식회사 코맥스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 코맥스 filed Critical 주식회사 코맥스
Priority to KR1020110051162A priority Critical patent/KR101193599B1/en
Application granted granted Critical
Publication of KR101193599B1 publication Critical patent/KR101193599B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation

Abstract

PURPOSE: A system for encrypting and decrypting data and a method thereof are provided not to decipher the data when an external invasion for a database is generated. CONSTITUTION: A program storing unit(31) stores a program for encrypting and decrypting code generation of data. A controlling unit(32) executes a library program for encryption and decryption of the data. A data encrypting unit(30A) performs the encryption of the data with a library of the controlling unit. A data decrypting unit(30B) decrypts the data stored in a database unit(40) after the data decoding unit is encrypted by the data encrypting unit. [Reference numerals] (10) Data inputting unit; (20) Data outputting unit; (31) Program storing unit; (32) Controlling unit; (33A) Data converting unit; (34A) Data changing unit; (35A) String dividing/merging unit; (36B) String extracting/merging unit; (37B) Data reverse changing unit; (38B) Data reverse converting unit; (40) Database

Description

데이터의 암호화 및 복호화 시스템 및 그 방법{System for encryption and decryption of data and thereof} System for encryption and decryption system and method thereof

본 발명은 데이터 베이스에 저장되는 데이터를 암호화 및 복호화하는 시스템에 관한 것으로서, 더욱 상세하게는 데이터를 기계어로 암호화하여 데이터 베이스에 저장한 후 이를 다시 복호화함으로써 데이터 베이스에 대한 외부 침입자가 접근 권한을 가지더라도 데이터를 해독할 수 없을 뿐만 아니라 암호화와 복호화시 데이터의 처리를 병렬로 처리함으로써 안정적이고 신속한 처리가 가능한 데이터의 암호화 및 복호화 시스템 및 그 방법에 관한 것이다.The present invention relates to a system for encrypting and decrypting data stored in a database, and more particularly, encrypts data in machine language, stores the data in a database, and decrypts the data again to decrypt the data. The present invention relates to a system and method for encrypting and decrypting data that can not only decrypt data, but also enables stable and rapid processing by processing data in parallel during encryption and decryption.

네트워크를 비롯하는 정보시스템에서는 불특정다수의 사용자가 사용하는 환경하에 놓여 있으며, 그에 따라 데이터가 외부 환경에 노출되어 있기 때문에 불법적인 해킹 등으로 인하여 접속자의 ID와 접속자 패스워드를 알 경우 데이터가 그대로 노출되는 문제점이 있다. 이에 대한 대책으로 데이터의 암호화가 요구되고 있다.In an information system including a network, an unspecified number of users are used, and data is exposed to the external environment. Therefore, when the ID and password of the visitor are known due to illegal hacking, the data is exposed. There is a problem. As a countermeasure against this, data encryption is required.

그 중에서 일반적으로 이용되고 있는 RSA법을 주로 이용하고 있으나 이 경우 신뢰성을 높이기 위하여 256비트 내지 1024비트의 데이터 길이를 가진 암호키의 사용을 요구하고 있으며 그에 따라 암호화와 복호화의 연산에 필요한 시간이 많이 드는 문제점이 있으며, 대량의 데이터를 취급하는 데이터검색시스템에 있어서는 연산시간의 증가가 의한 처리효율을 악화시키는 원인이 발생되는 문제점이 있다. 또한, 데이터, 예를 들면 각 문자에 대하여 대응되는 암호화된 테이블을 이용하여 이를 비교함으로써 데이터를 암호화와 복호화하는 기술이 이용되고 있으나 이 경우 각 데이터를 일일이 비교하여야 하기 때문에 암호화와 복호화에 많은 시간이 소용되는 문제점이 있다.Among them, the RSA method, which is generally used, is mainly used, but in this case, the use of an encryption key having a data length of 256 bits to 1024 bits is required in order to increase the reliability. There is a problem, and in a data retrieval system that handles a large amount of data, there is a problem that causes a deterioration in processing efficiency due to an increase in computation time. In addition, a technique of encrypting and decrypting data is used by comparing data, for example, by using an encrypted table corresponding to each character, but in this case, since each data has to be compared one by one, a large amount of time is required for encryption and decryption. There is a problem.

따라서 안정적이고 빠른 처리 속도를 가진 데이터의 암호화와 복호화를 할 수 있는 시스템의 개발이 필요한 실정이다.Therefore, it is necessary to develop a system capable of encrypting and decrypting data with stable and fast processing speed.

본 발명의 목적은 안정적이고 빠른 처리 속도로 데이터 베이스에 저장되는 데이터를 암호화하고 복호화할 수 있는 데이터의 암호화 및 복호화 시스템 및 그 방법을 제공하는 것이다.It is an object of the present invention to provide a data encryption and decryption system and method for encrypting and decrypting data stored in a database at a stable and fast processing speed.

또한, 본 발명의 다른 목적은 데이터 베이스에 대하여 암호화된 데이터를 관계형 데이터 베이스로 저장 관리하도록 하여 외부로부터 데이터 베이스가 침입되어도 데이터를 획득할 수 없도록 하는 데이터의 암호화 및 복호화 시스템 및 그 방법을 제공하는 것이다.In addition, another object of the present invention is to provide a system and method for encrypting and decrypting data in which the encrypted data for the database is stored and managed in a relational database so that data cannot be obtained even if the database is invaded from the outside. will be.

본 발명에 의하면, 데이터의 암호화와 복호화 코드 생성을 위한 프로그램이 저장된 프로그램 저장부(31), 데이터 베이스의 접속을 위한 사용자의 로그인시 데이터의 암호화와 복호화를 위한 라이브러리 프로그램을 실행하기 위한 제어부(32), 제어부(32)의 라이브러리에 의하여 데이터의 암호화를 수행하기 위한 데이터 암호화부(30A), 및 데이터 암호화부(30A)에 의하여 암호화되어 데이터 베이스부(40)에 저장된 데이터를 복호화하기 위한 데이터 복호화부(30B)를 포함하며, 상기 데이터 암호화부(30A)는 입력받은 문자열 데이터(Dc)를 ASCⅡ 코드로 변환한 후에 이를 16bit의 4자리로 변환시켜 니블(nibble) 단위로 분리하고 니블 단위 내에서 데이터의 위치를 교환시킨 데이터에 대하여 일정한 간격의 인덱스 코드로 분리 조합시킴으로써 암호화된 병합 데이터(DE)를 생성하는 데이터의 암호화 및 복호화 시스템이 제공된다.According to the present invention, a program storage unit 31 storing a program for generating data encryption and decryption code, a control unit 32 for executing a library program for encrypting and decrypting data when a user logs in for accessing a database. ), The data encryption unit 30A for encrypting the data by the library of the control unit 32, and the data decryption for decrypting the data encrypted by the data encryption unit 30A and stored in the database unit 40. And a part 30B. The data encryption part 30A converts the input character string data Dc into ASCII codes, converts the character string data into 4 digits of 16 bits, and separates them into nibble units. Encrypted merged data (DE) by separating and combining the positions of the data with the index code at regular intervals. A system for encrypting and decrypting data to be generated is provided.

여기서, 상기 데이터 암호화부(30A)는 입력받은 문자열 데이터(Dc)를 제어부(32)에 의하여 문자열을 한자리씩 ASCⅡ 코드의 데이터(Da)로 변환한 후에 변환된 코드값을 숫자 형식의 4자리수의 데이터(Df)로 재변환한 후 이를 16bit의 4자리의 데이터로 변환하기 위한 데이터 변환부(33A)를 구비하는 것이 바람직하다.Here, the data encrypting unit 30A converts the input string data Dc into the data Da of the ASCII code one by one by the control unit 32, and then converts the converted code value into a four-digit number. It is preferable to have a data converter 33A for reconverting the data Df and converting the data Df into 16-bit four-digit data.

또한, 데이터 변환부(33A)에 의하여 16bit의 4자리의 데이터를 니블 단위로 분리하여 니블 단위 내에서 데이터의 위치를 교환시키기 위한 데이터 교환부(34A)를 더 구비하는 것이 바람직하다.In addition, the data converter 33A preferably further includes a data exchanger 34A for separating 16-bit four-digit data into nibble units and exchanging positions of data within the nibble unit.

또한, 니블 단위 내에서 데이터의 위치의 이동은 각 니블 단위 내에서 첫번째와 네번째의 데이터를 이동하여 1차 교환된 데이터(Df′)가 생성되는 것이 바람직하다.In addition, in the movement of the position of data in the nibble unit, it is preferable that the first exchanged data Df 'is generated by moving the first and fourth data in each nibble unit.

또한, 1차 교환된 데이터(Df′)를 문자열 분리/병합부(35A)에 의하여 문자열 32bit의 데이터로 변환시키고 병합하여 병합 데이터(Dm)를 생성하며, 병합 데이터(Dm)에 대하여 홀수와 짝수번째 인덱스 코드별로 데이터를 분리시킨 후에, 각각 홀수번째의 인덱스 코드(2n+1, n=0, 1, 3, ...)로 이루어진 데이터들을 병합시켜 생성된 홀수번째 인덱스 코드 데이터의 병합 데이터(Dom)와 짝수번째 인덱스 코드(2n, n=0, 1, 2, 3, ...)로 이루어진 데이터를 병합시켜 생성된 짝수번째 인덱스 코드 데이터의 병합 데이터(Dem)를 하나의 데이터로 병합하여 암호화된 병합 데이터(DE)를 생성하기 위한 문자열 분리/병합부(35A)를 더 구비하는 것이 바람직하다.In addition, the first exchanged data (Df ') is converted into 32-bit data by the character string separating / merge unit 35A and merged to generate merged data Dm, and odd and even numbers are applied to the merged data Dm. After separating the data by the first index code, merge data of odd index code data generated by merging data consisting of odd index codes (2n + 1, n = 0, 1, 3, ...), respectively Dom) and merge data (Dem) of even-numbered index code data generated by merging data consisting of even-numbered index codes (2n, n = 0, 1, 2, 3, ...) into one data Preferably, the apparatus further includes a character string separating / merge unit 35A for generating encrypted merge data DE.

또한, 상기 데이터 복호화부(30B)는 데이터 베이스부(40A)에 암호화되어 문자열 32bit로 암호화된 병합 데이터(DE)의 문자열을 1/2로 분리하여 홀수번째 인덱스 코드 데이터의 병합 데이터(Dom)와 짝수번째 인덱스 코드 데이터의 병합 데이터(Dem)로 분리 배열한 후에 홀수번째 인덱스 코드 데이터의 병합 데이터(Dom)와 짝수번째 인덱스 코드 데이터의 병합 데이터(Dem)를 서로 순차적으로 교합(inter-merging)하여 하나의 병합된 병합 데이터(Dm)를 생성하기 위한 문자열 추출/병합부(36B)를 더 구비하는 것이 바람직하다.In addition, the data decryption unit 30B separates the string of the merged data DE encrypted by the database unit 40A and encoded by the 32-bit string into 1/2 to merge the data Dom of the odd-numbered index code data. After separating and arranging the merged data (Dem) of even-numbered index code data, the merged data (Dom) of odd-numbered index code data and the merged data (Dem) of even-numbered index code data are sequentially inter-merged with each other. Preferably, the apparatus further includes a string extracting / merge unit 36B for generating one merged merge data Dm.

또한, 문자열 추출/병합부(36B)에 의하여 형성된 병합 데이터(Dm)의 문자열에 대하여 4자리수로 묶어 16bit HEX 코드 값의 데이터(Df˝)로 변환시킨 후에 변환된 4자리수의 16bit 형식의 데이터를 니블 단위로 분리시키며, 각각 니블 단위로 분리된 데이터에 대하여 첫번째 자리와 네번째 자리의 데이터를 교환시킨 데이터(Di˝)를 생성하기 위한 데이터 역교환부(37B)를 더 구비하는 것이 바람직하다.Further, after converting the string of the merged data Dm formed by the character string extracting / merge unit 36B into four digits and converting the data into 16-bit HEX code value Df \, the converted 4-digit 16-bit data is converted. It is preferable to further include a data inverse exchange section 37B for generating data Di ', which is separated in nibble units and in which data of the first and fourth digits is exchanged with respect to the data separated in nibble units.

또한, 데이터 역교환부(37B)에 의하여 생성된 16bit 형식의 데이터(Di˝)를 ASCⅡ 코드의 형태로 인식하여 ASCⅡ 코드 값의 데이터(Da)로 변환시킨 후 변환된 ASCⅡ 코드 값의 데이터(Da)를 문자열 데이터(Dc)로 변환시키기 위한 데이터 역변환부(38B)를 더 구비하는 것이 바람직하다.In addition, the 16 bit format data Di 'generated by the data inverse exchange section 37B is recognized in the form of ASCII code, converted into data Da of ASCII code value, and then converted into data Da of the converted ASCII code value. ) Is preferably further provided with a data inverse converter 38B for converting the character string into the character string data Dc.

한편, 본 발명의 다른 일면에 의하면, 문자열 데이터(Dc)가 입력부(10)에 전송될 경우 데이터 변환부(33A)에 의하여 입력부(10)로부터 입력 받은 문자열 데이터(Dc)를 한자리씩 ASCⅡ 코드의 데이터(Da)로 변환시키는 제1 단계, 변환된 ASCⅡ 코드의 데이터(Da)를 숫자 형식의 4자리수의 데이터(Df)로 재변환한 후 이를 16bit의 4자리의 데이터로 변환시키는 제2 단계, 16bit의 4자리로 변환된 데이터를 니블(nibble) 단위로 분리시킨 후 니블 단위 내에서 첫번째 데이터(D4n+1, n=0, 1, 3,...)와 네번째 데이터(D4n, n=0, 1, 3,...)의 위치를 이동하여 니블 단위 내에서 데이터의 위치를 교환시켜 1차 교환된 데이터(Df′)를 생성시키는 제3 단계, 1차 교환된 데이터(Df′)를 문자열 32bit의 데이터로 변환시키고 병합하여 병합 데이터(Dm)를 생성하는 제4 단계, 및 병합 데이터(Dm)에 대하여 홀수와 짝수번째 인덱스 코드별로 데이터를 분리시킨 후에 각각 홀수번째의 인덱스 코드(2n+1, n=0, 1, 3, ...)로 이루어진 데이터를 병합시켜 생성된 홀수번째 인덱스 코드 데이터의 병합 데이터(Dom)와 짝수번째 인덱스 코드(2n, n=0, 1, 2, 3, ...)로 이루어진 데이터를 병합시켜 생성된 짝수번째 인덱스 코드 데이터의 병합 데이터(Dem)를 하나의 데이터로 병합하여 암호화된 병합 데이터(DE)를 생성하는 제5 단계를 포함하여 데이터의 암호화를 수행하며 이에 대한 역과정의 복호화를 수행하는 데이터의 암호화 및 복호화의 방법이 제공된다.On the other hand, according to another aspect of the present invention, when the string data (Dc) is transmitted to the input unit 10, the character string data (Dc) input from the input unit 10 by the data conversion unit 33A by the single digit of the ASCII code A first step of converting the data Da into a data of the converted ASCII code Da and converting the data Da into a 4-digit data Df in numeric format and converting the data Da into 16-bit 4-digit data; After separating 16bit 4-digit data into nibble units, the first data (D4n + 1, n = 0, 1, 3, ...) and the fourth data (D4n, n = 0) within the nibble unit 3, step 1, 3, ...) to move the position of the data within the nibble unit to generate the first exchanged data (Df '), the first exchanged data (Df') A fourth step of generating merged data Dm by converting and merging into 32-bit data of a character string, and a hole for merged data Dm Merge data of odd-numbered index code data generated by separating data by and even-numbered index codes, and then merging data consisting of odd-numbered index codes (2n + 1, n = 0, 1, 3, ...), respectively. Merge merge data (Dem) of even-numbered index code data created by merging data consisting of (Dom) and even-numbered index codes (2n, n = 0, 1, 2, 3, ...) into one data And a fifth step of generating encrypted merged data DE, there is provided a method of encrypting and decrypting data which performs data encryption and decrypts the reverse process thereto.

여기서, 암호화된 병합 데이터(DE)의 문자열을 1/2로 분리하여 홀수번째 인덱스 코드 데이터의 병합 데이터(Dom)와 짝수번째 인덱스 코드 데이터의 병합 데이터(Dem)로 분리 배열한 후에 홀수번째 인덱스 코드 데이터의 병합 데이터(Dom)와 짝수번째 인덱스 코드 데이터의 병합 데이터(Dem)를 서로 순차적으로 교합(inter-merging)하여 하나의 병합된 병합 데이터(Dm)를 생성하는 제6 단계, 병합 데이터(Dm)의 문자열에 대하여 4자리수로 묶어 16bit HEX 코드 값의 데이터(Df˝)로 변환시킨 후에 변환된 4자리수의 16bit 형식의 데이터를 니블 단위로 분리시키며, 각각 니블 단위로 분리된 데이터에 대하여 첫번째 자리와 네번째 자리의 데이터를 교환시킨 데이터(Di˝)를 생성하는 제7 단계, 및 상기 데이터(Di˝)를 ASCⅡ 코드의 형태로 인식하여 ASCⅡ 코드 값의 데이터(Da)로 변환시킨 후 변환된 ASCⅡ 코드 값의 데이터(Da)를 문자열 데이터(Dc)로 변환시키는 제8 단계를 더 포함하는 것이 바람직하다.Here, the encrypted string of the merge data (DE) is divided into 1/2, the merged data (Dom) of the odd-numbered index code data and the separated data are arranged and merged (Dem) of the even-numbered index code data, and then the odd-numbered index code A sixth step of generating one merged merged data Dm by inter-merging the merged data Dom of the data and the merged data Dem of the even-numbered index code data sequentially; After converting the string into 4 digits and converting it into 16-bit HEX code data (Df˝), the converted 4-digit 16-bit format data is divided into nibble units. A seventh step of generating data Di 'having exchanged the fourth and fourth digits of data; and recognizing the data Di' in the form of ASCII code and converting it into data Da of the ASCII code value. To the data (Da) of the ASCⅡ code value conversion after Keane further comprising an eighth step of converting a string of data (Dc) is preferred.

본 발명의 바람직한 실시예에 따른 데이터의 암호화 및 복호화 시스템에 의하면, 암호화 테이블을 이용하지 않고 암호화 최소한의 암복화 과정을 거치는 라이브러리를 이용하여 데이터를 변환 및 가공하여 데이터베이스에 저장하도록 함으로써 신속하고 정확하게 데이터를 암호화함과 동시에 데이터베이스에 대하여 외부침입이 있더라도 데이터를 해독할 수 없도록 할 수 있다.According to a system for encrypting and decrypting data according to a preferred embodiment of the present invention, data is converted quickly and accurately by using a library that undergoes minimal encryption and decryption without encryption tables and stored in a database. At the same time, it is possible to encrypt data and prevent data from being decrypted even if there is an external intrusion into the database.

도 1은 본 발명의 바람직한 실시예에 따른 데이터의 암호화 및 복호화 시스템의 블록도이다.
도 2는 본 발명의 바람직한 실시예에 따른 데이터의 복호화를 하는 과정을 나타낸 흐름도이다.
도 3은 본 발명의 바람직한 실시예에 따른 데이터의 복호화를 하는 과정을 나타낸 흐름도이다.
1 is a block diagram of a system for encrypting and decrypting data according to a preferred embodiment of the present invention.
2 is a flowchart illustrating a process of decoding data according to a preferred embodiment of the present invention.
3 is a flowchart illustrating a process of decoding data according to a preferred embodiment of the present invention.

이하, 첨부된 도면을 참조하면서 본 발명의 바람직한 실시예에 따른 데이터의 암호화 및 복호화 시스템에 대하여 상세히 설명하기로 한다.Hereinafter, a system for encrypting and decrypting data according to a preferred embodiment of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 바람직한 실시예에 따른 데이터의 암호화 및 복호화 시스템의 블록도이며, 도 2는 본 발명의 바람직한 실시예에 따른 데이터의 복호화를 하는 과정을 나타낸 흐름도이며, 도 3은 본 발명의 바람직한 실시예에 따른 데이터의 복호화를 하는 과정을 나타낸 흐름도이다.1 is a block diagram of a data encryption and decryption system according to a preferred embodiment of the present invention, FIG. 2 is a flowchart illustrating a process of decrypting data according to a preferred embodiment of the present invention, and FIG. A flowchart illustrating a process of decoding data according to a preferred embodiment.

도 1 내지 도 3에 도시된 바와 같이, 본 발명의 바람직한 실시예에 따른 데이터의 암호화 및 복호화 시스템은 데이터를 입출력하기 위한 입력부(10)와 출력부(20)에 접속되며, 데이터의 암호화와 복호화 코드 생성을 위한 프로그램이 저장된 프로그램 저장부(31), 데이터 베이스의 접속을 위한 사용자의 로그인시 프로그램 저장부(31)로부터 로그인 프로시져 호출 및 데이터의 암호화와 복호화를 위한 라이브러리 프로그램을 실행하기 위한 제어부(32), 제어부(32)의 라이브러리에 의하여 데이터의 암호화를 수행하기 위한 데이터 암호화부(30A), 및 데이터 암호화부(30A)에 의하여 암호화되어 데이터 베이스부(40)에 저장된 데이터를 복호화하기 위한 데이터 복호화부(30B)로 이루어진다.As shown in Figures 1 to 3, the data encryption and decryption system according to a preferred embodiment of the present invention is connected to the input unit 10 and the output unit 20 for inputting and outputting data, the data encryption and decryption A program storage unit 31 storing a program for generating a code, a control unit for executing a library program for calling a login procedure from the program storage unit 31 and for encrypting and decrypting data when the user logs in to access a database ( 32, data encryption unit 30A for encrypting data by the library of the control unit 32, and data for decrypting data stored in the database unit 40 encrypted by the data encryption unit 30A. It consists of the decoding part 30B.

여기서, 입출력부(10, 20)은 데이터를 입출력하기 위한 단말기로 이루어진다.Here, the input / output units 10 and 20 are configured as terminals for inputting and outputting data.

한편, 프로그램 저장부(31)는 데이터를 암호화하고 복호화를 생성하기 위한 프로그램이 라이브러리의 형태로 저장된다.Meanwhile, the program storage unit 31 stores a program for encrypting data and generating decryption in the form of a library.

또한, 제어부(32)는 데이터 베이스부(40A)에 사용자 권한을 가진 자가 로그인시 암호화와 복호화를 위한 라이브러리 프로그램을 프로그램 저장부(31)로부터 독출하여 데이터 암호화부(30A)와 데이터 복호화부(30B)로 하여금 해당하는 동작을 수행하도록 제어하는 CPU로 이루어지는 것이 바람직하다.In addition, the control unit 32 reads the library program for encryption and decryption from the program storage unit 31 when a person having a user authority in the database unit 40A logs in from the data encryption unit 30A and the data decryption unit 30B. It is preferable that the CPU is configured to control to perform the corresponding operation.

데이터 암호화부(30A)는 제어부(32)에 의하여 입력부(10)로부터 입력 받은 문자열을 한자리씩 ASCⅡ 코드로 변환한 후에 변환된 코드값을 숫자 형식의 4자리수의 데이터로 재변환한 후 이를 16bit의 4자리로 변환하기 위한 데이터 변환부(33A), 데이터 변환부(33A)에 의하여 16bit의 4자리로 변환된 데이터를 니블(nibble) 단위로 분리하여 니블 단위 내에서 데이터의 위치를 이동, 바람직하게는 첫번째와 네번째의 데이터를 이동하여 니블 단위 내에서 데이터의 위치를 교환시키기 위한 데이터 교환부(34A), 및 데이터 교환부(34A)에 의하여 교환된 데이터를 문자열 32bit로 변환시킨 후에 전체 데이터에 대하여 홀수와 짝수번째 인덱스 코드(odd/even code)의 데이터로 분리한 후에 분리된 홀수번째의 인덱스 코드(odd code)로 이루어져 병합된 홀수번째 인덱스 코드 데이터의 병합 데이터(Dom)와 짝수번째 인덱스 코드(even code)로 이루어져 병합된 짝수번째 인덱스 코드 데이터의 병합 데이터(Dem)를 하나의 데이터로 병합하여 암호화된 병합 데이터(DE)를 생성하기 위한 문자열 분리/병합부(35A)로 이루어진다. The data encryption unit 30A converts the character string received from the input unit 10 by the control unit 32 into ASCII code one by one, and then reconverts the converted code value into four-digit data in numeric format. Data conversion unit 33A for converting to 4 digits and data converted into 16 digits of 4 digits by data conversion unit 33A are separated into nibble units to move the position of data within the nibble unit. Is a data exchanger 34A for moving the first and fourth data to exchange the position of the data within the nibble unit, and converts the data exchanged by the data exchanger 34A into 32-bit character strings. The combined odd-numbered index code data composed of odd-numbered index codes and then odd-numbered index code data. String separation for generating the merged data (DE) by merging the merged data (Dem) of the even-numbered index code data, which is composed of the sum data (Dom) and the even-numbered index code (even code), into one data. It consists of the merge part 35A.

데이터 복호화부(30B)는 데이터 베이스부(40A)에 암호화되어 문자열 32bit로 암호화된 병합 데이터(DE)의 문자열을 1/2로 분리하여 홀수번째 인덱스 코드 데이터의 병합 데이터(Dom)와 짝수번째 인덱스 코드 데이터의 병합 데이터(Dem)로 분리 배열한 후에 홀수번째 인덱스 코드 데이터의 병합 데이터(Dom)와 짝수번째 인덱스 코드 데이터의 병합 데이터(Dem)를 서로 순차적으로 교합(inter-merging)하여 하나의 병합된 병합 데이터(Dm)를 생성하기 위한 문자열 추출/병합부(36B), 문자열 추출/병합부(36B)에 의하여 형성된 병합 데이터(Dm)의 문자열에 대하여 4자리수로 묶어 16bit HEX 코드 값으로 변환시킨 후에 변환된 4자리수의 16bit 형식의 데이터(Df˝)를 니블 단위로 분리시키며, 각각 니블 단위로 분리된 데이터에 대하여 첫번째 자리와 네번째 자리의 데이터를 교환시킨 데이터를 생성하기 위한 데이터 역교환부(37B), 및 데이터 역교환부(37B)에 의하여 생성된 16bit 형식의 데이터를 ASCⅡ 코드의 형태로 인식하여 ASCⅡ 코드 값의 데이터(Da)로 변환시킨 후 변환된 ASCⅡ 코드 값의 데이터(Da)를 문자열 데이터(Dc)로 변환시키기 위한 데이터 역변환부(38B)로 이루어진다. 데이터 역변환부(38B)에 의하여 변환된 데이터(Dc)는 제어부(32)로 입력된다.The data decryption unit 30B separates the string of the merged data DE encrypted by the database unit 40A and encrypted by the 32-bit string into 1/2, and merges the data of the odd-numbered index code data and the even-numbered index. After separating and arranging the merged data (Dem) of the code data, the merged data (Dom) of the odd-numbered index code data and the merged data (Dem) of the even-numbered index code data are sequentially inter-merged with each other to merge one merger. A string extract / merge unit 36B for generating the merged data Dm, and the string of merge data Dm formed by the string extractor / merge unit 36B are converted into 16-bit HEX code values. Later, the converted 4-digit 16-bit data (Df˝) is separated into nibble units, and the first and fourth digits are exchanged for the data separated by nibble units. The data reverse exchange unit 37B for generating the data and the 16-bit format data generated by the data reverse exchange unit 37B are recognized in the form of ASCII code and converted into data Da of the ASCII code value. And a data inverse converter 38B for converting the data Da of the ASCII code value to the character string data Dc. The data Dc converted by the data inverse transform unit 38B is input to the control unit 32.

본 발명의 바람직한 실시예에 따른 데이터의 암호화 및 복호화 시스템에 있어서, 암호화하는 과정에 대하여 도 2를 참조하면서 설명하기로 한다.In the data encryption and decryption system according to a preferred embodiment of the present invention, a process of encrypting the data will be described with reference to FIG. 2.

도 2에 도시된 바와 같이, 본 발명의 바람직한 실시예에 따른 데이터의 암호화 및 복호화 시스템에 있어서, 문자열 데이터(Dc)가 입력부(10)에 전송될 경우 데이터 변환부(33A)에 의하여 입력부(10)로부터 입력 받은 문자열 데이터(Dc), 예를 들면 "abcd123..."을 한자리씩 ASCⅡ 코드의 데이터(Da), 예를 들면 "97, 98, 99, 100, 49, 50, 51,..."로 변환시킨다.As shown in FIG. 2, in the data encryption and decryption system according to the preferred embodiment of the present invention, when the character string data Dc is transmitted to the input unit 10, the input unit 10 is provided by the data converter 33A. Character string data (Dc), for example, " abcd123 ... ", for example, data of the ASCII code Da, for example, " 97, 98, 99, 100, 49, 50, 51, .. " . "

이 후, 데이터 변환부(33A)는 변환된 ASCⅡ 코드의 데이터(Da)를 숫자 형식의 4자리수의 데이터(Df)로 재변환한 후 이를 16bit의 4자리의 데이터로 변환시킨다.Thereafter, the data converter 33A reconverts the data Da of the converted ASCII code into four-digit data Df in the numeric format and then converts it into four-digit data of 16 bits.

이후, 데이터 변환부(33A)에 의하여 16bit의 4자리로 변환된 데이터를 니블(nibble) 단위로 분리시킨 후 니블 단위 내에서 데이터의 위치를 이동, 바람직하게는 첫번째 데이터(D4n+1, n=0, 1, 3,...)와 네번째 데이터(D4n, n=0, 1, 3,...)의 위치를 이동하여 니블 단위 내에서 데이터의 위치를 교환시켜 1차 교환된 데이터(Df′)를 생성시킨다.Thereafter, the data converted into four digits of 16 bits by the data converter 33A is separated into nibble units, and then the position of the data is moved within the nibble unit, preferably the first data (D4n + 1, n = 0, 1, 3, ...) and the fourth data (D4n, n = 0, 1, 3, ...) to move the position of the data in the nibble unit by changing the position of the first exchanged data (Df ′).

이후, 데이터 교환부(34)에 의하여 1차 교환된 데이터(Df′)를 문자열 분리/병합부(35A)에 의하여 문자열 32bit의 데이터로 변환시키고 병합하여 병합 데이터(Dm), 예를 들면, "7090, 8090,...."로 이루어진 데이터를 생성한다.Thereafter, the data Df 'primarily exchanged by the data exchanger 34 is converted into data of 32 bits of character string by the character string separating / merge unit 35A and merged to merge the data Dm, for example, " 7090, 8090, .... "

이후, 병합 데이터(Dm)에 대하여 홀수와 짝수번째 인덱스 코드별로 데이터를 분리시킨 후에 각각 홀수번째의 인덱스 코드(2n+1, n=0, 1, 3, ...)로 이루어진 데이터를 병합시켜 생성된 홀수번째 인덱스 코드 데이터의 병합 데이터(Dom), 예를 들면 "7989..."로 이루어진 데이터와 짝수번째 인덱스 코드(2n, n=0, 1, 2, 3, ...)로 이루어진 데이터를 병합시켜 생성된 짝수번째 인덱스 코드 데이터의 병합 데이터(Dem), 예를 들면 "0000..."로 이루어진 데이터를 하나의 데이터로 병합하여 암호화된 병합 데이터(DE), 예를 들면 "7989...000..."로 이루어진 데이터를 생성한다.Subsequently, data is divided into odd and even index codes with respect to the merged data Dm, and data of odd index codes (2n + 1, n = 0, 1, 3, ...) is merged. Merged data Dom of the generated odd-numbered index code data, for example, data consisting of "7989 ..." and even-numbered index codes (2n, n = 0, 1, 2, 3, ...) Merged data (Dem) of even-numbered index code data generated by merging data, for example, merge data (DE) encrypted by merging data consisting of "0000 ..." into one data, for example "7989." Generates data consisting of ... 000 ... ".

한편, 본 발명의 바람직한 실시예에 따른 데이터의 암호화 및 복호화 시스템에 있어서 암호화된 병합 데이터를 복호화하는 과정에 대하여 도 3을 참조하면서 설명하기로 한다.Meanwhile, a process of decrypting encrypted merged data in a data encryption and decryption system according to a preferred embodiment of the present invention will be described with reference to FIG. 3.

도 3에 도시된 바와 같이, 데이터 베이스부(40A)에 암호화되어 문자열 32bit로 암호화된 병합 데이터(DE), 예를 들면 "7989...000..."로 이루어진 데이터의 문자열을 문자열 추출/병합부(36B)에 의하여 1/2로 분리하여 홀수번째 인덱스 코드 데이터의 병합 데이터(Dom), 예를 들면 "7989..."로 이루어진 데이터와 짝수번째 인덱스 코드 데이터의 병합 데이터(Dem), 예를 들면 "0000..."로 이루어진 데이터로 분리 배열한 후에 홀수번째 인덱스 코드 데이터의 병합 데이터(Dom)와 짝수번째 인덱스 코드 데이터의 병합 데이터(Dem)를 서로 순차적으로 교합(inter-merging)하여 하나의 병합된 병합 데이터(Dm), 예를 들면, "70908090 ...."로 이루어진 데이터를 생성한다.As shown in FIG. 3, a string is extracted from the merged data DE, which is encrypted in the database unit 40A and encrypted with a string of 32 bits, for example, a string of data consisting of "7989 ... 000 ...". Merge data Dom of odd-numbered index code data divided by 1/2 by merger 36B, for example, data consisting of "7989 ..." and merge data Dem of even-numbered index code data, For example, after separately arranging data consisting of "0000 ...", the merged data Dom of the odd-numbered index code data and the merged data Dem of the even-numbered index code data are inter-merged sequentially. One merged merge data Dm is generated, for example, data consisting of "70908090 ....".

이후, 문자열 추출/병합부(36B)에 의하여 형성된 병합 데이터(Dm)의 문자열에 대하여 데이터 역교환부(37B)에 의하여 4자리수로 묶어 16bit HEX 코드 값의 데이터(Df˝), 예를 들면, "7090, 8090, ...."로 이루어진 데이터로 변환시킨 후에 변환된 4자리수의 16bit 형식의 데이터를 니블 단위로 분리시키며, 각각 니블 단위로 분리된 데이터에 대하여 첫번째 자리와 네번째 자리의 데이터를 교환시킨 데이터(Di˝)를 생성한다.Thereafter, the data string of the merged data Dm formed by the character string extracting / merge unit 36B is grouped into four digits by the data reverse exchange unit 37B and data of the 16-bit HEX code value Df \, for example, After converting the data into "7090, 8090, ....", the converted 4-digit 16-bit data is divided into nibble units, and the first and fourth digits of the data separated into nibble units are separated. Create the exchanged data Di '.

이후, 데이터 역교환부(37B)에 의하여 생성된 16bit 형식의 데이터(Di˝)를 데이터 역변환부(37B)에 의하여 ASCⅡ 코드의 형태로 인식하여 ASCⅡ 코드 값의 데이터(Da), 예를 들면 "97, 89, ..."로 변환시킨 후 변환된 ASCⅡ 코드 값의 데이터(Da)를 문자열 데이터(Dc)로 변환시킨다.Thereafter, the 16-bit data Di 'generated by the data inverse exchange unit 37B is recognized by the data inverse transform unit 37B in the form of an ASCII code, so that the data Da in the ASCII code value, for example, " 97, 89, ... ", and then convert the data Da of the converted ASCII code value into character string data Dc.

따라서 전술한 바와 같이, 본 발명의 바람직한 실시예에 따른 데이터의 암호화 및 복호화 시스템에 의하면, 암호화 테이블을 이용하지 않고 암호화 최소한의 암복화 과정을 거치는 라이브러리를 이용하여 데이터를 변환 및 가공하여 데이터베이스에 저장하도록 함으로써 신속하고 정확하게 데이터를 암호화함과 동시에 데이터베이스에 대하여 외부침입이 있더라도 데이터를 해독할 수 없는 효과를 제공한다.Therefore, as described above, according to the data encryption and decryption system according to the preferred embodiment of the present invention, data is converted and processed using a library that undergoes minimal encryption and decryption without encryption table and stored in a database. By encrypting the data quickly and accurately, it provides the effect that the data cannot be decrypted even if there is external intrusion into the database.

본 발명의 바람직한 실시예에 따른 데이터의 암호화 및 복호화 시스템에 있어서 데이터 변환부(33A)와 데이터 교환부(34A)에 의한 데이터 변환과 변환은 4자리 단위로 변환하고 각 니블에서 첫번째 데이터와 네번째 데이터의 교환이 이루어졌으나, 반드시 이에 한정될 필요는 없다. 즉, 예를 들면 5자리의 단위로 변환하거나 각 니블에서 첫번째와 세번째 데이터의 교환이 이루어지도록 하며 그에 따른 복호화도 이에 대한 역순으로 이루어지도록 하여도 좋다. In the data encryption and decryption system according to the preferred embodiment of the present invention, data conversion and conversion by the data conversion unit 33A and the data exchange unit 34A are performed in units of four digits, and the first data and the fourth data in each nibble. Has been exchanged, but is not necessarily limited thereto. That is, for example, the first and third data may be exchanged in units of five digits or in each nibble, and the decoding thereof may be performed in the reverse order.

10: 입력부
20: 출력부
30: 시스템
30A: 데이터 암호화부
30B: 데이터 복호화부
31: 프로그램 저장부
32: 제어부
33A: 데이터 변환부
34A: 데이터 교환부
35A 문자열 분리/병합부
36B: 문자열 추출/병합부
37B: 데이터 역교환부
38B: 데이터 역변환부
40: 데이터 베이스부
10: input unit
20: output unit
30: System
30A: Data Encryption Section
30B: Data Decoding Unit
31: program storage unit
32: control unit
33A: data converter
34A: Data Exchange
35A string split / merge
36B: Extract / Merge Strings
37B: Data Reverse Exchange
38B: data inverse transform unit
40: database part

Claims (10)

데이터의 암호화와 복호화 코드 생성을 위한 프로그램이 저장된 프로그램 저장부(31);
데이터 베이스의 접속을 위한 사용자의 로그인시 데이터의 암호화와 복호화를 위한 라이브러리 프로그램을 실행하기 위한 제어부(32);
제어부(32)의 라이브러리에 의하여 데이터의 암호화를 수행하기 위한 데이터 암호화부(30A); 및
데이터 암호화부(30A)에 의하여 암호화되어 데이터 베이스부(40)에 저장된 데이터를 복호화하기 위한 데이터 복호화부(30B)를 포함하며,
상기 데이터 암호화부(30A)는 입력받은 문자열 데이터(Dc)를 ASCⅡ 코드로 변환한 후에 이를 16bit의 4자리로 변환시켜 니블(nibble) 단위로 분리하고 니블 단위 내에서 데이터의 위치를 교환시킨 데이터에 대하여 일정한 간격의 인덱스 코드로 분리 조합시킴으로써 암호화된 병합 데이터(DE)를 생성하는 것을 특징으로 하는 데이터의 암호화 및 복호화 시스템.
A program storage unit 31 storing a program for encrypting data and generating decryption code;
A control unit 32 for executing a library program for encrypting and decrypting data when a user logs in for accessing a database;
A data encryption unit 30A for encrypting data by the library of the control unit 32; And
A data decryption unit 30B for decrypting data encrypted by the data encryption unit 30A and stored in the database unit 40,
The data encryption unit 30A converts the received character string data (Dc) into an ASCII code, converts it into four digits of 16 bits, separates the data into nibble units, and exchanges data positions within the nibble unit. And encrypting and separating the data into index codes at regular intervals, thereby generating encrypted merged data (DE).
제1항에 있어서, 상기 데이터 암호화부(30A)는 입력받은 문자열 데이터(Dc)를 제어부(32)에 의하여 문자열을 한자리씩 ASCⅡ 코드의 데이터(Da)로 변환한 후에 변환된 코드값을 숫자 형식의 4자리수의 데이터(Df)로 재변환한 후 이를 16bit의 4자리의 데이터로 변환하기 위한 데이터 변환부(33A)를 구비하는 것을 특징으로 하는 데이터의 암호화 및 복호화 시스템.The data encryption unit 30A of claim 1, wherein the data encrypting unit 30A converts the input string data Dc into data Aa of the ASCII code by single digit by the control unit 32 and converts the converted code value into a numerical format. And a data converter (33A) for reconverting the data into four digits of data Df and converting the data into four digits of 16 bits. 제2항에 있어서, 데이터 변환부(33A)에 의하여 16bit의 4자리의 데이터를 니블 단위로 분리하여 니블 단위 내에서 데이터의 위치를 교환시키기 위한 데이터 교환부(34A)를 더 구비하는 것을 특징으로 하는 데이터의 암호화 및 복호화 시스템.The data converting unit (33A) according to claim 2, further comprising a data exchanger (34A) for separating 16-bit 4-digit data into nibble units by the data converter (33A) and exchanging positions of data within the nibble unit. System for encrypting and decrypting data. 제3항에 있어서, 니블 단위 내에서 데이터의 위치의 이동은 각 니블 단위 내에서 첫번째와 네번째의 데이터를 이동하여 1차 교환된 데이터(Df′)가 생성되는 것을 특징으로 하는 데이터의 암호화 및 복호화 시스템.4. The data encryption and decryption method according to claim 3, wherein the movement of the position of data in the nibble unit is performed by moving the first and fourth data within each nibble unit to generate the first exchanged data Df '. system. 제4항에 있어서, 1차 교환된 데이터(Df′)를 문자열 분리/병합부(35A)에 의하여 문자열 32bit의 데이터로 변환시키고 병합하여 병합 데이터(Dm)를 생성하며,
병합 데이터(Dm)에 대하여 홀수와 짝수번째 인덱스 코드별로 데이터를 분리시킨 후에, 각각 홀수번째의 인덱스 코드(2n+1, n=0, 1, 3, ...)로 이루어진 데이터들을 병합시켜 생성된 홀수번째 인덱스 코드 데이터의 병합 데이터(Dom)와 짝수번째 인덱스 코드(2n, n=0, 1, 2, 3, ...)로 이루어진 데이터를 병합시켜 생성된 짝수번째 인덱스 코드 데이터의 병합 데이터(Dem)를 하나의 데이터로 병합하여 암호화된 병합 데이터(DE)를 생성하기 위한 문자열 분리/병합부(35A)를 더 구비하는 것을 특징으로 하는 데이터의 암호화 및 복호화 시스템.
The method of claim 4, wherein the first exchanged data (Df ') is converted into 32-bit data of the character string by the character string separating / merge unit 35A and merged to generate merged data Dm.
After the data are separated by odd and even index codes with respect to the merged data Dm, data of odd numbered index codes (2n + 1, n = 0, 1, 3, ...) are merged to generate data. Merge data of even-numbered index code data generated by merging data consisting of merged data Dom of odd-numbered index code data and even-numbered index codes (2n, n = 0, 1, 2, 3, ...) And a string separator / merge unit (35A) for merging (Dem) into one data to generate encrypted merged data (DE).
제1항 내지 제5항 중의 어느 한 항에 있어서, 상기 데이터 복호화부(30B)는 데이터 베이스부(40A)에 암호화되어 문자열 32bit로 암호화된 병합 데이터(DE)의문자열을 1/2로 분리하여 홀수번째 인덱스 코드 데이터의 병합 데이터(Dom)와 짝수번째 인덱스 코드 데이터의 병합 데이터(Dem)로 분리 배열한 후에 홀수번째 인덱스 코드 데이터의 병합 데이터(Dom)와 짝수번째 인덱스 코드 데이터의 병합 데이터(Dem)를 서로 순차적으로 교합(inter-merging)하여 하나의 병합된 병합 데이터(Dm)를 생성하기 위한 문자열 추출/병합부(36B)를 더 구비하는 것을 특징으로 하는 데이터의 암호화 및 복호화 시스템.The data decryption unit 30B according to any one of claims 1 to 5, wherein the data decryption unit 30B separates the string of the merged data DE, which is encrypted by the database unit 40A and encoded by the string 32 bits, into 1/2. Merge data (Dom) of odd-numbered index code data and merge data (Dem) of even-numbered index code data and arrange them separately, then merge data (Dom) of odd-numbered index code data and merge data (Dem) of even-numbered index code data And a string extracting / merge unit (36B) for sequentially inter-merging one another to generate one merged merge data (Dm). 제6항에 있어서, 문자열 추출/병합부(36B)에 의하여 형성된 병합 데이터(Dm)의 문자열에 대하여 4자리수로 묶어 16bit HEX 코드 값의 데이터(Df˝)로 변환시킨 후에 변환된 4자리수의 16bit 형식의 데이터를 니블 단위로 분리시키며, 각각 니블 단위로 분리된 데이터에 대하여 첫번째 자리와 네번째 자리의 데이터를 교환시킨 데이터(Di˝)를 생성하기 위한 데이터 역교환부(37B)를 더 구비하는 것을 특징으로 하는 데이터의 암호화 및 복호화 시스템.The 4-digit 16-bit converted according to claim 6 after converting the string of the merged data Dm formed by the string extracting / merge unit 36B into four-digit strings and converting the data to 16-bit HEX code value Df \. Further comprising a data inverse exchanger 37B for separating the data of the format into nibble units, and generating data Di˝ in which data of the first and fourth digits is exchanged with respect to the data separated into nibble units. An encryption and decryption system for data. 제7항에 있어서, 데이터 역교환부(37B)에 의하여 생성된 16bit 형식의 데이터(Di˝)를 ASCⅡ 코드의 형태로 인식하여 ASCⅡ 코드 값의 데이터(Da)로 변환시킨 후 변환된 ASCⅡ 코드 값의 데이터(Da)를 문자열 데이터(Dc)로 변환시키기 위한 데이터 역변환부(38B)를 더 구비하는 것을 특징으로 하는 데이터의 암호화 및 복호화 시스템.8. The converted ASCII code value according to claim 7, wherein the 16-bit data Di 'generated by the data inverse exchange unit 37B is recognized in the form of ASCII code and converted into data Da of the ASCII code value. And a data inverse transform unit (38B) for converting the data Da to the character string data Dc. 문자열 데이터(Dc)가 입력부(10)에 전송될 경우 데이터 변환부(33A)에 의하여 입력부(10)로부터 입력 받은 문자열 데이터(Dc)를 한자리씩 ASCⅡ 코드의 데이터(Da)로 변환시키는 제1 단계;
변환된 ASCⅡ 코드의 데이터(Da)를 숫자 형식의 4자리수의 데이터(Df)로 재변환한 후 이를 16bit의 4자리의 데이터로 변환시키는 제2 단계;
16bit의 4자리로 변환된 데이터를 니블(nibble) 단위로 분리시킨 후 니블 단위 내에서 첫번째 데이터(D4n+1, n=0, 1, 3,...)와 네번째 데이터(D4n, n=0, 1, 3,...)의 위치를 이동하여 니블 단위 내에서 데이터의 위치를 교환시켜 1차 교환된 데이터(Df′)를 생성시키는 제3 단계;
1차 교환된 데이터(Df′)를 문자열 32bit의 데이터로 변환시키고 병합하여 병합 데이터(Dm)를 생성하는 제4 단계; 및
병합 데이터(Dm)에 대하여 홀수와 짝수번째 인덱스 코드별로 데이터를 분리시킨 후에 각각 홀수번째의 인덱스 코드(2n+1, n=0, 1, 3, ...)로 이루어진 데이터를 병합시켜 생성된 홀수번째 인덱스 코드 데이터의 병합 데이터(Dom)와 짝수번째 인덱스 코드(2n, n=0, 1, 2, 3, ...)로 이루어진 데이터를 병합시켜 생성된 짝수번째 인덱스 코드 데이터의 병합 데이터(Dem)를 하나의 데이터로 병합하여 암호화된 병합 데이터(DE)를 생성하는 제5 단계를 포함하여 데이터의 암호화를 수행하며 이에 대한 역과정의 복호화를 수행하는 것을 특징으로 하는 데이터의 암호화 및 복호화의 방법.
When the character string data Dc is transmitted to the input unit 10, the first step of converting the character string data Dc received from the input unit 10 by the data converter 33A into data Da of the ASCII code, one by one. ;
A second step of reconverting the converted data Da of the ASCII code into four-digit data Df in numerical format and then converting the data Da into 16-bit four-digit data;
After separating 16bit 4-digit data into nibble units, the first data (D4n + 1, n = 0, 1, 3, ...) and the fourth data (D4n, n = 0) within the nibble unit A third step of shifting the positions of 1, 3, ...) to exchange positions of data in the nibble unit to generate the first exchanged data Df ';
A fourth step of converting the primary exchanged data Df 'into 32-bit data and merging to generate merged data Dm; And
The data is generated by dividing the data for odd and even index codes with respect to the merged data Dm, and then merging data including odd index codes (2n + 1, n = 0, 1, 3, ...), respectively. Merge data of even-numbered index code data generated by merging data consisting of merged data Dom of odd-numbered index code data and even-numbered index codes 2n, n = 0, 1, 2, 3, ... A fifth step of merging Dem into one data to generate encrypted merged data DE, thereby encrypting the data and performing reverse decryption on the data. Way.
제9항에 있어서, 암호화된 병합 데이터(DE)의 문자열을 1/2로 분리하여 홀수번째 인덱스 코드 데이터의 병합 데이터(Dom)와 짝수번째 인덱스 코드 데이터의 병합 데이터(Dem)로 분리 배열한 후에 홀수번째 인덱스 코드 데이터의 병합 데이터(Dom)와 짝수번째 인덱스 코드 데이터의 병합 데이터(Dem)를 서로 순차적으로 교합(inter-merging)하여 하나의 병합된 병합 데이터(Dm)를 생성하는 제6 단계;
병합 데이터(Dm)의 문자열에 대하여 4자리수로 묶어 16bit HEX 코드 값의 데이터(Df˝)로 변환시킨 후에 변환된 4자리수의 16bit 형식의 데이터를 니블 단위로 분리시키며, 각각 니블 단위로 분리된 데이터에 대하여 첫번째 자리와 네번째 자리의 데이터를 교환시킨 데이터(Di˝)를 생성하는 제7 단계; 및
상기 데이터(Di˝)를 ASCⅡ 코드의 형태로 인식하여 ASCⅡ 코드 값의 데이터(Da)로 변환시킨 후 변환된 ASCⅡ 코드 값의 데이터(Da)를 문자열 데이터(Dc)로 변환시키는 제8 단계를 더 포함하는 것을 특징으로 하는 데이터의 암호화 및 복호화의 방법.
The method of claim 9, wherein after separating the encrypted character string of the merge data (DE) into 1/2 and separating and arranging the merged data (Dom) of odd-numbered index code data and the merged data (Dem) of even-numbered index code data, A sixth step of sequentially inter-merging the merged data Dom of the odd-numbered index code data and the merged data Dem of the even-numbered index code data to generate one merged merged data Dm;
After converting the merged data (Dm) into 4 digits and converting them into 16-bit HEX code data (Df), the converted 4-digit 16-bit data is divided into nibble units. A seventh step of generating data Di ′ in which data of the first digit and the fourth digit are exchanged with respect to; And
Recognizing the data (Di) in the form of ASCII code, converting the data (Da) of the ASCII code value, and then converting the data (Da) of the converted ASCII code value into character string data (Dc). And encrypting and decrypting the data.
KR1020110051162A 2011-05-30 2011-05-30 System for encryption and decryption of data and thereof KR101193599B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110051162A KR101193599B1 (en) 2011-05-30 2011-05-30 System for encryption and decryption of data and thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110051162A KR101193599B1 (en) 2011-05-30 2011-05-30 System for encryption and decryption of data and thereof

Publications (1)

Publication Number Publication Date
KR101193599B1 true KR101193599B1 (en) 2012-10-23

Family

ID=47288482

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110051162A KR101193599B1 (en) 2011-05-30 2011-05-30 System for encryption and decryption of data and thereof

Country Status (1)

Country Link
KR (1) KR101193599B1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101282653B1 (en) 2013-03-04 2013-07-12 소프트포럼 주식회사 Data substitution encryption device and method
KR101451828B1 (en) 2013-08-30 2014-10-16 박상윤 Data encryption and decryption device and method
KR101550045B1 (en) * 2014-07-10 2015-09-04 주식회사 에바인 System of mediating information by using multiple databases
US9762384B2 (en) 2012-06-29 2017-09-12 Penta Security Systems Inc. Generation and verification of alternate data having specific format
KR101809982B1 (en) * 2016-08-26 2017-12-18 연세대학교 원주산학협력단 Encryption and decryption system for personal medical infromation based on image
KR101925941B1 (en) * 2017-10-13 2018-12-06 주식회사 오스랩스 Transaction signing authentication method based on information virtualization
KR20210055880A (en) * 2019-11-08 2021-05-18 주식회사 빅스터 Method for checking encrypted data and method for data encryption

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008028695A (en) 2006-07-21 2008-02-07 Nomura Research Institute Ltd Information leakage prevention method

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008028695A (en) 2006-07-21 2008-02-07 Nomura Research Institute Ltd Information leakage prevention method

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9762384B2 (en) 2012-06-29 2017-09-12 Penta Security Systems Inc. Generation and verification of alternate data having specific format
KR101282653B1 (en) 2013-03-04 2013-07-12 소프트포럼 주식회사 Data substitution encryption device and method
KR101451828B1 (en) 2013-08-30 2014-10-16 박상윤 Data encryption and decryption device and method
KR101550045B1 (en) * 2014-07-10 2015-09-04 주식회사 에바인 System of mediating information by using multiple databases
KR101809982B1 (en) * 2016-08-26 2017-12-18 연세대학교 원주산학협력단 Encryption and decryption system for personal medical infromation based on image
KR101925941B1 (en) * 2017-10-13 2018-12-06 주식회사 오스랩스 Transaction signing authentication method based on information virtualization
KR20210055880A (en) * 2019-11-08 2021-05-18 주식회사 빅스터 Method for checking encrypted data and method for data encryption
KR102276559B1 (en) 2019-11-08 2021-07-14 주식회사 빅스터 Method for checking encrypted data and method for data encryption

Similar Documents

Publication Publication Date Title
KR101193599B1 (en) System for encryption and decryption of data and thereof
CN1993922B (en) Stream cipher combining system and method
CN104468090B (en) Character cipher coding method based on image pixel coordinates
US9021259B2 (en) Encrypted database system, client terminal, encrypted database server, natural joining method, and program
JP5776696B2 (en) Encrypted database system, client terminal, encrypted database server, natural join method and program
TW200701791A (en) Method and apparatus for encrypting and decrypting digital data
CN105049400A (en) Splitting S-boxes in a White-Box implementation to resist attacks
CN108173640A (en) The character string symmetric cryptography and decryption method of a kind of high security
JP5411034B2 (en) Database encryption system and method
JP6266181B1 (en) Search device, monitoring system, monitoring method, and search program
CN111314270B (en) Data encryption and decryption method based on validity period uniform distribution symmetric algorithm
KR100411684B1 (en) Method for the cryptographic conversion of binary data blocks
Sangwan Combining Huffman text compression with new double encryption algorithm
KR101625018B1 (en) Data encryption apparatus and method, computing device and communication device employing the same
Al-Jarrah et al. Word-based encryption algorithm using dictionary indexing with variable encryption key length
CN114254372B (en) Data encryption processing method and system and electronic equipment
Hassene et al. A new hybrid encryption technique permuting text and image based on hyperchaotic system
CN113572593B (en) Complex format parameter transmission method and device
JP6202969B2 (en) Information processing apparatus and encryption method
Jaswanth et al. Data Encryption: A Compiler Based Approach
Jeyabalu et al. Hybridization of ICBC and genetic algorithm for optimizing encryption process in cloud computing application service
KR101095862B1 (en) Data encryption apparatus and method, data decoding apparatus, data searching method
CN117294429B (en) Public resource transaction data encryption and decryption method, system and medium based on blockchain
Singh et al. Analysis of EnDeCloudReports for encrypting and decrypting data in cloud
CN115834163B (en) Method, device, equipment and storage medium for generating secret key of encrypted data

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20150921

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160912

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180911

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190906

Year of fee payment: 8