KR101618169B1 - 소프트웨어 식별자 생성 방법, 서버 및 서버의 소프트웨어 관리 방법 - Google Patents

소프트웨어 식별자 생성 방법, 서버 및 서버의 소프트웨어 관리 방법 Download PDF

Info

Publication number
KR101618169B1
KR101618169B1 KR1020130148644A KR20130148644A KR101618169B1 KR 101618169 B1 KR101618169 B1 KR 101618169B1 KR 1020130148644 A KR1020130148644 A KR 1020130148644A KR 20130148644 A KR20130148644 A KR 20130148644A KR 101618169 B1 KR101618169 B1 KR 101618169B1
Authority
KR
South Korea
Prior art keywords
software
hash
information
identifier
generating
Prior art date
Application number
KR1020130148644A
Other languages
English (en)
Other versions
KR20150063815A (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 KR1020130148644A priority Critical patent/KR101618169B1/ko
Publication of KR20150063815A publication Critical patent/KR20150063815A/ko
Application granted granted Critical
Publication of KR101618169B1 publication Critical patent/KR101618169B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명의 일 실시 예에 따른 소프트웨어 식별자 생성 방법은 회사명, 제품명, 버전 정보, 사용 언어, 출시일, 실행 파일 크기, 실행 파일 해시, 게시자 및 GUID 중 적어도 하나의 소프트웨어 정보를 수집하는 단계, 회사명을 이용하여 기 설정된 크기의 제1 해시(hash)를 생성하는 단계, 소프트웨어 정보 중 적어도 하나를 이용하여 기 설정된 크기의 제2 해시를 생성하는 단계 및 제1 해시, 제2 해시, 제2 해시 정보 및 해시함수 정보를 포함하는 16 바이트의 크기를 가지는 소프트웨어 식별자를 생성하는 단계를 포함한다.

Description

소프트웨어 식별자 생성 방법, 서버 및 서버의 소프트웨어 관리 방법{SOFTWARE IDENTIFIER GENERATING METHOD, SERVER AND SOFTERWARE MANAGING METHOD THEREOF}
본 발명은 소프트웨어를 식별할 수 있는 소프트웨어 식별자 생성 방법 및 소프트웨어 식별자를 이용하여 소프트웨어를 관리하는 서버 및 서버의 소프트웨어 관리 방법에 관한 것이다.
소프트웨어를 식별하기 위한 식별자로 GUID(Globally Unique Identifier) 또는 UUID(Universally Unique Identifier)가 사용되고 있다. GUID 또는 UUID는 고유성을 완벽하게 보장할 수는 없으나 실제 사용상에서 중복된 가능성이 거의 없다고 인정되기 때문에 많이 사용되고 있다.
이러한 GUID 또는 UUID는 특정 시스템상에서 고유하게 인식될 수 있으나 다른 시스템과 통합되는 경우에는 동일한 GUID 또는 UUID를 가지더라도 다른 소프트웨어를 의미할 수 있다. 또한, GUID 또는 UUID는 식별자를 생성할 때마다 고유의 식별자가 생성되게 된다.
한편, 소프트웨어를 효율적으로 관리하기 위해서는 시스템에 관계없이 특정 소프트웨어를 대표하는 고유의 식별자를 생성할 필요성이 있다. 또한, 소프트웨어의 관리 목적 등에 적합한 소프트웨어 식별자를 생성할 필요성이 있다.
본 발명의 목적은 시스템에 관계없이 동일한 식별자를 가질 수 있으며, 사용 목적에 적합한 소프트웨어 식별자를 생성할 수 있는 소프트웨어 식별자 생성 방법을 제공함에 있다.
또한, 생성된 소프트웨어 식별자를 이용하여 소프트웨어를 관리하는 서버 및 서버의 소프트웨어 관리 방법을 제공함에 있다.
본 발명의 일 실시 예에 따른 소프트웨어 식별자 생성 방법은, 회사명, 제품명, 버전 정보, 사용 언어, 출시일, 실행 파일 크기, 실행 파일 해시, 게시자 및 GUID(Globally Unique Identifier) 중 적어도 하나의 소프트웨어 정보를 수집하는 단계, 상기 회사명을 이용하여 기 설정된 크기의 제1 해시(hash)를 생성하는 단계, 상기 소프트웨어 정보 중 적어도 하나를 이용하여 기 설정된 크기의 제2 해시를 생성하는 단계 및 상기 제1 해시, 상기 제2 해시, 제2 해시 정보 및 해시함수 정보를 포함하는 16 바이트의 크기를 가지는 소프트웨어 식별자를 생성하는 단계를 포함한다.
여기서, 상기 제1 해시는 4 바이트, 상기 제2 해시는 10 바이트, 상기 제2 해시 정보 및 상기 해시함수 정보는 각각 1 바이트의 크기를 가질 수 있다.
그리고, 상기 소프트웨어 식별자는, 32개의 16진수로 표시될 수 있다.
한편, 본 발명의 일 실시 예에 따른 컴퓨터 판독 가능 기록 매체는 상술한 소프트웨어 식별자 생성 방법을 수행하는 프로그램이 기록될 수 있다.
그리고, 본 발명의 일 실시 예에 따른 서버는 상기 소프트웨어 식별자를 저장할 수 있다.
본 발명의 일 실시 예에 따른 서버의 소프트웨어 관리 방법은, 상술한 소프트웨어 식별자 생성 방법에 의해 생성된 소프트웨어 식별자, 소프트웨어 정보 및 소프트웨어 관리 정보를 데이터베이스화하여 저장하는 단계, 단말 장치로부터 소프트웨어 식별자 생성 방법에 의해 생성된 소프트웨어 식별자를 수신하는 단계, 상기 데이터베이스에서 상기 수신된 소프트웨어 식별자와 동일한 소프트웨어 식별자를 검색하는 단계 및 상기 소프트웨어 식별자가 검색되면 상기 단말 장치로 소프트웨어 관리 정보를 전송하는 단계를 포함할 수 있다.
여기서, 상기 소프트웨어 관리 정보는, 상기 소프트웨어의 위험 등급, 라이센스 보유 여부, 위변조 여부, 설치 허용 여부 및 상용 소프트웨어 여부 중 적어도 하나를 포함할 수 있다.
그리고, 상기 서버의 소프트웨어 관리 방법은, 데이터베이스에서 상기 수신된 소프트웨어 식별자가 검색되지 않으면 상기 단말 장치로 소프트웨어 정보를 요청하는 단계 및 상기 단말 장치로부터 상기 소프트웨어 정보를 수신하여 상기 소프트웨어 식별자와 함께 상기 데이터베이스에 추가하는 단계를 더 포함할 수 있다.
이상과 같은 본 발명의 다양한 실시 예에 따르면 소프트웨어 정보에 기초하여 생성되므로 시스템에 관계없이 동일한 값을 가지는 소프트웨어 식별자를 생성할 수 있다. 또한, 기존에 소프트웨어를 식별하기 위해 사용되는 GUID 또는 UUID와 호환될 수 있으며 사용 목적에 적합한 다양한 소프트웨어 식별자를 생성할 수 있다.
도 1은 본 발명의 일 실시 예에 따른 소프트웨어 식별자 생성 방법을 설명하기 위한 흐름도이다.
도 2는 본 발명의 일 실시 예에 따른 소프트웨어 관리 시스템의 구성을 나타내는 도면이다.
도 3은 본 발명의 일 실시 예에 따른 소프트웨어 관리 시스템의 소프트웨어 관리 방법을 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시 예에 따른 서버의 소프트웨어 관리 방법을 설명하기 위한 흐름도이다.
이하에서, 첨부한 도면을 참조하여 본 발명에 대해 구체적으로 설명한다.
도 1은 본 발명의 일 실시 예에 따른 소프트웨어 식별자 생성 방법을 설명하기 위한 흐름도이다.
본 발명의 일 실시 예에 따른 소프트웨어 식별자 생성 방법은 적어도 하나의 소프트웨어가 설치 또는 저장된 전자 장치에 의해 수행될 수 있다.
도 1을 참조하면 먼저 소프트웨어 정보를 수집한다(S110). 구체적으로, 회사명, 제품명, 버전 정보, 사용 언어, 출시일 실행 파일 크기, 실행 파일 해시, 게시자, GUID(Globally Unique Identifier) 중 적어도 하나의 소프트웨어 정보를 수집할 수 있다.
소프트웨어 정보가 수집되면 회사명을 이용하여 기 설정된 크기의 제1 해시(hash)를 생성할 수 있다(S120). 예를 들어, 제1 해시는 4 바이트의 크기를 가질 수 있다. 해시값의 특성상 동일한 회사에서 제작된 소프트웨어에 대해서는 동일한 제1 해시가 생성될 수 있다.
그리고, 수집된 소프트웨어 정보 중 적어도 하나를 이용하여 기 설정된 크기의 제2 해시를 생성한다(S130). 예를 들어, 제2 해시는 10 바이트의 크기를 가질 수 있다. 제2 해시는 회사명을 제외한 소프트웨어 정보를 이용하여 생성될 수 있다.
소프트웨어 식별자의 생성 목적에 따라 제2 해시를 생성할 때 포함되는 소프트웨어 정보가 달라질 수 있다. 예를 들어, 소프트웨어의 위변조 여부를 확인하기 위해 소프트웨어 식별자를 생성하는 경우에는 실행 파일 해시를 포함하여 제2 해시를 생성할 수 있다. 그리고, 버전과 관계없이 한국에 출시된 특정 소프트웨어를 식별하기 위해 소프트웨어 식별자를 생성하는 경우에는 제품명 및 언어를 포함하여 제2 해시를 생성할 수 있다. 또한, 소프트웨어의 라이센스 보유 여부를 확인하기 위해 소프트웨어 식별자를 생성하는 경우에는 GUID 또는 버전 정보를 포함하여 제2 해시를 생성할 수 있다.
한편, 버전 정보는 일반적으로 주 버전 번호(major release), 부 버전 번호(minor release), 패치 번호 등을 포함할 수 있다. 제2 해시를 생성할 때 소프트웨어 버전 정보가 포함되는 경우 모든 버전 정보를 포함할 수도 있으나 버전 정보의 일부만이 포함될 수도 있다. 예를 들어, 주 버전 번호만이 포함되거나 주 버전 번호 및 부 버전 번호만이 포함될 수 있다.
이후, 제1 해시, 제2 해시, 제2 해시 정보 및 해시함수 정보를 포함하는 16 바이트의 크기를 가지는 소프트웨어 식별자를 생성한다(S140). 여기서, 소프트웨어 식별자의 제1 해시는 4 바이트, 제2 해시는 10 바이트, 제2 해시 정보 및 해시함수 정보는 각각 1 바이트의 크기를 가질 수 있다.
소프트웨어 식별자는 32개의 16진수로 표시될 수 있다. 그리고, 소프트웨어 식별자를 표시하는 32개의 문자는 8-4-4-4-12와 같이 5개의 그룹으로 나누어져 표시될 수 있으며 각 그룹은 하이픈(hyphen)으로 연결될 수 있다. 또한, 소프트웨어 식별자의 시작과 끝에 중괄호가 추가될 수 있다.
예를 들어, 소프트웨어 식별자는 {231e2310-e31b-31d4-a231-231231231231}과 같은 형태로 표시될 수 있다. 소프트웨어 식별자 중 중괄호 및 하이픈을 제외한 32개의 문자 중 최초 8개의 문자는 제1 해시를, 다음 20개의 문자는 제2 해시를, 다음 2개의 문자는 제2 해시 정보를, 다음 2개의 문자는 해시함수 정보를 나타낸다. 즉, 소프트웨어 식별자는 실제 데이터크기와는 무관하게 표시될 수 있다. 소프트웨어 식별자의 표시 방식을 기존 GUID(Globally Unique Identifier) 또는 UUID(Universally Unique Identifier)의 표시 방식과 일치시킴으로써 기존에 소프트웨어를 식별하기 위해 GUID 또는 UUID를 사용하던 시스템과 호환될 수 있다.
소프트웨어 식별자의 구성 중 제2 해시 정보는 제2 해시가 어떠한 소프트웨어 정보를 이용하여 생성되었는지를 나타내는 정보이다. 제2 해시 정보는 제2 해시를 생성하는데 이용된 소프트웨어 정보의 종류에 따라 상이한 값을 가질 수 있다. 예를 들어, 제2 해시가 제품명, 버전 정보 및 사용 언어를 이용하여 생성된 경우 제2 해시 정보는 01이 될 수 있다. 그리고, 제2 해시가 제품명, 버전 정보, 언어 및 출시일을 이용하여 생성된 경우 제2 해시 정보는 02가 될 수 있다. 제2 해시 정보는 1 바이트의 크기를 가지며 두 개의 16진수를 이용하여 표시되므로 총 256종류의 소프트웨어 정보의 조합을 구분할 수 있다.
해시함수 정보는 제1 해시 및 제2 해시가 어떠한 해시함수를 이용하여 생성되었는지를 나타내는 정보이다. 해시함수는 MD2, MD4, MD5, SHA-1, SHA-224, SHA-256, SHA-384, SHA-512, Adler32, CRC32 등 다양한 종류가 존재한다. 해시함수 정보는 제1 해시 및 제2 해시를 생성하는데 사용된 해시함수의 종류에 따라 상이한 값을 가질 수 있다. 예를 들어, 제1 해시 및 제2 해시가 SHA-1 해시함수에 의해 생성된 경우 해시함수 정보는 01이 될 수 있다. 그리고, 제1 해시 및 제2 해시가 MD2 해시함수에 의해 생성된 경우 해시함수 정보는 02가 될 수 있다. 해시함수 정보는 제2 해시 정보와 마찬가지로 1 바이트의 크기를 가지며 두 개의 16진수를 이용하여 표시되므로 총 256종류의 해시함수를 구분할 수 있다.
한편, 상술한 본 발명의 다양한 실시 예들에 따른 소프트웨어 식별자 생성 방법은 단말 장치에서 실행 가능한 프로그램으로 구현될 수 있다. 그리고, 이러한 프로그램은 다양한 유형의 기록 매체에 저장되어 사용될 수 있다.
구체적으로는, 상술한 방법들을 수행하기 위한 프로그램 코드는, 플레시메모리, ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electronically Erasable and Programmable ROM), 하드디스크, 리무버블 디스크, 메모리 카드, USB 메모리, CD-ROM 등과 같이, 다양한 유형의 비휘발성 기록 매체에 저장될 수 있다.
또한, 상술한 방법에 따라 생성된 소프트웨어 식별자는 데이터베이스화 되어 서버에 저장될 수 있다. 예를 들어, 소프트웨어 식별자는 소프트웨어 정보 및 소프트웨어를 관리하기 위한 각종 정보(예를 들어, 소프트웨어의 위험 등급, 라이센스 보유 여부, 위변조 여부, 설치 허용 여부 및 상용 소프트웨어 여부 등)와 함께 데이터베이스화 되어 서버에 저장될 수 있다.
도 1을 참조하여 설명한 소프트웨어 식별자 생성 방법은 소프트웨어 정보에 기초하여 생성되므로 시스템에 관계없이 동일한 값을 가지는 소프트웨어 식별자를 생성할 수 있다. 또한, 기존에 소프트웨어를 식별하기 위해 GUID 또는 UUID를 사용하던 시스템과 호환될 수 있으며 사용 목적에 적합한 다양한 소프트웨어 식별자를 생성할 수 있다.
도 2는 본 발명의 일 실시 예에 따른 소프트웨어 관리 시스템의 구성을 나타내는 도면이다.
도 2에 따르면 소프트웨어 관리 시스템은 단말 장치(100) 및 서버(200)를 포함한다. 단말 장치(100) 및 서버(200)는 네트워크를 통해 서로 연결될 수 있다.
단말 장치(100)는 소프트웨어 식별자를 생성한다. 구체적으로, 단말 장치(100)는 도 1을 참조하여 설명한 소프트웨어 식별자 생성 방법에 따라 소프트웨어 식별자를 생성할 수 있다. 상술한 바와 같이 단말 장치(100)는 동일한 소프트웨어에 대해서도 소프트웨어 식별자의 생성 목적에 따라 다양한 소프트웨어 식별자를 생성할 수 있다. 그리고, 생성된 소프트웨어 식별자를 서버(200)로 전송할 수 있다.
또한, 단말 장치(100)는 서버(200)로부터 소프트웨어 정보가 요청되면 해당 소프트웨어 정보를 수집하여 서버(200)로 전송할 수 있다.
서버(200)는 소프트웨어 식별자를 데이터베이스화하여 저장한다. 구체적으로, 서버(200)는 도 1을 참조하여 설명한 소프트웨어 식별자 생성 방법에 따라 생성된 소프트웨어 식별자, 소프트웨어 정보 및 소프트웨어 관리 정보를 데이터베이스화 하여 저장할 수 있다. 소프트웨어 관리 정보는 소프트웨어의 위험 등급, 라이센스 보유 여부, 위변조 여부, 설치 허용 여부 및 상용 소프트웨어 여부 등을 포함할 수 있다.
서버(200)는 단말 장치(100)로부터 소프트웨어 식별자가 수신되면 데이터베이스에 수신된 소프트웨어 식별자와 동일한 소프트웨어 식별자가 존재하는지 검색할 수 있다. 서버(200)는 동일한 소프트웨어 식별자가 검색되면 단말 장치(100)로 해당 소프트웨어에 대한 소프트웨어 관리 정보를 전송할 수 있다. 서버(200)는 소프트웨어 식별자의 생성 목적에 따라 상이한 소프트웨어 관리 정보를 전송할 수 있다.
예를 들어, 소프트웨어의 위변조 여부를 확인하기 위해 소프트웨어 식별자가 생성된 경우에는 제2 해시에 실행 파일 해시가 포함될 수 있다. 서버(200)는 소프트웨어 식별자의 제2 해시 정보를 확인하여 실행 파일 해시가 포함된 경우 소프트웨어의 위변조 여부에 대한 정보를 단말 장치(100)로 전송할 수 있다. 또한, 소프트웨어의 라이센스 보유 여부를 확인하기 위해 소프트웨어 식별자가 생성된 경우 제2 해시에 GUID가 포함될 수 있다. 서버(200)는 소프트웨어 식별자의 제2 해시 정보를 확인하여 GUID가 포함된 경우 라이센스 보유 여부에 대한 정보를 단말 장치(100)로 전송할 수 있다.
한편, 서버(200)는 수신된 소프트웨어 식별자와 동일한 소프트웨어 식별자가 검색되지 않으면 단말 장치(100)로 소프트웨어 정보를 요청할 수 있다. 단말 장치(100)로부터 소프트웨어 정보가 수신되면 소프트웨어 식별자와 함께 데이터베이스에 추가할 수 있다. 서버(200)의 관리자는 소프트웨어 정보를 분석하여 소프트웨어 관리 정보를 생성할 수 있다. 생성된 소프트웨어 관리 정보는 소프트웨어 식별자, 소프트웨어 정보와 함께 데이터베이스에 추가될 수 있다.
도 3은 본 발명의 일 실시 예에 따른 소프트웨어 관리 시스템의 소프트웨어 관리 방법을 설명하기 위한 도면이다.
도 3을 참조하면 서버(200)는 소프트웨어 식별자를 이용하여 데이터베이스를 구축한다(S310). 구체적으로, 서버(200)는 도 1을 참조하여 설명한 소프트웨어 식별자 생성 방법에 따라 생성된 소프트웨어 식별자, 소프트웨어 정보 및 소프트웨어 관리 정보를 데이터베이스화 하여 저장할 수 있다. 소프트웨어 관리 정보는 소프트웨어의 위험 등급, 라이센스 보유 여부, 위변조 여부, 설치 허용 여부 및 상용 소프트웨어 여부 등을 포함할 수 있다.
그리고, 단말 장치(100)는 소프트웨어 식별자를 생성한다(S320). 구체적으로, 단말 장치(100)는 도 1을 참조하여 설명한 소프트웨어 식별자 생성 방법에 따라 소프트웨어 식별자를 생성할 수 있다. 그리고, 생성된 소프트웨어 식별자를 서버(200)로 전송한다(S330).
서버(200)는 단말 장치(100)로부터 소프트웨어 식별자가 수신되면 데이터베이스에 수신된 소프트웨어 식별자와 동일한 소프트웨어 식별자가 존재하는지 검색한다(S340).
서버(200)는 동일한 소프트웨어 식별자가 검색되면(S340-Y), 단말 장치(100)로 해당 소프트웨어에 대한 소프트웨어 관리 정보를 전송한다(S350). 서버(200)는 소프트웨어 식별자의 생성 목적에 따라 상이한 소프트웨어 관리 정보를 전송할 수 있다.
그리고, 서버(200)는 동일한 소프트웨어 식별자가 검색되지 않으면(S340-N), 단말 장치(100)로 소프트웨어 정보를 요청한다(S360).
단말 장치(100)는 서버(200)로부터 소프트웨어 정보가 요청되면 해당 소프트웨어 정보를 수집하여 서버(200)로 전송한다(S370).
서버(200)는 단말 장치(100)로부터 소프트웨어 정보가 수신되면 소프트웨어 식별자와 함께 데이터베이스에 추가한다(S380). 서버(200)의 관리자는 소프트웨어 정보를 분석하여 소프트웨어 관리 정보를 생성할 수 있다. 생성된 소프트웨어 관리 정보는 소프트웨어 식별자, 소프트웨어 정보와 함께 데이터베이스에 추가될 수 있다.
도 4는 본 발명의 일 실시 예에 따른 서버의 소프트웨어 관리 방법을 설명하기 위한 흐름도이다.
도 4를 참조하면 서버(200)는 소프트웨어 식별자를 이용하여 데이터베이스를 구축한다(S410). 구체적으로, 서버(200)는 도 1을 참조하여 설명한 소프트웨어 식별자 생성 방법에 따라 생성된 소프트웨어 식별자, 소프트웨어 정보 및 소프트웨어 관리 정보를 데이터베이스화 하여 저장할 수 있다. 소프트웨어 관리 정보는 소프트웨어의 위험 등급, 라이센스 보유 여부, 위변조 여부, 설치 허용 여부 및 상용 소프트웨어 여부 등을 포함할 수 있다.
그리고, 단말 장치(100)로부터 소프트웨어 식별자를 수신한다(S420). 서버(200)는 소프트웨어 식별자가 수신되면 데이터베이스에 수신된 소프트웨어 식별자와 동일한 소프트웨어 식별자가 존재하는지 검색한다(S430).
서버(200)는 동일한 소프트웨어 식별자가 검색되면(S430-Y), 단말 장치(100)로 해당 소프트웨어에 대한 소프트웨어 관리 정보를 전송한다(S440). 서버(200)는 소프트웨어 식별자의 생성 목적에 따라 상이한 소프트웨어 관리 정보를 전송할 수 있다.
그리고, 서버(200)는 동일한 소프트웨어 식별자가 검색되지 않으면(S430-N), 단말 장치(100)로 소프트웨어 정보를 요청한다(S450). 그리고, 단말 장치(100)로부터 소프트웨어 정보를 수신한다(S460). 소프트웨어 정보가 수신되면 소프트웨어 식별자와 함께 데이터베이스에 추가한다(S470). 서버(200)의 관리자는 소프트웨어 정보를 분석하여 소프트웨어 관리 정보를 생성할 수 있다. 생성된 소프트웨어 관리 정보는 소프트웨어 식별자, 소프트웨어 정보와 함께 데이터베이스에 추가될 수 있다.
이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 이해되어져서는 안 될 것이다.
100 : 단말 장치 200 : 서버

Claims (13)

  1. 단말 장치의 소프트웨어 식별자 생성 방법에 있어서,
    회사명, 제품명, 버전 정보, 사용 언어, 출시일, 실행 파일 크기, 실행 파일 해시, 게시자 및 GUID(Globally Unique Identifier) 중 적어도 하나의 소프트웨어 정보를 수집하는 단계;
    상기 회사명을 이용하여 기 설정된 크기의 제1 해시(hash)를 생성하는 단계;
    소프트웨어 식별자의 생성 목적에 따라 상기 회사명을 제외한 소프트웨어 정보 중 적어도 하나를 이용하여 기 설정된 크기의 제2 해시를 생성하는 단계; 및
    상기 제1 해시, 상기 제2 해시, 상기 제2 해시를 생성하는데 이용된 소프트웨어 정보를 나타내는 제2 해시 정보 및 해시함수 정보를 포함하는 16 바이트의 크기를 가지는 소프트웨어 식별자를 생성하는 단계;를 포함하며,
    상기 제1 해시는 4 바이트, 상기 제2 해시는 10 바이트, 상기 제2 해시 정보 및 상기 해시함수 정보는 각각 1 바이트의 크기를 가지는 것을 특징으로 하는 소프트웨어 식별자 생성 방법.
  2. 삭제
  3. 단말 장치의 소프트웨어 식별자 생성 방법에 있어서,
    회사명, 제품명, 버전 정보, 사용 언어, 출시일, 실행 파일 크기, 실행 파일 해시, 게시자 및 GUID(Globally Unique Identifier) 중 적어도 하나의 소프트웨어 정보를 수집하는 단계;
    상기 회사명을 이용하여 기 설정된 크기의 제1 해시(hash)를 생성하는 단계;
    소프트웨어 식별자의 생성 목적에 따라 상기 회사명을 제외한 소프트웨어 정보 중 적어도 하나를 이용하여 기 설정된 크기의 제2 해시를 생성하는 단계; 및
    상기 제1 해시, 상기 제2 해시, 상기 제2 해시를 생성하는데 이용된 소프트웨어 정보를 나타내는 제2 해시 정보 및 해시함수 정보를 포함하는 16 바이트의 크기를 가지는 소프트웨어 식별자를 생성하는 단계;를 포함하며,
    상기 소프트웨어 식별자는,
    32개의 16진수로 표시되는 것을 특징으로 하는 소프트웨어 식별자 생성 방법.
  4. 제1항에 있어서,
    상기 제2 해시는,
    제품명, 버전 정보 및 사용 언어를 이용하여 생성되는 것을 특징으로 하는 소프트웨어 식별자 생성 방법.
  5. 제1항에 있어서,
    상기 제2 해시는,
    제품명, 버전 정보, 사용 언어 및 출시일을 이용하여 생성되는 것을 특징으로 하는 소프트웨어 식별자 생성 방법.
  6. 단말 장치의 소프트웨어 식별자 생성 방법에 있어서,
    회사명, 제품명, 버전 정보, 사용 언어, 출시일, 실행 파일 크기, 실행 파일 해시, 게시자 및 GUID(Globally Unique Identifier) 중 적어도 하나의 소프트웨어 정보를 수집하는 단계;
    상기 회사명을 이용하여 기 설정된 크기의 제1 해시(hash)를 생성하는 단계;
    소프트웨어 식별자의 생성 목적에 따라 상기 회사명을 제외한 소프트웨어 정보 중 적어도 하나를 이용하여 기 설정된 크기의 제2 해시를 생성하는 단계; 및
    상기 제1 해시, 상기 제2 해시, 상기 제2 해시를 생성하는데 이용된 소프트웨어 정보를 나타내는 제2 해시 정보 및 해시함수 정보를 포함하는 16 바이트의 크기를 가지는 소프트웨어 식별자를 생성하는 단계;를 포함하며,
    제품명, 버전 정보, 사용 언어 및 실행 파일 크기를 이용하여 생성되는 것을 특징으로 하는 소프트웨어 식별자 생성 방법.
  7. 제1항에 있어서,
    상기 제2 해시는,
    제품명, 버전 정보, 사용 언어 및 실행 파일 해시를 이용하여 생성되는 것을 특징으로 하는 소프트웨어 식별자 생성 방법.
  8. 제1항에 있어서,
    상기 제2 해시는,
    제품명, GUID 및 사용 언어를 이용하여 생성되는 것을 특징으로 하는 소프트웨어 식별자 생성 방법.
  9. 제1항 및 제3항 내지 제8항 중 어느 한 항에 따른 방법을 수행하는 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.
  10. 제1항 및 제3항 내지 제8항 중 어느 한 항에 따른 방법에 의해 생성된 소프트웨어 식별자를 저장하는 서버.
  11. 제1항 및 제3항 내지 제8항 중 어느 한 항에 따른 방법에 의해 생성된 소프트웨어 식별자, 소프트웨어 정보 및 소프트웨어 관리 정보를 데이터베이스화하여 저장하는 단계;
    단말 장치로부터 제1항 및 제3항 내지 제8항 중 어느 한 항에 따른 방법에 의해 생성된 소프트웨어 식별자를 수신하는 단계;
    상기 데이터베이스에서 상기 수신된 소프트웨어 식별자와 동일한 소프트웨어 식별자를 검색하는 단계; 및
    상기 소프트웨어 식별자가 검색되면 상기 단말 장치로 소프트웨어 관리 정보를 전송하는 단계;를 포함하는 것을 특징으로 하는 서버의 소프트웨어 관리 방법.
  12. 제11항에 있어서,
    상기 소프트웨어 관리 정보는,
    상기 소프트웨어의 위험 등급, 라이센스 보유 여부, 위변조 여부, 설치 허용 여부 및 상용 소프트웨어 여부 중 적어도 하나인 것을 특징으로 하는 서버의 소프트웨어 관리 방법.
  13. 제11항에 있어서,
    상기 데이터베이스에서 상기 수신된 소프트웨어 식별자가 검색되지 않으면 상기 단말 장치로 소프트웨어 정보를 요청하는 단계; 및
    상기 단말 장치로부터 상기 소프트웨어 정보를 수신하여 상기 소프트웨어 식별자와 함께 상기 데이터베이스에 추가하는 단계;를 더 포함하는 것을 특징으로 하는 서버의 소프트웨어 관리 방법.
KR1020130148644A 2013-12-02 2013-12-02 소프트웨어 식별자 생성 방법, 서버 및 서버의 소프트웨어 관리 방법 KR101618169B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130148644A KR101618169B1 (ko) 2013-12-02 2013-12-02 소프트웨어 식별자 생성 방법, 서버 및 서버의 소프트웨어 관리 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130148644A KR101618169B1 (ko) 2013-12-02 2013-12-02 소프트웨어 식별자 생성 방법, 서버 및 서버의 소프트웨어 관리 방법

Publications (2)

Publication Number Publication Date
KR20150063815A KR20150063815A (ko) 2015-06-10
KR101618169B1 true KR101618169B1 (ko) 2016-05-04

Family

ID=53505502

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130148644A KR101618169B1 (ko) 2013-12-02 2013-12-02 소프트웨어 식별자 생성 방법, 서버 및 서버의 소프트웨어 관리 방법

Country Status (1)

Country Link
KR (1) KR101618169B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102011363B1 (ko) * 2018-03-08 2019-08-16 최승환 블록체인 인증을 이용한 소프트웨어 인증 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011150524A (ja) * 2010-01-21 2011-08-04 Yokogawa Electric Corp ソフトウェア実行システム
KR101081729B1 (ko) * 2003-07-07 2011-11-08 로비 솔루션스 코포레이션 저작권 침해를 제어하고 쌍방향 컨텐츠를 인에이블시키기 위한 재프로그램가능한 보안

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101081729B1 (ko) * 2003-07-07 2011-11-08 로비 솔루션스 코포레이션 저작권 침해를 제어하고 쌍방향 컨텐츠를 인에이블시키기 위한 재프로그램가능한 보안
JP2011150524A (ja) * 2010-01-21 2011-08-04 Yokogawa Electric Corp ソフトウェア実行システム

