KR100711722B1 - 이동통신 단말기의 소프트웨어 인증 장치 및 그 방법 - Google Patents

이동통신 단말기의 소프트웨어 인증 장치 및 그 방법 Download PDF

Info

Publication number
KR100711722B1
KR100711722B1 KR1020050092782A KR20050092782A KR100711722B1 KR 100711722 B1 KR100711722 B1 KR 100711722B1 KR 1020050092782 A KR1020050092782 A KR 1020050092782A KR 20050092782 A KR20050092782 A KR 20050092782A KR 100711722 B1 KR100711722 B1 KR 100711722B1
Authority
KR
South Korea
Prior art keywords
software
authentication information
mobile communication
communication terminal
authentication
Prior art date
Application number
KR1020050092782A
Other languages
English (en)
Other versions
KR20070037782A (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 KR1020050092782A priority Critical patent/KR100711722B1/ko
Priority to CN2006101524832A priority patent/CN1946222B/zh
Publication of KR20070037782A publication Critical patent/KR20070037782A/ko
Application granted granted Critical
Publication of KR100711722B1 publication Critical patent/KR100711722B1/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/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/572Secure firmware programming, e.g. of basic input output system [BIOS]
    • 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/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72406User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by software upgrading or downloading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Abstract

본원발명은 이동통신 단말기의 소프트웨어 인증에 관한 것으로서, 더욱 상세하게는 이동통신 단말기로 다운로드 된 소프트웨어에 대하여 설치 이전에 소스코드에 대한 무결성을 확인함으로써 바이러스 감염 여부 등을 확인할 수 있도록 하는 이동통신 단말기의 소프트웨어 인증 장치 및 그 방법에 관한 것이다.
상술한 본원발명의 이동통신 단말기의 소프트웨어 인증 장치는, 통신망 또는 유무선 근거리 통신 인터페이스를 통해 다운로드된 소프트웨어와 상기 소프트웨어에 대한 인증정보를 저장하는 단말기저장부와; 상기 단말기저장부에 저장된 소프트웨어의 설치 이전에 상기 인증정보를 이용하여 상기 소프트웨어의 코드 변경 유무를 검출하는 것에 의해 소프트웨어의 무결성을 인증하는 소프트웨어인증부를 포함하여 구성되어, 이동통신 단말기로 다운로드된 소프트웨어의 해시 값을 이용하여 무결성을 검증하는 것에 의해 다운로드된 소프트웨어의 바이러스 감염 여부를 판단할 수 있도록 하는 것을 특징으로 한다.
이동통신 단말기, 소프트웨어, 인증서, 첵섬(checksum), 해시함수

Description

이동통신 단말기의 소프트웨어 인증 장치 및 그 방법{Software authentication apparatus for mobile communication terminal and the method thereof}
도 1은 종래 기술의 자바게임서비스 제공시스템의 일 예를 나타내는 블록 구성도이고,
도 2는 본원 발명의 이동통신 단말기의 소프트웨어 인증 장치의 블록구성도이며,
도 3은 본원 발명의 이동통신 단말기의 소프트웨어 인증 방법의 상세 처리과정을 나타내는 순서도이고,
도 4는 본원 발명의 일 실시 예로서 본원 발명이 적용된 자바게임 서비스 시스템의 블록 구성도이다.
*도면의 주요 부호에 대한 설명*
1, 10, 100: 이동통신 단말기 6: 왑서버
2, 101: 왑브라우저 3: JAM
4: JVM 5: 저장부
7: 왑관리부 8, 202: 게임관리부
9, 203: 가입자DB
11: 단말기 통신인터페이스부 12: 소프트웨어 인증부
13: 단말기저장부
20: 소프트웨어 제공 서버
21: 서버통신인터페이스부 22: 소프트웨어인증정보생성부
23: 서버저장부
102: 자바실행부 103: 자바소스 인증부
200: 자바게임서버
204: 자바소스인증정보생성부 205: 서버저장부
본원발명은 이동통신 단말기의 소프트웨어 인증에 관한 것으로서, 더욱 상세하게는 이동통신 단말기로 다운로드 된 소프트웨어에 대하여 설치 이전에 소스코드에 대한 무결성을 확인함으로써 바이러스 감염 여부 등을 확인할 수 있도록 하는 이동통신 단말기의 소프트웨어 인증 장치 및 그 방법에 관한 것이다.
일반적인 이동통신 단말기들은 음성 위주의 통신수단 기능에 부가하여, HDML(Hnadheld Device Markup Language), WML(Wireless Markup Language), 왑(WAP : Wireless Application Protocol)을 기반으로 하는 다양한 온라인 서비스, 전자사전 기능, 네비게이터 기능 등을 수행할 수 있는 다용도 통신장치로 발전하고 있다.
상술한 바와 같은 이동통신 단말기의 부가 기능을 위한 소프트웨어는 시간이 지남에 따라 향상 발전되어 새로운 버젼의 소프트웨어로 업그레이드된다.
따라서, 이동통신 단말기의 추가적인 부가 기능을 위하여 또는 사용중인 부가 기능의 업그레이드를 위하여 해당 서비스 기능의 실행을 위한 소프트웨어를 통신망 또는 유무선 근거리통신인터페이스를 통해 다운로드 받아서 이동통신 단말기에 설치하는 일이 빈번하게 발생하고 있다.
도 1은 상술한 바와 같은 이동통신 단말기의 통신망을 통한 소프트웨어 다운로드를 위한 시스템의 일 예로서 이동통신 단말기로 온라인 자바게임 서비스를 제공하기 위한 시스템의 구성을 나타내는 도면이다.
도 1에 도시된 바와 같이, 이동통신 단말기로 온라인 자바게임 서비스를 제공하기 위한 시스템은 온라인 게임을 수행하기 위한 자바(JAVA) 게임을 구동할 수 있는 이동통신 단말기와 JAVA 게임이 실행되는 이동통신 단말기로 JAVA 게임의 접속지원 및 온라인 게임을 수행할 수 있도록 하는 왑서버(WAP server : Wireless Application Protocol server)(6)가 통신망(30)을 통해 연결 구성된다.
상술한 이동통신 단말기는 왑서버에 접속하여 데이터통신을 수행할 수 있도록 구성되는 왑브라우저(WAP browser)(2)와 자바게임의 구동을 관리하는 자바어플리케이션 관리자 프로그램(JAM : JAVA Application Manager)(3) 및 자바게임을 실행할 수 있도록 하는 자바가상머신(JVM : JAVA Virtual Machine)(4)을 내장한다.
상술한 왑브라우저(2)는 이동통신 단말기가 왑서버에 접속하여 자바프로그램을 다운로드 받을 수 있도록 하고, 상술한 JAM(3)은 왑브라우저에 의해 다운로드된 자바프로그램에 대한 컴파일을 수행하여 이동통신 단말기에 설치하며, 자바가상머 신(JVM)(4)은 컴파일된 자바프로그램의 코드를 읽어 들여 실행하는 것에 의해 사용자가 자바게임을 실행할 수 있도록 한다.
상술한 왑서버(6)는 이동통신 단말기로 왑 접속 서비스를 제공하는 왑관리부(7)와; 이동통신 단말기의 온라인 게임을 위한 접속 관리 및 게임중인 다수의 이동통신 단말기 간의 게임유지 및 게임정보 데이터의 송수신을 관리하는 게임관리부(8)와 가입자 정보를 관리하는 가입자DB(9)를 포함하여 구성된다.
상술한 바와 같은 자바게임서비스 제공 시스템에서 이동통신 단말기는 왑서버에 접속한 후 자바프로그램을 다운로드 받아 설치한 후 통신망을 통한 온라인 자바게임서비스 또는 단말기 단독의 오프라인 자바게임을 실행할 수 있게 된다.
그러나 상술한 바와 같은 종래기술의 이동통신 단말기의 소프트웨어 다운로드 과정은 이동통신 단말기가 통신망을 통해 서버로부터 또는 유무선 근거리통신인터페이스를 통해 컴퓨터로부터 또는 외장형 메모리 등의 이동식 저장장치에 의해 필요한 소프트웨어를 다운로드 받을 수 있을 뿐 해당 소프트웨어에 대한 검증을 수행하지는 못하였다.
즉, 종래기술의 이동통신 단말기는 통신망을 통해 필요한 소프트웨어를 다운로드 받아서 설치하는 경우 이동통신 단말기의 웜바이러스 등과 같은 바이러스 프로그램 또는 개인 정보 유출을 위한 해킹프로그램 등에 의해 해당 소프트웨어가 감염되었는지 등의 여부를 확인할 수 없었다. 그리고 바이러스가 감염된 소프트웨어가 설치된 경우에도 이동통신 단말기 자체에는 바이러스 검색 기능이 없어 일반 사용자는 자신의 이동통신 단말기가 바이러스에 감염되었는지의 여부를 확인할 수 없 었다.
따라서, 종래기술의 이동통신 단말기는 바이러스 프로그램에 무방비 상태로 노출되어 있어 바이러스 프로그램에 의해 이동통신 단말기가 오동작하는 문제점과, 더욱 심각하게는 소프트웨어에 포함된 바이러스 프로그램에 의해 개인 정보를 외부의 타인이 손쉽게 얻을 수 있는 위험성을 항상 가지고 있어 개인에 대한 신뢰성 있는 보안성을 제공하지 못하는 문제점을 가진다.
따라서, 본원발명은 상술한 종래기술의 문제점을 해결하기 위한 것으로서, 이동통신 단말기로 소프트웨어가 다운로드되는 경우, 해당 소프트웨어에 대한 코드의 변경 유무를 확인할 수 있는 해시(hash) 값, 첵섬(checksum) 등의 인증정보를 부가하여 전송함으로써 이동통신 단말기가 소프트웨어 코드의 무결성을 확인하는 것에 의해 바이러스 등의 감염된 소프트웨어를 검출할 수 있도록 하는 이동통신 단말기의 소프트웨어 인증 장치 및 그 방법을 제공하는 것을 그 목적으로 한다.
상술한 목적을 달성하기 위한 본원발명의 이동통신 단말기의 소프트웨어 인증 장치는, 통신망 또는 유무선 근거리 통신 인터페이스를 통해 다운로드된 소프트웨어와 상기 소프트웨어에 대한 인증정보를 저장하는 단말기저장부와; 상기 단말기저장부에 저장된 소프트웨어의 설치 이전에 상기 인증정보를 이용하여 상기 소프트웨어의 코드 변경 유무를 검출하는 것에 의해 소프트웨어의 무결성을 인증하는 소프트웨어인증부를 포함하여 구성되는 것을 특징으로 한다.
상술한 목적을 달성하기 위한 본원발명의 이동통신 단말기의 소프트웨어 인증장치는, 통신망을 통해 소프트웨어 제공 서버에 접속하거나 외부의 컴퓨터 장치에 근거리통신방식에 의해 접속되어 소프트웨어와 상기 소프트웨어의 인증정보를 다운로드 받는 단말기통신인터페이스부와; 상기 소프트웨어와 소프트웨어 인증정보를 저장하는 단말기저장부와; 상기 단말기저장부에 저장된 소프트웨어의 설치 이전에 상기 인증정보를 이용하여 상기 소프트웨어의 코드 변경 유무를 검출하는 것에 의해 소프트웨어의 무결성을 인증하는 소프트웨어인증부를 구비한 이동통신 단말기와; 상기 이동통신 단말기의 접속 및 소프트웨어 다운로드를 제어하는 서버통신인터페이스부와; 상기 소프트웨어에 대한 인증정보를 생성하는 소프트웨어인증정보생성부와; 상기 소프트웨어와 상기 소프트웨어에 대한 인증정보를 저장하는 서버저장부를 구비한 소프트웨어제공서버;를 포함하여 구성되는 것을 특징으로 한다.
상기 목적을 달성하기 위한 본원 발명의 이동통신 단말기의 소프트웨어 인증 방법은, 배포대상 이동통신 단말기의 소프트웨어에 대한 무결성 검증을 위한 인증정보를 생성하는 인증정보생성과정과; 상기 소프트웨어와 상기 인증정보를 배포하는 소프트웨어배포과정과; 상기 소프트웨어에 대한 인증정보를 이용하여 상기 소프트웨어 코드의 무결성 여부를 검출하는 소프트웨어인증과정;을 포함하여 이루어지는 것을 특징으로 한다.
상기 인증정보생성과정은, 상기 인증정보에 대한 비밀키에 의한 암호화과정과; 상기 비밀키에 대응되는 공개키를 가지는 인증서를 생성하는 인증서생성과정을 더 포함하여 이루어질 수 있다.
이때, 상기 소프트웨어배포과정은 상기 소프트웨어와 상기 비밀키에 의해 암호화된 인증정보와, 상기 비밀키에 대응되는 공개키를 가지는 인증서를 배포하는 과정이 된다. 상기 소프트웨어배포과정은 상기 소프트웨어에 대한 과금을 위한 과금처리과정을 더 포함하여 이루어질 수 있다.
그리고 상기 소프트웨어인증과정은, 상기 인증서의 공개키를 이용하여 상기 암호화된 인증정보를 복호화하는 복호화과정을 더 포함하여 이루어진다. 또한, 상기 소프트웨어인증과정의 결과 소프트웨어가 변경된 경우에는 소프트웨어배포과정에서 과금처리가 수행되었으면, 소프트웨어의 무결성이 인증되지 않았음을 소프트웨어 제공 서버로 전송하는 것에 의해 해당 소프트웨어에 대한 과금처리를 취소시키는 과금취소과정을 수행하도록 이루어질 수도 있다.
여기서 상기 인증정보는 기지정된 해시 함수에 의한 상기 소프트웨어 코드의 해시 값으로 지정될 수 있다. 그리고 상기 해시 값은 비밀키에 의해 암호화될 수 있으며, 이 경우 상기 인증정보는 상기 비밀키에 의해 암호화된 해시 값과 상기 비밀키에 대응되는 공개키를 사용자에게 배포하기 위하여 상기 공개키를 가지는 인증서를 포함한다.
상기 해시함수는 소프트웨어의 다운로드와 함께 제공되거나 또는 통상적으로 널리 알려진 해시 함수를 사용할 수 있다. 이때, 통상적으로 널리 알려진 해시 함수를 사용하는 경우 사용되는 해시함수는 동통신 단말기와 소프트웨어 제공 서버에 기 저장된다.
상술한 바와 같이 통상적으로 널리 알려진 해시함수를 이용하는 경우 소프트 웨어 제공 서버는 소프트웨어의 다운로드가 발생하는 경우마다 해시 값을 생성한 후 소프트웨어를 배포하거나, 소프트웨어마다 해시 값을 기 생성하여 부가한 후 해시 값을 포함하는 소프트웨어를 배포하도록 동작한다. 그리고 이동통신 단말기는 소프트웨어의 다운로드가 발생하는 경우 기 저장된 해시함수를 이용하여 소프트웨어의 해시 값을 검출하게 된다.
상술한 본원 발명에서 상기 인증정보는 해시 값으로 구현되는 것에 한정되는 것은 아니며, CRC(Cycle Redundancy Check)과 같은 비트열의 오류를 검출할 수 있는 방법 등의 첵섬(checksum)에 의해 소스코드의 변경 여부를 검사할 수 있는 것이면 어느 것이나 인증정보로 사용할 수 있다.
이하, 첨부도면을 참조하여 본원발명을 더욱 상세히 설명한다.
도 2는 본원발명의 이동통신 단말기의 소프트웨어 제공장치를 나타내는 블록 구성도이다.
본원 발명은 이동통신 단말기 자체로 구현될 수 있으며, 이와 달리, 이동통신 단말기(10)와 통신망(30)을 통해 소프트웨어를 제공하는 소프트웨어 제공 서버(20)로 구성될 수 있다.
본원발명이 이동통신 단말기 자체로 구현되는 경우 상기 이동통신 단말기는 도 2에 도시된 바와 같이, 통신망(30) 또는 유무선 근거리 통신 인터페이스(11)를 통해 다운로드된 소프트웨어와 상기 소프트웨어에 대한 인증정보를 저장하는 단말기저장부(13)와; 상기 단말기저장부(13)에 저장된 소프트웨어의 설치 이전에 상기 인증정보를 이용하여 상기 소프트웨어의 코드 변경 유무를 검출하는 것에 의해 소 프트웨어의 무결성을 인증하는 소프트웨어인증부(12)를 포함하여 구성된다.
그리고 본원발명이 이동통신 단말기(10)와 통신망(30)을 통해 소프트웨어를 제공하는 소프트웨어 제공 서버(20)로 구성되는 경우에는, 통신망(30)을 통해 소프트웨어 제공 서버(20)에 접속하거나 외부의 컴퓨터 장치에 근거리통신방식에 의해 접속하여 소프트웨어와 상기 소프트웨어의 인증정보를 다운로드 받는 단말기통신인터페이스부(11)와; 상기 소프트웨어와 소프트웨어 인증정보를 저장하는 단말기저장부(13)와; 상기 단말기저장부(13)에 저장된 소프트웨어의 설치 이전에 상기 인증정보를 이용하여 상기 소프트웨어의 코드 변경 유무를 검출하는 것에 의해 소프트웨어의 무결성을 인증하는 소프트웨어인증부(12)를 구비한 이동통신 단말기(10)와; 상기 이동통신 단말기(10)의 통신망(30)을 통한 접속 및 소프트웨어 다운로드를 제어하는 서버통신인터페이스부(21)와; 상기 소프트웨어에 대한 인증정보를 생성하는 소프트웨어인증정보생성부(21)와; 상기 소프트웨어와 상기 소프트웨어에 대한 인증정보를 저장하는 서버저장부(23)를 구비한 소프트웨어 제공 서버(20);를 포함하여 구성될 수 있다.
상술한 구성에서 상기 단말기통신인터페이스부(11)는 RF부(도면에 미도시)와 통신망(30)을 통해 소프트웨어 제공 서버(20)에 접속한 후 소프트웨어 제공 서버(20)에 저장된 저장정보를 검색하고 다운로드 받을 수 있는 왑브라우저, 또는 사용자 컴퓨터와 근거리 통신을 제공하는 적외선통신수단, 블루투스, 시리얼통신수단과 사용자 인터페이스를 제공하는 근거리통신수단 또는 외장형 메모리 인터페이스 중 적어도 하나 이상을 포함하여 구성될 수 있다.
즉, 상기 이동통신 단말기(10)는 단말기통신인터페이스부(11)를 이용하여 소프트웨어 제공 서버(20) 또는 사용자의 외부 컴퓨터 장치에 접속하거나 또는 외장형 메모리에 의하여 소프트웨어와 소프트웨어 인증정보를 다운로드 받을 수 있다.
상기 소프트웨어인증부(12)는 이동통신 단말기로 다운로드된 소프트웨어의 구동 신호가 입력되는 경우, 저장부(13)에 저장된 해시 함수 또는 소프트웨어의 다운로드시 함께 제공된 해시 함수를 이용하여 소프트웨어의 해시 값을 구하고, 인증정보에 포함된 해시 값과 비교하여 소프트웨어의 무결성을 검사하는 것에 의해 소프트웨어를 인증한다. 이때, 소프트웨어에 포함된 해시 값이 비밀키에 의해 암호화된 경우에는 소프트웨어인증부는 상기 소프트웨어에 대한 인증서에 포함된 공개키를 이용하여 암호화된 해시 값을 복호화하는 과정을 더 수행한다.
상기 단말기저장부(13)는 이동통신 단말기로 다운로드된 소프트웨어와 소프트웨어에 대한 인증정보를 저장하며, 상기 인증정보는 상기 소프트웨어에 대한 해시 값, 해시 값의 암호화한 비밀키 대응되는 공개키를 가지는 인증서, 및 상기 소프트웨어의 해시를 위한 해시함수로 정보 등으로 구성되나 이에 한정되는 것은 아니며 상기 소프트웨어 코드의 변경 유무를 확인할 수 있는 정보이며 어느 것이나 사용될 수 있다.
상기 서버통신인터페이스부(21)는 이동통신 단말기의 통신망(30)을 통한 접속 및 데이터 다운로드를 제공하는 것으로서, 왑서버 엔진 등으로 구현될 수 있다. 즉, 상기 서버통신인터페이스부(21)는 이동통신 단말기의 접속이 있는 경우, 이동통신 단말기 사용자가 소프트웨어 제공 서버(20)에 저장된 정보를 검색할 수 있도 록 하며, 검색된 정보 중 특정 소프트웨어의 다운로드를 요청하는 경우 소프트웨어와 소프트웨어 인증정보를 서버저장부(23)에서 읽어 들여 이동통신 단말기로 전송한다. 그리고 소프트웨어에 대한 과금이 필요한 경우에는 이동통신 단말기 사용자로 하여금 과금에 필요한 정보를 입력하도록 한 후 과금처리를 수행한다. 또한, 소프트웨어를 다운로드 받은 이동통신 단말기로부터 다운로드된 소프트웨어가 변경되었다는 신호를 입력받는 경우에는 해당 소프트웨어에 대하여 수행한 과금처리를 취소시키도록 동작한다.
상기 소프트웨어인증정보생성부(22)는 이동통신 단말기로 배포될 소프트웨어에 대한 인증정보로서의 해시 값의 생성, 생성된 해시 값에 대한 비밀키에 의한 암호화, 비밀키 대응 공개키를 가지는 인증서 생성 및 상기 생성된 정보를 서버저장부(23)에 저장하는 기능 등을 수행한다.
상기 서버저장부(23)는 소프트웨어와, 소프트웨어의 해시 값 생성을 위한 해시함수와, 소프트웨어에 대한 해시 값과 암호화를 위한 비밀키와 공개키 및 공개키를 가지는 인증서를 저장한다.
상술한 바와 같은 구성을 가지는 본원 발명은 이동통신 단말기를 위한 소프트웨어의 배포시, 상기 소프트웨어에 대한 특정 해시 함수를 이용한 해시 값을 포함하여 배포하고, 이동통신 단말기는 상기 해시 함수에 의해 소프트웨어에 대한 해시를 수행하여 해시 값을 연산한 후 소프트웨어의 배포시 제공된 해시 값과 비교하여 소프트웨어 코드에 대한 변경 유무를 확인하는 것에 의해 소프트웨어에 대한 바이러스 유무, 해킹 프로그램의 유무를 확인할 수 있게 된다.
도 3은 상술한 구성을 가지는 본원 발명의 이동통신 단말기의 소프트웨어 인증 방법의 상세 처리과정을 나타내는 순서도이다.
도 3에 도시된 바와 같이 본원 발명은 먼저, 통신망 또는 근거리 통신망을 통해 이동통신 단말기로 배포될 소프트웨어가 있는 경우, 배포될 소프트웨어에 대한 인증정보를 생성한다. 이 때 상기 인증저보는 해당 소프트웨어에 대한 해시 함수를 지정하고, 지정된 해시 함수에 의한 소프트웨어 코드의 해시 값 등으로 이루어진다(S1).
추가로 해시 값 등의 인증정보에 대한 암호화가 필요한 경우 비밀키를 이용하여 해시 값을 암호화하고, 비밀키 대응 공개키를 가지는 인증서를 생성한 후 이를 인증정보에 추가한다. 여기서 인증정보는 상술한 바와 같이 기 지정된 해시 함수에 의한 소프트웨어의 해시 값이 되며 암호화가 수행된 경우에는 암호화된 해시 값과 공개키를 가지는 인증서를 포함한다. 그리고, 해시 함수가 공개되지 않은 경우에는 상기 해시 함수를 더 포함한다(인증서 생성과정)(S2).
상술한 S1 또는 S1 및 S2 과정이 인증정보생성과정이 된다.
상술한 바와 같이 소프트웨어에 대한 인증정보가 생성된 후에 상기 소프트웨어의 배포가 필요한 경우 상기 소프트웨어에 대한 인증정보를 함께 배포한다. 이때 소프트웨어와 인증정보는 통신망을 통해 다운로드하는 것에 의해 이동통신 단말기로 직접 배포되거나, 콤팩트디스크, 하드디스크, 플로피디스크 등의 이동저장장치에 의해 컴퓨터와 근거리 통신 수단을 이용하여 이동통신 단말기로 다운로드 하는 것 또는 외장형 메모리에 의해 배포될 수 있다(소프트웨어배포과정)(S3).
상술한 바와 같은 방식에 의해 소프트웨어와 소프트웨어 인증정보를 다운로드 받은 이동통신 단말기(10)는 소프트웨어와 소프트웨어 인증정보를 저장부에 저장한 후 소프트웨어의 설치 등의 초기 실행 시점에서 소프트웨어 인증정보를 이용하여 소프트웨어의 코드 변경 유무를 검출하는 것에 의해 소프트웨어의 무결성을 확인하는 인증을 수행한다. 이때, 소프트웨어에 대한 인증을 수행하기 위한 해시 값을 얻기 위한 해시 함수는 공개된 경우에는 이동통신 단말기에 기 저장되어 있으며, 공개되지 않은 경우에는 상기 소프트웨어 배포과정에서 함께 배포된다. 이동통신 단말기의 소프트웨어인증부(12)는 소프트웨어에 지정된 해시 함수를 이용하여 저장된 소프트웨어에 대한 해시 값을 생성한다.
이때, 해시 값이 암호화된 경우 이동통신 단말기의 소프트웨어 인증부(12)는 인증서에 포함된 공개키를 이용하여 암호화된 해시 값을 복호화하는 과정을 더 수행하게 된다(S4)
S4과정 이후 이동통신 단말기의 소프트웨어 인증부(12)는 소프트웨어 다운로드 시에 제공된 해시 값과 해시 함수를 다운로드된 소프트웨어 코드에 적용하여 얻어진 해시 값을 비교한다(S5).
S5과정의 비교 결과 해시 값이 일치하면 해당 소프트웨어의 코드에 대한 변경이 없는 것으로서 바이러스 등의 감염이 없는 것을 판단하여 소프트웨어를 설치하거나 구동한다(S6).
이와 달리 S5과정의 비교 결과 해시 값이 일치하지 않는 경우에는 해당 소프트웨어의 코드에 변경이 발생한 것으로서 바이러스 등에 감염된 것으로 판단하여 소프트웨어를 삭제한다. 그리고 이 과정에서 다운로드 받는 소프트웨어에 대한 과금이 수행되는 경우에는 소프트웨어 제공 서버로 다운받은 소프트웨어에 변경이 발생되었음을 알리어 신호를 전송하는 것에 의해 소프트웨어 제공 서버에서의 과금을 취소시키는 과금취소과정을 더 수행할 수 있다(S7).
<실시예>
이하 본원발명을 이동통신 단말기의 온라인 자바게임서비스에 적용한 본원 발명의 실시예를 설명한다.
도 4에 도시된 바와 같이, 이동통신 단말기의 온라인 자바게임서비스에 제공되는 경우의 온라인 자바 게임 서비스 제공 시스템은, 자바게임서버(200)에 접속하여 자바게임을 위한 자바소스코드와 자바소스인증정보를 다운로드 받아서 자바소스코드에 대한 인증을 수행한 후 인증된 자바소스코드를 컴파일하여 온라인 자바게임서비스를 제공받는 적어도 하나 이상의 이동통신 단말기(100)와; 상기 이동통신 단말기(100)로 자바게임 서비스를 위한 자바소스코드와 자바소스 인증을 위한 인증정보를 제공한 후 자바게임 서비스를 제공하는 자바게임서버(200)가 통신망(30)을 통해 연결구성된다.
상술한 구성에서 상기 이동통신 단말기(100)는 무선인터넷망을 통해 자바게임서버(200)에 접속하여 자바소스코드와 자바소스 인증정보를 다운로드 받는 왑(WAP)브라우저(101)와; 다운로드된 자바소스코드에 대한 컴파일을 수행하는 자바어플리케이션관리자(JAM)와 컴파일된 자바프로그램을 실행시키는 자바가상머신으로 이루어진 자바실행부(102)와; 다운로드된 자바소스 인증정보를 이용하여 컴파일 이 전의 자바소스코드에 대한 변경 유무를 판단하는 인증을 수행하는 자바소스인증부(103)와; 다운로드된 자바소스코드와 자바소스 인증정보와, 필요에 따라 기 저장된 해시 함수를 저장하는 단말기저장부(104)를 포함하여 구성된다.
그리고 자바게임서버(200)는 이동통신 단말기(100)의 무선인터넷 접속 서비스를 제공하고, 이동통신 단말기(100)가 선택한 자바소스코드와 자바소스 인증정보를 이동통신 단말기로 전송하는 등의 왑서비스를 제공하는 왑관리부(201)와; 상기 이동통신 단말기(100)에서 실행되는 온라인 자바 게임을 위한 서버 측의 자바 게임의 구동을 관리하며, 온라인 게임자 사이의 게임 실행에 따라 발생하는 데이터 정보를 매개하여 온라인 게임이 실행되도록 하는 게임관리부(202)와; 상기 게임 서비스를 제공받는 가입자의 정보를 저장하는 가입자DB(203)와; 이동통신 단말기(100)로 제공되는 자바소스코드에 대한 해시 값을 생성하고, 필요에 따라 자바소스코드에 대한 해시 값을 비밀키로 암호화한 후 비밀키에 대응되는 공개키를 가지는 인증서를 생성하는 자바소스 인증정보 생성부(204)와; 상기 자바소스코드, 자바소스 인증정보, 공개키 정보를 가지는 인증서, 및 해시 함수를 저장하는 서버저장부(205)를 포함하여 구성된다.
상술한 구성을 가지는 본원 발명의 일 실시 예에 따르는 이동통신 단말기를 위한 온라인 자바게임 서비스 시스템의 경우, 자바게임서버(200)는 자바게임을 위한 자바소스코드를 저장하고 있다가, 통신망(30)을 통해 접속된 이동통신 단말기(100)의 다운로드 요청이 있는 경우 자바소스코드를 이동통신 단말기로 전송하여 주고, 이동통신 단말기에서 구동되는 자바프로그램에 의한 온라인 게임 서비스 제 공 요청이 있는 경우 이동통신 단말기로 온라인 자바 게임 서비스를 제공한다.
상술한 동작을 수행하는 자바게임서버(200)는 이동통신 단말기로 전송되는 자바소스코드에 대한 기 지정된 해시 함수 또는 저장된 해시 함수에 의한 해시 값을 생성하여 이를 자바소스코드에 대한 자바소스 인증정보로 이동통신 단말기에 제공한다. 여기서 자바소스 인증정보로서의 해시 값은 비밀키에 의해 암호화될 수 있으며, 이러한 경우 자바게임서버(200)는 비밀키에 대응되는 공개키를 가지는 인증서를 생성하여 이동통신 단말기로 제공하게 된다.
상술한 바와 같이 서버에서 제공되는 자바소소 인증정보로서의 해시 값, 해시함수, 인증서 등은 자바소스코드의 다운로드시 생성되어 이동통신 단말기로 제공되거나, 기 생성되어 서버저장부(205)에 저장된 후 자바소스코드의 다운로드시 함께 이동통신 단말기로 전송된다.
그리고 도 4의 이동통신 단말기(100)는 자바게임서버(200)로부터 자바소스코드를 다운로드 받는 경우, 해시 값과 필요에 따라 인증서와 해시함수를 포함하는 자바소스 인증정보를 함께 다운로드 받는다. 그리고, 이동통신 단말기(100)의 자바소스인증부(103)는 자바소스코드의 컴파일 이전에 해시 함수를 이용하여 자바소스코드에 대한 해시 값을 구한 후 자바소스코드와 함께 자바게임서버(200)에서 제공한 인증정보로서의 해시 값과 비교한다. 이 과정에서 해시 값이 비밀키에 의해 암호화된 경우에는 인증서에 포함된 공개키를 이용하여 복호화하는 과정을 수행한다.
상술한 동작에 의해서 자바게임서버(200)로부터 제공된 자바소스코드의 해시 값과 이동통신 단말기(100)의 자바소스인증부(103)에서 생성한 자바소스코드의 해 시 값이 일치하는 경우에는 자바소스코드에 변경이 없는 것으로서 바이러스 등이 감염되지 않은 것으로 판단하여 컴파일을 수행하게 된다.
이와 달리 자바게임서버(200)로부터 제공된 자바소스코드의 해시 값과 이동통신 단말기(100)의 자바소스인증부(103)에서 생성한 자바소스코드의 해시 값이 일치하지 않는 경우에는 자바소스코드에 변경이 발생한 것임을 확인할 수 있고 이에 따라 바이러스 등의 감염이 있는 것으로 판단하여 자바소스코드를 삭제한다. 그리고 다운로드 받은 자바소스코드에 대한 과금이 수행되는 경우에는 자바소스코드의 삭제와 함께 과금취소정보를 자바게임서버(200)로 전송하여 과금을 취소시키는 과금최소과정을 더 수행할 수도 있다.
상술한 바에 의해 온라인 상에서 다운로드된 자바소스코드의 무결성을 검증할 수 있게 된다.
상술한 본원발명은 이동통신 단말기에서 실행되는 소프트웨어에 대하여 소프트웨어의 설치 또는 구동 이전에 해당 소프트웨어에 대한 소스코드의 변경 유무를 확인할 수 있도록 하는 인증정보에 의해 소프트웨어의 무결성을 확인할 수 있도록 하고, 이에 의해 바이러스 감염 여부 등을 확인할 수 있도록 함으로써, 이동통신 단말기가 악성 바이러스 등에 감염되는 것을 차단할 수 있으며, 이동통신 단말기의 사용자의 개인 정보에 대한 보안성을 향상시키는 효과를 제공한다.

Claims (12)

  1. 다운로드된 소프트웨어와 상기 소프트웨어에 대한 인증정보를 저장하는 단말기저장부와;
    상기 단말기저장부에 저장된 소프트웨어의 설치 이전에 상기 인증정보를 이용하여 상기 소프트웨어의 코드 변경 유무를 검출하는 것에 의해 소프트웨어의 무결성을 인증하고, 상기 소프트웨어 코드의 무결성 검증 결과 소프트웨어의 변경이 발생된 경우 상기 소프트웨어에 대한 과금취소정보를 상기 소프트웨어 제공 서버로 전송하여 상기 소프트웨어에 대한 과금을 취소하는 소프트웨어인증부를 포함하여 구성되는 것을 특징으로 하는 이동통신 단말기의 소프트웨어 인증 장치.
  2. 통신망을 통해 소프트웨어 제공 서버에 접속하거나 외부의 컴퓨터 장치에 근거리통신방식에 의해 접속되어 소프트웨어와 상기 소프트웨어의 인증정보를 다운로드 받는 단말기통신인터페이스부와; 상기 소프트웨어와 소프트웨어 인증정보를 저장하는 단말기저장부와; 상기 단말기저장부에 저장된 소프트웨어의 설치 이전에 상기 인증정보를 이용하여 상기 소프트웨어의 코드 변경 유무를 검출하는 것에 의해 소프트웨어의 무결성을 인증하고, 상기 소프트웨어 코드의 무결성 검증 결과 소프트웨어의 변경이 발생된 경우 상기 소프트웨어에 대한 과금취소정보를 상기 소프트웨어 제공 서버로 전송하여 상기 소프트웨어에 대한 과금을 취소하는 소프트웨어인증부를 구비한 이동통신 단말기와;
    상기 이동통신 단말기의 접속 및 소프트웨어 다운로드를 제어하는 서버통신인터페이스부와; 상기 소프트웨어에 대한 인증정보를 생성하는 소프트웨어인증정보생성부와; 상기 소프트웨어와 상기 소프트웨어에 대한 인증정보를 저장하는 서버저장부를 구비한 소프트웨어제공서버;를 포함하여 구성되는 것을 특징으로 하는 이동통신 단말기의 소프트웨어 인증 장치.
  3. 제 1항 또는 제 2항 중 어느 한 항에 있어서, 상기 인증정보는,
    상기 소프트웨어에 대한 기 지정된 해시 해시함수에 의한 해시 값인 것을 특징으로 하는 이동통신 단말기의 소프트웨어 인증 장치.
  4. 제 1항 또는 제 2항 중 어느 한 항에 있어서, 상기 인증정보는,
    비밀키에 의해 암호화된 상기 해시 값과 상기 비밀키 대응 공개키를 가지는 인증서 정보인 것을 특징으로 하는 이동통신 단말기의 소프트웨어 인증 장치.
  5. 제 1항 또는 제 2항 중 어느 한 항에 있어서, 상기 소프트웨어는 자바소스코드인 것을 특징으로 하는 이동통신 단말기의 소프트웨어 인증 장치.
  6. 배포대상 이동통신 단말기의 소프트웨어에 대한 무결성을 검출하기 위한 인증정보를 생성하는 인증정보생성과정과;
    상기 소프트웨어와 상기 인증정보를 배포하는 소프트웨어배포과정과;
    상기 소프트웨어에 대한 인증정보를 이용하여 상기 소프트웨어 코드의 무결성 여부를 검출하고, 상기 소프트웨어 코드의 무결성 검증 결과 소프트웨어의 변경이 발생된 경우 상기 소프트웨어에 대한 과금취소정보를 상기 소프트웨어 제공 서버로 전송하여 상기 소프트웨어에 대한 과금을 취소하는 소프트웨어인증과정;을 포함하여 이루어지는 것을 특징으로 하는 이동통신 단말기의 소프트웨어 인증 방법.
  7. 제 6항에 있어서, 상기 인증정보생성과정은,
    상기 인증정보를 비밀키로 암호화하는 암호화과정과;
    상기 비밀키에 대응되는 공개키를 가지는 인증서를 생성하는 인증서생성과정을 더 포함하여 이루어지는 것을 특징으로 하는 이동통신 단말기의 소프트웨어 인증 방법.
  8. 제 6항에 있어서, 상기 소프트웨어배포과정은,
    상기 소프트웨어와, 상기 비밀키에 의해 암호화된 인증정보와, 상기 비밀키에 대응되는 공개키를 가지는 인증서를 배포하는 과정인 것을 특징으로 하는 이동통신 단말기의 소프트웨어 인증 방법.
  9. 제 6항에 있어서, 상기 소프트웨어인증과정은,
    상기 암호화된 인증정보를 상기 인증서의 공개키를 이용하여 복호화하는 복호화과정을 더 포함하여 이루어지는 것을 특징으로 하는 이동통신 단말기의 소프트웨어 인증 방법.
  10. 삭제
  11. 제 6항 내지 제 9항 중 어느 한 항에 있어서, 상기 인증정보는 해시함수에 의한 상기 소프트웨어의 해시 값인 것을 특징으로 하는 이동통신 단말기의 소프트웨어 인증 방법.
  12. 제 6항 내지 제 9항 중 어느 한 항에 있어서, 상기 소프트웨어는 자바소스코드인 것을 특징으로 하는 이동통신 단말기의 소프트웨어 인증 방법.
KR1020050092782A 2005-10-04 2005-10-04 이동통신 단말기의 소프트웨어 인증 장치 및 그 방법 KR100711722B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020050092782A KR100711722B1 (ko) 2005-10-04 2005-10-04 이동통신 단말기의 소프트웨어 인증 장치 및 그 방법
CN2006101524832A CN1946222B (zh) 2005-10-04 2006-09-29 移动通信终端的软件认证装置及其方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050092782A KR100711722B1 (ko) 2005-10-04 2005-10-04 이동통신 단말기의 소프트웨어 인증 장치 및 그 방법

Publications (2)

Publication Number Publication Date
KR20070037782A KR20070037782A (ko) 2007-04-09
KR100711722B1 true KR100711722B1 (ko) 2007-04-25

Family

ID=38045383

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050092782A KR100711722B1 (ko) 2005-10-04 2005-10-04 이동통신 단말기의 소프트웨어 인증 장치 및 그 방법

Country Status (2)

Country Link
KR (1) KR100711722B1 (ko)
CN (1) CN1946222B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101029758B1 (ko) * 2008-12-31 2011-04-19 노틸러스효성 주식회사 펌웨어의 원격 업데이트 방법

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101203000B (zh) * 2007-05-24 2012-05-23 深圳市德诺通讯技术有限公司 一种移动终端应用软件的下载方法及系统
KR101352248B1 (ko) 2007-08-30 2014-01-16 삼성전자주식회사 사용자 인터페이스 자동 전환 장치 및 방법
CN101137156B (zh) * 2007-10-18 2010-06-02 中兴通讯股份有限公司 移动终端的信息保护方法
KR100926822B1 (ko) * 2007-12-04 2009-11-12 (주)유디피 소프트웨어 보호수단 제공 방법 및 이를 수행하기 위한네트워크 시스템
KR100945650B1 (ko) 2007-12-05 2010-03-04 한국전자통신연구원 보안모듈 프로그램을 보호하기 위한 디지털 케이블 시스템및 그 방법
KR100932274B1 (ko) * 2007-12-18 2009-12-16 한국전자통신연구원 이동 단말기의 소프트웨어 무결성 검증 장치 및 그 방법
US9164925B2 (en) 2008-01-15 2015-10-20 Samsung Electronics Co., Ltd. Method and apparatus for authorizing host to access portable storage device
KR101281678B1 (ko) 2008-01-15 2013-07-03 삼성전자주식회사 이동 저장 장치에서 호스트 인증 방법, 호스트 인증을 위한정보 제공 방법, 장치, 및 기록매체
BRPI1006524A2 (pt) * 2009-03-05 2016-02-10 Interdigital Patent Holdings método e aparelho para validação e verificação de integridade de h (e) nb
CN101588374B (zh) * 2009-06-08 2015-01-28 中兴通讯股份有限公司 一种网络设备的软硬件完整性检测方法及系统
US9075978B2 (en) * 2012-04-23 2015-07-07 Sap Se Secure configuration of mobile applications
CN103942471B (zh) * 2013-09-17 2017-07-14 北京国电通网络技术有限公司 一种部署在移动存贮设备上软件的授权认证方法和装置
US9256738B2 (en) * 2014-03-11 2016-02-09 Symantec Corporation Systems and methods for pre-installation detection of malware on mobile devices
KR101663700B1 (ko) * 2014-12-12 2016-10-10 한국정보통신주식회사 금융 시스템, 금융 시스템의 펌웨어 무결성 체크 방법
JP2017162214A (ja) * 2016-03-09 2017-09-14 富士通株式会社 近接通信装置、近接通信方法および近接通信プログラム
WO2018217605A1 (en) * 2017-05-22 2018-11-29 Becton, Dickinson And Company Systems, apparatuses and methods for secure wireless pairing between two devices using embedded out-of-band (oob) key generation
KR102383050B1 (ko) * 2021-02-22 2022-04-04 김도연 암호화 알고리즘을 이용하는 발신번호 변경 기기

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050056204A (ko) * 2002-09-26 2005-06-14 인터내셔널 비지네스 머신즈 코포레이션 메시지 무결성 보증 시스템, 방법 및 기록 매체

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6108420A (en) * 1997-04-10 2000-08-22 Channelware Inc. Method and system for networked installation of uniquely customized, authenticable, and traceable software application

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050056204A (ko) * 2002-09-26 2005-06-14 인터내셔널 비지네스 머신즈 코포레이션 메시지 무결성 보증 시스템, 방법 및 기록 매체

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101029758B1 (ko) * 2008-12-31 2011-04-19 노틸러스효성 주식회사 펌웨어의 원격 업데이트 방법

Also Published As

Publication number Publication date
CN1946222B (zh) 2011-08-31
CN1946222A (zh) 2007-04-11
KR20070037782A (ko) 2007-04-09

Similar Documents

Publication Publication Date Title
KR100711722B1 (ko) 이동통신 단말기의 소프트웨어 인증 장치 및 그 방법
KR101324891B1 (ko) 코드 및 데이터 서명을 개선하기 위한 방법 및 장치
US9137023B1 (en) Self-signed certificates for computer application signatures
KR101190479B1 (ko) 티켓 인증 보안 설치 및 부트
KR100463736B1 (ko) 보안 환경에서의 이동 통신 장치 소프트웨어의 디버깅 및테스팅 허가 방법
US8417964B2 (en) Software module management device and program
US20050044359A1 (en) Anti-piracy software protection system and method
US20050202803A1 (en) Secure interaction between downloaded application code and a smart card in a mobile communication apparatus
US20040266395A1 (en) Process for securing a mobile terminal and applications of the process for executing applications requiring a high degree of security
KR20090067154A (ko) 신뢰 상태를 확인하는 데 사용되는 휴대용 장치
JP2007072608A (ja) 機器情報送信プログラム、サービス制御プログラム、機器情報送信装置、サービス制御装置および機器情報送信方法
US20060150246A1 (en) Program execution control device, OS, client terminal, server, program execution control system, program execution control method and computer program execution control program
US20030059049A1 (en) Method and apparatus for secure mobile transaction
US8127033B1 (en) Method and apparatus for accessing local computer system resources from a browser
CN110135149A (zh) 一种应用安装的方法及相关装置
CN114329358A (zh) 应用签名方法、系统、交易终端及服务平台
KR101322402B1 (ko) 어플리케이션 보안 시스템 및 방법, 이를 위한 통신 단말기
KR20160146146A (ko) 무결성 검증 방법 및 그 장치
KR101906484B1 (ko) 어플리케이션 보안 방법 및 이를 수행하기 위한 시스템
KR100761384B1 (ko) 모바일 컨텐츠의 불법 복제 방지를 위한 컨텐츠 검증 방법
CN112968889B (zh) 主机权限管理方法、终端、设备及计算机可读存储介质
CN116781359B (zh) 一种使用网络隔离和密码编译的门户安全设计方法
Park et al. Analyzing security of Korean USIM-based PKI certificate service
CN112597449A (zh) 软件加密方法、装置、设备及存储介质
WO2004055681A1 (ja) 電子メール装置、電子メールシステム及び電子メール送信方法

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
FPAY Annual fee payment

Payment date: 20140414

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160324

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170324

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee