KR101039954B1 - 동적실행코드를 이용한 엑티브 웹브라우징 시스템 및 서비스 제공 방법 - Google Patents

동적실행코드를 이용한 엑티브 웹브라우징 시스템 및 서비스 제공 방법 Download PDF

Info

Publication number
KR101039954B1
KR101039954B1 KR1020080090492A KR20080090492A KR101039954B1 KR 101039954 B1 KR101039954 B1 KR 101039954B1 KR 1020080090492 A KR1020080090492 A KR 1020080090492A KR 20080090492 A KR20080090492 A KR 20080090492A KR 101039954 B1 KR101039954 B1 KR 101039954B1
Authority
KR
South Korea
Prior art keywords
dynamic
execution code
dynamic execution
code
web
Prior art date
Application number
KR1020080090492A
Other languages
English (en)
Other versions
KR20100031404A (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 KR1020080090492A priority Critical patent/KR101039954B1/ko
Publication of KR20100031404A publication Critical patent/KR20100031404A/ko
Application granted granted Critical
Publication of KR101039954B1 publication Critical patent/KR101039954B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Abstract

본 발명은 엑티브 웹브라우징 시스템에 관한 것으로, 구체적으로 웹서버에 복수의 웹클라이언트가 네트워크로 연결된 웹브라우징 환경에 있어서, 제공하고자 하는 서비스에 대한 동적 실행코드를 웹서버로부터 수신하여 웹클라이언트에 내장된 동적 실행코드 서비스 플러그인 모듈을 이용해 이를 코드 컨테이너에 적재한 후 실행하여 서비스를 제공하고, 최종적으로 코드 컨테이너로부터 동적 실행코드를 삭제하는 것을 기술적 특징으로 하여 동적 실행코드를 이용한 엑티브 웹브라이징 시스템 및 서비스 제공 방법에 관한 것이다.
웹클라이언트, 웹서버, 동적 실행코드, 코드 컨테이너, 웹브라우저, 엑티브엑스, 플러그인

Description

동적실행코드를 이용한 엑티브 웹브라우징 시스템 및 서비스 제공 방법{ACTIVE WEB BROWSING SYSTEM AND METHOD FOR SERVICE USING DYNAMIC EXECUTION CODE}
본 발명은 엑티브 웹브라우징 시스템에 관한 것으로, 구체적으로 웹서버에 복수의 웹클라이언트가 네트워크로 연결된 웹브라우징 환경(이하, "웹브라우징 환경"라 한다.)에 있어서, 이용되는 웹브라우저의 종류에 관계없이 웹서비스 업체가 제공하고자 하는 서비스의 종류에 따라 동적실행코드(Dynamic Execution Code)를 웹클라이언트에 전송하여 서비스를 제공할 수 있는 엑티브 웹브라이징 시스템 및 서비스 제공 방법에 관한 것이다.
최근 인터넷 서비스가 다양화되고, 특히 웹브라우저를 통한 인터넷 서비스의 종류는 인터넷이 곧 웹브라우저를 의미할 만큼 폭발적으로 증가하였다. 이에, 인터넷 서비스 업체는 다양한 인터넷 서비스를 제공하기 위하여 웹브라우저를 이용한 다양한 방법을 사용하고 있다. 이 중에서 가장 대표적으로 사용되는 방법이 웹브라우저 플러그인 모듈을 사용하여 특정 기능을 수행하도록 하는 것이다. 웹브라우저 플러그인 모듈은 웹브라우저의 종류에 따라 다르게 만들어져 제공된다. 국내에서 가장 많이 사용되는 웹브라우저가 마이크로소프트의 인터넷 익스플로러이고, 이것에 플로그인 되는 모듈 형태인 엑티브엑스 컨트롤(Active X Control)이 가장 많이 사용되고 있다.
실제로 국내 인터넷 서비스 환경은 기형적이라고 말할 수 있을 만큼 엑티브엑스 컨트롤(Active X Control)이 많이 사용되고 있는데, 인터넷 금융거래, 인터넷 상거래 등 웹브라우저를 이용한 거래의 모든 인터넷 서비스에 엑티브엑스 컨트롤(Active X Control)이 사용되고 있다.
이렇게 엑티브엑스 컨트롤(Active X Control)을 사용함으로써 웹브라우저를 이용한 인터넷 서비스의 다양화를 도모할 수 있다는 장점이 있지만, 이러한 장점에 못지 않게 많은 문제점이 있다.
먼저, 제공하고자 하는 서비스의 종류에 따라 별개의 엑티브엑스 컨트롤을 제작하여 배포해야만 하기 때문에, 다양한 서비스를 이용하는 사용자는 다양한 종류의 엑티브엑스 컨트롤을 설치하여야 할 뿐만 아니라 성능 향상이 필요한 경우에는 다시 설치하여야 하는 부담이 있다.
또한, 엑티브엑스 컨트롤은 마이크로소프트 인터넷 익스플로러만을 위한 플러그인 모듈이기 때문에 마이크로소프트 인터넷 익스플로러를 사용하지 않는 다른 종류의 웹브라우저 사용자는 해당 서비스를 전혀 이용할 수 없다는 문제가 있다. 실제로 매킨토시나 리눅스 등의 운영체제에서 웹브라우저를 사용하는 사용자는 통상적인 인터넷 금융거래를 이용할 수 없다. 물론 현존하는 다양한 엑티브엑스 컨트 롤의 기능을 다른 웹브라우저를 위한 플러그인 모듈로 구현하여 배포할 수도 있겠지만, 이는 기술적으로 구현하기 쉽지 않은 문제가 있을 뿐만 아니라 비용적으로도 상당한 부담이 되어 현실적으로 실현하기 불가능하다.
상기와 같은 문제를 해결하기 위해, 본 발명은 제공하고자 하는 인터넷 서비스의 종류나 목적과 관계없이 하나의 웹브라우저 플러그인 모듈을 웹클라이언트에 제공한 후, 각각의 인터넷 서비스를 수행하기 위한 동적 실행코드를 이용해 서비스를 실행할 수 있도록 하여 웹브라우저의 의존도를 줄일 수 있는 동적 실행코드를 이용한 엑티브 웹브라우징 시스템 및 서비스 방법을 제공하는 것은 목적으로 한다.
또한, 본 발명은 제공하고자 하는 서비스를 동적 실행코드를 이용해 수행할 수 있고, 각각의 서비스에 대한 동적 실행코드는 하나의 웹브라우저 플러그인 모듈을 이용해 실행할 수 있도록 하는 동적 실행코드를 이용한 엑티브 웹브라우징 시스템 및 서비스 방법을 제공하는 것을 목적으로 한다.
상기와 같은 목적으로 달성하기 위해 본 발명의 제 1 실시 예에 의한 동적 실행코드를 이용한 서비스 제공방법은 동적 실행코드를 이용한 엑티브 웹브라우징 시스템의 웹서버에 있어서, 접속된 웹클라이언트에 동적 실행코드 서비스 플러그인이 설치되었는지 여부를 판단하는 1 단계 ,상기 판단결과 동적 실행코드 서비스 플러그인이 설치되지 않은 경우 상기 동적 실행코드 서비스 플러그인을 상기 웹클라이언트에 전달하는 2 단계, 제공하고자 하는 서비스에 관한 동적 실행코드를 선택하는 3 단계 및 상기 선택된 동적 실행코드를 상기 웹클라이언트로 전달하는 4 단 계를 포함한다.
다만, 상기 판단결과 동적 실행코드 서비스 플러그인이 상기 웹클라이언트에 설치된 경우에는 상기 동적 실행코드 서비스 플러그인을 상기 웹클라이언트에 전달하는 상기 2 단계를 생략하는 것을 특징으로 한다.
또한, 상기 4 단계는 상기 선택된 동적 실행코드를 암호화하는 단계, 상기 암호화된 동적 실행코드를 패킷의 크기에 따라 단편화하는 단계; 및 상기 단편화된 동적 실행코드를 인터리빙하여 전송하는 단계를 포함하는 것을 특징으로 한다.
상기와 같은 목적으로 달성하기 위한 제 2 실시 예에 의한 동적 실행코드를 이용한 서비스 제공방법은 동적 실행코드를 이용한 엑티브 웹브라우징 시스템의 웹클라이언트에 있어서, 접속된 웹서버로부터 제공하고자 하는 서비스의 동적 실행코드를 수신하는 단계, 상기 수신된 동적 실행코드를 동적 실행코드 서비스 플러그인 모듈의 동적 실행코드 컨테이너에 적재하는 단계 및 상기 적재된 동적 실행코드를 실행하는 단계를 포함한다.
또한, 상기 동적 실행코드를 이용한 서비스 제공방법은 상기 웹클라이언트에 동적 실행코드 서비스 플러그인이 설치되어 있는지 여부를 판단하는 단계 및 상기 판단결과 동적 실행코드 서비스 플러그인이 설치되지 않는 경우에 상기 웹서버로부터 동적 실행코드 서비스 플러그인을 다운받아 설치하는 단계를 더 포함한다.
또한, 상기 동적 실행코드를 이용한 서비스 제공방법은 상기 적재된 동적 실행코드가 실행된 후에 상기 동적 실행코드 컨테이너에 적재된 동적 실행코드를 삭 제하는 단계를 더 포함할 수 있다.
한편, 상기 동적 실행코드 컨테이너는 상기 동적 실행코드 서비스 플러그인의 메모리 영역에 확보되는 것을 특징으로 한다.
상기와 같은 목적을 달성하기 위한 제 3 실시 예에 의한 동적 실행코드를 이용한 엑티브 웹브라우징 시스템에 있어서 웹서버는, 접속된 웹클라이언트의 운영체제와 사용 웹브라우저의 종류에 맞는 동적 실행코드 서비스 플러그인을 전달하여 설치하는 플러그인 설치부, 상기 웹클라이언트에 제공하고자 하는 서비스의 동적 실행코드를 선택하여 상기 웹클라이언트로 전달하는 동적 실행코드 생성기 및 상기 제공하고자 하는 서비스의 동적 실행코드를 저장하는 동적 실행코드 데이터베이스를 포함한다.
이때, 상기 플러그인 설치부는 상기 웹클라이언트의 접속이 이루어지면 상기 웹클라이언트에 동적 실행코드 서비스 플러그인이 설치되었는지 여부를 판단하고, 동적 실행코드 서비스 플러그인을 저장하는 것을 특징으로 한다.
한편, 상기 동적 실행코드 생성기는 상기 동적 실행코드 데이터베이스에 저장된 동적 실행코드 중에서 제공하고자 하는 서비스에 관한 동적 실행코드를 선택하는 코드 선택기를 포함하는 것을 특징으로 한다.
상기와 같은 목적을 달성하기 위한 제 4 실시 예에 의한 동적 실행코드를 이용한 엑티브 웹브라우징 시스템에 있어서 웹클라이언터는, 접속된 웹서버로부터 다 운로드하여 설치되고, 상기 웹서버로부터 전달되는 동적 실행코드를 수신하여 실행하는 동적 실행코드 서비스 플러그인 모듈 및 상기 동적 실행코드 서비스 플러그인 모듈의 메모리 공간에 확보되어 상기 수신된 동적 실행코드를 적재하는 동적 실행코드 컨테이너를 포함한다.
이때, 상기 동적 실행코드 서비스 플러그인 모듈은 상기 동적 실행코드를 수신하는 동적 실행코드 수신기 및 상기 수신된 동적 실행코드를 상기 동적 실행코드 컨테이너에 적재한 후 실행하는 동적 실행코드 처리기를 포함한다.
한편, 상기 동적 실행코드 처리기는 상기 동적 실행코드 컨테이너에 적재된 상기 동적 실행코드를 실행한 후 삭제하는 것을 특징으로 한다.
상기와 같이, 본 발명에 의한 동적 실행코드를 이용한 엑티브 웹브라우징 시스템 및 서비스 방법은 웹브라우저의 의존도를 줄일 수 있을 뿐만 아니라, 한번 설치된 동적 실행코드 서비스 플러그인 모듈은 업데이트할 필요가 없고, 관리자 권한을 소유하지 않아 플러그인 설치가 불가능한 사용자도 다양한 인터넷 서비스를 제공받을 수 있는 효과가 있다.
또한, 본 발명에 의한 동적 실행코드를 이용한 엑티브 웹브라우징 시스템 및 서비스 방법은 동적 실행코드를 이용하여 웹클라이언트에는 서비스와 관련한 어떠한 코드도 남기지 않으므로 해킹 등의 위험으로부터 자유로울 수 있는 효과가 있다.
또한, 본 발명에 의한 동적 실행코드를 이용한 엑티브 웹브라우징 시스템 및 서비스 방법은 인터넷 서비스 제공 업체의 서비스 목적에 따라 예를 들어, 서비스 제공 시간대 별로 차등화된 서비스를 제공하거나 서비스를 받는 지역이나 대상에 따라 제공 서비스를 차별화하는 것과 같이 다양한 동적 실행코드를 배포할 수 있기 때문에 서비스의 품질을 크게 향상시킬 수 있는 효과가 있다.
이하, 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 본 발명을 설명함에 있어, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
도 1 은 본 발명에 의한 동적 실행코드를 이용한 엑티브 웹브라우징 시스템의 개념을 나타내는 도면이다.
본 발명에 의한 동적 실행코드를 이용한 엑티브 웹브라우징 시스템은 웹클라이언트(100)와 웹서버(200)가 인터넷(300)을 통해 연결된 구조로 이루어진다. 여기서, 인터넷(300)은 웹클라이언트(100)와 웹서버(200)가 통신할 수 있는 네트워크의 일종으로 이것에 한정되는 것은 아니고 다양한 통신 방법이 이용될 수 있다.
웹클라이언트(100)는 웹서버(200)로부터 동적 실행코드 서비스 플러그인(500)을 다운로드하여 설치한다. 또한, 웹클라이언트(100)는 웹서버(200)로부터 동적 실행코드(Active Execution Code)(400)를 수신하여 원하는 서비스를 제공한다.
여기서, 동적 실행코드(400)는 웹클라이언트(100)의 웹브라우저가 다양한 추가 기능을 부가하기 위해 웹서버가 전송하는 코드를 말하고, 동적 실행코드 서비스 플러그인(500)은 제공하고자 하는 인터넷 서비스의 종류나 목적과 관계없는 웹서버로부터 전송되는 동적 실행코드를 실행하는 웹브라우저 플러그인 모듈을 말한다. 다만, 본원발명을 설명함에 있어서 동적 실행코드 서비스 플러그인과 동적 실행코드 서비스 플러그인 모듈은 동일한 개념으로 사용한다.
따라서, 동적 실행코드를 이용한 엑티브 웹브라우징 시스템에 있어서, 웹서버(200)는 웹클라이언트(100)가 접속하면 웹클라이언트(100)의 운영체제와 사용 웹브라우저의 종류에 맞는 동적 실행코드 서비스 플러그인(500)을 전송하여 웹클라이언트(100)에 설치한 후, 제공하고자 하는 동적 실행코드(400)를 전달한다. 그러면, 웹클라이언트(100)는 수신되는 동적 실행코드(400)를 미리 설치된 동적 실행코드 서비스 플러그인(500)을 이용해 실행하여 원하는 서비스를 제공한다.
도 2 는 본 발명에 의한 동적 실행코드를 이용한 엑티브 웹브라우징 시스템의 구성을 나타내는 도면이다.
동적 실행코드를 이용한 엑티브 웹브라우징 시스템은 웹클라이언트(100)와 웹서버(200)로 구성되고, 이들은 인터넷(300)을 통해 연결된다. 서비스를 제공하는 웹서버(200)에는 서비스를 실행하고자 하는 복수의 웹클라이언트(100)가 접속되는 것이 일반적이다. 하지만, 여기서는 하나의 웹클라이언트(100)와 하나의 웹서버(200)가 인터넷에 의해 연결된 경우를 중심으로 각각의 구성에 대하여 설명한다.
웹서버(200)는 서비스 목적에 맞는 동적 실행코드(Dynamic Execution Code)를 선택하여 웹클라이언트(100)에 전달하는데, 이를 위해 웹서버(200)는 웹서버 프로그램(210), 동적 실행코드 서비스 서버(220) 및 동적 실행코드 데이터베이스(230)를 포함한다.
웹서버(200)는 복수의 웹클라이언트(100)와 접속하여, 웹클라이언트(100)의 요청에 대하여 계속적으로 응답을 하여야 한다. 따라서, 웹서버(200)는 웹서버 프로그램(210)과 동적 실행코드 서비스 서버(220)를 함께 구동한다.
여기서, 웹서버 프로그램(210)은 웹서버(200) 전체의 운영을 위해 이용되는 프로그램을 총칭하여 나타낸다.
동적 실행코드 서비스 서버(220)은 웹클라이언트(100)의 접속이 있는 경우에 웹클라이언트(100)에 동적 실행코드 서비스 플러그인 모듈(120)이 설치되어 있는지 여부를 판단하여 설치되지 않은 경우에 실행코드 서비스 플러그인 모듈을 웹클라이언트(100)에 전달하여 설치한다.
또한, 동적 실행코드 서비스 서버(220)는 웹클라이언트(100)의 웹브라우저(110)를 이용해 다양한 서비스를 제공하기 위해 동적 실행코드 데이터베이스(230)에서 목적에 따라 동적 실행코드(Dynamic Execution Code)를 선택하여 웹클라이언트(100)에 전송하여 서비스를 제공한다.
웹클라이언트(100)는 웹브라우저(110), 동적 실행코드 플러그인(120) 및 적 어도 하나 이상의 동적 실행코드 컨테이너(이하, "코드 컨테이너"라 한다.)(131, 132, 133)를 포함한다.
웹브라우저(110)는 웹서버(200)에 접속하여 웹서버(200)가 제공하는 서비스를 이용할 수 있는 프로그램이다. 예를 들어, 마이크로소프트의 인터넷 익스플로러, 애플컴퓨터의 사파리, 모질라의 파이어폭스 등이 널리 사용되고 있으며, 최근에는 구글 크롬이라 불리우는 새로운 웹브라우저(110)도 등장하였다.
웹클라이언트(100)가 동적 실행코드에 의해 서비스를 제공하는 웹서버(200)에 접속하여 웹브라우저(110)가 구동되면, 먼저 웹클라이언트(100)에 동적 실행코드 서비스 플러그인 모듈(120)이 설치되어 있는지 여부를 판단한다. 동적 실행코드 서비스 플러그인 모듈(120)이 설치되어 있는지 여부는 웹클라이언트(100)의 웹브라우저(110)에서 판단할 수 있는 것은 물론, 웹서버(200)의 동적 실행코드 서비스 서버(220)에서 판단할 수 있다. 판단 결과, 동적 실행코드 서비스 플러그인 모듈(120)이 설치되어 있지 않은 경우 웹브라우저(110)는 웹서버(200)로부터 웹클라이언트의 운영체제와 사용 웹브라우저의 종류에 맞는 동적 실행코드 서비스 플러그인을 다운받아 설치한다.
동적 실행코드 플러그인 모듈(120)이 설치된 웹클라이언트(100)에서 웹브라우저(110)가 구동되어 동적 실행코드 서비스를 제공하는 웹서버(200)에 접속하면 자동으로 동적 실행코드 서비스 플러그인 모듈(120)이 실행된다.
동적 실행코드 플러그인 모듈(120)은 웹서버(200)로부터 전달되는 동적 실행코드를 수신하여 적당한 코드 컨테이너(131, 132, 133)에 적재할 뿐만 아니라 코드 컨테이너(131, 132, 133)에 적재된 동적 실행코드를 실행하여 서비스를 제공한다.
동적 실행코드 컨테이너(131, 132, 133)는 웹서버(200)로부터 전달되는 동적 실행코드를 적재하는 메모리 공간이다. 코드 컨테이너(131, 132, 133)는 현재 실행 중인 동적 실행 코드 플러그인 모듈의 메모리 공간에 확보된다. 구체적으로, 웹브라우저(110)에 플로그인 된 동적 실행 코드 서비스 플러그인 모듈(120)이 구동되고 동적 실행 코드 서비스 서버(220)로부터 동적 실행코드를 전달받기 전에 이러한 동적 실행코드를 적재하기 위한 메모리 공간인 코드 컨테이너(131, 132, 133)가 확보된다.
도 3 은 본 발명에 의한 동적 실행코드 서비스 플러그인 모듈의 구성을 나타내는 도면이다.
동적 실행코드 서비스 플러그인 모듈(120)은 웹서버(200)로부터 전달되는 동적 실행코드를 수신하여 적당한 코드 컨테이너(131, 132, 133)에 적재한 후, 적재된 동적 실행코드를 실행하는 기능을 수행한다.
이를 위해, 동적 실행코드 서비스 플러그인 모듈(120)은 웹서버(200)로부터 동적 실행코드를 수신하는 역할을 수행하는 동적 실행코드 수신기(121)과 수신된 동적 실행코드를 적당한 코드 컨테이너에 할당한 후 이를 실행하는 동적 실행코드 처리기(125)를 포함한다.
동적 실행코드 수신기(121)는 패킷 수신기(122), 패킷 조합기(123) 및 코드 복호기(124)를 포함한다. 패킷 수신기(122)는 웹서버(200)로부터 전달되는 동적 실 행코드(Dynamic Execution Code) 패킷을 수신하고, 이렇게 수신된 동적 실행코드 패킷은 패킷 조합기(123)에 의해 재조합하여 동적 실행코드 전체를 구축한다. 웹서버(200)에서 전달되기 전에 동적 실행코드가 암호화된 경우에는 코드 복호기(124)를 이용해 이를 복호화한다.
동적 실행코드 처리기(125)는 컨테이너 할당기(126), 코드 적재기(127), 코드 실행기(128) 및 코드 제거기(129)를 포함한다. 컨테이너 할당기(126)는 동적 실행코드 수신기(121)를 통해 수신된 동적 실행코드를 적재하기 위해 코드 컨테이너를 할당한다. 코드 컨테이너가 할당되면, 코드 적재기(127)는 수신된 동적 실행코드를 할당된 코드 컨테이너에 적재한다. 코드 적재기(127)를 이용해 동적 실행코드를 동적 실행코드 서비스 플러그인 모듈(120)의 메모리 영역의 코드 컨테이너에 직접 적재하고, 파일로 생성하지는 않는다. 코드 실행기(128)는 동적 실행코드가 코드 컨테이너에 적재되면 이를 실행한다. 그리고, 코드 실행기(128)에 의해 동적 실행코드가 실행된 후에는 코드 제거기(129)는 코드 컨테이너에 적재된 동적 실행코드를 제거한다. 따라서, 외부에서는 동적 실행코드에 관한 정보를 인식할 수 없고, 그 결과 해킹으로부터 안전할 수 있다.
도 4 는 본 발명에 의한 동적 실행코드 서비스 서버의 구성을 나타내는 도면이다.
동적 실행코드 서비스 서버(220)은 제공하고자 하는 서비스에 대한 동적 실행코드를 웹클라이언트(100)에 전달하는 기능을 수행한다.
구체적으로, 동적 실행코드 서비스 서버(220)는 웹클라이언트(100)의 접속이 있는 경우에 웹클라이언트(100)에 동적 실행코드 서비스 플러그인 모듈(120)이 설치되어 있는지 여부를 판단하여 설치되지 않은 경우에 실행코드 서비스 플러그인 모듈을 웹클라이언트(100)에 전달하여 설치하는 플러그인 설치부(221)와 웹클라이언트(100)의 웹브라우저(110)를 이용해 다양한 서비스를 제공하기 위해 동적 실행코드 데이터베이스(230)에서 목적에 따라 동적 실행코드(Dynamic Execution Code)를 선택하여 웹클라이언트(100)에 전송하는 동적 실행코드 생성기(223)을 포함한다.
플러그인 설치부(221)는 접속된 웹클라이언트(100)에 웹클라이언트의 운영체제와 사용 웹브라우저의 종류에 맞는 동적 실행코드 서비스 플러그인 모듈이 설치되어 있는지 여부를 판단하여, 설치가 필요한 경우에 동적 실행코드 플러그인 DB(222)로부터 동적 실행코드 서비스 플러그인을 전달받아 웹클라이언트에 설치한다.
동적 실행코드 생성기(223)는 코드 선택기(228), 코드 암호기(227), 코드 단편화기(226), 패킷 인터리빙기(225) 및 패킷 전송기(224)를 포함한다.
코드 선택기(228)는 웹클라이언트(100)를 통해 제공하고자 하는 서비스에 관한 동적 실행코드를 동적 실행코드 데이터 베이스(230)에서 선택한다. 동적 실행코드가 선택되면, 코드 암호기(227)는 선택된 동적 실행코드를 암호화한다. 코드 단편화기(226)는 암호화된 동적 실행코드를 전달하고자 하는 패킷의 크기에 맞게 단편화한다. 그리고, 패킷 인터리빙기(225)는 단편화된 동적 실행코드를 인터리빙하여 패킷 전송기(224)를 이용해 웹클라이언트(100)로 전송한다.
도 5 는 본 발명에 의한 웹클라이언트의 구조를 나타내는 도면이다.
동적 실행코드 서비스 플러그인 모듈(120)이 설치된 웹클라이언트에서 웹브라우저가 실행되고 동적 실행코드 서비스가 적용된 웹서버와의 접속이 이루어지면, 웹클라이언트의 운영체제는 해당 웹브라우저(110)와 동적 실행코드 플러그인 모듈(120)을 웹클라이언트의 메모리맵 상에서 XXXX 번지 이후에 적재한다. 이때, 동적 실행코드 플러그인 모듈(120)은 웹서버로부터 전달되는 동적 실행코드를 적재하기 위한 동적 실행코드 컨테이너(130)를 확보한다. 이렇게 동적 실행코드 서비스 플러그인 모듈(120) 및 동적 실행코드 컨테이너(130)가 확보되면 동적 실행코드를 수신하여 서비스를 제공한다.
구체적으로 설명하면, ①가장 먼저 웹클라이언트(100)는 웹서버(200)에 접속하여 웹서버(200)로부터 동적 실행코드 서비스 플러그인 모듈(120)을 내려받는다. 만일, 동적 실행코드 서비스 플러그인 모듈(120)이 이미 설치되어 있는 경우에는 이러한 과정은 이루어지지 않는다.
②웹클라이언트(100)가 웹서버(200)로부터 동적 실행코드 서비스 플러그인 모듈(120)을 내려받으면 동적 실행코드 서비스 플러그인 모듈을 설치하고 이를 실행한다.
③동적 실행코드 서비스 플러그인 모듈(120)이 설치되어 실행되면, 웹서버(200)로부터 동적 실행코드를 수신한다. 다만, 동적 실행코드를 수신하기 위해서는 웹클라이언트(100)에 동적 실행코드 서비스 플러그인 모듈(130)이 설치되어 동 작 중이어야 한다.
④동적 실행코드 서비스 플러그인 모듈(120)을 통해 동적 실행코드가 수신되면 수신된 동적 실행코드를 코드 컨테이너에 적재한다.
⑤동적 실행코드가 적재되면, 동적 실행코드 서비스 플러그인 모듈(120)은 적재된 동적 실행코드를 실행하여 서비스를 제공한다. 다만, 동적 실행코드는 웹클라이언트에서 파일로 생성되지 않고 메모리의 코드 컨테이너에 직접 로딩되어 실행된다.
도 6 은 본 발명에 의한 동적 실행 코드를 이용한 엑티브 웹브라우징 시스템의 클라이언트에서의 동작 흐름을 나타내는 도면이다.
웹클라이언트(100)와 웹서버(200)가 인터넷에 의해 연결된 환경에서, 웹클라이언트(100)가 웹서버(200)로부터 원하는 서비스에 대한 동적 실행코드를 수신하여 실행하는 과정은 다음과 같다.
먼저, 웹클라이언트(100)는 웹브라우저를 실행한 후에 원하는 서비스를 제공하는 특정 웹서버(200)에 접속한다.(S610)
웹클라이언트(100)가 웹서버(200)에 접속되면, 웹서버(200)의 동적 실행코드 서비스 서버는 접속된 웹클라이언트(100)에 동적 실행코드 서비스 플러그인 모듈이 설치되어 있는지 여부를 판단한다.(S620) 필요한 경우에 동적 실행코드 서비스 플러그인 모듈의 설치 여부는 웹클라이언트에서 이루어질 수도 있다.
판단 결과 동적 실행코드 서비스 플러그인 모듈이 설치되어 있지 않은 경우 에는 웹클라이언트(100)는 웹서버로부터 동적 실행코드 서비스 플러그인 모듈을 다운로드하여 설치한다.(S630)
판단 결과, 이미 동적 실행코드 서비스 플러그인 모듈이 설치되어 있거나 또는 다운로드하여 설치한 경우 동적 실행코드 서비스 플러그인 모듈을 실행한다.(S640)
동적 실행코드 서비스 플러그인 모듈이 실행되면, 웹클라이언트(100)는 웹서버로부터 동적 실행코드를 수신하고, 이를 코드 컨테이너에 적재한다.(S650)
동적 실행코드 서비스 플러그인 모듈은 동적 실행코드가 코드 컨테이너에 적재되면 이를 실행한다. 그리고 동적 실행코드의 실행에 따라 서비스를 제공한 후에는 코드 컨테이너에 적재된 동적 실행코드를 삭제한다.(S660)
도 7 은 본 발명에 의한 동적 실행코드를 이용한 엑티브 웹브라우징 시스템의 서버측의 동작 흐름을 나타내는 도면이다.
웹클라이언트(100)와 웹서버(200)가 인터넷에 의해 연결된 환경에서, 웹클라이언트(100)가 동적 실행코드를 이용하여 원하는 서비스를 제공할 수 있도록 웹서버(200)는 다음과 같은 동작을 수행한다.
먼저, 웹서버(200)가 실행된다.(S710)
웹서버(200)가 실행된 후에 인터넷을 통해 웹클라이언트(100)가 접속되는지 여부를 판단한다.(720)
웹클라이언트(100)의 접속이 이루어지지 않은 경우에는 웹클라이언트(100)의 접속이 있을 때까지 접속 여부의 판단을 계속한다.
웹클라이언트(100)의 접속이 있는 것으로 판단되면, 웹서버(200)는 접속된 웹클라이언트(100)에 동적 실행코드 서비스 플러그인 모듈이 설치되어 있는지 여부를 판단한다.(S730)
판단결과, 동적 실행코드 서비스 플러그인 모듈이 설치되어 있지 않은 경우에는 웹클라이언트(100)로 동적 실행코드 서비스 플러그인 모듈을 전송하여 설치하도록 한다.(S740)
판단결과, 동적 실행코드 서비스 플러그인 모듈이 이미 설치되어 있는 경우 또는 웹서버(200)에서 동적 실행코드 서비스 플러그인 모듈을 전송하여 설치한 후에, 웹서버(200)는 제공하고자 하는 서비스에 관련된 동적 실행코드를 데이터 베이스로부터 선택한다.(S750)
동적 실행코드가 선택되면, 웹서버(200)는 동적 실행코드를 웹클라이언트(100)에 전송하여 이를 실행할 수 있도록 한다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.
도 1 은 본 발명에 의한 동적 실행코드를 이용한 엑티브 웹브라우징 시스템의 개념을 나타내는 도면이다.
도 2 는 본 발명에 의한 동적 실행코드를 이용한 엑티브 웹브라우징 시스템의 구성을 나타내는 도면이다.
도 3 은 본 발명에 의한 동적 실행코드 서비스 플러그인의 구성을 나타내는 도면이다.
도 4 는 본 발명에 의한 동적 실행코드 서비스 서버의 구성을 나타내는 도면이다.
도 5 는 본 발명에 의한 웹클라이언트의 구조를 나타내는 도면이다.
도 6 은 본 발명에 의한 동적 실행 코드를 이용한 엑티브 웹브라우징 시스템의 클라이언트에서의 동작 흐름을 나타내는 도면이다.
도 7 은 본 발명에 의한 동적 실행코드를 이용한 엑티브 웹브라우징 시스템의 서버측의 동작 흐름을 나타내는 도면이다.

Claims (14)

  1. 동적 실행코드를 이용한 엑티브 웹브라우징 시스템의 웹서버에 있어서,
    접속된 웹클라이언트에 웹클라이언트의 운영체제와 사용 웹브라우저의 종류에 맞는 동적 실행코드 서비스 플러그인 모듈이 설치되었는지 여부를 판단하는 1 단계;
    상기 판단결과 동적 실행코드 서비스 플러그인 모듈이 설치되지 않은 경우 상기 동적 실행코드 서비스 플러그인 모듈을 상기 웹클라이언트에 전달하는 2 단계;
    제공하고자 하는 서비스에 관한 동적 실행코드를 선택하는 3 단계; 및
    상기 선택된 동적 실행코드를 상기 웹클라이언트로 전달하는 4 단계를 포함하며,
    상기 동적 실행코드는 상기 동적 실행코드 서비스 플러그인 모듈의 메모리 영역에 확보된 동적 실행코드 컨테이너에 적재되며 상기 동적 실행코드 서비스 플러그인 모듈에 의해 실행된 후 상기 동적 실행코드 컨테이너에서 삭제되는 것을 특징으로 하는 동적 실행코드를 이용한 서비스 제공방법.
  2. 제 1 항에 있어서,
    상기 판단결과 동적 실행코드 서비스 플러그인 모듈이 상기 웹클라이언트에 설치된 경우에 상기 동적 실행코드 서비스 플러그인 모듈을 상기 웹클라이언트에 전달하는 상기 2 단계를 생략하는 것을 특징으로 하는 동적 실행코드를 이용한 서비스 제공방법.
  3. 제 1 항에 있어서, 상기 4 단계는
    상기 선택된 동적 실행코드를 암호화하는 단계;
    상기 암호화된 동적 실행코드를 패킷의 크기에 따라 단편화하는 단계; 및
    상기 단편화된 동적 실행코드를 인터리빙하여 전송하는 단계를 포함하는 것을 특징으로 하는 동적 실행코드를 이용한 서비스 제공방법.
  4. 동적 실행코드를 이용한 엑티브 웹브라우징 시스템의 웹클라이언트에 있어서,
    접속된 웹서버로부터 제공하고자 하는 서비스의 동적 실행코드를 수신하는 단계;
    상기 수신된 동적 실행코드를 동적 실행코드 서비스 플러그인 모듈의 동적 실행코드 컨테이너에 적재하는 단계;
    상기 적재된 동적 실행코드를 실행하는 단계; 및
    상기 적재된 동적 실행코드가 실행된 후에 상기 동적 실행코드 컨테이너에 적재된 동적 실행코드를 삭제하는 단계;를 포함하며,
    상기 동적 실행코드 컨테이너는 상기 동적 실행코드 서비스 플러그인 모듈의 메모리 영역에 확보되는 것을 특징으로 하는 동적 실행코드를 이용한 서비스 제공방법.
  5. 제 4 항에 있어서,
    상기 웹클라이언트에 동적 실행코드 서비스 플러그인 모듈이 설치되어 있는지 여부를 판단하는 단계;
    상기 판단결과 동적 실행코드 서비스 플러그인 모듈이 설치되지 않는 경우에 상기 웹서버로부터 동적 실행코드 서비스 플러그인 모듈을 다운받아 설치하는 단계를 더 포함하는 것을 특징으로 하는 동적 실행코드를 이용한 서비스 제공방법.
  6. 삭제
  7. 삭제
  8. 동적 실행코드를 이용한 엑티브 웹브라우징 시스템에 있어서,
    웹클라이언트의 접속이 이루어지면 상기 웹클라이언트에 동적 실행코드 서비스 플러그인 모듈이 설치되었는지 여부를 판단하며, 상기 판단 결과 동적 실행코드 서비스 플러그인 모듈이 설치되지 않은 경우 접속된 웹클라이언트에 상기 웹클라이언트의 운영체제와 사용 웹브라우저의 종류에 맞는 상기 동적 실행코드 서비스 플러그인 모듈을 전달하여 설치하는 플러그인 설치부;
    상기 웹클라이언트에 제공하고자 하는 서비스의 동적 실행코드를 선택하여 상기 웹클라이언트로 전달하는 동적 실행코드 생성기; 및
    상기 제공하고자 하는 서비스의 동적 실행코드를 저장하는 동적 실행코드 데이터베이스를 포함하며,
    상기 동적 실행코드는 상기 동적 실행코드 서비스 플러그인 모듈의 메모리 영역에 확보된 동적 실행코드 컨테이너에 적재되며 상기 동적 실행코드 서비스 플러그인 모듈에 의해 실행된 후 상기 동적 실행코드 컨테이너에서 삭제되는 것을 특징으로 하는 웹서버.
  9. 삭제
  10. 제 8 항에 있어서, 상기 플러그인 설치부는
    동적 실행코드 서비스 플러그인 모듈을 저장하는 것을 특징으로 하는 웹서버.
  11. 제 8 항에 있어서, 상기 동적 실행코드 생성기는
    상기 동적 실행코드 데이터베이스에 저장된 동적 실행코드 중에서 제공하고자 하는 서비스에 관한 동적 실행코드를 선택하는 코드 선택기를 포함하는 것을 특징으로 하는 웹서버.
  12. 동적 실행코드를 이용한 엑티브 웹브라우징 시스템에 있어서,
    접속된 웹서버로부터 다운로드를 통해 설치되며, 상기 웹서버로부터 전달되는 동적 실행코드를 수신하여 실행하는 동적 실행코드 서비스 플러그인 모듈; 및
    상기 동적 실행코드 서비스 플러그인 모듈의 메모리 공간에 확보되어 상기 수신된 동적 실행코드를 적재하는 동적 실행코드 컨테이너를 포함하며,
    상기 동적 실행코드 서비스 플러그인 모듈은 상기 동적 실행코드를 수신하는 동적 실행코드 수신기와, 상기 수신된 동적 실행코드를 별도의 파일로 생성하지 않고 상기 동적 실행코드 컨테이너에 적재하고, 상기 동적 실행코드 컨테이너에 적재된 상기 동적 실행코드를 실행한 후 삭제하는 동적 실행코드 처리기를 포함하는 웹클라이언트.
  13. 삭제
  14. 삭제
KR1020080090492A 2008-09-12 2008-09-12 동적실행코드를 이용한 엑티브 웹브라우징 시스템 및 서비스 제공 방법 KR101039954B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080090492A KR101039954B1 (ko) 2008-09-12 2008-09-12 동적실행코드를 이용한 엑티브 웹브라우징 시스템 및 서비스 제공 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080090492A KR101039954B1 (ko) 2008-09-12 2008-09-12 동적실행코드를 이용한 엑티브 웹브라우징 시스템 및 서비스 제공 방법

Publications (2)

Publication Number Publication Date
KR20100031404A KR20100031404A (ko) 2010-03-22
KR101039954B1 true KR101039954B1 (ko) 2011-06-09

Family

ID=42181085

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080090492A KR101039954B1 (ko) 2008-09-12 2008-09-12 동적실행코드를 이용한 엑티브 웹브라우징 시스템 및 서비스 제공 방법

Country Status (1)

Country Link
KR (1) KR101039954B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101585149B1 (ko) * 2014-04-28 2016-01-13 주식회사 잉카인터넷 플러그인 프리 웹서비스 제공 시스템 및 방법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101142434B1 (ko) 2011-09-08 2012-05-08 (주)오비메드 조기양막파수 산모에서 비침습적인 양수 내 염증 및 감염의 예측 또는 진단 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010006997A (ko) * 1999-04-27 2001-01-26 포만 제프리 엘 자바환경의 관리용이성과 유용성을 향상시키는 시스템 및방법
US20030126311A1 (en) 2001-12-12 2003-07-03 Kushnirskiy Igor Davidovich Application programming interface for connecting a platform independent plug-in to a web browser
US6785721B1 (en) * 2000-06-19 2004-08-31 International Business Machines Corporation System and method for providing a distributable runtime that deploys web applications and services from a workflow, enterprise, and mail-enabled web application server and platform

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010006997A (ko) * 1999-04-27 2001-01-26 포만 제프리 엘 자바환경의 관리용이성과 유용성을 향상시키는 시스템 및방법
KR100397589B1 (ko) 1999-04-27 2003-09-13 인터내셔널 비지네스 머신즈 코포레이션 Java 환경의 관리용이성과 유용성을 향상시키는 시스템 및 방법
US6785721B1 (en) * 2000-06-19 2004-08-31 International Business Machines Corporation System and method for providing a distributable runtime that deploys web applications and services from a workflow, enterprise, and mail-enabled web application server and platform
US20030126311A1 (en) 2001-12-12 2003-07-03 Kushnirskiy Igor Davidovich Application programming interface for connecting a platform independent plug-in to a web browser

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101585149B1 (ko) * 2014-04-28 2016-01-13 주식회사 잉카인터넷 플러그인 프리 웹서비스 제공 시스템 및 방법

Also Published As

Publication number Publication date
KR20100031404A (ko) 2010-03-22

Similar Documents

Publication Publication Date Title
US11842072B2 (en) Distributed storage method and apparatus, computer device, and storage medium
US9100172B2 (en) Method for interworking with trustzone between normal domain and secure domain, and management method of trusted application download, management server, device and system using it
CN105765526B (zh) 通过网络从远程磁盘镜像进行引导
US20180373523A1 (en) Application update method and apparatus
JP5945512B2 (ja) 計算機システム、及び仮想計算機管理方法
US7225264B2 (en) Systems and methods for delivering content over a computer network
RU2011101770A (ru) Способ доступа к приложениям в защищенной мобильной среде
CN103577206A (zh) 一种应用软件的安装方法和装置
US20120090034A1 (en) Method and apparatus for downloading drm module
CN101727449A (zh) 利用远程应用处理本地文件的系统和方法
US9392051B2 (en) Application distribution supplying a dedicated application to a terminal from an application deposited by the developer
CN103795690A (zh) 一种云访问控制的方法、代理服务器和系统
US8843915B2 (en) Signature-based update management
CN108400875B (zh) 基于键值的授权认证方法、系统、电子设备、存储介质
KR101033813B1 (ko) 클라우드 컴퓨팅 네트워크 시스템 및 그것의 파일 분산 방법
KR101039954B1 (ko) 동적실행코드를 이용한 엑티브 웹브라우징 시스템 및 서비스 제공 방법
WO2012129868A1 (zh) 终端通信的控制方法和装置、以及管理服务器
CN107911357A (zh) 一种单点登录的方法、装置、服务器及存储介质
CN102685115B (zh) 一种资源的访问方法、资源管理设备和系统
CN109474418A (zh) 文档加密方法、文档解密方法、装置、介质和计算设备
CN112394907A (zh) 基于容器的交付系统构建方法、应用交付方法和交付系统
KR101622514B1 (ko) 서버에 대한 웹 요청들의 위조의 방지
WO2002023363A1 (en) Systems and methods for delivering content over a computer network
JP6231492B2 (ja) 薄端末モデルに基づくセキュリティ情報のインタラクションシステム、端末、サーバー及び方法
CN115454674A (zh) 获取外部数据源数据的方法、装置、电子设备及存储介质

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

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150521

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160525

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170523

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180528

Year of fee payment: 8