KR101540984B1 - 전송 서버 및 그 동작방법 - Google Patents
전송 서버 및 그 동작방법 Download PDFInfo
- Publication number
- KR101540984B1 KR101540984B1 KR1020140010935A KR20140010935A KR101540984B1 KR 101540984 B1 KR101540984 B1 KR 101540984B1 KR 1020140010935 A KR1020140010935 A KR 1020140010935A KR 20140010935 A KR20140010935 A KR 20140010935A KR 101540984 B1 KR101540984 B1 KR 101540984B1
- Authority
- KR
- South Korea
- Prior art keywords
- files
- unit
- transmission
- compression
- compressed
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
본 발명은, 전송할 복수의 파일이 저장된 제1 저장부, 수신 서버와의 전송 상태를 체크하는 네트워크 상태 체크부, 상기 전송 상태가 양호한 경우, 상기 복수의 파일 각각을 설정된 크기에 따라 분할하는 분할부, 상기 분할부에 의해 분할된 분할파일들을 기 설정된 압축방식 및 압축률에 따라 압축하는 압축부, 상기 압축부에 의해 압축된 압축파일들을 인증키를 이용하여 암호화하는 인코딩부 및 상기 인코딩부에 의해 암호화된 암호파일들을 저장하는 제2 저장부를 포함하는 전송 서버를 제공한다.
Description
본 발명은 전송 서버 및 그 동작방법에 관한 것으로서, 더욱 상세하게는 수신 서버로 전송될 복수의 파일에 대한 보안을 확보하기 용이한 전송 서버 및 그 동작방법에 관한 것이다.
최근에는 다양한 디지털 기기를 사용하게 됨에 따라 일반적인 연산 및 데이터 처리를 위한 마이크로프로세서나 기기제어를 위한 마이크로컨트롤러에 비하여 실시간으로 디지털 신호를 처리할 수 있는 디지털신호처리장치(Digital Signal Processor ; DSP)를 많이 사용하고 있다. 이와 같은 DSP는 마이크로프로세서의 일종으로 디지털 신호처리분야에 있어서 실시간으로 매우 빠른 연산을 수행할 수 있도록 하드웨어적인 승산기가 내장되어 있는 마이크로프로세서이다.
이러한 DSP는 내부구조에 따라 단순하게 DSP 코어(core)만으로 이루어진 범용 DSP와 DSP의 코어에 음성처리, 통신처리, 화상처리, 디지털 제어, 고속연산처리 등과 같이 특정 사용목적에 적합한 입출력(I/O) 기능과 제어프로그램이 내장된 전용 DSP로 나누어진다. 근래에는 상기와 같이 다양한 입출력 기능을 내장하여 특정 디지털기기에 사용할 수 있도록 마이크로 컨트롤러화된 DSP가 많이 사용되고 있으며, 병렬처리 및 멀티 프로세싱 기능 및 통신기능이 강화되어 그 사용분야가 확대되고 있다.
대부분의 기기들이 디지털 데이터를 사용하게 되는 근래에 있어서 가장 문제가 되는 것은 데이터의 복제, 변조 및 해킹과 같은 보안 문제이다. 이와 같은 DSP는 디지털 데이터의 처리와 통신을 위하여 적합하지만 상기와 같은 디지털 데이터의 복제, 변조 및 해킹과 같은 보안 문제를 직접 해결하지는 못하며, 따라서 DSP가 사용되는 각각의 디지털 기기에 별도의 보안 모듈을 사용하고 있는 실정이다.
그러나 특정 영역 이외의 다른 영역에서 데이터가 변조되거나 해킹 되는 경우, 데이터의 보안처리가 제대로 수행되지 않으며 데이터 전송로를 모니터하면 데이터가 유출될 수도 있다.
본 발명의 목적은, 수신 서버로 전송될 복수의 파일에 대한 보안을 확보하기 용이한 전송 서버 및 그 동작방법을 제공함에 있다.
본 발명에 따른 전송 서버는, 전송할 복수의 파일이 저장된 제1 저장부, 수신 서버와의 전송 상태를 체크하는 네트워크 상태 체크부, 상기 전송 상태가 양호한 경우, 상기 복수의 파일 각각을 설정된 크기에 따라 분할하는 분할부, 상기 분할부에 의해 분할된 분할파일들을 기 설정된 압축방식 및 압축률에 따라 압축하는 압축부, 상기 압축부에 의해 압축된 압축파일들을 인증키를 이용하여 암호화하는 인코딩부 및 상기 인코딩부에 의해 암호화된 암호파일들을 저장하는 제2 저장부를 포함할 수 있다.
또한, 상기 압축부는 상기 압축파일들의 원본크기, 압축방식 및 압축률을 포함하는 헤더정보를 포함하는 헤더파일을 생성하여 상기 인코딩부로 전달할 수 있다.
또한, 상기 분할파일들 중 제1 및 제2 분할파일은, 크기가 서로 상이할 수 있다.
또한, 상기 압축파일들 중 제1 및 제2 압축파일은 압축방식이 서로 상이하며, 상기 압축파일들 중 상기 제1 압축파일 및 제3 압축파일은 압축방식이 동일하고 압축률이 서로 상이할 수 있다.
또한, 상기 암호파일들은 상기 인증키에 따라 파일명이 독출될 수 있다.
또한, 상기 전송상태가 양호한 경우 상기 암호파일들을 랜덤하게 상기 수신서버로 전송하고, 상기 전송상태가 불량한 경우 상기 암호파일들을 순서대로 상기 수신서버로 전송하는 전송부를 더 포함하는 전송 서버.
또한, 상기 네트워크 상태 체크부는 전송상태가 불량한 경우, 단위 시간 당 최적의 전송 가능 용량을 산출하고, 상기 분할부는, 상기 전송 가능 용량보다 작은 용량의 크기로 상기 복수의 파일을 분할할 수 있다.
본 발명에 따른 전송 서버의 동작방법은, 제1 저장부에 저장된 복수의 파일을 수신 서버로 전송하는 경우, 네트워크 상태 체크부가 상기 수신 서버와의 전송 상태를 체크하는 단계, 상기 전송 상태가 양호한 경우, 분할부가 상기 복수의 파일 각각을 설정된 크기에 따라 분할하는 단계, 상기 분할부에 의해 분할된 분할파일들을 압축부가 기 설정된 압축방식 및 압축률에 따라 압축하는 단계, 상기 압축부에 의해 압축된 압축파일들을 인코딩부가 인증키를 이용하여 암호화하는 단계 및 상기 인코딩부에서 암호화된 암호파일들을 전송부가 상기 수신 서버로 전송하며, 제2 저장부에 저장하는 단계를 포함할 수 있다.
본 발명에 따른 전송 서버 및 그 동작방법은, 수신 서버로 전송된 복수의 파일 각각을 설정된 크기로 분할하고, 분할된 분할파일들을 설정된 압축방식 및 압축률로 압축하고 압축된 압축파일들을 인증키를 이용하여 암호하고, 암호화된 암호파일들을 설정된 전송순서에 따라 수신 서버로 전송하도록 함으로써, 상기 암호파일들을 수신하는 경우에 상기 인증키를 이용하지 않는 경우 복수의 파일을 확인할 수 없도록 함으로써 보안을 높일 수 있는 이점이 있다.
도 1은 본 발명에 따른 전송 서버를 포함하는 데이터 통신 시스템을 나타낸 시스템도이다.
도 2는 본 발명에 따른 전송 서버의 제어구성을 나타낸 제어블록도이다.
도 3은 본 발명에 따른 전송 서버에서 수신 서버로 전송되는 암호파일을 생성하는 순서를 나타낸 도이다.
도 4는 본 발명에 따른 전송 서버의 동작방법을 나타낸 순서도이다.
도 2는 본 발명에 따른 전송 서버의 제어구성을 나타낸 제어블록도이다.
도 3은 본 발명에 따른 전송 서버에서 수신 서버로 전송되는 암호파일을 생성하는 순서를 나타낸 도이다.
도 4는 본 발명에 따른 전송 서버의 동작방법을 나타낸 순서도이다.
이하, 본 발명의 바람직한 실시예를 첨부된 도면들을 참조하여 상세히 설명한다. 우선 각 도면의 구성요소들에 참조 부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다. 또한, 이하에서 본 발명의 바람직한 실시예를 설명할 것이나, 본 발명의 기술적 사상은 이에 한정하거나 제한되지 않고 당업자에 의해 변형되어 다양하게 실시될 수 있음은 물론이다.
제 1, 제 2등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 또한 네트워크 상의 제1 구성요소와 제2 구성요소가 연결되어 있거나 접속되어 있다는 것은, 유선 또는 무선으로 제1 구성요소와 제2 구성요소 사이에 데이터를 주고 받을 수 있음을 의미한다.
또한, 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 단순히 본 명세서 작성의 용이함만이 고려되어 부여되는 것으로서, 그 자체로 특별히 중요한 의미 또는 역할을 부여하는 것은 아니다. 따라서, 상기 "모듈" 및 "부"는 서로 혼용되어 사용될 수도 있다.
이와 같은 구성요소들은 실제 응용에서 구현될 때 필요에 따라 2 이상의 구성요소가 하나의 구성요소로 합쳐지거나, 혹은 하나의 구성요소가 2 이상의 구성요소로 세분되어 구성될 수 있다.
도 1은 본 발명에 따른 전송 서버를 포함하는 데이터 통신 시스템을 나타낸 시스템이다.
도 1을 참조하면, 데이터 통신 시스템은 제1 단말장치(100), 전송 서버(200), 수신 서버(300) 및 제2 단말장치(400)를 포함할 수 있다.
본 발명에서 전송 서버(200) 및 수신 서버(300)는 서로 동일한 동작을 수행할 수 있으며, 이에 한정을 두지 않는다.
제1, 2 단말장치(100)는 전송 서버(200) 및 수신 서버(300)로 복수의 파일을 전송하도록 전송 명령을 전달하거나, 상기 복수의 파일을 전송 서버(200) 및 수신 서버(300)에 생성 및 저장할 수 있으며, 이에 한정을 두지 않는다.
전송 서버(200)는 제1 단말장치(100)에 의해 생성 및 저장된 상기 복수의 파일을 제1 단말장치(100)가 수신 서버(300) 또는 제2 단말장치(400)로 전송 요청하는 경우 상기 복수의 파일을 수신 서버(300)로 전송할 수 있다.
이때, 전송 서버(200)는 수신 서버(300)와의 전송 상태에 따라 상기 복수의 파일의 분할크기, 압축방식, 압축률 및 전송 순서 중 적어도 하나를 상이하게 하여 수신 서버(300)로 전송할 수 있다.
전송 서버(200)에 대한 자세한 설명은 후술하기로 한다.
수신 서버(300)는 전송 서버(200)에서 전송된 상기 복수의 파일을 저장하며, 제2 단말장치(400)로 전송할 수 있다.
도 2는 본 발명에 따른 전송 서버의 제어구성을 나타낸 제어블록도 및 도 3은 본 발명에 따른 전송 서버에서 수신 서버로 전송되는 암호파일을 생성하는 순서를 나타낸 도이다.
도 2 및 도 3을 참조하면, 전송 서버(200)는 제1 저장부(210), 제2 저장부(220), 네트워크 상태 체크부(230), 분할부(240), 압축부(250), 인코딩부(260) 및 전송부(270)를 포함할 수 있다.
제1 저장부(210)는 제1 단말장치(100)에 의해 생성된 복수의 파일(A, B, C)을 저장할 수 있다. 저장된 복수의 파일(A, B, C) 중 일부는 전송 서버(200)에 접속된 다른 단말장치 또는 전송 서버(200) 자체에 의해 생성된 파일일 수 있다.
제1 저장부(210)는 분할부(230)로 복수의 파일(A, B, C)을 제공할 수 있다. 제공 방법은 제1 저장부(210)에 파일이 저장됨과 동시에 제공하거나, 기설정된 개수 또는 기설정된 용량을 초과하는 경우에 제공할 수 있다. 후술할 전송 순서 여부에 따라 제공 방법을 달리 할 수 있다. 예를 들어, 전송 서버에서 전송할 파일들을 랜덤하게 전송해야 하는 경우 제1 저장부(210)는 기설정된 개수를 초과하는 경우, 기설정된 용량을 초과하는 경우, 또는 기설정된 개수 및 기설정된 용량을 초과하는 경우에 분할부(230)로 전송할 파일(A, B, C)을 전송할 수 있다. 전송 서버에서 전송할 파일들을 순서대로 전송할 경우, 제1 저장부(210)는 파일이 저장됨과 동시에 분할부(230)로 전송할 수 있다.
네트워크 상태 체크부(230)는 수신 서버(300)와의 전송 상태를 체크할 수 있다. 네트워크 상태 체크부(230)는 수신 서버(300)와의 전송 속도, 전송 용량, 대역폭 및 수신 서버(300)의 접속 상태 중 적어도 하나를 체크함으로써, 수신 서버(300)와의 네트워크 접속이 설정된 기준을 만족하는지 체크할 수 있다. 예를 들어, 전송 대역폭이 기설정된 용량을 초과하고, 수신 서버(300)와의 접속 상태가 기설정된 시간 이상 유지되는 경우, 전송 상태를 양호한 것으로 판단할 수 있다.
분할부(240)는 네크워크 상태 체크부(230)에 의해 수신 서버(300)와의 전송 상태가 양호한 경우, 복수의 파일(A, B, C) 각각을 설정된 분할 방식에 따라 분할 할 수 있다. 파일 A를 복수의 분할파일(a1 ~ an)로 분할되는 경우, 일정 크기로 분할하지 않고 랜덤한 크기로 분할되도록 하는 것이 바람직하다. 즉 각 분할파일들(a1 ~ an)은 최대한 그 크기가 서로 동일하지 않는 것이 바람직하다.
분할부(240)는 위와 같은 방식으로 나머지 파일 B 및 C를 각각 복수의 분할파일(b1 ~ bm) 및 복수의 분할파일(c1 ~ ck)로 분할할 수 있다.
분할부(240)는 복수의 파일(A, B, C) 각각에 대한 분할파일들(a1 ~ an, b1 ~ bm, c1 ~ ck)을 생성하여, 압축부(250)로 전달할 수 있다.
네트워크 상태 체크부(230)는 네트워크 상태(수신 서버와의 전송 상태)가 불량한 경우, 단위 시간 당 최적의 전송 가능 용량을 산출할 수 있다. 단위 시간은 미리 설정된 시간(예, 5초)일 수 있다.
분할부(240)는 네트워크 상태가 불량한 경우, 단위 시간 당 최적의 전송 가능 용량 이하로 제1 저장부(210)로부터 수신한 파일을 랜덤한 크기로 분할할 수 있다. 후술할 압축부(250)에 의해 더 압축될 수 있으므로, 분할부(240)는 이를 고려하여 단위 시간 당 최적의 전송 가능 용량 보다 일정량 더 작은 크기의 분할 파일을 생성할 수도 있다.
압축부(250)는 분할부(240)에서 전달된 분할파일들(a1 ~ an, b1 ~ bm, c1 ~ ck)을 설정된 압축방식 및 압축률에 따라 압축된 압축파일들(ac1 ~ acn, bc1 ~ bcm, cc1 ~ cck)을 생성할 수 있다. 압축부(250)는 분할파일들(a1 ~ an, b1 ~ bm, c1 ~ ck)을 압축하는 경우 한가지 압축 방식 및 압축률을 적용하지 않고, 다양한 압축 방식 및 압축률을 적용하는 것이 바람직하다. 예를 들어, 분할파일 a1은 제1 압축방식으로 압축하고, 분할파일 a2는 제2 압축방식으로 압축한다. 분할파일 a1 및 a3가 동일한 제1 압축 방식으로 압축하는 경우, 압축률을 서로 다르게 한다.
압축부(250)는 압축파일들(ac1 ~ acn, bc1 ~ bcm, cc1 ~ cck) 생성시, 각각의 압축파일에 대한 원본크기, 압축방식 및 압축률을 포함하는 헤더정보를 포함하는 헤더파일들(ah, bh, ch)을 생성할 수 있다.
압축부(250)는 전송 상태가 불량한 경우, 사용자 입력 키워드를 기반으로 추가적으로 압축할 수 있다. 전송 상태가 양호한 경우에 비해 보안성이 약해 이를 더 강화하기 위해서이다.
이후, 압축부(250)는 압축파일들(ac1 ~ acn, bc1 ~ bcm, cc1 ~ cck) 및 헤더파일들(ah, bh, ch)을 인코딩부(260)로 전달할 수 있다.
인코딩부(260)는 압축파일들(ac1 ~ acn, bc1 ~ bcm, cc1 ~ cck) 및 헤더파일들(ah, bh, ch)이 전달되면, 기 설정된 인증키에 따라 암호파일(q1 ~ qv)로 암호화할 수 있다. 인증키는 인증서버(미도시)로부터 수신할 수 있다.
인코딩부(260)는 암호파일(q1 ~ qv)을 생성한후 제2 저장부(220)에 저장할 수 있다. 제2 저장부(220)에 저장된 파일은 인증키가 아니면 이를 읽을 수 없는 것이 바람직하며, 파일명도 인증키가 아니면 읽을 수 없도록 하는 것이 보안을 위해 바람직하다.
전송부(270)는 제2 저장부(220)에 저장된 암호파일(q1 ~ qv)을 네트워크를 통하여 수신 서버(300)로 전송할 수 있다. 전송부(270)는 네트워크의 전송 상태에 따라 암호파일(q1 ~ q4)를 랜덤하게 전송하거나, 또는 순차적으로 전송할 수 있다. 즉 전송상태가 양호한 경우, 전송부(270)는 암호파일들을 랜덤하게 전송할 수 있다. 전송상태가 불량한 경우, 전송부(270)는 암호파일들을 순서대로 전송할 수 있다.
여기서, 수신 서버(300)는 전송부(270)에 전송된 암호파일들(q1 ~ qv)을 인증키를 이용하여 압축파일들(ac1 ~ acn, bc1 ~ bcm, cc1 ~ cck) 및 헤더파일들(ah, bh, ch)로 복호화하고, 압축파일들(ac1 ~ acn, bc1 ~ bcm, cc1 ~ cck)을 헤더파일들(ah, bh, ch)의 정보를 이용하여 전송 서버(200)에서 실행한 압축 방식에 따라 해제하여 분할파일들(a1 ~ an, b1 ~ bm, c1 ~ ck)를 생성하고 이후 복수의 파일(A, B, C)을 생성하여 제2 단말장치(400)로 전송할 수 있다.
도 4는 본 발명에 따른 전송 서버의 동작방법을 나타낸 순서도이다.
도 4를 참조하면, 네트워크 상태 체크부(230)는 전송 서버(200)와 수신 서버(300)의 전송 상태를 체크하여(S510), 전송 상태가 양호한지 판단할 수 있다(S520). 전송 상태가 양호한 지 여부는 송수신 서버(200, 300) 사이의 전송 속도, 전송 용량, 대역폭, 및 접속 상태의 장시간 유지 등을 기초로 판단될 수 있다.
네트워크의 전송 상태가 양호한 경우, 분할부(240)는 제1 저장부(210)에 저장된 원본 파일들을 체크하여(S520), 전송 상태인지 판단할 수 있다(S535). 이러한 판단은 분할부(240)에 한정되지 않고, 제1 저장부(210), 및 네트워크 상태 체크부(230) 중 어느 하나 또는 별개의 모듈에서 행해질 수 있다. 전송 상태를 만족하는 경우는, 제1 저장부(210)에 저장된 파일의 개수가 기설정된 개수 이상 경우, 저장된 파일의 총 용량이 기설정된 용량 이상인 경우, 및 저장된 파일의 개수 및 총용량 각각이 기설정된 개수 이상이며 기설정된 용량 이상인 경우 중 어느 하나일 수 있다.
전송 요건을 만족하지 못하는 경우, 분할부(240)는 제1 저장부(210)에 저장된 원본 파일들을 기설정된 주기로 체크할 수 있다(S535).
전송 요견을 만족하는 경우, 분할부(240)는 제1 저장부(210)에 저장된 원본 파일들 전부를 읽어 들인 후, 기설정된 크기로 분할하며, 제1 저장부(210)에 저장된 원본 파일을 삭제하거나 전송 상태로 넘어갔음을 기입해 놓을 수 있다(S545). 전송 상태로 넘어간 것으로 기입된 파일들은, 전송 요건을 판단할 때 제하고 판단한다. 다시 언급하면, 단계 S535 또는 S540에서 제1 저장부(210)에 저장된 파일들을 체크하는 것은 저장된 파일들 중 전송될 파일들만 체크한다는 의미로, 전송을 위해 분할부(240)로 전송된 파일들은 체크하지 않는다. 분할부(240)에 의해 분할된 분할 파일들은 최대한 서로 다른 크기로 분할되는 것이 바람직하다. 제3자가 본 분할 파일들을 취득했을 때, 원본 파일로의 변환을 최대한 방해하기 위해서이다.
압축부(250)는 분할부(240)에 의해 분할된 분할 파일들을 다수의 압축 방식으로 최대한 상이한 압축률로 압축하며, 분할 파일들의 크기, 압축 방식, 및 압축률에 대한 정보를 가지는 헤더 파일을 생성할 수 있다(S550). 원본 파일로의 변환을 어렵게 할 수 있기 때문이다. 예를 들어 압축부(250)는 제1 분할 파일을 제1 방식으로 압축하며, 제2 분할 파일을 제2 방식으로 압축하며, 동일한 제1 및 제3 분할 파일을 제1 방식으로 압축하는 경우 각각의 압축률을 상이하게 할 수 있다.
암호화부(260)는 압축부(250)에 의한 압축 파일들을 암호화키를 이용하여 인코딩하여 제2 저장부(220)에 저장할 수 있다(S555). 보안성을 더 강화하기 위해서 이다. 암호화부(260)는 파일명도 암호화하여 외부에서 쉽게 원본 파일이나 그 전 단계 파일을 쉽게 유추하지 못하도록 하기 위함이다. 암호화부(260)는 암호화키를 외부의 인증서버(미도시)를 통해 얻을 수 있다.
전송부(270)는 송수신 서버의 전송 상태가 양호한 경우, 제2 저장부(220)에 저장된 전송할 파일들을 랜덤하게 수신 서버(300)로 전송할 수 있다(S560). 특히 서로 다른 원본 파일에서 분할되어 압축 및 암호화된 파일들을 최대한 혼합하여 전송하는 것이 높은 보안성을 위해 바람직하다. 예를 들어, 도 3의 최종 암호화된 q1 내지 qv 순으로 보내는 경우, q1은 파일 A로부터 분할되어 압축된 파일을, q2는 파일 C로부터 분할되어 압축 및 암호화된 파일로 지정하여, 전송 순서를 랜덤하게 할 수 있다.
송수신 서버의 전송 상태가 불량한 경우, 네트워크 상태 체크부(230)는 단위 시간 당 최적 전송 가능 용량을 산출할 수 있다(S570). 예를 들어, 5분 동안 평균 대역폭을 측정하여 총 전송 용량을 산출하거나, 최소한의 전송 가능 용량을 산출하여 단위 시간 당 최적 전송 가능 용량으로 지정할 수 있다.
분할부(240)는 제1 저장부(210)에 전송될 파일들이 저장되는 순서대로 하나씩 분할하고, 압축부(250)는 분할된 파일을 압축하며, 헤더 파일을 생성하며, 제1 저장부(210)에 저장된 파일을 삭제하거나 전송 상태로 변환되었음을 알리는 플래그나 태그를 지정해 놓을 수 있다(S575). 본 단계는 상술한 단계 S545, 및 S550와 많은 부분 상응될 수 있다. 분할부(240)는 단위 시간 당 최적 전송 가능 용량에 기초하여 파일을 분할하는 것이 바람직하다. 예를 들어, 분할될 파일의 최대값을 단위 시간당 최적 전송 용량 보다는 작게 지정하거나, 압축될 것을 감안하여 단위 시간당 최적 전송 용량에 최소 압축률을 고려한 값으로 지정할 수 있다.
압축부(250)는 제1차 압축된 압축파일들을 사용자로부터 키워드를 입력 받아 한 번 더 압축할 수 있다(S580). 전송 상태가 불량하여, 파일을 임시로 집합(저장) 시켰다가 다수의 원본 파일에 기한 분할, 압축, 및 암호화된 파일들을 랜덤하게 전송하는 전송 상태가 양호한 경우의 전송 방법과 달리, 원본 파일 하나 하나를 순차적으로 보내야 하기 때문에 보안성을 더 향상시키기 위함이다. 사용자로부터 입력 받는 키워드는 아스키 코드열이거나 특정 파일(예를 들어 생성 날짜, 파일 제목, 및 파일 내용이 특정된 사용자에 의해 지정된 파일)일 수 있다. 압축 해제하는 경우, 압축시 입력받은 동일한 아스키 코드열 또는 특정 파일과 동일해야 한다. 보안성을 강화하기 위해, 사용자 키워드는 아스키 코드열과 특정 파일을 동시에 입력하도록 할 수도 있다.
암호화부(260)는 압축부(250)에 의해 압축된 압축 파일들(헤더 파일 포함)을 암호화키를 이용하여 인코딩할 수 있다(S585). 암호화된 암호 파일들은 제2 저장부(220)에 저장되며, 전송부(270)에 의해 순차적으로 수신 서버(300)로 전송될 수 있다. 본 단계에서 순차 전송은 원본 파일이 순차적으로 전송된다는 의미로, 하나의 원본 파일에서 분할, 압축 및 암호화된 다수의 파일들은 랜덤하게 전송하는 것이 바람직하다.
이상에서 설명한 본 발명의 실시예를 구성하는 모든 구성요소들이 하나로 결합하거나 결합하여 동작하는 것으로 기재되어 있다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다.
상기 본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안 될 것이다.
Claims (9)
- 전송할 복수의 원본 파일이 저장되는 제1 저장부;
수신 서버와의 전송 상태를 판단하는 네트워크 상태 체크부;
상기 네트워크 상태 체크부의 판단에 따라, 상기 복수의 원본 파일 각각 또는 전부를 적어도 두 개는 다른 크기가 갖도록 분할하는 분할부;
상기 분할부에 의해 분할된 분할 파일들 중 적어도 두 개는 서로 다른 압축 방식으로 압축하며, 동일한 압축 방식으로 압축되는 분할 파일들 중 적어도 두 개는 압축률이 상이하도록 압축하는 압축부;
상기 압축부에 의해 압축된 압축 파일들을 인증키를 이용하여 암호화하는 인코딩부; 및
상기 인코딩부에 의해 암호화된 암호 파일들을 저장하는 제2 저장부를 포함하는 전송 서버. - 제 1 항에 있어서,
상기 압축부는 상기 압축 파일들의 원본크기, 압축방식 및 압축률을 포함하는 헤더정보를 포함하는 헤더파일을 생성하여 상기 인코딩부로 전달하는 것을 특징으로 하는 전송 서버. - 제 1 항에 있어서,
상기 네트워크 상태 체크부는 상기 수신 서버와의 전송 속도, 전송 용량, 대역폭 및 접속 상태 중 적어도 하나를 체크하여 기 설정된 기준을 만족하면 상기 전송 상태가 양호한 것으로 판단하고,
상기 네트워크 상태 체크부가 상기 전송 상태가 양호하다고 판단하는 경우, 상기 분할부는 상기 제1 저장부에 저장된 상기 복수의 원본 파일이 전송 요건을 만족하는지 판단하여, 전송 요건을 만족하는 경우 상기 복수의 원본 파일 전부를 기설정된 크기로 분할하는 것을 특징으로 하는 전송 서버. - 제 3 항에 있어서,
상기 전송 요건을 만족하는 것은 상기 제1 저장부에 저장된 파일 개수가 기설정된 개수를 초과하는 경우, 상기 제1 저장부에 저장된 파일이 기설정된 용량을 초과하는 경우, 및 상기 제1 저장부에 저장된 파일의 개수 및 용량 각각이 기설정된 개수 및 용량을 초과하는 경우 중 어느 하나인 것을 특징으로 하는 전송 서버. - 제 1 항에 있어서,
상기 네트워크 상태 체크부는 상기 수신 서버와의 전송 속도, 전송 용량, 대역폭 및 접속 상태 중 적어도 하나를 체크하여 기 설정된 기준을 만족하지 않으면 상기 전송 상태가 불량한 것으로 판단하고, 상기 전송 상태가 불량한 것으로 판단하면 단위 시간 당 전송 가능 용량을 산출하고,
상기 분할부는 상기 전송 가능 용량보다 작은 용량의 크기로 상기 복수의 원본 파일을 순차적으로 분할하는 것을 특징으로 하는 전송 서버. - 제 5 항에 있어서,
상기 압축부는 상기 적어도 두 방식의 압축 방식 및 적어도 두 압축률로 압축된 제1 차 압축 파일들을 사용자로부터 키워드를 입력 받아 제2 차 압축하는 것을 특징으로 하는 전송 서버. - 제 1 항에 있어서,
상기 암호 파일들은, 상기 인증키에 따라 파일명이 독출되는 것을 특징으로 하는 전송 서버. - 제 1 항에 있어서,
상기 네트워크 상태 체크부는, 상기 수신 서버와의 전송 속도, 전송 용량, 대역폭 및 접속 상태 중 적어도 하나를 체크하여 기 설정된 기준을 만족하면 상기 전송 상태가 양호한 것으로 판단하고, 상기 수신 서버와의 전송 속도, 전송 용량, 대역폭 및 접속 상태 중 적어도 하나를 체크하여 기 설정된 기준을 만족하지 않으면 상기 전송 상태가 불량한 것으로 판단하며,
상기 전송 상태가 양호한 경우 상기 암호 파일들을 랜덤하게 상기 수신 서버로 전송하고, 상기 전송 상태가 불량한 경우 상기 암호 파일들을 순서대로 상기 수신 서버로 전송하는 전송부를 더 포함하는 전송 서버. - 제1 저장부에 저장된 복수의 원본 파일을 수신 서버로 전송하는 경우, 네트워크 상태 체크부가 상기 수신 서버와의 전송 속도, 전송 용량, 대역폭 및 접속 상태 중 적어도 하나를 체크하여 기 설정된 기준을 만족하면 전송 상태가 양호한 것으로 체크하는 단계;
상기 전송 상태가 양호한 경우, 분할부가 상기 복수의 파일 각각을 설정된 크기에 따라 분할하는 단계;
상기 분할부에 의해 분할된 분할파일들을 압축부가 기 설정된 압축방식 및 압축률에 따라 압축하는 단계;
상기 압축부에 의해 압축된 압축파일들을 인코딩부가 인증키를 이용하여 암호화하는 단계;
상기 인코딩부에 의해 암호화된 암호 파일들을 저장하는 단계; 및
상기 암호 파일들을 랜덤하게 상기 수신 서버로 전송하는 단계를 포함하는 전송 서버의 동작 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140010935A KR101540984B1 (ko) | 2014-01-28 | 2014-01-28 | 전송 서버 및 그 동작방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140010935A KR101540984B1 (ko) | 2014-01-28 | 2014-01-28 | 전송 서버 및 그 동작방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20150089868A KR20150089868A (ko) | 2015-08-05 |
KR101540984B1 true KR101540984B1 (ko) | 2015-08-07 |
Family
ID=53886214
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140010935A KR101540984B1 (ko) | 2014-01-28 | 2014-01-28 | 전송 서버 및 그 동작방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101540984B1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114466001A (zh) * | 2021-12-27 | 2022-05-10 | 格美安(北京)信息技术有限公司 | 一种基于文件分包的文件传输方法、存储介质和系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101259449B1 (ko) * | 2012-01-03 | 2013-04-29 | 국방과학연구소 | 고속 카메라의 디지털 영상신호 처리장치 및 그 방법 |
-
2014
- 2014-01-28 KR KR1020140010935A patent/KR101540984B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101259449B1 (ko) * | 2012-01-03 | 2013-04-29 | 국방과학연구소 | 고속 카메라의 디지털 영상신호 처리장치 및 그 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR20150089868A (ko) | 2015-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104836656B (zh) | 一种视频文件的存储和传输方法 | |
JP6495346B2 (ja) | 情報処理システム | |
CN109922047B (zh) | 一种图像传输系统及方法 | |
KR20120053398A (ko) | 컨텐츠를 검증하기 위한 서명 장치와 검증 장치를 포함하는 검증 시스템 및 검증 방법 | |
CN108898440A (zh) | 流量兑换方法和装置 | |
CN109951490A (zh) | 基于区块链的网页防篡改方法、系统及电子设备 | |
CN110098939A (zh) | 消息认证方法及装置 | |
WO2016155495A1 (zh) | 数据交换方法、装置及设备 | |
CN107995148A (zh) | 文件防篡改的方法、系统、终端和可信云平台 | |
US20130311765A1 (en) | Information processing apparatus, data generation method, information processing method, and information processing system | |
CN105391570A (zh) | 用于ccn管道流的可靠内容交换的系统和方法 | |
CN105262752A (zh) | 一种虚拟钥匙的数据处理方法、装置及移动终端、服务器 | |
CN116318665A (zh) | 一种文件加密方法、存储介质和电子设备 | |
CN117061126A (zh) | 一种管理云盘文件加密与解密的系统和方法 | |
CN105183402A (zh) | 数据存储方法 | |
CN105224262A (zh) | 数据处理方法 | |
CN111212026A (zh) | 基于区块链的数据处理方法、装置及计算机设备 | |
KR101540984B1 (ko) | 전송 서버 및 그 동작방법 | |
US7574607B1 (en) | Secure pipeline processing | |
CN105228114A (zh) | 一种基于电力故障定位系统的加密短信收发系统及方法 | |
CN113383514A (zh) | 用于在资源受限系统中认证消息的方法 | |
CN108563396B (zh) | 一种安全的云端对象存储方法 | |
US10129027B1 (en) | Security alerting system with dynamic buffer size adaption | |
CN203289647U (zh) | 一种用于电子凭证认证的手持音频通信设备 | |
CN103092932A (zh) | 一种分布式文档转码系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20190130 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20190730 Year of fee payment: 5 |