KR100926822B1 - Method for providing protection means of software, and network SYSTEM performing the same - Google Patents

Method for providing protection means of software, and network SYSTEM performing the same Download PDF

Info

Publication number
KR100926822B1
KR100926822B1 KR1020070125164A KR20070125164A KR100926822B1 KR 100926822 B1 KR100926822 B1 KR 100926822B1 KR 1020070125164 A KR1020070125164 A KR 1020070125164A KR 20070125164 A KR20070125164 A KR 20070125164A KR 100926822 B1 KR100926822 B1 KR 100926822B1
Authority
KR
South Korea
Prior art keywords
key
network
company
company key
operating software
Prior art date
Application number
KR1020070125164A
Other languages
Korean (ko)
Other versions
KR20090058405A (en
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 KR1020070125164A priority Critical patent/KR100926822B1/en
Publication of KR20090058405A publication Critical patent/KR20090058405A/en
Application granted granted Critical
Publication of KR100926822B1 publication Critical patent/KR100926822B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material
    • G06F21/12Protecting executable software
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communication
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communication using a plurality of keys or algorithms
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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
    • G06F2211/008Public Key, Asymmetric Key, Asymmetric Encryption

Abstract

소프트웨어 보호 수단 제공 방법 및 이를 수행하기 위한 네트워크 장치를 개시한다. A method of providing software protection means and a network device for performing the same are disclosed.
공개키 암호화 방식으로 암호화된 업데이트 정보를 수신하는 단계와, 상기 수신된 업데이트 정보를 미리 저장된 개인키에 의하여 해독하는 단계와, 상기 해독된 정보로부터 컴퍼니 키를 추출하는 단계 및 상기 추출된 컴퍼니 키와 미리 저장된 컴퍼니 키를 비교하여 운용 소프트웨어의 업데이트를 결정하는 단계를 포함하는 운용 소프트웨어의 보호 수단 제공 방법을 제공한다.Receiving update information encrypted using a public key encryption method, decrypting the received update information by using a private key stored in advance, extracting a company key from the decrypted information, and extracting the extracted company key; It provides a method of providing protection means for the operating software comprising comparing the pre-stored company key to determine the update of the operating software.
IP 카메라, 공개키, 소프트웨어 보호 IP cameras, public keys, software protection

Description

소프트웨어 보호수단 제공 방법 및 이를 수행하기 위한 네트워크 시스템{Method for providing protection means of software, and network SYSTEM performing the same}Method for providing protection means of software, and network SYSTEM performing the same}
본 발명은 소프트웨어 보호 수단 제공 방법 및 이를 수행하기 위한 네트워크 장치에 관한 것이다. 보다 구체적으로, 본 발명은 네트워크 장치(IP카메라, 비디오 인코더 등) 및 네트워크 장치를 운용하기 위한 소프트웨어 공급 업체가 상기 네트워크 장치의 판매 업체에게 소프트웨어 보호 수단을 함께 제공하기 위한 방법 및 이를 수행하기 위한 네트워크 시스템에 관한 것이다. The present invention relates to a method for providing software protection means and a network device for performing the same. More specifically, the present invention provides a method for providing a network protection device (IP camera, video encoder, etc.) and a software supplier for operating a network device together with a vendor of the network device to provide software protection means and a network for performing the same. It's about the system.
네트워크 장치는 네트워크 카메라 또는 네트워크 비디오 서버를 포함하는 개념이다. A network device is a concept including a network camera or a network video server.
상기 네트워크 카메라 및 네트워크 비디오 서버는 주로 보안을 필요로 하는 지역에 다수의 카메라를 설치하여 건물의 안팎이나, 주차장, 은행 등의 보안상태를 점검 하는데 사용된다.The network camera and network video server are mainly used to check the security status of the building, parking lot, bank, etc. by installing a plurality of cameras in an area requiring security.
또한, 상기 네트워크 비디오 서버는 다양한 어플리케이션 소프트웨어에 의하여 네트워크에 연결된 카메라를 원격지에서 제어하고, 카메라에 의하여 획득되는 영상 데이터 및 음성데이터를 저장/가공/처리 할 수 있다. In addition, the network video server may remotely control a camera connected to a network by various application software, and store / process / process image data and audio data obtained by the camera.
상기 네트워크 비디오 서버는 네트워크를 통하여 누구나 접근 가능하기 때문에 네트워크 어플리케이션 소프트웨어가 임의로 변경될 수 있는 위험이 있다.Since the network video server is accessible to anyone through the network, there is a risk that the network application software can be arbitrarily changed.
즉, 네트워크 비디오 서버는 그 특성 상 서버의 기능 향상, 버그 수정, 사용자 인터페이스 변경 등의 이유로 업데이트가 빈번하게 요구된다. That is, the network video server is frequently required to be updated due to its characteristics, bug fixes, and user interface changes.
그러나, 일반적인 아이디/암호 체계는 서버의 사용권을 제한하기 위한 것일 뿐, 서버내의 프로그램의 업데이트는 '관리자' 권한을 가진 사람이면 누구나 가능하다. 그런데, 서버의 '관리자' 권한을 획득하는 것은 서버의 운용을 책임지는 사람이라면 언제든지 획득 가능하다.However, the general ID / password system is only for restricting the usage rights of the server, and the update of the program in the server can be performed by anyone with 'administrator' authority. However, acquiring the 'administrator' authority of the server can be obtained at any time by the person in charge of the operation of the server.
따라서, 네트워크 비디오 서버는 서버의 '관리자' 권한을 획득한 자에 의한 어플리케이션 소프트웨어의 변경의 위험에 쉽게 노출된다.Therefore, the network video server is easily exposed to the risk of application software change by a person who has obtained the 'administrator' right of the server.
특히, 네트워크 장치의 제조 업체와 판매 업체가 구분되어 있는 경우(예를 들어, OEM 생산/공급의 경우)에는 더욱 문제가 될 수 있다. In particular, there may be a problem when the network device manufacturers and sellers are separated (for example, OEM production / supply).
즉, 네트워크 장치의 제조업체(이하, "네트워크 장치 공급 업체"라 칭함)가 다수의 네트워크 장치 판매 업체에게 네트워크 장치 및 어플리케이션 소프트웨어를 공급하는 경우에, 각각의 판매 업체가 갖고 있는 소프트웨어가 동일 기종의 다른 판매 업체가 판매하는 장치에서 동작할 수 없도록 하여야 한다. In other words, when a manufacturer of a network device (hereinafter referred to as a "network device vendor") supplies network device and application software to a plurality of network device vendors, the software of each vendor may be different from each other. It must not be possible for the vendor to operate on the device being sold.
따라서, 본 발명은 네트워크 장치 판매 업체마다 고유한 암호화 키를 부여함으로써, 네트워크 장치를 운용하기 위한 소프트웨어를 보호할 수 있는 방법 및 이를 수행하기 위한 네트워크 시스템을 제안하고자 한다. Accordingly, the present invention proposes a method capable of protecting software for operating a network device and a network system for performing the same by assigning a unique encryption key to each network device vendor.
또한, 본 발명은 네트워크 장치의 제조 업체와 판매 업체가 구분되어 있는 경우에 각각의 판매 업체가 갖고 있는 소프트웨어가 동일 기종의 다른 판매 업체가 판매하는 장치에서 동작할 수 없도록 하기 위한 보호 수단 제공 방법 및 이를 수행하기 위한 네트워크 시스템을 제안하고자 한다. In addition, the present invention provides a method for providing a protection means for preventing the software owned by each vendor from operating in a device sold by another vendor of the same type, when the network manufacturer and the vendor are separated We will propose a network system for doing this.
상기한 과제를 해결하기 위한 본 발명에 따른 실시예는 네트워크 장치의 운용 소프트웨어 및 판매업체에 고유하게 할당되는 컴퍼니 키를 생성하는 단계와, 상기 운용 소프트웨어의 업데이트 정보 및 상기 컴퍼니 키를 공개키 암호화 방식으로 암호화 하여 원격지에 설치된 네트워크 장치로 전송하는 단계와, 상기 네트워크 장치에 미리 저장된 개인키로 수신된 암호화 파일을 해독하여 상기 업데이트 정보 및 상기 컴퍼니 키를 추출하는 단계 및 상기 추출된 컴퍼니 키와 상기 네트워크 장치에 미리 저장된 컴퍼니 키를 비교하여 동일한 경우에는 상기 업데이트 정보에 따라서 운용 소프트웨어를 업데이트 하는 단계를 포함하는 소프트웨어 보호수단 제공 방법을 제공한다. According to an embodiment of the present invention for solving the above problems, generating a company key that is uniquely assigned to the operating software and the vendor of the network device, and the public key encryption method of the update information and the company key of the operating software Encrypting and transmitting to the network device installed at a remote location, decrypting an encryption file received with a private key stored in advance in the network device, extracting the update information and the company key, and extracting the extracted company key and the network device. And comparing the company keys stored in advance in the same manner, and updating the operating software according to the update information.
또한, 본 발명의 다른 실시예는 공개키 암호화 방식으로 암호화된 업데이트 정보를 수신하는 단계와, 상기 수신된 업데이트 정보를 미리 저장된 개인키에 의하여 해독하는 단계와, 상기 해독된 정보로부터 컴퍼니 키를 추출하는 단계 및 상기 추출된 컴퍼니 키와 미리 저장된 컴퍼니 키를 비교하여 운용 소프트웨어의 업데이트를 결정하는 단계를 포함하는 운용 소프트웨어의 보호 수단 제공 방법을 제공한다. In addition, another embodiment of the present invention is to receive the update information encrypted by the public key encryption method, decrypting the received update information by the pre-stored private key, and extracts the company key from the decrypted information And comparing the extracted company key with a pre-stored company key to determine an update of the operating software.
또한, 본 발명의 또 다른 실시예는 네트워크 장치의 운용 소프트웨어 및 상기 운용 소프트웨어의 보호 수단을 제공하기 위한 유틸리티를 생성하는 단계와, 상기 유틸리티에 의하여 제1 컴퍼니 키를 생성하는 단계와, 상기 생성된 제1 컴퍼니 키에 따라서 네트워크 장치에 저장된 제2 컴퍼니 키를 변경하는 단계와, 상기 운용 소프트웨어의 업데이트 정보 및 상기 제1 컴퍼니 키를 공개키 암호화 방식으로 암호화 하여 원격지에 설치된 네트워크 장치로 전송하는 단계와, 상기 네트워크 장치에 미리 저장된 개인키로 수신된 암호화 파일을 해독하여 상기 업데이트 정보 및 상기 제1 컴퍼니 키를 추출하는 단계 및 상기 추출된 제1 컴퍼니 키와 상기 네트워크 장치에 미리 저장된 제2 컴퍼니 키를 비교하여 동일한 경우에는 상기 업데이트 정보에 따라서 운용 소프트웨어를 업데이트 하는 단계를 포함하는 소프트웨어 보호수단 제공 방법을 제공한다. Further, another embodiment of the present invention is to generate a utility for providing the operating software of the network device and the protection means of the operating software, generating a first company key by the utility, and the generated Changing the second company key stored in the network device according to the first company key, encrypting the update information of the operating software and the first company key by using a public key encryption method and transmitting the same to the remotely installed network device; Extracting the update information and the first company key by decrypting an encryption file received with the private key previously stored in the network device, and comparing the extracted first company key with a second company key previously stored in the network device. If the same is the case, It provides a method for providing software protection means comprising the step of updating the software.
상기한 본 발명의 실시예를 수행하기 위한 네트워크 시스템은 네트워크 장치의 운용 소프트웨어 및 판매업체에 고유하게 할당되는 컴퍼니 키를 저장하기 위한 저장 수단과, 상기 운용 소프트웨어의 업데이트 정보 및 상기 컴퍼니 키를 공개키 암호화 방식으로 암호화 하여 원격지에 설치된 네트워크 장치로 전송하기 위한 판매자 장치 및 상기 네트워크 장치에 미리 저장된 개인키로 수신된 암호화 파일을 해독하여 상기 업데이트 정보 및 상기 컴퍼니 키를 추출하고 상기 추출된 컴퍼니 키와 미리 저장된 컴퍼니 키를 비교하여 운용 소프트웨어의 업데이트를 결정하는 서버 장치를 포함한다. The network system for carrying out the above-described embodiments of the present invention includes storage means for storing a management key of a network device and a company key uniquely assigned to a vendor, and updating information and the company key of the operating software. Decrypt the encryption device received by the seller device for encrypting and transmitting to the network device installed in the remote location and the private key stored in the network device to extract the update information and the company key, and the extracted company key and the pre-stored And a server device that compares the company key to determine an update of the operating software.
또한, 본 발명의 다른 네트워크 시스템은 공개키 암호화 방식으로 암호화된 업데이트 정보를 수신하는 수신부와, 상기 수신된 업데이트 정보를 미리 저장된 개인키에 의하여 해독하는 암호 해독부와, 상기 해독된 정보로부터 컴퍼니 키를 추출하는 컴퍼니 키 추출부 및 상기 추출된 컴퍼니 키와 미리 저장된 컴퍼니 키를 비교하여 운용 소프트웨어의 업데이트를 결정하는 업데이트 수행부를 포함한다. In addition, another network system of the present invention includes a receiving unit for receiving update information encrypted with a public key encryption method, a decryption unit for decrypting the received update information with a previously stored private key, and a company key from the decrypted information. And a company key extracting unit for extracting an extract, and an update performing unit for determining an update of the operating software by comparing the extracted company key with a pre-stored company key.
또한 본 발명의 또 다른 네트워크 시스템은 네트워크 장치의 운용 소프트웨어 및 상기 운용 소프트웨어의 보호 수단을 제공하기 위한 유틸리티를 저장하기 위한 저장 수단과, 상기 유틸리티에 의하여 제1 컴퍼니 키를 생성하고 상기 운용 소프트웨어의 업데이트 정보 및 상기 제1 컴퍼니 키를 공개키 암호화 방식으로 암호화 하여 원격지에 설치된 네트워크 장치로 전송하는 판매자 장치 및 상기 네트워크 장치에 미리 저장된 개인키로 수신된 암호화 파일을 해독하여 상기 업데이트 정보 및 상기 제1 컴퍼니 키를 추출하고 상기 추출된 제1 컴퍼니 키와 미리 저장된 제2 컴퍼니 키를 비교하여 운용 소프트웨어의 업데이트를 결정하는 서버 장치를 포함한다. Still another network system of the present invention further includes storage means for storing operating software of a network device and a utility for providing protection means of the operating software, and generating a first company key by the utility and updating the operating software. A seller device that encrypts the information and the first company key by a public key encryption method and transmits the encrypted information received by a private key prestored in the network device and a seller device that transmits the encrypted information to the network device installed at a remote location; And a server device for determining an update of the operating software by comparing the extracted first company key with a second stored second company key.
본 발명의 실시예에 따르면, 네트워크 장치 판매 업체마다 고유한 암호화 키를 부여함으로써, 네트워크 장치를 운용하기 위한 소프트웨어를 보호할 수 있게 된다. According to an embodiment of the present invention, by assigning a unique encryption key to each network device vendor, it is possible to protect the software for operating the network device.
또한 본 발명의 실시예에 따르면, 네트워크 장치의 제조 업체와 판매 업체가 구분되어 있는 경우에 각각의 판매 업체가 갖고 있는 소프트웨어가 동일 기종의 다른 판매 업체가 판매하는 장치에서 동작할 수 없도록 할 수 있게 된다. In addition, according to an embodiment of the present invention, in the case where manufacturers and vendors of network devices are distinguished, software of each vendor may not be able to operate on devices sold by other vendors of the same model. do.
이하에서는 첨부된 도면을 참조하여 본 발명의 실시예를 상세히 설명하기로 한다. 본 발명을 설명함에 있어서, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고, 본 명세서에서 사용되는 용어(terminology)들은 본 발명의 바람직한 실시예를 적절히 표현하기 위해 사용된 용어들로서, 이는 사용자, 운용자의 의도 또는 본 발명이 속하는 분야의 관례 등에 따라 달라질 수 있다. 따라서, 본 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. Hereinafter, with reference to the accompanying drawings will be described an embodiment of the present invention; In describing the present invention, when it is determined that detailed descriptions of related known functions or configurations may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted. Terminology used herein is a term used to properly express a preferred embodiment of the present invention, which may vary according to a user, an operator's intention, or a custom in the field to which the present invention belongs. Therefore, the definitions of the terms should be made based on the contents throughout the specification.
도 1은 본 발명의 실시예에 따른 네트워크 시스템의 구조를 나타내는 블록도이다. 1 is a block diagram showing the structure of a network system according to an embodiment of the present invention.
도 1을 참조하면, 네트워크 시스템은 공급자 장치(110), 판매자 장치(120) 및 서버 장치(130)를 포함하여 구성된다. Referring to FIG. 1, a network system includes a provider device 110, a seller device 120, and a server device 130.
상기 공급자 장치(110)는 네트워크 장치(서버 장치 또는 IP 카메라)를 제조하여 판매자에게 공급하는 공급자가 운용하는 컴퓨터 장치일 수 있다. The supplier device 110 may be a computer device operated by a supplier who manufactures and supplies a network device (server device or IP camera) to a seller.
상기 공급자 장치(110)는 네트워크 장치를 운용하기 위한 어플리케이션 프로그램, 커널, Boot loader, 웹 페이지 구성요소, OCX, Active X 등의 원본 파일을 저장하기 위한 저장수단(111)을 포함하여 구성될 수 있다.The provider device 110 may include a storage means 111 for storing original files such as an application program, a kernel, a boot loader, a web page component, an OCX, an Active X, etc. for operating a network device. .
참고적으로, 커널, boot loader, web pages, ActiveX (OCX), configuration file 은 원본 파일이다.For reference, the kernel, boot loader, web pages, ActiveX (OCX), and configuration file are the original files.
상기 커널은 서버 장치의 OS, 파일 시스템, 어플리케이션 프로그램 등 서버 정치가 동작하기 위한 모든 실행 가능한 프로그램의 집합을 통틀어 일컫는다.The kernel is referred to collectively as the set of all executable programs for operating the server, such as the OS of the server device, the file system, and the application program.
상기 boot loader는 서버 장치에 전원이 인가되었을 때 최초로 실행이 되며, boot loader의 실행이 완료되고 나서야 서버 장치의 커널이 동작을 개시한다. boot loader는 서버 장치의 하드웨어를 구성 및 설정하여 커널이 동작하는데 필요한 최소한의 환경을 구성한다.The boot loader is first executed when power is supplied to the server device, and the kernel of the server device starts operation only after execution of the boot loader is completed. The boot loader configures and configures the server device hardware to configure the minimum environment necessary for the kernel to work.
상기 web pages는 HTML, 자바 스크립트, 그림 파일들로 구성되어 있다. 웹 브라우저를 이용해서 서버 장치의 여러 가지 설정 값을 변경하는데 필요한 웹 환경을 제공한다. 판매자의 목적에 따라 web pages의 구성 요소를 수정할 수 있다. Web pages는 어느 한 판매자와 다른 판매자를 시각적으로 구분지을 수 있는 가장 중요한 부분이다.The web pages consist of HTML, JavaScript, and picture files. The web browser provides a web environment for changing various settings of the server device. You can modify the components of the web pages according to the seller's purpose. Web pages are the most important part of visually distinguishing one seller from another.
상기 ActiveX는 OCX라고도 부른다. ActiveX는 서버 장치에서 end-user의 피씨로 다운로드되어 end-user의 피씨에서 실행이 된다. 주 목적은 서버 장치가 생성한 MPEG-4 및 MJPEG 스트림을 end-user의 피씨에서 decompression하고 decompression돤 영상을 보여준다.The ActiveX is also called OCX. ActiveX is downloaded to the end-user PC from the server device and executed on the end-user PC. The main purpose is to decompress the MPEG-4 and MJPEG streams generated by the server device in the PC of the end-user and to show the decompression video.
상기 configuration file은 제품 이름, 제품 설명, 제품의 브랜드 이름과 같이 제품을 구분지을 수 있는 문자열을 가지고 있다. 각 판매자는 자기가 원하는 제품의 이름을 configuration file을 통해 설정할 수 있다.The configuration file has a string that distinguishes a product, such as a product name, a product description, and a brand name of the product. Each seller can set the name of the desired product through a configuration file.
이때, 상기 저장수단(111)은 컴퓨터 판독 가능한 외부 저장 매체 또는 FTP 접속 프로그램일 수 있다. 또한, 상기 저장수단(111)은 운용 소프트웨어의 보호 수단을 제공하기 위한 유틸리티 및 판매업체에 고유하게 할당되는 컴퍼니 키를 저장하고 있다. In this case, the storage means 111 may be a computer readable external storage medium or an FTP access program. In addition, the storage means 111 stores a utility key uniquely assigned to a vendor and a utility for providing a protection means of the operating software.
상기 판매자 장치(120)는 네트워크 장치를 공급 받아 자신의 브랜드로 이를 판매하는 판매자가 운용하는 컴퓨터 장치일 수 있다. The seller device 120 may be a computer device operated by a seller who receives a network device and sells it under a brand.
상기 판매자 장치(120)는 상기 공급자 장치(110) 또는 저장 수단(111)으로부터 운용 소프트웨어의 원본 파일, 컴퍼니 키 및 운용 소프트웨어의 보호 수단을 제공하기 위한 유틸리티를 수신할 수 있다.The merchant device 120 may receive from the provider device 110 or the storage means 111 a utility for providing the original file of the operating software, the company key and the protection means of the operating software.
상기 판매자 장치(120)는 상기 운용 소프트웨어의 업데이트 정보 및 상기 컴퍼니 키를 공개키 암호화 방식으로 암호화 하여 원격지에 설치된 서버 장치(130)로 전송한다.The seller device 120 encrypts the update information of the operating software and the company key by a public key encryption method and transmits the encrypted information to the server device 130 installed at a remote location.
상기 서버 장치(130)는 미리 저장된 개인키로 수신된 암호화 파일을 해독하 여 상기 업데이트 정보 및 상기 컴퍼니 키를 추출하고 상기 추출된 컴퍼니 키와 미리 저장된 컴퍼니 키를 비교하여 운용 소프트웨어의 업데이트를 결정한다. The server device 130 decrypts the encryption file received with the pre-stored private key, extracts the update information and the company key, and compares the extracted company key with the pre-stored company key to determine the update of the operating software.
또한, 상기 서버 장치(130)는 공개키 암호화 방식으로 암호화된 업데이트 정보를 수신하는 수신부(131)와, 상기 수신된 업데이트 정보를 미리 저장된 개인키에 의하여 해독하는 암호 해독부(133)와, 상기 해독된 정보로부터 컴퍼니 키를 추출하는 컴퍼니 키 추출부(135) 및 상기 추출된 컴퍼니 키와 미리 저장된 컴퍼니 키를 비교하여 운용 소프트웨어의 업데이트를 결정하는 업데이트 수행부(137)를 포함하여 구성될 수 있다.In addition, the server device 130 includes a receiving unit 131 for receiving update information encrypted by a public key encryption method, a decryption unit 133 for decrypting the received update information with a pre-stored private key, and It may include a company key extraction unit 135 for extracting the company key from the decrypted information and an update execution unit 137 for determining the update of the operating software by comparing the extracted company key and the pre-stored company key may be configured. .
이하, 상기 도 1에 도시된 네트워크 시스템에 의한 소프트웨어 보호 수단 제공 방법을 설명하기로 한다. Hereinafter, a method for providing software protection means by the network system shown in FIG. 1 will be described.
도 2는 본 발명의 실시예에 따른 소프트웨어 보호수단 제공 방법을 나타내는 흐름도이다.2 is a flowchart illustrating a method for providing software protection means according to an embodiment of the present invention.
상기 도 2를 참조하면, 소프트웨어 보호수단 제공 방법은 네트워크 장치의 운용 소프트웨어 및 판매업체에 고유하게 할당되는 컴퍼니 키를 생성하는 단계(S10)와, 상기 운용 소프트웨어의 업데이트 정보 및 상기 컴퍼니 키를 공개키 암호화 방식으로 암호화 하여 원격지에 설치된 네트워크 장치로 전송하는 단계(S20)와, 상기 네트워크 장치에 미리 저장된 개인키로 수신된 암호화 파일을 해독하여 상기 업데이트 정보 및 상기 컴퍼니 키를 추출하는 단계(S30) 및 상기 추출된 컴퍼니 키와 상기 네트워크 장치에 미리 저장된 컴퍼니 키를 비교하여 동일한 경우에는 상기 업데이트 정보에 따라서 운용 소프트웨어를 업데이트 하는 단계(S40, S50)를 포함한다. Referring to FIG. 2, the method for providing software protection means may include generating a company key uniquely assigned to operating software and a vendor of a network device, and updating update information of the operating software and the public key. Encrypting by an encryption method and transmitting to a network device installed at a remote location (S20); extracting the update information and the company key by decrypting an encryption file received with a private key previously stored in the network device (S30) and the And comparing the extracted company key with the company key pre-stored in the network device and updating the operating software according to the update information (S40 and S50).
상기 단계(S10)에서 네트워크 장치 공급자는 공급자 장치(110)에 의하여 네트워크 장치의 운용 소프트웨어 및 판매업체에 고유하게 할당되는 컴퍼니 키를 생성한다. In step S10, the network device provider generates a company key uniquely assigned by the provider device 110 to the operating software and the vendor of the network device.
한편, 네트워크 장치 공급자는 상기 판매업체에 고유하게 할당되는 컴퍼니 키에 대응하는 고유한 컴퍼니 키를 미리 네트워크 장치에 저장한다. 이때, 상기 네트워크 장치에 저장되는 컴퍼니 키는 상기 판매업체에 고유하게 할당되는 컴퍼니 키와 동일한 값을 갖거나 미리 설정된 한 쌍을 이루는 값일 수 있다.Meanwhile, the network device provider stores in advance the unique company key corresponding to the company key uniquely assigned to the vendor in the network device. In this case, the company key stored in the network device may be a value having the same value as a company key uniquely assigned to the vendor or a pair of preset values.
본 실시예에서 상기 판매업체에 고유하게 할당되는 컴퍼니 키 및 네트워크 장치에 미리 저장되는 컴퍼니 키는 임의로 변경할 수 없는 고정된 값이다. In this embodiment, the company key uniquely assigned to the vendor and the company key previously stored in the network device are fixed values that cannot be arbitrarily changed.
상기 단계(S20)에서 판매자 장치(120)는 운용 소프트웨어의 업데이트 필요시 업데이트 정보를 생성하고, 운용 소프트웨어의 보호 수단을 제공하기 위한 유틸리티를 사용하여 업데이트 정보 및 컴퍼니 키를 암호화 하여 서버장치(130)로 전송한다. In step S20, the seller device 120 generates update information when the update of the operating software is required, and encrypts the update information and the company key by using a utility for providing a protection means of the operating software. To send.
상기 업데이트 정보 및 컴퍼니 키의 암호화 과정은 도 3에 도시된 바와 같이, 업데이트 정보 및 컴퍼니 키를 하나의 파일로 랩핑(Wrapping)하고(S70, S80), 상기 랩핑된 하나의 파일을 공개키 암호화 방식으로 암호화하는 것(S90)이다. As shown in FIG. 3, the encryption of the update information and the company key is performed by wrapping the update information and the company key into a single file (S70 and S80), and the wrapped single file as a public key encryption scheme. To encrypt (S90).
상기 단계(S30)에서, 서버 장치(130)는 공개키 암호화 방식으로 암호화된 업데이트 정보를 수신하여 이를 해독하고 업데이트 정보 및 컴퍼니 키를 추출한다.In step S30, the server device 130 receives the update information encrypted by the public key encryption method, decrypts it, and extracts the update information and the company key.
상기 단계(S30)에서, 서버 장치(130)는 수신된 업데이트 정보를 미리 저장된 개인키에 의하여 해독할 수 있다.In operation S30, the server device 130 may decrypt the received update information by using a private key stored in advance.
상기 단계(S40)에서, 서버 장치(130)는 상기 추출된 컴퍼니 키와 미리 저장된 컴퍼니 키를 비교한다. In step S40, the server device 130 compares the extracted company key with a previously stored company key.
상기 추출된 컴퍼니 키와 미리 저장된 컴퍼니 키가 동일한 경우에, 상기 서버 장치(130)는 해독된 업데이트 정보에 따라서 운용 소프트웨어를 업데이트 한다(S50). When the extracted company key and the previously stored company key are the same, the server device 130 updates the operating software according to the decrypted update information (S50).
만일, 상기 추출된 컴퍼니 키와 미리 저장된 컴퍼니 키가 동일하지 않은 경우에는 운용 소프트웨어의 업데이트를 거부한다(S60).If the extracted company key and the previously stored company key are not the same, the update of the operating software is rejected (S60).
본 발명의 실시예에 따르면, 서버 장치(130)는 업데이트 거부 메시지를 판매자 장치로 전송할 수 있다. According to an embodiment of the present invention, the server device 130 may transmit an update rejection message to the seller device.
한편, 본 발명의 실시예에 따르면, 상기 서버 장치(130)는 운용 소프트웨어 보호 수단을 제공하기 위하여, 공개키 암호화 방식으로 암호화된 업데이트 정보를 수신하고, 상기 수신된 업데이트 정보를 미리 저장된 개인키에 의하여 해독하고, 상기 해독된 정보로부터 컴퍼니 키를 추출하고, 그리고 상기 추출된 컴퍼니 키와 미리 저장된 컴퍼니 키를 비교하여 운용 소프트웨어의 업데이트를 결정할 수 있다. Meanwhile, according to an embodiment of the present invention, the server device 130 receives update information encrypted by a public key encryption method and provides the received update information to a pre-stored private key to provide an operating software protection means. By decryption, extracting a company key from the decrypted information, and comparing the extracted company key with a previously stored company key to determine an update of the operating software.
도 4는 본 발명의 다른 실시예에 따른 소프트웨어 보호수단 제공 방법을 나타내는 흐름도이다.4 is a flowchart illustrating a method for providing software protection means according to another embodiment of the present invention.
상기 도 4를 참조하면, 소프트웨어 보호수단 제공 방법은 운용 소프트웨어의 보호 수단을 제공하기 위한 유틸리티에 의하여 제1 컴퍼니 키를 생성하는 단계(S110)와, 상기 생성된 제1 컴퍼니 키에 따라서 네트워크 장치에 저장된 제2 컴퍼니 키를 변경하는 단계(S120)와, 상기 운용 소프트웨어의 업데이트 정보 및 상기 제1 컴퍼니 키를 공개키 암호화 방식으로 암호화 하여 원격지에 설치된 네트워크 장치로 전송하는 단계(S130)와, 상기 네트워크 장치에 미리 저장된 개인키로 수신된 암호화 파일을 해독하여 상기 업데이트 정보 및 상기 제1 컴퍼니 키를 추출하는 단계(S140) 및 상기 추출된 제1 컴퍼니 키와 상기 네트워크 장치에 미리 저장된 제2 컴퍼니 키를 비교하여 동일한 경우에는 상기 업데이트 정보에 따라서 운용 소프트웨어를 업데이트 하는 단계(S150, S160)를 포함한다. Referring to FIG. 4, the method for providing software protection means may include generating a first company key by a utility for providing a protection means of operating software (S110), and generating the first company key to the network device according to the generated first company key. Changing the stored second company key (S120), encrypting the update information of the operating software and the first company key by using a public key encryption method and transmitting to a network device installed at a remote location (S130); Extracting the update information and the first company key by decrypting an encryption file received with a private key previously stored in a device (S140) and comparing the extracted first company key with a second company key previously stored in the network device; In the case of the same, updating the operating software according to the update information (S150, S160).
상기 단계(S110)에서, 판매자 장치(120)는 임의의 값으로 제1 컴퍼니 키를 생성할 수 있다. In step S110, the merchant device 120 may generate a first company key with an arbitrary value.
이때, 상기 단계(S120)에서, 상기 네트워크 장치의 판매자는 서버장치(130)에 저장된 컴퍼니 키를 상기 제1 컴퍼니 키에 대응하는 값으로 변경할 수 있다.At this time, in step S120, the seller of the network device may change the company key stored in the server device 130 to a value corresponding to the first company key.
상기 단계(S130) 내지 단계(S170)는 상기한 단계(S20) 내지 단계(S60)와 동일한 동작을 수행하는 것이다. Steps S130 to S170 perform the same operations as steps S20 to S60 described above.
상기한 본 발명의 실시예들에 따라서, 네트워크 장치의 제조 업체와 판매 업체가 구분되어 있는 경우에도 각각의 판매 업체가 갖고 있는 소프트웨어가 동일 기종의 다른 판매 업체가 판매하는 장치에서 동작할 수 없고, 운용 소프트웨어의 보호가 가능하게 된다. According to the above-described embodiments of the present invention, even if a manufacturer and a seller of a network device are distinguished, the software owned by each seller cannot operate in a device sold by another vendor of the same model. The operating software can be protected.
또한, 본 발명의 실시예에 따르면, 판매자가 직접 네트워크 장치를 제조하지 않는 경우에도 판매자 자신만의 브랜드를 사용할 수 있고, 동일한 공급자로부터 네트워크 장치를 공급 받은 다른 판매자에 의하여 브랜드 정보가 변경되는 것을 방지할 수 있다.In addition, according to an embodiment of the present invention, even if the seller does not manufacture the network device directly, the seller's own brand can be used, and the brand information is prevented from being changed by another seller supplied with the network device from the same supplier. can do.
한편, 상기한 컴퍼니 키는 예를 들어 6byte 길이를 갖는 숫자 값이나 그 이상의 길이를 갖는 숫자 및 문자로 구성된 값일 수 있다. Meanwhile, the company key may be, for example, a numeric value having a length of 6 bytes or a value composed of numbers and characters having a length longer than that.
그리고, 상기한 보호 수단을 제공하기 위한 유틸리티는 도 5에 도시한 바와 같이, 업데이트 대상 운용 소프트웨어를 선택하고, 컴퍼니 키와 업데이트 정보를 하나의 파일로 생성(Wrapping)하고, 생성된 하나의 파일을 암호화 하기 위한 인터페이스를 제공하도록 구성될 수 있다. In addition, the utility for providing the above-mentioned protection means selects the update target operating software, generates the company key and the update information into one file, and generates one generated file as shown in FIG. 5. It may be configured to provide an interface for encryption.
도 6a는 도 5에 도시된 유틸리티의 인터페이스 예에서 "companykey" 가 선택된 경우에, 컴퍼니 키를 생성하기 위한 인터페이스를, 도 6b는 "Packaging" 가 선택된 경우에 저장 경로 및 파일 정보를 지정하기 위한 인터페이스를, 도 6c는 "Encrypt"가 선택된 경우에 해당 정보를 나타내고 암호화 명령을 수행하기 위한 인터페이스를 각각 나타낸다. FIG. 6A is an interface for generating a company key when "companykey" is selected in the interface example of the utility shown in FIG. 5, and FIG. 6B is an interface for specifying storage path and file information when "Packaging" is selected. 6C shows corresponding information when “Encrypt” is selected and shows interfaces for performing an encryption command, respectively.
본 발명에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the present invention can be implemented in the form of program instructions that can be executed by various computer means and recorded on a computer readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. Program instructions recorded on the media may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well-known and available to those having skill in the computer software arts. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks. Magneto-optical media, and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. The medium may be a transmission medium such as an optical or metal wire, a waveguide, or the like including a carrier wave for transmitting a signal specifying a program command, a data structure, or the like. Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, the present invention has been described by way of limited embodiments and drawings, but the present invention is not limited to the above embodiments, and those skilled in the art to which the present invention pertains various modifications and variations from such descriptions. This is possible.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined not only by the claims below but also by the equivalents of the claims.
도 1은 본 발명의 실시예에 따른 네트워크 시스템의 구조를 나타내는 블록도이다.1 is a block diagram showing the structure of a network system according to an embodiment of the present invention.
도 2는 본 발명의 실시예에 따른 소프트웨어 보호수단 제공 방법을 나타내는 흐름도이다.2 is a flowchart illustrating a method for providing software protection means according to an embodiment of the present invention.
도 3은 업데이트 정보 및 컴퍼니 키의 암호화 과정을 보여주는 도면이다.3 is a diagram illustrating a process of encrypting update information and a company key.
도 4는 본 발명의 다른 실시예에 따른 소프트웨어 보호수단 제공 방법을 나타내는 흐름도이다.4 is a flowchart illustrating a method for providing software protection means according to another embodiment of the present invention.
도 5는 보호 수단을 제공하기 위한 유틸리티의 구성예를 보여주는 도면이다.5 is a diagram showing an example of the configuration of a utility for providing protection means.
도 6a 내지 도 6c는 도 5에 예시된 유틸리티 구성의 부가 구성을 보여주는 도면이다.6A to 6C are diagrams showing additional configurations of the utility configuration illustrated in FIG.

Claims (18)

  1. 네트워크 장치의 운용 소프트웨어 및 판매업체에 고유하게 할당되는 컴퍼니 키를 생성하는 단계;Generating a company key uniquely assigned to the operating software and vendor of the network device;
    상기 운용 소프트웨어의 업데이트 정보 및 상기 컴퍼니 키를 공개키 암호화 방식으로 암호화 하여 원격지에 설치된 네트워크 장치로 전송하는 단계;Encrypting the update information of the operating software and the company key using a public key encryption method and transmitting the encrypted information to a network device installed at a remote location;
    상기 네트워크 장치에 미리 저장된 개인키로 수신된 암호화 파일을 해독하여 상기 업데이트 정보 및 상기 컴퍼니 키를 추출하는 단계; 및Extracting the update information and the company key by decrypting an encryption file received with a private key previously stored in the network device; And
    상기 추출된 컴퍼니 키와 상기 네트워크 장치에 미리 저장된 컴퍼니 키를 비교하여 동일한 경우에는 상기 업데이트 정보에 따라서 운용 소프트웨어를 업데이트 하는 단계를 포함하는 소프트웨어 보호수단 제공 방법.And comparing the extracted company key with a company key pre-stored in the network device, and updating operating software according to the update information.
  2. 제 1 항에 있어서, The method of claim 1,
    상기 네트워크 장치의 운용 소프트웨어는 웹 페이지, 판매 업체의 브랜드 정보, 커널, 어플리케이션 프로그램, 액티브 X 중 적어도 하나를 포함하는 것을 특징으로 하는 소프트웨어 보호수단 제공 방법.The operating software of the network device comprises at least one of a web page, brand information of a vendor, a kernel, an application program, and ActiveX.
  3. 제 1 항에 있어서,The method of claim 1,
    상기 업데이트 정보 및 컴퍼니 키는 하나의 파일로 랩핑되고, 상기 랩핑된 하나의 파일은 공개키 암호화 방식으로 암호화되는 것을 특징으로 하는 소프트웨어 보호수단 제공 방법.And the update information and the company key are wrapped in one file, and the wrapped one file is encrypted using a public key encryption method.
  4. 제 1 항에 있어서,The method of claim 1,
    상기 판매업체에 고유하게 할당되는 컴퍼니 키는 임의로 변경할 수 없는 고정된 값임을 특징으로 하는 소프트웨어 보호수단 제공 방법.And a company key uniquely assigned to the vendor is a fixed value that cannot be arbitrarily changed.
  5. 제 1 항에 있어서, The method of claim 1,
    상기 추출된 컴퍼니 키와 상기 네트워크 장치에 미리 저장된 컴퍼니 키를 비교하여 동일하지 않은 경우에는 운용 소프트웨어의 업데이트를 거부하는 것을 특징으로 하는 소프트웨어 보호수단 제공 방법.And comparing the extracted company key with the company key pre-stored in the network device and rejecting the update of the operating software when the extracted company key is not the same.
  6. IP 카메라를 원격지에서 제어 할 수 있는 웹페이지를 제공하는 네트워크 장치에서 상기 웹페이지를 포함하는 운용 소프트웨어의 보호 수단 제공 방법으로서,A method of providing a protection means for operating software including the web page in a network device that provides a web page for remotely controlling the IP camera,
    공개키 암호화 방식으로 암호화된 업데이트 정보를 수신하는 단계;Receiving update information encrypted by a public key encryption method;
    상기 수신된 업데이트 정보를 미리 저장된 개인키에 의하여 해독하는 단계;Decrypting the received update information by means of a previously stored private key;
    상기 해독된 정보로부터 컴퍼니 키를 추출하는 단계; 및Extracting a company key from the decrypted information; And
    상기 추출된 컴퍼니 키와 미리 저장된 컴퍼니 키를 비교하여 운용 소프트웨어의 업데이트를 결정하는 단계를 포함하는 운용 소프트웨어의 보호 수단 제공 방법.And comparing the extracted company key with a previously stored company key to determine an update of the operating software.
  7. 제 6 항에 있어서, The method of claim 6,
    상기 추출된 컴퍼니 키와 상기 미리 저장된 컴퍼니 키가 동일한 경우에는 상기 업데이트 정보에 따라서 운용 소프트웨어의 업데이트를 수행하는 것을 특징으로 하는 운용 소프트웨어의 보호 수단 제공 방법.And if the extracted company key is identical to the pre-stored company key, updating the operating software according to the update information.
  8. 제 6 항에 있어서, The method of claim 6,
    상기 추출된 컴퍼니 키와 상기 미리 저장된 컴퍼니 키가 동일하지 않은 경우에는 상기 업데이트 정보를 송신한 송신단으로 업데이트 거부 메시지를 전송하는 것을 특징으로 하는 운용 소프트웨어의 보호 수단 제공 방법.And if the extracted company key and the pre-stored company key are not the same, transmitting an update rejection message to a transmitting end that has transmitted the update information.
  9. 네트워크 장치의 운용 소프트웨어 및 상기 운용 소프트웨어의 보호 수단을 제공하기 위한 유틸리티를 생성하는 단계;Generating a utility for providing the operating software of the network device and the protection means of the operating software;
    상기 유틸리티에 의하여 제1 컴퍼니 키를 생성하는 단계;Generating a first company key by the utility;
    상기 생성된 제1 컴퍼니 키에 따라서 네트워크 장치에 저장된 제2 컴퍼니 키를 변경하는 단계;Changing a second company key stored in a network device according to the generated first company key;
    상기 운용 소프트웨어의 업데이트 정보 및 상기 제1 컴퍼니 키를 공개키 암호화 방식으로 암호화 하여 원격지에 설치된 네트워크 장치로 전송하는 단계;Encrypting the update information of the operating software and the first company key by a public key encryption method and transmitting the encrypted information to a network device installed at a remote location;
    상기 네트워크 장치에 미리 저장된 개인키로 수신된 암호화 파일을 해독하여 상기 업데이트 정보 및 상기 제1 컴퍼니 키를 추출하는 단계; 및Extracting the update information and the first company key by decrypting an encryption file received with a private key previously stored in the network device; And
    상기 추출된 제1 컴퍼니 키와 상기 네트워크 장치에 미리 저장된 제2 컴퍼니 키를 비교하여 동일한 경우에는 상기 업데이트 정보에 따라서 운용 소프트웨어를 업데이트 하는 단계를 포함하는 소프트웨어 보호수단 제공 방법.And comparing the extracted first company key with a second company key previously stored in the network device, and updating operating software according to the update information.
  10. 제 9 항에 있어서, The method of claim 9,
    상기 네트워크 장치의 운용 소프트웨어는 웹 페이지, 판매 업체의 브랜드 정보, 커널, 어플리케이션 프로그램, 액티브 X 중 적어도 하나를 포함하는 것을 특징으로 하는 소프트웨어 보호수단 제공 방법.The operating software of the network device comprises at least one of a web page, brand information of a vendor, a kernel, an application program, and ActiveX.
  11. 제 9 항에 있어서,The method of claim 9,
    상기 업데이트 정보 및 컴퍼니 키는 하나의 파일로 랩핑되고, 상기 랩핑된 하나의 파일은 공개키 공개키 암호화 방식으로 암호화되는 것을 특징으로 하는 소프트웨어 보호수단 제공 방법.And the update information and the company key are wrapped in one file, and the wrapped one file is encrypted using a public key public key encryption method.
  12. 제 9 항에 있어서, The method of claim 9,
    상기 추출된 제1 컴퍼니 키와 상기 네트워크 장치에 미리 저장된 제2 컴퍼니 키를 비교하여 동일하지 않은 경우에는 운용 소프트웨어의 업데이트를 거부하는 것을 특징으로 하는 소프트웨어 보호수단 제공 방법.And comparing the extracted first company key with a second company key previously stored in the network device, and rejecting an update of the operating software when the extracted first company key is not the same.
  13. 네트워크 장치의 운용 소프트웨어 및 판매업체에 고유하게 할당되는 컴퍼니 키를 저장하기 위한 저장 수단;Storage means for storing a company key uniquely assigned to the operating software and the vendor of the network device;
    상기 운용 소프트웨어의 업데이트 정보 및 상기 컴퍼니 키를 공개키 암호화 방식으로 암호화 하여 원격지에 설치된 네트워크 장치로 전송하기 위한 판매자 장치; 및A seller device for encrypting the update information of the operating software and the company key using a public key encryption method and transmitting the encrypted information to a network device installed at a remote location; And
    상기 네트워크 장치에 미리 저장된 개인키로 수신된 암호화 파일을 해독하여 상기 업데이트 정보 및 상기 컴퍼니 키를 추출하고 상기 추출된 컴퍼니 키와 미리 저장된 컴퍼니 키를 비교하여 운용 소프트웨어의 업데이트를 결정하는 서버 장치를 포함하는 소프트웨어 보호수단을 제공하기 위한 네트워크 시스템.And a server device for decrypting an encryption file received with a private key previously stored in the network device, extracting the update information and the company key, and comparing the extracted company key with the previously stored company key to determine an update of the operating software. Network system for providing software protection.
  14. 제 13 항에 있어서, The method of claim 13,
    상기 서버 장치는 상기 추출된 컴퍼니 키와 상기 미리 저장된 컴퍼니 키가 동일하지 않은 경우에는 상기 업데이트 정보를 송신한 송신단으로 업데이트 거부 메시지를 전송하는 것을 특징으로 하는 소프트웨어 보호수단을 제공하기 위한 네트워크 시스템.And the server apparatus transmits an update rejection message to a transmitting end that transmits the update information when the extracted company key and the pre-stored company key are not the same.
  15. 공개키 암호화 방식으로 암호화된 업데이트 정보를 수신하는 수신부;A receiving unit which receives update information encrypted by a public key encryption method;
    상기 수신된 업데이트 정보를 미리 저장된 개인키에 의하여 해독하는 암호 해독부;A decryption unit for decrypting the received update information with a private key stored in advance;
    상기 해독된 정보로부터 컴퍼니 키를 추출하는 컴퍼니 키 추출부; 및A company key extracting unit for extracting a company key from the decrypted information; And
    상기 추출된 컴퍼니 키와 미리 저장된 컴퍼니 키를 비교하여 운용 소프트웨어의 업데이트를 결정하는 업데이트 수행부를 포함하는 네트워크 시스템.And an update execution unit for comparing the extracted company key with a previously stored company key to determine an update of the operating software.
  16. 제 15 항에 있어서, The method of claim 15,
    상기 업데이트 수행부는 상기 추출된 컴퍼니 키와 상기 미리 저장된 컴퍼니 키가 동일하지 않은 경우에는 상기 업데이트 정보를 송신한 송신단으로 업데이트 거부 메시지를 전송하는 것을 특징으로 하는 소프트웨어 보호수단을 제공하기 위한 네트워크 시스템.And if the extracted company key and the pre-stored company key are not the same, transmitting the update rejection message to a transmitter that has transmitted the update information.
  17. 네트워크 장치의 운용 소프트웨어 및 상기 운용 소프트웨어의 보호 수단을 제공하기 위한 유틸리티를 저장하기 위한 저장 수단;Storage means for storing an operating software of the network device and a utility for providing a protection means of the operating software;
    상기 유틸리티에 의하여 제1 컴퍼니 키를 생성하고 상기 운용 소프트웨어의 업데이트 정보 및 상기 제1 컴퍼니 키를 공개키 암호화 방식으로 암호화 하여 원격지에 설치된 네트워크 장치로 전송하는 판매자 장치; 및A merchant device for generating a first company key by the utility, encrypting the update information of the operating software and the first company key using a public key encryption method, and transmitting the first company key to a remotely installed network device; And
    상기 네트워크 장치에 미리 저장된 개인키로 수신된 암호화 파일을 해독하여 상기 업데이트 정보 및 상기 제1 컴퍼니 키를 추출하고 상기 추출된 제1 컴퍼니 키와 미리 저장된 제2 컴퍼니 키를 비교하여 운용 소프트웨어의 업데이트를 결정하는 서버 장치를 포함하는 소프트웨어 보호수단을 제공하기 위한 네트워크 시스템.Decrypt the encryption file received with the private key previously stored in the network device, extract the update information and the first company key, and compare the extracted first and second company keys to determine the update of the operating software. A network system for providing a software protection means comprising a server device.
  18. 제 17 항에 있어서, The method of claim 17,
    상기 서버 장치는 상기 추출된 제1 컴퍼니 키와 상기 네트워크 장치에 미리 저장된 제2 컴퍼니 키를 비교하여 동일하지 않은 경우에는 운용 소프트웨어의 업데이트를 거부하는 것을 특징으로 하는 소프트웨어 보호수단을 제공하기 위한 네트워크 시스템.The server device compares the extracted first company key with a second company key pre-stored in the network device and rejects an update of the operating software when the server device is not the same. .