Also Published As

Publication number Publication date
KR20150063815A (ko) 2015-06-10

Similar Documents

Publication Publication Date Title
CN108446407B (zh) 基于区块链的数据库审计方法和装置
US11849023B2 (en) Verifiable redactable audit log
CN106100902B (zh) 云端指标监控方法和装置
US8880905B2 (en) Methods for processing private metadata
JP7422366B2 (ja) 物流追跡および配送元特定のための方法、アプリケーションサーバ、ブロックチェーンノードおよび媒体
US20140006796A1 (en) System and method for identifying software changes
JP2017526253A (ja) 端末識別子を促進する方法及びシステム
JP2012089094A5 (ko)
EP2626819A1 (en) Method and system for documentation of digital archives
CN108880820B (zh) 代码管理方法和装置
CN112685436B (zh) 一种溯源信息处理方法及装置
CN104239353B (zh) 一种web分类控制和日志审计的方法
JP7278299B2 (ja) データ管理サーバ、データ利用サーバ、データ流通システム、データ管理方法及びプログラム
CN111090385A (zh) 一种基于区块链的数据管理方法及装置
RU2010128527A (ru) Способ и система управления дополнительными функциями и носитель записи для цифрового устройства
JP2009199513A (ja) 違法情報検出装置、違法情報検出方法、及び違法情報検出プログラム
CN104766025A (zh) 分布式文件***的拟态防篡改方法
KR101222178B1 (ko) 악성코드 dna 및 메타데이터 자동 관리 시스템
KR101618169B1 (ko) 소프트웨어 식별자 생성 방법, 서버 및 서버의 소프트웨어 관리 방법
CN103944874A (zh) 高复用性的云存储数据存储验证方法及***
KR20170137756A (ko) 다수의 중첩하는 소스들로부터 대량의 시간적 데이터의 어그리게이트
CN112214801A (zh) 电子取证管理方法、电子取证设备和计算机可读存储介质
US8095980B2 (en) Detecting malicious behavior in data transmission of a de-duplication system
CN113282550A (zh) 文件的预览方法、装置、计算机设备及存储介质
CN112667661B (zh) 一种溯源信息关联查询方法及装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant