KR101125033B1 - 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택시스템, 선택방법과 그 방법을 컴퓨터에서 수행하도록 각각의 단계를 실행시키기 위한 명령어를 기록한 컴퓨터 판독가능 기록매체 - Google Patents

최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택시스템, 선택방법과 그 방법을 컴퓨터에서 수행하도록 각각의 단계를 실행시키기 위한 명령어를 기록한 컴퓨터 판독가능 기록매체 Download PDF

Info

Publication number
KR101125033B1
KR101125033B1 KR1020100038880A KR20100038880A KR101125033B1 KR 101125033 B1 KR101125033 B1 KR 101125033B1 KR 1020100038880 A KR1020100038880 A KR 1020100038880A KR 20100038880 A KR20100038880 A KR 20100038880A KR 101125033 B1 KR101125033 B1 KR 101125033B1
Authority
KR
South Korea
Prior art keywords
algorithm
speed
compression
encryption
combination
Prior art date
Application number
KR1020100038880A
Other languages
English (en)
Other versions
KR20110119269A (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 KR1020100038880A priority Critical patent/KR101125033B1/ko
Publication of KR20110119269A publication Critical patent/KR20110119269A/ko
Application granted granted Critical
Publication of KR101125033B1 publication Critical patent/KR101125033B1/ko

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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Communication Control (AREA)

Abstract

본 발명의 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택시스템은, 송신수단과 수신수단의 사이에 연결된 네트워크의 통신속도를 측정하는 통신속도 측정부; 상기 송신수단의 제1 연산속도 및 상기 수신수단의 제2 연산속도를 측정하는 연산속도 측정부; 다수의 설정된 압축알고리즘과 암호알고리즘의 조합에 따라 상기 제1 연산속도 및 상기 제2 연산속도가 변할 때, 상기 다수의 설정된 압축알고리즘과 암호알고리즘의 각각의 조합에 대하여, 상기 통신속도와 상기 제1 연산속도의 제1 차이값과, 상기 통신속도와 상기 제2 연산속도의 제2 차이값을 구하는 제1 연산부; 상기 제1 차이값과 제2 차이값을 변수로 하여 설정된 각각의 인덱스값을 구하는 제2 연산부; 및 상기 송신수단 및 수신수단에서 상기 인덱스값 중에서 최소값을 갖는 상기 압축알고리즘 및 암호알고리즘의 조합을 선택하게 하는 알고리즘 조합 선택부;를 포함한다.

Description

최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택시스템, 선택방법과 그 방법을 컴퓨터에서 수행하도록 각각의 단계를 실행시키기 위한 명령어를 기록한 컴퓨터 판독가능 기록매체{System and method for selecting compression algorithm and code algorithm for optimized communication atmosphere and computer readable medium for reading instruction word for practicing respective stage by processing method thereof}
본 발명은 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택시스템, 선택방법과 그 방법을 컴퓨터에서 수행하도록 각각의 단계를 실행시키기 위한 명령어를 기록한 컴퓨터 판독가능 기록매체에 관한 것으로, 특히 연산속도와 네트워크 상황이 유동적인 환경에서 최적의 압축알고리즘 및 암호알고리즘을 선택하는 시스템 및 방법과 그 방법을 컴퓨터에서 수행하도록 각각의 단계를 실행시키기 위한 명령어를 기록한 컴퓨터 판독가능 기록매체에 관한 것이다.
보안성의 중요성이 증가됨에 따라, 보안에 민감한 컴퓨터 통신에서는 암호화 알고리즘을 이용한다. 즉, 송신측에서는 데이터를 압축하고 압축된 데이터를 암호화하여 수신측에 전송하면, 수신측에서는 수신한 데이터를 해독하고 해독된 데이터의 압축을 해제한다. 압축알고리즘은 암호화할 데이터 및 전송해야 할 데이터의 양을 줄일 수 있기 때문에 통신의 효율성을 높일 수 있다.
한편, 송신측에서는 암호화할 데이터가 줄어들게 되어 암호화 연산의 오버헤드를 줄일 수 있고, 전송할 데이터가 줄어들게 되어 통신 오버헤드를 줄일 수 있다. 또한, 수신측에서는 해독할 데이터가 줄어들게 되어 암호화 연산의 오버헤드를 줄일 수 있고, 수신할 데이터가 줄어들게 되어 통신 오버헤드를 줄일 수 있다.
반면에, 송신측에서는 압축알고리즘을 수행해야 하므로 압축연산의 오버헤드가 발생하고, 수신측에서는 압축해제를 수행해야 하므로 비압축연산의 오버헤드가 발생한다.
또한, 압축알고리즘은 gzip, bzip, LZO 등과 같은 수많은 알고리즘이 존재하는데, 각 알고리즘의 복잡도와 압축률은 모두 다르며, 전송할 데이터에 따라 유동적으로 압축률이 변하게 되므로, 현재의 상황에 가장 적합한 알고리즘을 선택하는 것이 어렵다.
예를 들면, 성능이 매우 좋은 서버 단과 성능이 비교적 좋지않은 모바일 단과의 통신환경에서 압축율이 매우 좋은 압축알고리즘을 적용할 경우에, 서버 단에서는 빠른 시간 내에 압축하여 전송하더라도, 모바일 단에서는 수신하여 비 압축연산을 수행하고 해독하기 위해 많은 시간이 소요가 되므로, 이와 같은 경우에 압축알고리즘은 성능을 오히려 저하시킬 수 있다.
또한, 두 모바일 장치 간의 통신에서 대역폭이 크게 변경되는 경우, 예를 들어 3G망(256Kbps)이 WiFi 무선통신 (10Mbps)으로 변경될 경우 통신속도가 현저히 변하게 된다. 이와 같은 상황에서는 3G를 통하여 통신을 할 경우 특정 압축알고리즘을 사용하여 통신 효율성이 높아지더라도, WiFi망으로 변함에 따라 압축알고리즘이 바틀넥(bottle neck)이 되어 성능이 저하될 수 있다.
이와 같이 현재의 상황에서 최적의 압축알고리즘 적용은 통신상황(대역폭), 송신단 및 수신단의 연산속도, 각 압축알고리즘의 압축률 등이 모두 고려되어 선택되어야 통신의 효율성을 높일 수 있으며, 그렇지 않을 경우에 압축알고리즘을 적용하게 되면 더 많은 문제를 발생시킬 수 있다.
종래에도 다음과 같은 2가지 압축기술이 있었는데, 구체적으로 살펴보기로 한다.
먼저, JSCC(joint source and channel coding)와 같은 비디오 전송기술인데, 비디오 전원와 네트워크 채널을 고려한 적응적인 비디오 압축기술을 제시한다. JSCC에서는 전원과 채널을 모두 수학적으로 모델링하여 최적의 전송속도 및 화질을 갖는 파라미터를 추출하여 최적화를 시도한다.
이와 같은 방법은 각 송신측 및 수신측의 상황에 따라 모델링해야 하므로, 실질적인 적용을 위해서는 적용 전의 모든 경우에 대하여 모델링 및 튜닝을 해야 하므로 상당한 어려움이 있다.
그리고, 논문 Adaptive On-the-Fly Compression(IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 17, NO. 1, JANUARY 2006)에서는 통신환경에 따라 압축을 적응적으로 적용하는 방법을 제시하는데, 이 논문 역시 수학적인 모델링을 기반으로 최적의 솔루션을 찾는 방법을 제시하고 있으며, 송신측 및 수신측의 연산속도를 고려하지 않은 상태에서 현재의 통신속도만을 고려하므로 송신측 및 수신측의 컴퓨팅파워 차이가 많거나 변하는 환경에 있어서는 최적의 솔루션을 선택하기 어렵다.
상기한 바와 같이 종래에는 적응적인 압축알고리즘 적용을 위해 수학적인 모델링을 기반으로 하여 실질 환경에 적용하면, 모델링 오버헤드로 인하여 유용성이 낮다는 문제점이 있었다.
본 발명은 송신측 및 수신측의 연산속도와 네트워크 상황이 실시간으로 변하는 유동적인 환경에서 최적의 압축알고리즘 및 암호알고리즘을 선택하여 통신의 효율성을 증가시키는 시스템 및 방법과 그 방법을 컴퓨터에서 수행하도록 각각의 단계를 실행시키기 위한 명령어를 기록한 컴퓨터 판독가능 기록매체를 제공하는 것을 목적으로 한다.
본 발명의 일 측면은, 송신수단과 수신수단의 사이에 연결된 네트워크의 통신속도를 측정하는 통신속도 측정부; 상기 송신수단의 제1 연산속도 및 상기 수신수단의 제2 연산속도를 측정하는 연산속도 측정부; 다수의 설정된 압축알고리즘과 암호알고리즘의 조합에 따라 상기 제1 연산속도 및 상기 제2 연산속도가 변할 때, 상기 다수의 설정된 압축알고리즘과 암호알고리즘의 각각의 조합에 대하여, 상기 통신속도와 상기 제1 연산속도의 제1 차이값과, 상기 통신속도와 상기 제2 연산속도의 제2 차이값을 구하는 제1 연산부; 상기 제1 차이값과 제2 차이값을 변수로 하여 설정된 각각의 인덱스값을 구하는 제2 연산부; 및 상기 송신수단 및 수신수단에서 상기 인덱스값 중에서 최소값을 갖는 상기 압축알고리즘 및 암호알고리즘의 조합을 선택하게 하는 알고리즘 조합 선택부;를 포함하는 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택시스템을 제공한다.
본 발명의 일 실시예에 따르면, 선택된 압축알고리즘 및 암호알고리즘의 조합을 생성하는 제1 연산속도와 제2 연산속도가 통신속도와 같도록 제어하는 연산속도 제어부를 더 포함하는 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택시스템을 제공한다.
본 발명의 다른 실시예에 따르면, 상기 알고리즘 조합 선택부는 상기 송신수단 또는 수신수단의 연산속도를 나타내는 각각의 플로팅 스케일의 위치를 정하도록 하여 상기 압축알고리즘 및 암호알고리즘의 조합을 선택하게 하는 것을 특징으로 하는 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택시스템을 제공한다.
본 발명의 또 다른 실시예에 따르면, 상기 압축알고리즘 및 암호알고리즘의 조합은 무압축 알고리즘과 AES 알고리즘의 조합, RLE 알고리즘과 AES 알고리즘의 조합, LZO 알고리즘과 AES 알고리즘의 조합, GZIP 알고리즘과 AES 알고리즘의 조합, 또는 BZIP 알고리즘과 AES 알고리즘의 조합 중에서 어느 하나인 것을 특징으로 하는 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택시스템을 제공한다.
본 발명의 다른 측면은, 송신수단과 수신수단의 사이에 연결된 네트워크의 통신속도를 측정하는 단계; 상기 송신수단의 제1 연산속도 및 상기 수신수단의 제2 연산속도를 측정하는 단계; 다수의 설정된 압축알고리즘과 암호알고리즘의 조합에 따라 상기 제1 연산속도 및 상기 제2 연산속도가 변할 때, 상기 다수의 설정된 압축알고리즘과 암호알고리즘의 각각의 조합에 대하여, 상기 통신속도와 상기 제1 연산속도의 제1 차이값과, 상기 통신속도와 상기 제2 연산속도의 제2 차이값을 구하는 단계; 상기 제1 차이값과 제2 차이값을 변수로 하여 설정된 각각의 인덱스값을 구하는 단계; 및 상기 인덱스값 중에서 최소값을 갖는 상기 압축알고리즘 및 암호알고리즘의 조합을 선택하는 단계;를 포함하는 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택방법을 제공한다.
본 발명의 일 실시예에 따르면, 상기 제1 연산속도 및 제2 연산속도는 상기 설정된 압축알고리즘의 압축속도와 압축률, 및 암호알고리즘의 암호화속도에 의해 결정되는 것을 특징으로 하는 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택방법을 제공한다.
본 발명의 다른 실시예에 따르면, 상기 제1 연산속도 및 제2 연산속도는
Figure 112010027176514-pat00001
이되, CS, ES, CR은 각각 압축속도, 암호화속도, 압축률인 것을 특징으로 하는 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택방법을 제공한다.
본 발명의 또 다른 실시예에 따르면, 상기 인덱스값은
Figure 112010027176514-pat00002
이되, ds는 제1 차이값이고, dr는 제2 차이값인 것을 특징으로 하는 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택방법을 제공한다.
본 발명의 또 다른 실시예에 따르면, 시간의 경과에 따라 실시간으로 상기 압축알고리즘 및 암호알고리즘의 조합을 선택하는 것을 특징으로 하는 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택방법을 제공한다.
본 발명의 또 다른 실시예에 따르면, 선택된 압축알고리즘 및 암호알고리즘의 조합을 생성하는 제1 연산속도와 제2 연산속도가 통신속도와 같도록 제어하는 단계를 더 포함하는 것을 특징으로 하는 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택방법을 제공한다.
본 발명의 또 다른 실시예에 따르면, 상기 제1 연산속도 또는 제2 연산속도 중에서 통신속도보다 빠른 연산속도의 경우에는 연산속도를 낮추어 상기 통신속도와 같도록 제어하고, 상기 제1 연산속도 또는 제2 연산속도 중에서 통신속도보다 느린 연산속도의 경우에는 연산속도를 높여 상기 통신속도와 같도록 제어하는 것을 특징으로 하는 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택방법을 제공한다.
본 발명의 또 다른 측면은, 상기한 방법을 컴퓨터에서 수행하도록 상기 각각의 단계를 실행시키기 위한 명령어를 기록한 컴퓨터 판독가능 기록매체를 제공한다.
본 발명에 따르면, 송신측 및 수신측의 연산속도와 네트워크의 통신속도에 대한 복잡한 수학적 모델링이 없이도, 매우 손쉽고 직관적으로 최적의 압축알고리즘 및 암호알고리즘을 선택할 수 있으므로, 효율적인 통신을 가능하게 한다.
도 1은 본 발명의 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택과 연산속도 제어를 위한 시스템의 구성도이다.
도 2는 본 발명에 따른 플로팅 스케일의 이동원리를 도시한 개략도이다.
도 3은 본 발명에 따른 통신속도와 제1 연산속도의 차이값 및 통신속도와 제2 연산속도의 차이값에 따라 인덱스값을 구하는 원리를 도시한 도면이다.
도 4는 본 발명에 따른 송신수단에서 버퍼를 통하여 데이터를 전송하는 경우에 언더플로우가 발생한 경우를 도식화한 개략도이다.
도 5는 본 발명에 따른 송신수단에서 버퍼를 통하여 데이터를 전송하는 경우에 오버플로우가 발생한 경우를 도식화한 개략도이다.
도 6은 본 발명에 따른 수신수단에서 버퍼를 통하여 데이터를 수신하는 경우에 언더플로우가 발생한 경우를 도식화한 개략도이다.
도 7은 본 발명에 따른 수신수단에서 버퍼를 통하여 데이터를 수신하는 경우에 오버플로우가 발생한 경우를 도식화한 개략도이다.
도 8은 본 발명에 따른 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택과 연산속도 제어를 위한 방법의 흐름도이다.
이하, 첨부된 도면을 참조하여 본 발명의 실시형태를 설명한다. 그러나, 본 발명의 실시형태는 여러 가지의 다른 형태로 변형될 수 있으며, 본 발명의 범위가 이하 설명하는 실시형태로만 한정되는 것은 아니다. 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있으며, 도면상의 동일한 부호로 표시되는 요소는 동일한 요소이다.
도 1은 본 발명의 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택과 연산속도 제어를 위한 시스템의 구성도이다. 도 1을 참조하면, 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택시스템은, 통신속도 측정부 (100), 연산속도 측정부(200), 제1 연산부(300), 제2 연산부(400), 알고리즘 조합 선택부(500)를 포함한다.
통신속도 측정부(100)는 송신수단과 수신수단의 사이에 연결된 네트워크의 통신속도를 실시간으로 측정하고, 연산속도 측정부(200)는 송신수단의 제1 연산속도 및 수신수단의 제2 연산속도를 실시간으로 측정한다.
제1 연산부(300)는 다수의 설정된 압축알고리즘과 암호알고리즘의 조합에 따라 제1 연산속도 및 제2 연산속도가 변할 때, 다수의 설정된 압축알고리즘과 암호알고리즘의 각각의 조합에 대하여, 통신속도와 제1 연산속도의 제1 차이값과, 통신속도와 제2 연산속도의 제2 차이값을 구하고, 제2 연산부(400)는 제1 차이값과 제2 차이값을 변수로 하여 설정된 각각의 인덱스값을 구한다.
알고리즘 조합 선택부(500)는 송신수단 및 수신수단에서 플로팅스케일(floating scale)을 일측과 타측(예를 들어, 상부와 하부)으로 이동시켜 실시간으로 인덱스값 중에서 최소값을 갖는 압축알고리즘 및 암호알고리즘의 조합을 선택하게 한다. 즉, 알고리즘 조합 선택부(500)는 송신수단 또는 수신수단의 연산속도를 나타내는 각각의 플로팅 스케일의 위치를 정하도록 하여 압축알고리즘 및 암호알고리즘의 조합을 선택하게 한다.
압축알고리즘 및 암호알고리즘의 조합은 무 압축 알고리즘과 AES(Advanced Encryption Standard) 알고리즘의 조합, RLE(Run -Length Encoding) 알고리즘과 AES 알고리즘의 조합, LZO(Lempel-Ziv-Oberhumer) 알고리즘과 AES 알고리즘의 조합, GZIP(Gnu ZIP) 알고리즘과 AES 알고리즘의 조합, 또는 BZIP(Bnu ZIP) 알고리즘과 AES 알고리즘의 조합 중에서 어느 하나일 수 있으며, 이들 조합에만 한정되지 않고 기타 다른 조합도 가능하다. 예를 들어, 상기 예에서는 암호알고리즘에 있어서 AES만을 사용하였지만, 기타 다른 암호알고리즘을 적용하는 것도 가능하다.
연산속도 제어부(600)는 선택된 압축알고리즘 및 암호알고리즘의 조합을 생성하는 제1 연산속도와 제2 연산속도가 통신속도와 같도록 제어한다. 알고리즘 조합 선택부(500)가 최소값을 갖는 압축알고리즘 및 암호알고리즘의 조합을 선택한 후에도 제1 연산속도 및 제2 연산속도가 통신속도와 같지는 않으므로, 제1 연산속도 및 제2 연산속도를 통신속도와 같도록 하여 언더플로우 또는 오버플로우가 발생하지 않도록 하기 위함이다.
도 2는 본 발명에 따른 플로팅 스케일의 이동원리를 도시한 개략도이다. 도 2를 참조하면, 플로팅 스케일은 압축알고리즘과 암호알고리즘의 조합에 따라 이동할 수 있음을 알 수 있는데, 무압축 알고리즘과 AES(Advanced Encryption Standard) 알고리즘의 조합을 a로 나타내고, RLE(Run -Length Encoding) 알고리즘과 AES 알고리즘의 조합을 b로 나타내며, LZO(Lempel-Ziv-Oberhumer) 알고리즘과 AES 알고리즘의 조합을 c로 나타내며, GZIP(Gnu ZIP) 알고리즘과 AES 알고리즘의 조합을 d로 나타내며, 또는 BZIP(Bnu ZIP) 알고리즘과 AES 알고리즘의 조합을 e로 나타낼 수 있다. 여기서, AES, LZO, GZIP, BZIP은 압축알고리즘이고, AES는 암호알고리즘이다.
이때, 각 눈금은 실 처리속도를 나타내는데, 일 예로 실 처리속도가 빠를수록 상부에 위치하도록 하고 실 처리속도가 느릴수록 하부에 위치하도록 하여 설계할 수 있다. 예를 들어, 가장 상부에 위치하는 a(무압축 알고리즘과 AES 알고리즘의 조합)가 실 처리속도가 가장 빠르며, 가장 하부에 위치하는 e(BZIP 알고리즘과 AES 알고리즘의 조합)가 실 처리속도가 가장 느리다. 여기서, 실 처리속도는 연산속도와 압축알고리즘의 압축률이 반영되어 계산된다. 즉, 압축을 통한 이득과 발생 예상이 가능한 오버헤드가 모두 고려되어 실 처리속도를 구하게 되는 것이며, 송신수단 및 수신수단의 플로팅 스케일은 연산속도 및 통신속도에 따라 상하로 이동한다.
한편, 압축알고리즘마다 압축속도와 압축률이 다르고, 암호알고리즘마다 암호화속도가 다르기 때문에, 플로팅 스케일은 압축속도, 압축률, 암호화속도에 의해 영향을 받아 최적의 압축알고리즘 및 암호알고리즘을 선택하도록 이동하게 된다. 즉, 압출률은 매우 좋으나 압축속도가 매우 느릴 경우에는 압축을 하게 되어 암호화를 해야할 양이 줄어들게 되는 장점이 있지만 압축시간이 많이 소요된다는 단점이 있고, 압축률은 좋지 않으나 압축속도가 매우 빠를 경우에는 압축속도가 매우 빠르나 압축률이 낮아 암호화를 해야할 양이 상대적으로 많아진다는 단점이 있다. 이와 같이, 각각의 압축알고리즘의 압축률과 압축속도 및 암호알고리즘의 암호화속도에 따라 장점과 단점이 있는데, 이들을 모두 반영하기 위한 연산속도 V1을 수학식 1과 같이 적용한다.
Figure 112010027176514-pat00003
여기서, CS : 압축속도
ES : 암호화속도
CR : 압축률
수학식 1의 우변은 제1항인
Figure 112010027176514-pat00004
과 제2항인
Figure 112010027176514-pat00005
으로 구분된다. 제1항은 압축알고리즘과 암호알고리즘의 전체 속도를 구하는 항이고, 제2항은 압축알고리즘의 적용으로 전체 크기가 줄어드는 속도를 구하는 항인데, 제1항 및 제2항의 유도 원리를 살펴보면 다음과 같다.
제1항은 압축속도와 암호속도의 합을 나타내는 것으로서, 압축과 암호화를 수행하였을 때의 속도를 구하는 항이다. 압축을 수행할 경우, 압축률에 따라 크기가 줄어들어 암호화를 해야할 양이 줄어들기 때문에 압축속도 및 암호속도에 영향을 미치기 때문이다.
전체 암축 및 암호화해야할 알고리즘의 크기를 S라 하면, 압축속도와 암호속도의 합 V2는 전체 암축 및 암호화해야할 알고리즘의 크기를 압축 및 암호화하는 시간으로 나누어 수학식 2와 같이 구할 수 있다.
Figure 112010027176514-pat00006
제2항은 전체 압축알고리즘의 크기가 줄어드는 속도를 나타내는 것으로서, 전체 압축알고리즘의 크기가 줄어드는 속도 V3는 전체 압축알고리즘이 줄어든 크기를 압축시간으로 나누어 수학식 3과 같이 구할 수 있다.
Figure 112010027176514-pat00007
도 3은 본 발명에 따른 통신속도와 제1 연산속도의 차이값 및 통신속도와 제2 연산속도의 차이값에 따라 인덱스값을 구하는 원리를 도시한 도면이다. 도 3을 도 2와 함께 참조하면, 송신수단의 플로팅 스케일과 수신수단의 플로팅 스케일의 위치를 보이고 있는데, 플로팅 스케일의 위치가 연산속도를 나타낸다. 즉, 송신수단의 프로팅 스케일이 나타내는 위치가 제1 연산속도를 나타내고, 수신수단의 플로팅 스케일이 나타내는 위치가 제2 연산속도를 나타낸다.
이때, 통신속도와 제1 연산속도의 차이값을 ds로 나타내고, 통신속도와 제2 연산속도의 차이값을 dr로 나타낼 때, 설정된 인덱스값 Index는 수학식 4와 같이 구한다.
Figure 112010027176514-pat00008
수학식 4에서 ds와 dr을 각각 평면좌표에서 횡축 및 종축의 좌표라 할 때, Index는 이들 좌표 사이의 거리와 동일하다.
최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘을 선택할 때, 제1 연산속도가 a, b, c, d, e이고 제2 연산속도가 a’, b’, c’, d’, e’인 경우, Index가 최소값일 경우의 압축알고리즘 및 암호알고리즘의 조합이 선택된다. 즉, Index가 최소값을 갖는 제1 연산속도(송신수단의 연산속도) 및 제2 연산속도(수신수단의 연산속도)가 각각 b, b’라면, 송신수단과 수신수단은 모두 RLE 알고리즘 및 AES 알고리즘의 조합을 선택하게 된다.
도 4는 본 발명에 따른 송신수단에서 버퍼를 통하여 데이터를 전송하는 경우에 언더플로우가 발생한 경우를 도식화한 개략도이다. 도 4를 참조하면, 송신수단에서 압축 및 암호화 후 버퍼를 통하여 데이터를 전송할 때, 제1 연산속도가 통신속도보다 느리게 되어 언더플로우(underflow)가 발생함을 알 수 있다.
언더플로우가 발생했을 때, 송신수단의 플로팅 스케일을 하부로 이동시켜 제1 연산속도를 빠르게 하는 압축알고리즘 및 암호알고리즘이 선택된다.
도 5는 본 발명에 따른 송신수단에서 버퍼를 통하여 데이터를 전송하는 경우에 오버플로우가 발생한 경우를 도식화한 개략도이다. 도 5를 참조하면, 송신수단에서 압축 및 암호화 후 버퍼를 통하여 데이터를 전송할 때, 제1 연산속도가 통신속도보다 빠르게 되어 오버플로우(overflow)가 발생함을 알 수 있다.
오버플로우가 발생했을 때, 송신수단의 플로팅 스케일을 상부로 이동시켜 제1 연산속도를 느리게 하는 압축알고리즘 및 암호알고리즘이 선택된다.
도 6은 본 발명에 따른 수신수단에서 버퍼를 통하여 데이터를 수신하는 경우에 언더플로우가 발생한 경우를 도식화한 개략도이다. 도 6을 참조하면, 수신수단에서 버퍼를 통하여 데이터를 수신한 후 비 압축 및 해독할 때, 제2 연산속도가 통신속도보다 느리게 되어 언더플로우가 발생함을 알 수 있다.
언더플로우가 발생했을 때, 수신수단의 플로팅 스케일을 하부로 이동시켜 제2 연산속도를 빠르게 하는 압축알고리즘 및 암호알고리즘이 선택된다.
도 7은 본 발명에 따른 수신수단에서 버퍼를 통하여 데이터를 수신하는 경우에 오버플로우가 발생한 경우를 도식화한 개략도이다. 도 7을 참조하면, 수신수단에서 버퍼를 통하여 데이터를 수신한 후 비 압축 및 해독할 때, 제2 연산속도가 통신속도보다 빠르게 되어 오버플로우가 발생함을 알 수 있다.
오버플로우가 발생했을 때, 수신수단의 플로팅 스케일을 상부로 이동시켜 제2 연산속도를 느리게 하는 압축알고리즘 및 암호알고리즘이 선택된다.
도 8은 본 발명에 따른 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택과 연산속도 제어를 위한 방법의 흐름도이다. 도 8을 도 1과 함께 살펴보기로 한다.
먼저, 통신속도 측정부(100)는 송신수단과 수신수단의 사이에 연결된 네트워크의 통신속도를 측정하고, 연산속도 측정부(200)는 송신수단의 제1 연산속도 및 수신수단의 제2 연산속도를 측정한다(S100).
S100 단계 이후, 제1 연산부(300)가 다수의 설정된 압축알고리즘과 암호알고리즘의 조합에 따라 제1 연산속도 및 제2 연산속도가 변할 때, 다수의 설정된 압축알고리즘과 암호알고리즘의 각각의 조합에 대하여, 통신속도와 제1 연산속도의 제1 차이값과, 통신속도와 제2 연산속도의 제2 차이값을 구한다(S200).
S2OO 단계 이후, 제2 연산부(400)가 제1 차이값과 제2 차이값을 변수로 하여 설정된 각각의 인덱스값을 구한다(S300). 예를 들어, 인덱스값(Index)은
Figure 112010027176514-pat00009
과 같이 설정하여 제1 차이값 ds와 제2 차이값 dr을 구하여 구할 수 있다.
S300 단계 이후, 알고리즘 조합 선택부(500)가 인덱스값 중에서 최소값을 갖는 압축알고리즘 및 암호알고리즘의 조합을 선택한다(S400). 즉, 알고리즘 조합 선택부(500)는 송신수단 및 수신수단의 플로팅 스케일을 이동시켜 인덱스값이 최소로 되는 압축알고리즘 및 암호알고리즘의 조합을 선택하도록 한다.
S400 단계 이후, 연산속도 제어부(600)가 제1 연산속도(또는 제2 연산속도)가 통신속도보다 빠른지를 판단한다(S500). 제1 연산속도(또는 제2 연산속도)가 통신속도보다 빠른 경우에는 오버플로우가 발생한 것이고, 제1 연산속도(또는 제2 연산속도)가 통신속도보다 느린 경우에는 언더플로우가 발생한 것인데, 이와 같이 오버플로우 또는 언더플로우의 여부를 판단하기 위함이다.
S500 단계 이후, 제1 연산속도(또는 제2 연산속도)가 통신속도보다 빠른 경우에는 연산속도 제어부(600)가 제1 연산속도(또는 제2 연산속도)를 낮추어 통신속도와 같도록 제어하고(S610), 제1 연산속도(또는 제2 연산속도)가 통신속도보다 느린 경우에는 연산속도 제어부(600)가 제1 연산속도(또는 제2 연산속도)를 높여 통신속도와 같도록 제어한다(S620). 이와 같이, 제1 연산속도(또는 제2 연산속도)를 통신속도와 같도록 제어함으로써, 오버플로우 또는 언더플로우가 발생하지 않도록 한다.
상기한 바와 같은 최적화된 통신환경을 위한 압축알고리즘 선택방법은, 이와 같은 방법을 컴퓨터에서 수행하도록 각각의 단계를 실행시키기 위한 명령어를 기록한 컴퓨터 판독가능 기록매체에도 기록되어 사용자에 의해 컴퓨터에서 판독될 수 있다.
본 발명은 상술한 실시형태 및 첨부된 도면에 의해 한정되지 아니한다. 첨부된 청구범위에 의해 권리범위를 한정하고자 하며, 청구범위에 기재된 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 다양한 형태의 치환, 변형 및 변경이 가능하다는 것은 당 기술분야의 통상의 지식을 가진 자에게 자명할 것이다.
100 : 통신속도 측정부 200 : 연산속도 측정부
300 : 제1 연산부 400 : 제2 연산부
500 : 알고리즘 조합 선택부 600 : 연산속도 제어부

Claims (12)

  1. 송신수단과 수신수단의 사이에 연결된 네트워크의 통신속도를 측정하는 통신속도 측정부;
    상기 송신수단의 제1 연산속도 및 상기 수신수단의 제2 연산속도를 측정하는 연산속도 측정부;
    다수의 설정된 압축알고리즘과 암호알고리즘의 조합에 따라 상기 제1 연산속도 및 상기 제2 연산속도가 변할 때, 상기 다수의 설정된 압축알고리즘과 암호알고리즘의 각각의 조합에 대하여, 상기 통신속도와 상기 제1 연산속도의 제1 차이값과, 상기 통신속도와 상기 제2 연산속도의 제2 차이값을 구하는 제1 연산부;
    상기 제1 차이값과 제2 차이값을 변수로 하여 설정된 각각의 인덱스값을 구하는 제2 연산부; 및
    상기 송신수단 및 수신수단에서 상기 인덱스값 중에서 최소값을 갖는 상기 압축알고리즘 및 암호알고리즘의 조합을 선택하게 하는 알고리즘 조합 선택부;
    를 포함하는 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택시스템.
  2. 제1항에 있어서,
    선택된 압축알고리즘 및 암호알고리즘의 조합을 생성하는 제1 연산속도와 제2 연산속도가 통신속도와 같도록 제어하는 연산속도 제어부를 더 포함하는 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택시스템.
  3. 제1항에 있어서,
    상기 알고리즘 조합 선택부는 상기 송신수단 또는 수신수단의 연산속도를 나타내는 각각의 플로팅 스케일의 위치를 정하도록 하여 상기 압축알고리즘 및 암호알고리즘의 조합을 선택하게 하는 것을 특징으로 하는 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택시스템.
  4. 제1항에 있어서,
    상기 압축알고리즘 및 암호알고리즘의 조합은 무압축 알고리즘과 AES 알고리즘의 조합, RLE 알고리즘과 AES 알고리즘의 조합, LZO 알고리즘과 AES 알고리즘의 조합, GZIP 알고리즘과 AES 알고리즘의 조합, 또는 BZIP 알고리즘과 AES 알고리즘의 조합 중에서 어느 하나인 것을 특징으로 하는 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택시스템.
  5. 송신수단과 수신수단의 사이에 연결된 네트워크의 통신속도를 측정하는 단계;
    상기 송신수단의 제1 연산속도 및 상기 수신수단의 제2 연산속도를 측정하는 단계;
    다수의 설정된 압축알고리즘과 암호알고리즘의 조합에 따라 상기 제1 연산속도 및 상기 제2 연산속도가 변할 때, 상기 다수의 설정된 압축알고리즘과 암호알고리즘의 각각의 조합에 대하여, 상기 통신속도와 상기 제1 연산속도의 제1 차이값과, 상기 통신속도와 상기 제2 연산속도의 제2 차이값을 구하는 단계;
    상기 제1 차이값과 제2 차이값을 변수로 하여 설정된 각각의 인덱스값을 구하는 단계; 및
    상기 인덱스값 중에서 최소값을 갖는 상기 압축알고리즘 및 암호알고리즘의 조합을 선택하는 단계;
    를 포함하는 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택방법.
  6. 제5항에 있어서,
    상기 제1 연산속도 및 제2 연산속도는 상기 설정된 압축알고리즘의 압축속도와 압축률, 및 암호알고리즘의 암호화속도에 의해 결정되는 것을 특징으로 하는 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택방법.
  7. 제6항에 있어서,
    상기 제1 연산속도 및 제2 연산속도는
    Figure 112010027176514-pat00010
    이되, CS, ES, CR은 각각 압축속도, 암호화속도, 압축률인 것을 특징으로 하는 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택방법.
  8. 제5항에 있어서,
    상기 인덱스값은
    Figure 112010027176514-pat00011
    이되, ds는 제1 차이값이고, dr는 제2 차이값인 것을 특징으로 하는 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택방법.
  9. 제5항에 있어서,
    시간의 경과에 따라 실시간으로 상기 압축알고리즘 및 암호알고리즘의 조합을 선택하는 것을 특징으로 하는 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택방법.
  10. 제5항에 있어서,
    선택된 압축알고리즘 및 암호알고리즘의 조합을 생성하는 제1 연산속도와 제2 연산속도가 통신속도와 같도록 제어하는 단계를 더 포함하는 것을 특징으로 하는 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택방법.
  11. 제10항에 있어서,
    상기 제1 연산속도 또는 제2 연산속도 중에서 통신속도보다 빠른 연산속도의 경우에는 연산속도를 낮추어 상기 통신속도와 같도록 제어하고, 상기 제1 연산속도 또는 제2 연산속도 중에서 통신속도보다 느린 연산속도의 경우에는 연산속도를 높여 상기 통신속도와 같도록 제어하는 것을 특징으로 하는 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택방법.
  12. 제5항 내지 제11항 중의 어느 하나의 항의 방법을 컴퓨터에서 수행하도록 상기 각각의 단계를 실행시키기 위한 명령어를 기록한 컴퓨터 판독가능 기록매체.
KR1020100038880A 2010-04-27 2010-04-27 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택시스템, 선택방법과 그 방법을 컴퓨터에서 수행하도록 각각의 단계를 실행시키기 위한 명령어를 기록한 컴퓨터 판독가능 기록매체 KR101125033B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100038880A KR101125033B1 (ko) 2010-04-27 2010-04-27 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택시스템, 선택방법과 그 방법을 컴퓨터에서 수행하도록 각각의 단계를 실행시키기 위한 명령어를 기록한 컴퓨터 판독가능 기록매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100038880A KR101125033B1 (ko) 2010-04-27 2010-04-27 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택시스템, 선택방법과 그 방법을 컴퓨터에서 수행하도록 각각의 단계를 실행시키기 위한 명령어를 기록한 컴퓨터 판독가능 기록매체

Publications (2)

Publication Number Publication Date
KR20110119269A KR20110119269A (ko) 2011-11-02
KR101125033B1 true KR101125033B1 (ko) 2012-03-21

Family

ID=45390889

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100038880A KR101125033B1 (ko) 2010-04-27 2010-04-27 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택시스템, 선택방법과 그 방법을 컴퓨터에서 수행하도록 각각의 단계를 실행시키기 위한 명령어를 기록한 컴퓨터 판독가능 기록매체

Country Status (1)

Country Link
KR (1) KR101125033B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101987025B1 (ko) * 2017-05-31 2019-06-10 삼성에스디에스 주식회사 암호화 처리 방법 및 그 장치

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040044182A (ko) * 2001-06-04 2004-05-27 엔시티 그룹, 인코포레이티드 통신네트워크의 유효 대역폭 증가 시스템 및 방법
KR100607020B1 (ko) 1998-05-29 2006-08-01 인드라넷 테크놀로지스 리미티드 대용량 고속 멀티미디어 텔레스써시아, 텔레메트리, 텔레키네시스, 텔레프레즌스, 텔레매니지먼트, 원격통신 및 데이터 프로세싱 서비스의 제공을 위해 분산 인공지능이 부여된 자기갱신적 네트워크 시스템
KR100949420B1 (ko) 2002-10-31 2010-03-24 파나소닉 주식회사 통신장치, 통신 시스템 및 알고리즘 선택방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100607020B1 (ko) 1998-05-29 2006-08-01 인드라넷 테크놀로지스 리미티드 대용량 고속 멀티미디어 텔레스써시아, 텔레메트리, 텔레키네시스, 텔레프레즌스, 텔레매니지먼트, 원격통신 및 데이터 프로세싱 서비스의 제공을 위해 분산 인공지능이 부여된 자기갱신적 네트워크 시스템
KR20040044182A (ko) * 2001-06-04 2004-05-27 엔시티 그룹, 인코포레이티드 통신네트워크의 유효 대역폭 증가 시스템 및 방법
KR100949420B1 (ko) 2002-10-31 2010-03-24 파나소닉 주식회사 통신장치, 통신 시스템 및 알고리즘 선택방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
박기웅, 박규호, "DEVS-Based Evaluation for a Proper Selection of Compression and Encryption in Ubiquitous Computing Environment," 한국차세대컴퓨팅학회 논문지, Vol.4 No.2, 2008년 6월, pp. 16-22.

Also Published As

Publication number Publication date
KR20110119269A (ko) 2011-11-02

Similar Documents

Publication Publication Date Title
EP3399758B1 (en) Method and apparatus to encode and decode two-dimension point clouds
US11151749B2 (en) Image compression method and apparatus
CN109842803B (zh) 一种图像压缩的方法及装置
US8918450B2 (en) Server apparatuses, server control programs, and client apparatuses for a computer system in which created drawing data is transmitted to the client apparatuses
JP6905066B2 (ja) 符号化及び復号方法並びにデバイス
TWI684356B (zh) 確定運動矢量預測值的方法及設備、電腦可讀儲存介質
AU2019253866B2 (en) Image compression method and apparatus
US8645713B2 (en) Encrypting method, recording medium of encrypting program, decrypting method, and recording medium of decrypting program
US20150296054A1 (en) Server apparatus, terminal, thin client system, screen transmission method and program
WO2017034725A1 (en) Reliable large group of pictures (gop) file streaming to wireless displays
CN103458460A (zh) 对信号数据进行压缩和解压缩的方法和装置
CN105335125A (zh) 一种手机屏幕映射到计算机类终端的优化方法
US20200153926A1 (en) Scalable vehicle data compression systems and methods
CN111768790B (zh) 用于传输语音数据的方法和装置
KR101125033B1 (ko) 최적화된 통신환경을 위한 압축알고리즘 및 암호알고리즘 선택시스템, 선택방법과 그 방법을 컴퓨터에서 수행하도록 각각의 단계를 실행시키기 위한 명령어를 기록한 컴퓨터 판독가능 기록매체
CN103152606A (zh) 视频文件处理方法及装置、系统
CN106470212A (zh) 一种基于lzw压缩算法对eigrp协议报文进行压缩和加密的方法
US20170272095A1 (en) Improved compression and encryption of a file
WO2012160626A1 (ja) 画像圧縮装置、画像復元装置、及びプログラム
US20130336380A1 (en) Power Optimization for Compression in Wireless Transmissions
CN104506318B (zh) 基于Trivium算法的数据传输加密和解密的方法
KR102231222B1 (ko) 통신 시스템에서 비디오 데이터를 송신하기 위한 장치 및 방법
JP2010062626A (ja) 画面データ送信装置、画面データ送信方法及び画面データ送信プログラム
EP3635953B1 (en) Electronic device for high-speed compression processing of feature map of cnn utilizing system and controlling method thereof
KR20180001606A (ko) 영상 신호 송신 장치 및 그 영상 신호 송신 방법

Legal Events

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

Payment date: 20150226

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee