KR100650293B1 - 전자문서 해킹방지 방법 및 이를 실행하기 위한프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체 - Google Patents

전자문서 해킹방지 방법 및 이를 실행하기 위한프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체 Download PDF

Info

Publication number
KR100650293B1
KR100650293B1 KR1020040092894A KR20040092894A KR100650293B1 KR 100650293 B1 KR100650293 B1 KR 100650293B1 KR 1020040092894 A KR1020040092894 A KR 1020040092894A KR 20040092894 A KR20040092894 A KR 20040092894A KR 100650293 B1 KR100650293 B1 KR 100650293B1
Authority
KR
South Korea
Prior art keywords
key
client
server
electronic document
demodulation
Prior art date
Application number
KR1020040092894A
Other languages
English (en)
Other versions
KR20060047067A (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 KR1020040092894A priority Critical patent/KR100650293B1/ko
Publication of KR20060047067A publication Critical patent/KR20060047067A/ko
Application granted granted Critical
Publication of KR100650293B1 publication Critical patent/KR100650293B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/007Encryption, En-/decode, En-/decipher, En-/decypher, Scramble, (De-)compress

Landscapes

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

Abstract

본 발명은 전자문서 해킹방지 방법에 관한 것으로서, (a) 서버와 클라이언트 컴퓨터 간에 형성된 채널을 통해 암호키 및 복호키를 공유하는 단계; (b) 상기 서버가 상기 암호키를 이용하여 클라이언트 측으로 전송될 전자문서를 암호화하는 단계; (c) 상기 서버가 상기 암호키 및 클라이언트 정보로부터 복조키 생성법을 생성하는 단계; (d) 상기 서버가 복조키 생성법을 인코딩하는 단계; (e) 상기 서버가 상기 암호키, 클라이언트 정보 및 변조키 생성법으로부터 변조키를 생성하는 단계; (f) 상기 서버가 생성된 상기 변조키를 이용하여 상기 암호화된 전자문서를 변조화하는 단계; (g) 상기 클라이언트가 상기 (d) 단계에 의해 인코딩된 복조키 생성법을 수신한 후, 디코딩하는 단계; (h) 상기 클라이언트가 상기 (a) 단계의 복호키, 기 저장된 클라이언트 정보 및 상기 (g) 단계에 의해 디코딩된 복조키 생성법으로부터 복조키를 생성하는 단계; (i) 상기 클라이언트가 상기 복조키를 이용하여 상기 (f) 단계에 의해 변조화된 전자문서를 복조화하는 단계; 및 (j) 상기 클라이언트가 상기 복호키를 이용하여 상기 복조화된 전자문서를 복호화하는 단계; 를 포함하는 것을 특징으로 한다.
해킹방지, 크랙방지, 리버스엔지니어링

Description

전자문서 해킹방지 방법 및 이를 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체{Method For Anti-Hacking Electronic Filing Document And Computer Readable Record Medium On Which A Program Therefor Is Recorded}
도 1 은 본 발명의 일실시예에 따른 전자문서 해킹방지 시스템에 대한 개략도.
도 2 는 본 발명의 일실시예에 따른 전자문서 해킹방지 방법에 대한 서버 측 흐름도.
도 3 은 본 발명의 일실시예에 따른 전자문서 해킹방지 방법에 대한 클라이언트 측 흐름도.
< 도면의 주요 부분에 대한 부호의 설명 >
100 : 서버 110 : 암호부
120 : 변조키 생성부 121 : 복조키 생성법 모듈
122 : 변조키 생성 모듈 123 : 인코딩 모듈
130 : 변조부 200 : 클라이언트
210 : 복조키 생성부 211 : 디코딩 모듈
212 : 복조키 생성 모듈 220 : 복조부
230 : 복호부 300 : 정보통신망
본 발명은 전자문서 해킹방지 방법에 관한 것으로서, 더욱 상세하게는, 서버 측에서 클라이언트 측과 공유되는 암호키를 이용하여 전자문서를 암호화하고, 상기 암호화된 전자문서를 클라이언트 정보와 상기 암호키를 이용하여 랜덤하게 생성되는 변조키를 통해 변조화 한 후, 상기 변조화된 전자문서를 클라이언트 측에서 수신 받아, 상기 암호화 및 변조화된 전자문서를 기 공유된 복호키, 동적으로 다운로드되는 복조키 생성법 및 클라이언트 측 정보가 포함된 모듈정보를 이용하여 복조화하고 복호화 함으로써, 상기 서버와 클라이언트 간에 상호 교환되는 전자문서가 해커에 의해 해킹되는 것을 방지 할 수 있는 전자문서 해킹방지 방법 및 이를 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.
현대 사회에서 인터넷(Internet)은, 사용자가 불특정 다수의 사이트에 접속하여 다양한 정보를 공유할 수 있는 용이한 기능을 제공하고 있으며, 이러한 인터넷은 시간적 그리고 공간적 제약을 없애면서 점차 하나의 거대한 정보의 보고와 매개체로서 자리매김하고 있다.
현재 상기 인터넷을 기반으로 유료성 디지털 전자문서 교환, 인터넷 뱅킹, 전자상거래지불 및 소프트웨어의 사용을 위한 인증과 같은 다양한 온라인 서비스가 활발하게 이루어지고 있으며, 그 시장 규모는 매년 급속도로 커지고 있다.
그러나 상기 온라인 서비스가 활성화 됨에 따라, 온라인 서비스를 제공하는 서버(Server)와 상기 온라인 서비스를 제공받는 클라이언트(Client) 사이에 상호 교환되는 각종 아이디와 비밀번호, 주민등록번호, 각종 카드번호, 신상정보 등과 같은 개인정보, 소프트웨어 사용 인증을 위한 정보 및 웹 콘텐츠(Web Contents)를 포함하는 전자문서가 악의 있는 사용자(이하, "해커"라 한다)에게 유출되어 악용되고 또한 남용되는 사고가 매년 급증하고 있다.
한편 유료성 게임, 번역기 및 바이러스 백신 등을 포함하는 소프트웨어의 경우, 해커가 상기 소프트웨어의 정품 여부를 식별하는 인증코드 부분을 인위적으로변경하여, 즉 상기 인증을 수행하는 조건문 바이너리 코드를 변경하여, 인증코드가 실행되지 않도록 하는 방식으로 상기 소프트웨어를 해킹 또는 크랙하여 불법으로 사용하는 경우가 빈번하다.
상기와 같은 사고를 방지하기 위해 전자문서의 암호화, 복호화, 변조화 및 복조화에 관련된 기술(이하, "보안기술"이라 한다)들이 개발되어 구현되고 있으며, 이러한 보안기술로는 OSI 7 계층(Open Systems Interconnection 7 Layer) 중 응용계층과 전송계층 사이에서 클라이언트와 서버간의 안전한 채널을 형성해 주는 SSL(Secure Sockets Layer), PKI(Public Key Infrastructure, 공개키기반구조)를 이용한 전자서명(Digital Signature), 디지털워터마킹(Digital Watermarking) 및 DRM(Digital Right Management, 디지털저작권관리)등이 있다.
상기 전자서명은, SHA-1(Secure Hash Algorithm), MD2 및 MD5 를 포함하는 해쉬 알고리즘, RSA 암호화 알고리즘 및 DH(Diffie-Hellman) 암호화 알고리즘을 이용하여 해커로부터 전자문서의 해킹을 방지하는 기술이다.
특히 상기 DRM은 온라인 상에서 교환되는 텍스트, 그래픽, 디지털 비디오, 디지털 음악 및 컴퓨터 그래픽을 포함하는 웹 컨텐츠를 암호화시키고, 정상적으로 구매한 사용자 또는 인증을 받은 사용자만이 복호화시켜 사용할 수 있도록 함으로써, 해커가 상기 전자문서를 해킹하여 무단 배포 및 악용하지 못 하도록 사전에 방지하기 위한 기술이다.
그러나 상기 보안기술을 기반으로 하는 온라인 서비스를 제공하기 위해 널리 사용되고 있는 다양한 소프트웨어들은, 윈도우즈 NT, 윈도우즈 98, 윈도우즈 2000, 윈도우즈 ME 및 윈도우즈 XP 를 포함하는 운영체제를 기반으로, DLL(Dynamic Linking Library), 즉 동적라이브러리를 통해 개발되고 있고, 따라서 상기 소프트웨어는 동적라이브러리를 기반으로 동작하게 되는 바, 소프트웨어 공학의 한 분야로서 이미 만들어진 시스템을 역으로 추적하여 최초의 설계문서나 설계기법 등의 정보를 추출하는 Reverse Engineering(이하, "RE"라 한다) 및 API(Application Programming Interface) Hooking을 통해 상기 전자문서의 해킹(Hacking)이 가능하다.
참고적으로 상기 소프트웨어는 클라이언트가 서버에서 제공하는 웹 페이지에 접속시, 클라이언트로 자동 다운로드되어 설치되는 플러그인(Plug-in) 형식을 취하기도 한다.
상술한 바와 같은 종래의 보안기술을 이용하는 서버와 클라이언트 간에 온라인 서비스가 제공됨에 있어, 상기 RE 및 API Hooking을 이용하는 해커에 의해 상호 교환되는 전자문서가 해킹되어 악용되고, 그리고 상기 전자문서를 이용하는 소프트웨어가 해킹될 수 있는 문제점이 있었다.
본 발명의 목적은, 서버 측에서 클라이언트 측과 공유되는 암호키를 이용하여 전자문서를 일차적으로 암호화하고, 상기 암호화된 전자문서를 클라이언트 정보와 상기 암호키를 이용하여 랜덤하게 생성되는 변조키를 통해 이차적으로 변조화 한 후, 상기 이차적으로 변조화된 전자문서를 클라이언트 측에서 수신 받아, 상기 서버 측과 기 공유된 복호키, 서버로부터 동적으로 다운로드되는 복조키 생성법 및 클라이언트 정보를 이용하여 복조화하고 복호화 함으로써, 상기 서버와 클라이언트 간에 상호 교환되는 전자문서가 해커에 의해 해킹되는 것을 방지함과 동시에 상기 전자문서를 이용하는 소프트웨어의 해킹을 방지할 수 있는 전자문서 해킹방지 방법 및 이를 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공함에 있다.
상기 목적을 달성하기 위한 본 발명은, 전자문서 해킹방지 방법에 관한 것으로서, 서버 및 클라이언트 간에 정보통신망을 통해 전송되는 전자문서의 해킹방지 방법에 있어서, (a) 서버와 클라이언트 컴퓨터 간에 형성된 채널을 통해 암호키 및 복호키를 공유하는 단계; (b) 상기 서버가 상기 암호키를 이용하여 클라이언트 측으로 전송될 전자문서를 암호화하는 단계; (c) 상기 서버가 상기 암호키 및 클라이언트 정보로부터 복조키 생성법을 생성하는 단계; (d) 상기 서버가 복조키 생성법을 인코딩하는 단계; (e) 상기 서버가 상기 암호키, 클라이언트 정보 및 변조키 생성법으로부터 변조키를 생성하는 단계; (f) 상기 서버가 생성된 상기 변조키를 이용하여 상기 암호화된 전자문서를 변조화하는 단계; (g) 상기 클라이언트가 상기 (d) 단계에 의해 인코딩된 복조키 생성법을 수신한 후, 디코딩하는 단계; (h) 상기 클라이언트가 상기 (a) 단계의 복호키, 기 저장된 클라이언트 정보 및 상기 (g) 단계에 의해 디코딩된 복조키 생성법으로부터 복조키를 생성하는 단계; (i) 상기 클라이언트가 상기 복조키를 이용하여 상기 (f) 단계에 의해 변조화된 전자문서를 복조화하는 단계; 및 (j) 상기 클라이언트가 상기 복호키를 이용하여 상기 복조화된 전자문서를 복호화하는 단계; 를 포함하는 것을 특징으로 한다.
바람직하게, 상기 암호키 및 복호키는 서로 동일한 대칭키인 것을 특징으로 한다.
또한 바람직하게, 상기 변조키 및 복조키는 서로 동일한 대칭키인 것을 특징으로 한다.
또한 바람직하게, 상기 클라이언트 정보는, 클라이언트(200) 내에서 실행되는 소프트웨어의 기능별 모듈에 대한 식별 가능한 소정 바이너리 코드인 것을 특징으로 한다.
그리고 바람직하게, 상기 복조키 생성법은, 상기 암호키 및 클라이언트 정보를 통해 생성되며, 상기 클라이언트 정보의 해쉬 값을 랜덤하게 변동시킴으로써 매번 바뀌게 되는 것을 특징으로 하는 전자문서 해킹방지 방법.
한편, 본 발명은 서버 및 클라이언트 간에 정보통신망을 통해 전송되는 전자문서의 해킹방지 방법을 수행하기 위하여, (A) 서버와 클라이언트 컴퓨터 간에 형성된 채널을 통해 암호키 및 복호키를 공유하는 기능; (B) 상기 서버가 상기 암호키를 이용하여 클라이언트 측으로 전송될 전자문서를 암호화하는 기능; (C) 상기 서버가 상기 암호키 및 클라이언트 정보로부터 복조키 생성법을 생성하는 기능; (D) 상기 서버가 복조키 생성법을 인코딩하는 기능; (E) 상기 서버가 상기 암호키, 클라이언트 정보 및 변조키 생성법으로부터 변조키를 생성하는 기능; (F) 상기 서버가 생성된 상기 변조키를 이용하여 상기 암호화된 전자문서를 변조화하는 기능; (G) 상기 클라이언트가 상기 (D) 단계에 의해 인코딩된 복조키 생성법을 수신한 후, 디코딩하는 기능; (H) 상기 클라이언트가 상기 (A) 단계의 복호키, 기 저장된 클라이언트 정보 및 상기 (G) 단계에 의해 디코딩된 복조키 생성법으로부터 복조키를 생성하는 기능; (I) 상기 클라이언트가 상기 복조키를 이용하여 상기 (F) 단계에 의해 변조화된 전자문서를 복조화하는 기능; 및 (J) 상기 클라이언트가 상기 복호키를 이용하여 상기 복조화된 전자문서를 복호화하는 기능; 을 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 포함한다.
먼저 본 발명의 실시예를 설명하기 앞서, 본 발명의 실시예에서 지칭되는 암호키 및 복호키는 서버와 클라이언트 사이에서 송수신되는 전자문서를 암호화하고 복호화하기 위한 코드를 말하며, 상기 암호키 및 복호키는 상호 동일(대칭키)하나, 본 발명의 기술적 사상을 보다 명확하게 기술하기 위하여 서버와 클라이언트에 사용됨에 따라 각각 암호키와 복호키로 정의하였음을 밝힌다.
또한, 본 발명의 실시예에서 지칭되는 변조키 및 복조키 역시 상호 동일한 대칭키임을 밝힌다.
이하, 첨부된 도면을 참조하여 본 발명을 상세하게 설명한다.
본 발명의 일실시예에 따른 전자문서 해킹방지 시스템에 관하여 도 1 을 참조하여 설명하면 다음과 같다.
도 1 은 본 발명의 일실시예에 따른 전자문서 해킹방지 시스템에 대한 개략도이다.
도 1 에 도시된 바와 같이 전자문서 해킹방지 방법을 구현하기 위한 시스템은 서버(100), 클라이언트(200) 및 정보통신망(300)을 포함한다.
상기 서버(100)는 암호부(110), 변조키 생성부(120) 및 변조부(130)를 포함한다.
상기 암호부(110)는 클라이언트(200)와 상호 공유되는 암호키를 이용하여 클라이언트로 보내고자 하는 전자문서를 암호화하는 기능을 수행한다.
또한 상기 변조키 생성부(120)는 복조키 생성법 모듈(121), 변조키 생성 모듈(122) 및 인코딩 모듈(123)을 포함한다.
여기서 상기 복조키 생성법 모듈(121)은 클라이언트 정보에서 추출한 랜덤한 해쉬 값 및 상기 암호키를 이용하여 복조키 생성법을 생성하고, 상기 변조키 생성 모듈(122)은 상기 복조키 생성법, 암호키 및 클라이언트 정보를 이용하여 변조키를 생성하며, 상기 인코딩 모듈(123)은 상기 복조키 생성법을 인코딩하는 기능을 수행한다.
그리고 상기 변조부(130)는 변조키 생성 모듈(122)로부터 생성된 변조키를 이용하여, 상기 암호화된 전자문서를 변조화하는 기능을 수행한다.
또한, 상기 클라이언트(200)는 복조키 생성부(210), 복조부(220) 및 복호부(230)를 포함한다.
상기 복조키 생성부(210)는 디코딩 모듈(211) 및 복조키 생성 모듈(212)을 포함한다.
여기서 상기 디코딩 모듈(211)은 서버(100)의 인코딩 모듈(123)을 통해 인코딩된 복조키 생성법을 디코딩하는 기능을 수행하고, 상기 복조키 생성 모듈(212)은 상기 디코딩된 복조키 생성법, 클라이언트 정보 및 복호키를 이용하여 복조키를 생성하는 기능을 수행한다.
또한 상기 복조부(220)는 복조키 생성 모듈(212)을 통해 생성된 복조키를 이용하여 상기 서버(100)의 변조부(130)를 통해 변조화된 전자문서를 복조화하는 기능을 수행한다.
그리고 상기 복호부(230)는 복조부(220)를 통해 복조화된 전자문서를 복호키를 이용하여 복호화하는 기능을 수행한다.
그리고, 상기 정보통신망(300)은 서버(100)와 클라이언트(200)를 연동시키는 기능을 수행한다.
여기서 상기 정보통신망(300)은 TCP/IP 프로토콜에 의한 유선 인터넷망과 WAP 프로토콜에 의한 무선 인터넷망을 포함하는 인터넷망과 유선 및 무선전화망을 포함한다.
본 실시예에서 상기 서버(100) 및 클라이언트(200)는 일반적으로 사용되는 컴퓨터를 의미하며, 상기 컴퓨터를 Pentium 급 이상의 씨피유(CPU), 64Mb 이상의 램, 하드디스크, CD롬과 마우스와 키보드를 포함하는 정보 입력장치, 모니터와 스피커와 프린터와 통신포트를 포함하는 정보출력장치를 포함하고, 윈도우즈 98 이상의 운영체제 및 리눅스 운영체제 등을 포함한 통신 가능한 컴퓨터 장치로서 웹 내용을 디스플레이 할 수 있는 인터넷 브라우저를 구비하고 있고, 데스크 탑 컴퓨터 및 노트북과 같은 개인용 컴퓨터로 설정하겠으나, 본 발명이 상기 컴퓨터의 사양 및 종류에 한정되는 것은 아니다.
이상으로 도 1 을 참조하여 본 발명의 일실시예에 따른 전자문서 해킹방지 시스템에 관하여 살펴보았고, 이하 도 2 및 도 3 을 참조하여 본 발명의 일실시예에 따른 전자문서 해킹방지 시스템의 상세한 동작에 관하여 설명하면 다음과 같다.
도 2 는 본 발명의 일실시예에 따른 전자문서 해킹방지 방법에 대한 서버 측 흐름도이고, 도 3 은 본 발명의 일실시예에 따른 전자문서 해킹방지 방법에 대한 클라이언트 측 흐름도이다.
상기 도 2 에 도시된 바와 같이, 서버(100) 측에서 정보통신망(300)을 통해 클라이언트(200)로 전자문서를 전송하기에 앞서, 상기 서버(100)와 클라이언트(200) 간에 신뢰성 있는 채널을 통해, 상호 소정의 데이터, 즉 전자문서를 암호화 하기 위해 사용되는 암호키를 공유하게 된다(S2).
본 실시예에서 상기 신뢰성 있는 채널은 서버와 클라이언트 간에 전송되는 암호키를 포함하는 전송 데이터를 암호화하는 SSL(Secure Sockets Layer)을 통해 형성된 채널로 설정하겠으나, 본 발명이 이에 한정되는 것은 아니다.
이후, 상기 서버(100)의 암호부(110)는 상기 암호키를 이용하여 전자문서를 암호화시킨다(S4).
본 실시예에서 상기 암호키를 이용한 전자문서의 암호화에 사용되는 암호 알고리즘을 3DES112bit, RC4128bit, RC5128bit, SC1128bit 및 SEED128bit로 설정하겠으나, 본 발명이 상기 암호 알고리즘의 종류에 한정되는 것은 아니다.
다음으로, 상기 서버(100)의 변조키 생성부(120)는 복조키 생성 모듈을 통해 클라이언트(100)의 고유한 식별 데이터를 포함하는 클라이언트 정보의 해쉬 값 및 암호키로부터 복조키 생성법을 생성시키고, 그리고 상기 변조키 생성부(120)는 인코딩 모듈(123)을 통해 상기 생성된 복조키 생성법을 인코딩시킨다(S6).
이후, 인코딩된 복조키 생성법은 정보통신망(300)을 통해 클라이언트(200)로 전송되게 된다.
여기서 상기 클라이언트 정보의 해쉬 값은, 복조키 생성법 모듈(121)을 통해 매번 랜덤하게 바뀌게 된다.
참고적으로 상기 해쉬 값은, 일반적으로 긴 길이의 데이터를 정해진 길이의 데이터로 줄여주는 SHA-1, MD5 및 HAS를 포함하는 해쉬 알고리즘에 의해 생성되는 것이며, 상기 해쉬 값이 바뀌게 되는 이유는 상기 해쉬 알고리즘에 사용되는 매개 변수 자체가 복조키 생성법 모듈(121)을 통해 래덤하게 매번 바뀌기 때문이다.
본 실시예에서 상기 고유한 식별 데이터는, 클라이언트(200) 내에서 실행되는 소프트웨어의 기능별 모듈에 대한 식별 가능한 소정 바이너리 코드로 설정하고, 그리고 상기 인코딩된 복조키 생성법은 SSL을 통해 클라이언트(200)로 전송되는 것으로 설정하겠으나, 본 발명이 이에 한정되는 것은 아니다.
다음으로, 상기 변조키 생성부(120)는 변조키 생성 모듈(122)를 통해 상기 클라이언트 정보, 암호키 및 상기 복조키 생성법으로부터 변조키를 생성시킨다(S8).
이후, 상기 서버(100)의 변조부(130)는 상기 생성된 변조키를 이용하여 암호화된 전자문서를 변조화시키고(S10), 상기 변조화된 전자문서를 클라이언트(200)로 전송한다.
지금까지 도 2 를 참조하여 본 발명의 일실시예에 따른 전자문서 해킹방지 시스템의 서버 측에 대한 동작을 설명하였고, 이에 상응하는 본 발명의 일실시예에 따른 전자문서 해킹방지 시스템의 클라이언트 측에 대한 동작을 도 3 을 참조하여설명하면 다음과 같다.
먼저, 클라이언트(200)는 상기 서버(100) 측의 제 S2 기능와 동일하게, 서버(100)와 클라이언트(200) 간에 신뢰성 있는 채널을 통해 암호키와 대칭되는 복호키를 공유하게 된다(S12).
본 실시예에서 상기 신뢰성 있는 채널은 서버와 클라이언트 간에 전송되는 암호키를 포함하는 전송 데이터를 암호화하는 SSL(Secure Sockets Layer)을 통해 형성된 채널로 설정하겠으나, 본 발명이 이에 한정되는 것은 아니다.
이후, 클라이언트(200)의 복조기 생성부(210)는 디코딩 모듈(211)을 통해 상기 인코딩된 복조키 생성법을 디코딩한다(S14).
다음으로, 상기 복조키 생성부(210)는 복조키 생성 모듈(212)를 통해 서버(100)와 기 공유된 복호키, 클라이언트 정보 및 복조키 생성법으로부터 복조키를 생성시킨다(S16).
이후, 상기 클라이언트(200)의 복조부(220)는 상기 복조키 생성 모듈(212)을 통해 생성된 복조키를 이용하여, 상기 서버(100)로부터 전송된 변조화된 전자문서를 복조화시킨다(S18).
그리고, 상기 클라이언트(200)의 복호부(230)는 복호키를 이용하여 상기 복조화된 전자문서를 복호화시킨다(S20).
상술한 바와 같이, 서버(100)로부터 클라이언트(200)로 전송되는 전자문서는 상기 암호부(110)와 변조부(130)를 통해 암호화 및 변조화되고, 상기 변조화에 사용된 변조키는 암호화에 사용된 암호키와 클라이언트 정보 그리고 복조키 생성법으로부터 생성되는 바, 해커로부터 클라이언트 정보가 변경되거나 수정되는 경우, 예를들자면, 종래 각종 게임 및 그래픽 툴과 같은 유료성 소프트웨어를 사용자에게 배포할 시에, 정품을 구입한 사용자만이 상기 응용프로그램을 사용할 수 있도록 하기 위하여 소정의 문자와 숫자로 조합된 고유한 식별정보(시리얼 넘버)를 입력 받아 인증 절차를 수행하는 상기 유료성 소프트웨어의 인증코드가, RE 및 API Hooking을 이용하는 해커에 의해 조작되거나 변경되는 경우와 같이, 클라이언트 정 보가 수정될 경우, 상기 변조화에 사용된 동일한 변조키, 즉 복조키를 얻을 수 없게 되므로 전자문서를 해킹할 수 없게 되며, 이와 더불어 상기 전자문서를 이용하는 소프트웨어를 해킹할 수 없게 된다.
상술한 본 발명의 기술적 사상이 적용될 수 있는 예로서, 상기 게임 및 그래픽 툴과 같은 유료성 소프트웨어로 설정하였으나, 디지털저작권관리(DRM)에 관련된 다양한 인증관련 소프트웨어 및 그 인증모듈에 적용할 수도 있음은 자명하다 할 것이다.
한편, 본 발명은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다.
상기 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함하며, 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, DVD-ROM, 자기 테이프, 플로피디스크 및 광데이터 저장장치 등을 포함한다.
그리고 상기 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 한정되는 것이 아니다.
상기와 같은 본 발명에 따르면, 서버 측에서 전자문서를 클라이언트 측과 공유되는 암호키를 이용하여 일차적으로 암호화 하고, 상기 암호화된 전자문서를 클라이언트 정보와 상기 암호키를 이용하여 랜덤하게 생성되는 변조키를 통해 이차적으로 변조화 한 후, 상기 이차적으로 변조화된 전자문서를 클라이언트 측에서 수신 받아, 기 공유된 복호키, 동적으로 다운로드 되는 복조키 생성법 및 클라이언트 정보를 이용하여 복조화하고 복호화 함으로써, 상기 서버와 클라이언트 간에 상호 교환되는 전자문서가 해커에 의해 해킹되는 것을 방지함과 더불어 상기 전자문서를 이용하는 소프트웨어가 해킹되는 것을 방지할 수 있는 효과가 있다.

Claims (6)

  1. 서버 및 클라이언트 간에 정보통신망을 통해 전송되는 전자문서 해킹방지 방법에 있어서,
    (a) 서버와 클라이언트 컴퓨터 간에 형성된 채널을 통해 암호키 및 복호키를 공유하는 단계;
    (b) 상기 서버가 상기 암호키를 이용하여 클라이언트 측으로 전송될 전자문서를 암호화하는 단계;
    (c) 상기 서버가 상기 암호키 및 클라이언트 정보로부터 복조키 생성법을 생성하는 단계;
    (d) 상기 서버가 복조키 생성법을 인코딩하는 단계;
    (e) 상기 서버가 상기 암호키, 클라이언트 정보 및 변조키 생성법으로부터 변조키를 생성하는 단계;
    (f) 상기 서버가 생성된 상기 변조키를 이용하여 상기 암호화된 전자문서를 변조화하는 단계;
    (g) 상기 클라이언트가 상기 (d) 단계에 의해 인코딩된 복조키 생성법을 수신한 후, 디코딩하는 단계;
    (h) 상기 클라이언트가 상기 (a) 단계의 복호키, 기 저장된 클라이언트 정보 및 상기 (g) 단계에 의해 디코딩된 복조키 생성법으로부터 복조키를 생성하는 단계;
    (i) 상기 클라이언트가 상기 복조키를 이용하여 상기 (f) 단계에 의해 변조화된 전자문서를 복조화하는 단계; 및
    (j) 상기 클라이언트가 상기 복호키를 이용하여 상기 복조화된 전자문서를 복호화하는 단계; 를 포함하여 이루어지며,
    상기 클라이언트 정보는 클라이언트 내에서 실행되는 소프트웨어의 기능별 모듈에 대한 식별 가능한 소정 바이너리 코드인 것을 특징으로 하는 전자문서 해킹방지 방법.
  2. 제 1 항에 있어서,
    상기 암호키 및 복호키는 서로 동일한 대칭키인 것을 특징으로 하는 전자문서 해킹방지 방법.
  3. 제 1 항에 있어서,
    상기 변조키 및 복조키는 서로 동일한 대칭키인 것을 특징으로 하는 전자문서 해킹방지 방법.
  4. 삭제
  5. 제 1 항에 있어서,
    상기 복조키 생성법은,
    상기 암호키 및 클라이언트 정보를 통해 생성되며, 상기 클라이언트 정보의 해쉬 값을 랜덤하게 변동시킴으로써 매번 바뀌게 되는 것을 특징으로 하는 전자문서 해킹방지 방법.
  6. 서버 및 클라이언트 간에 정보통신망을 통해 전송되는 전자문서의 해킹방지 방법을 수행하기 위하여,
    (A) 서버와 클라이언트 컴퓨터 간에 형성된 채널을 통해 암호키 및 복호키를 공유하는 기능;
    (B) 상기 서버가 상기 암호키를 이용하여 클라이언트 측으로 전송될 전자문서를 암호화하는 기능;
    (C) 상기 서버가 상기 암호키 및 클라이언트 정보로부터 복조키 생성법을 생성하는 기능;
    (D) 상기 서버가 복조키 생성법을 인코딩하는 기능;
    (E) 상기 서버가 상기 암호키, 클라이언트 정보 및 변조키 생성법으로부터 변조키를 생성하는 기능;
    (F) 상기 서버가 생성된 상기 변조키를 이용하여 상기 암호화된 전자문서를 변조화하는 기능;
    (G) 상기 클라이언트가 상기 (D) 단계에 의해 인코딩된 복조키 생성법을 수신한 후, 디코딩하는 기능;
    (H) 상기 클라이언트가 상기 (A) 단계의 복호키, 기 저장된 클라이언트 정보 및 상기 (G) 단계에 의해 디코딩된 복조키 생성법으로부터 복조키를 생성하는 기능;
    (I) 상기 클라이언트가 상기 복조키를 이용하여 상기 (F) 단계에 의해 변조화된 전자문서를 복조화하는 기능; 및
    (J) 상기 클라이언트가 상기 복호키를 이용하여 상기 복조화된 전자문서를 복호화하는 기능; 을 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020040092894A 2004-11-15 2004-11-15 전자문서 해킹방지 방법 및 이를 실행하기 위한프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체 KR100650293B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040092894A KR100650293B1 (ko) 2004-11-15 2004-11-15 전자문서 해킹방지 방법 및 이를 실행하기 위한프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040092894A KR100650293B1 (ko) 2004-11-15 2004-11-15 전자문서 해킹방지 방법 및 이를 실행하기 위한프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체

Publications (2)

Publication Number Publication Date
KR20060047067A KR20060047067A (ko) 2006-05-18
KR100650293B1 true KR100650293B1 (ko) 2006-11-27

Family

ID=37149681

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040092894A KR100650293B1 (ko) 2004-11-15 2004-11-15 전자문서 해킹방지 방법 및 이를 실행하기 위한프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체

Country Status (1)

Country Link
KR (1) KR100650293B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230138635A (ko) 2022-03-24 2023-10-05 주식회사 지오그레이트 데이터 해킹 자동 방어 시스템 및 그 구동방법

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100826266B1 (ko) * 2006-08-17 2008-04-29 주식회사 한국무역정보통신 진본성과 무결성을 제공하는 전자문서관리시스템 및 관리방법
CN114340113B (zh) * 2021-12-30 2023-10-13 浙江智马达智能科技有限公司 基于车辆灯光的信息处理方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230138635A (ko) 2022-03-24 2023-10-05 주식회사 지오그레이트 데이터 해킹 자동 방어 시스템 및 그 구동방법

Also Published As

Publication number Publication date
KR20060047067A (ko) 2006-05-18

Similar Documents

Publication Publication Date Title
CN1647444B (zh) 用于使用防止篡改硬件以提供复制保护和在线安全的方法和系统
EP1942430B1 (en) Token Passing Technique for Media Playback Devices
Claessens et al. (How) can mobile agents do secure electronic transactions on untrusted hosts? A survey of the security issues and the current solutions
CN109412812B (zh) 数据安全处理系统、方法、装置和存储介质
JP2007013433A (ja) 暗号化データを送受信する方法及び情報処理システム
CN101695038A (zh) 检测ssl加密数据安全性的方法及装置
US20050132204A1 (en) Trusted system for file distribution
US20180359230A1 (en) Combined hidden dynamic random-access devices utilizing selectable keys and key locators for communicating randomized data together with sub-channels and coded encryption keys
WO2008148114A1 (en) Trusted storage
KR20220039779A (ko) 강화된 보안 암호화 및 복호화 시스템
WO2008053279A1 (en) Logging on a user device to a server
JP2008527892A (ja) セキュアホストインタフェース
Nowroozi et al. Cryptocurrency wallets: assessment and security
US10623384B2 (en) Combined hidden dynamic random-access devices utilizing selectable keys and key locators for communicating randomized data together with sub-channels and coded encryption keys
KR100650293B1 (ko) 전자문서 해킹방지 방법 및 이를 실행하기 위한프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체
US7958102B1 (en) Method and apparatus for searching a storage system for confidential data
Claessens et al. A tangled world wide web of security issues
US20020184501A1 (en) Method and system for establishing secure data transmission in a data communications network notably using an optical media key encrypted environment (omkee)
KR101327193B1 (ko) 사용자 접근추적이 가능한 이동식 저장매체 보안 방법
Rane et al. Application-level and database security for e-commerce application
Dhanasekaran et al. Payment security mechanism of intelligent mobile terminal
JP2006074487A (ja) 認証管理方法及び認証管理システム
Iyengar A discussion of current and potential issues relating information security for internet communications
KR101226319B1 (ko) 신원 확인 인증 방법 및 이를 이용한 시스템
Ramesh Research Paper on Crytography and Network Security

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: 20121015

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20131111

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20141111

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20151104

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20161110

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20171101

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20181107

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20200121

Year of fee payment: 14