KR1020070125164A 2007-12-04 2007-12-04 Method for providing protection means of software, and network SYSTEM performing the same KR100926822B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070125164A KR100926822B1 (en) 2007-12-04 2007-12-04 Method for providing protection means of software, and network SYSTEM performing the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070125164A KR100926822B1 (en) 2007-12-04 2007-12-04 Method for providing protection means of software, and network SYSTEM performing the same

Publications (2)

Publication Number Publication Date
KR20090058405A KR20090058405A (en) 2009-06-09
KR100926822B1 true KR100926822B1 (en) 2009-11-12

Family

ID=40988886

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070125164A KR100926822B1 (en) 2007-12-04 2007-12-04 Method for providing protection means of software, and network SYSTEM performing the same

Country Status (1)

Country Link
KR (1) KR100926822B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001350534A (en) 2000-06-08 2001-12-21 Nec Eng Ltd Method and system for downloading charged software
KR20020070689A (en) * 2001-03-02 2002-09-11 정지혜 The Installing and Executing Method To Use The Chiper Key
KR20030085270A (en) * 2002-04-30 2003-11-05 주식회사 케이티프리텔 Method and system for authenticating a software
KR20070037782A (en) * 2005-10-04 2007-04-09 엘지전자 주식회사 Software authentication apparatus for mobile communication terminal and the method thereof

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001350534A (en) 2000-06-08 2001-12-21 Nec Eng Ltd Method and system for downloading charged software
KR20020070689A (en) * 2001-03-02 2002-09-11 정지혜 The Installing and Executing Method To Use The Chiper Key
KR20030085270A (en) * 2002-04-30 2003-11-05 주식회사 케이티프리텔 Method and system for authenticating a software
KR20070037782A (en) * 2005-10-04 2007-04-09 엘지전자 주식회사 Software authentication apparatus for mobile communication terminal and the method thereof

Also Published As

Publication number Publication date
KR20090058405A (en) 2009-06-09

Similar Documents

Publication Publication Date Title
US20180324168A1 (en) Registry apparatus, agent device, application providing apparatus and corresponding methods
CN103440436B (en) Access system for numeral copyright management and the method for the content from intelligence memory
JP4906854B2 (en) Information processing apparatus, information recording apparatus, information processing system, program update method, program, and integrated circuit
US8677144B2 (en) Secure software and hardware association technique
KR102168392B1 (en) Registry apparatus, agent device, application providing apparatus and corresponding methods
KR101881303B1 (en) Apparatas and method of protecting for application data in a portable terminal
US9425956B2 (en) Method and system for transferring firmware or software to a plurality of devices
EP2058974A1 (en) Key terminal apparatus, lsi for encryption process, unique key producing method, and content system
US9479328B1 (en) Secure key provisioning
JP5097130B2 (en) Information terminal, security device, data protection method, and data protection program
JP2006514321A (en) Architecture for installing encrypted applications
WO2015042981A1 (en) Encryption and decryption processing method, apparatus and device
CN106304040A (en) The management method of Mobile solution, device
CN107005407A (en) Use the TPM of server remote password service
CN110213039B (en) Management method, terminal and server
US20200374271A1 (en) Method and apparatus for operating a connected device using a secure element device
JP6589996B2 (en) Security device and control method
KR100510151B1 (en) Method to securely manage information in database
WO2020048290A1 (en) System and method for issuing certificate
KR100926822B1 (en) Method for providing protection means of software, and network SYSTEM performing the same
KR100522591B1 (en) Method to securely manage information in database
JP2005303370A (en) Semiconductor chip, start program, semiconductor chip program, storage medium, terminal, and information processing method
JP2013190884A (en) License management system and client terminal
KR101711024B1 (en) Method for accessing temper-proof device and apparatus enabling of the method
JP4989806B2 (en) System and method for remote device registration

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

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20131101

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee