KR101101322B1 - 응용 프로그램 인증 방법 및 장치 - Google Patents
응용 프로그램 인증 방법 및 장치 Download PDFInfo
- Publication number
- KR101101322B1 KR101101322B1 KR1020100023913A KR20100023913A KR101101322B1 KR 101101322 B1 KR101101322 B1 KR 101101322B1 KR 1020100023913 A KR1020100023913 A KR 1020100023913A KR 20100023913 A KR20100023913 A KR 20100023913A KR 101101322 B1 KR101101322 B1 KR 101101322B1
- Authority
- KR
- South Korea
- Prior art keywords
- application program
- file size
- user terminal
- executed
- service providing
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/54—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by adding security routines or objects to programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
응용 프로그램 인증 방법 및 장치가 개시된다. 사용자 단말과 통신망을 통해 연결된 서비스 제공 장치에서 사용자 단말에서 실행된 응용 프로그램을 인증하는 방법은, 사용자 단말로부터 실행된 응용 프로그램의 파일명 및 파일 크기를 획득하고, 획득된 응용 프로그램의 파일명 및 파일 크기와 기저장된 응용 프로그램의 파일명 및 파일크기의 동일 여부에 따라 상기 응용 프로그램을 인증한 후 인증 결과에 따라 응용 프로그램의 실행 종료를 제어할 수 있다.
Description
본 발명은 응용 프로그램 실행에 관한 것으로, 보다 상세하게 사용자 단말에서 실행되는 응용 프로그램을 인증하는 방법 및 시스템에 관한 것이다.
정보통신 기술의 발전에 따라 최근에는 컴퓨터, 스마트폰 등의 사용자 단말을 통해 다양한 인터넷 서비스(예를 들어, 전자 상거래, 금융 거래, 콘텐츠 제공, 다양한 정보 이용 등)가 사용자에게 제공되고 있다.
인터넷을 통해 제공되는 인터넷 서비스의 이용을 위해 웹 페이지를 통해 아이디 및 패스워드를 입력하거나 전자 인증 절차를 통해 인증을 거쳐야만 한다. 그러나, 이와 같은 현재의 방법은 악성 코드 또는 사이트 피싱에 취약하여 데이터 유출 또는 데이터 위/변조를 방지하는데 어려움이 있다.
본 발명은 사용자 단말에서 실행되는 응용 프로그램에 대해 인증할 수 있는 방법 및 장치를 제공하기 위한 것이다.
이에 따라, 본 발명은 악성 코드 또는 사이트 피싱에 의한 데이터 유출 또는 데이터 위/변조를 방지할 수 있다.
본 발명의 일 측면에 따르면, 사용자 단말에 의해 실행된 응용 프로그램을 인증하는 장치가 제공된다.
본 발명의 일 실시예에 따르면, 사용자 단말로부터 실행된 응용 프로그램의 파일명 및 파일 크기를 획득하는 정보 획득부; 상기 획득된 응용 프로그램의 파일명 및 파일 크기와 기저장된 응용 프로그램의 파일명 및 파일크기의 동일 여부에 따라 상기 응용 프로그램을 인증하는 인증부; 및 인증 결과에 따라 상기 응용 프로그램의 실행 종료를 제어하는 서비스 제어부를 포함하는 응용 프로그램을 인증하는 서비스 제공 장치가 제공될 수 있다.
본 발명의 다른 실시예에 따르면, 서비스 제공 장치로부터 응용 프로그램을 다운로드받아 설치하는 응용 프로그램 관리부; 상기 서비스 제공 장치로부터 응용 프로그램 파일명 및 파일 크기를 수신하는 통신부; 설치된 응용 프로그램의 실행에 따른 실행된 응용 프로그램의 파일 크기를 계산하고, 상기 계산된 파일 크기와 수신된 응용 프로그램의 파일크기의 동일 여부에 따라 상기 실행된 응용 프로그램을 인증하는 인증부; 및 인증 결과에 따라 상기 응용 프로그램의 실행 종료 여부를 결정하는 단말 제어부를 포함하는 응용 프로그램을 인증하는 사용자 단말이 제공될 수 있다.
본 발명의 다른 측면에 따르면, 사용자 단말에 의해 실행된 응용 프로그램을 인증하는 방법이 제공된다.
본 발명의 일 실시예에 따르면, 사용자 단말과 통신망을 통해 연결된 서비스 제공 장치에서 사용자 단말에서 실행된 응용 프로그램을 인증하는 방법에 있어서, (a) 사용자 단말로부터 실행된 응용 프로그램의 파일명 및 파일 크기를 획득하는 단계; (b) 상기 획득된 응용 프로그램의 파일명 및 파일 크기와 기저장된 응용 프로그램의 파일명 및 파일크기의 동일 여부에 따라 상기 응용 프로그램을 인증하는 단계; 및 (c) 인증 결과에 따라 상기 응용 프로그램의 실행 종료를 제어하는 단계를 포함하는 응용 프로그램을 인증하는 방법이 제공될 수 있다.
본 발명의 다른 실시예에 따르면, 서비스 제공 장치와 통신망을 통해 연결된 사용자 단말에서 실행된 응용 프로그램을 인증하는 방법에 있어서, (a) 상기 서비스 제공 장치로부터 응용 프로그램을 다운로드받아 설치하는 단계; (b) 상기 서비스 제공 장치로부터 응용 프로그램 파일명 및 파일 크기를 수신하는 단계; (c) 설치된 응용 프로그램의 실행에 따른 실행된 응용 프로그램의 파일크기를 계산하는 단계; (d) 상기 계산된 응용 프로그램의 파일크기와 상기 수신된 응용 프로그램의 파일 크기의 동일 여부에 따라 상기 실행된 응용 프로그램을 인증하는 단계; 및 (d) 인증 결과에 따라 상기 응용 프로그램의 실행 종료 여부를 결정하는 단말 제어부를 포함하는 응용 프로그램을 인증하는 방법이 제공될 수 있다.
본 발명의 실시예에 따른 응용 프로그램 인증 방법 및 장치를 제공함으로써, 사용자 단말에서 실행되는 응용 프로그램에 대해 인증할 수 있으며, 결과적으로 악성 코드 또는 사이트 피싱에 의한 데이터 유출 또는 데이터 위/변조를 방지할 수 있다.
도 1은 인터넷을 통해 임의의 서비스를 제공하는 시스템을 개략적으로 도시한 블록도.
도 2는 사용자 단말의 서비스 요청에 따른 응용 프로그램에 대해 인증을 수행하는 서비스 제공 장치의 내부 구성을 개략적으로 도시한 블록도.
도 3은 도 1의 서비스 제공 장치에서 제공하는 서비스 제공을 위해 필요한 응용 프로그램을 인증하는 사용자 단말의 내부 구성을 개략적으로 도시한 블록도.
도 4는 도 2의 서비스 제공 장치가 사용자 단말에서 실행된 응용 프로그램에 대해 인증하는 방법을 설명하기 위해 나타낸 순서도.
도 5는 도 2의 사용자 단말에서 실행된 응용 프로그램에 대해 인증하는 방법을 설명하기 위해 도시한 순서도.
도 2는 사용자 단말의 서비스 요청에 따른 응용 프로그램에 대해 인증을 수행하는 서비스 제공 장치의 내부 구성을 개략적으로 도시한 블록도.
도 3은 도 1의 서비스 제공 장치에서 제공하는 서비스 제공을 위해 필요한 응용 프로그램을 인증하는 사용자 단말의 내부 구성을 개략적으로 도시한 블록도.
도 4는 도 2의 서비스 제공 장치가 사용자 단말에서 실행된 응용 프로그램에 대해 인증하는 방법을 설명하기 위해 나타낸 순서도.
도 5는 도 2의 사용자 단말에서 실행된 응용 프로그램에 대해 인증하는 방법을 설명하기 위해 도시한 순서도.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
이하, 본 발명의 실시예를 첨부한 도면들을 참조하여 상세히 설명하기로 한다.
[도 1 설명]
도 1은 인터넷을 통해 임의의 서비스를 제공하는 시스템을 개략적으로 도시한 블록도이다.
도 1을 참조하면, 사용자 단말에서 실행되는 응용 프로그램에 대해 인증하는 시스템은 사용자 단말(110) 및 서비스 제공 장치(120)를 포함하여 구성된다.
사용자 단말(110)은 유선 또는/무선 통신망을 통해 서비스 제공 장치(120)와 연결되어 다양한 데이터, 다양한 인터넷 서비스를 제공받는다.
본 명세서에서 인터넷 서비스는 인터넷을 통해 서비스 제공 장치에 의해 사용자 단말(110)로 제공되는 서비스로, 예를 들어, 전자상거래, 금융 거래, 증권거래, 콘텐츠 제공, 정보 이용 등일 수 있다.
사용자 단말(110)은 서비스 제공 장치(120)에 최초 접속시 인터넷 서비스 이용을 위해 필요한 하나 이상의 응용 프로그램을 다운로드 받아 설치한 후 해당 응용 프로그램을 이용하거나 해당 응용 프로그램을 통해 인증 과정을 수행한 후 서비스 제공 장치(120)로부터 인터넷 서비스를 제공받을 수 있다. 이에 대해서는 하기에서 관련 도면을 참조하여 보다 상세히 설명하기로 한다.
사용자 단말(110)은 통신 기능을 구비하거나 통신 기능이 구비된 장치에 연결 가능한 장치(예를 들어, USB, USIM 및 IC 카드)인 경우에는 모두 적용될 수 있다. 예를 들어, 사용자 단말(110)은 핸드폰, PDA, 컴퓨터, 노트북, 유에스비(USB)와 같이 통신 기능을 구비한 장치에 연결 가능한 저장 매체일 수 있다.
서비스 제공 장치(120)는 통신망을 통해 사용자 단말(110)에 연결된다. 서비스 제공 장치(120)는 사용자 단말(110)에 의해 요청(또는 선택)된 응용 프로그램을 사용자 단말(110)로 제공한다. 또한, 서비스 제공 장치(120)는 사용자 단말(110)에 의해 실행된 응용 프로그램에 대해 인증을 수행한 후 사용자 단말(110)로 인터넷 서비스 제공 여부를 결정한다. 이에 대해서는 하기에서 관련 도면을 참조하여 보다 상세히 설명하기로 한다.
[도 2 설명]
도 2는 사용자 단말의 서비스 요청에 따른 응용 프로그램에 대해 인증을 수행하는 서비스 제공 장치의 내부 구성을 개략적으로 도시한 블록도이다.
도 2를 참조하면, 사용자 단말(110)에서 실행된 응용 프로그램에 대해 인증을 수행하는 서비스 제공 장치(120)는 통신부(210), 응용 프로그램 제공부(220), 정보 획득부(230), 인증부(240), 저장부(250) 및 서비스 제어부(260)를 포함하여 구성된다.
통신부(210)는 통신망을 통해 사용자 단말(110)과 다양한 데이터를 송수신한다.
예를 들어, 통신부(210)는 응용 프로그램 제공부(220)의 제어에 따라 사용자 단말(110)로 하나 이상의 응용 프로그램을 전송할 수 있다. 또한, 통신부(210)는 사용자 단말(110)로부터 실행된 응용 프로그램의 파일명 및 파일 크기를 수신받을 수 있다.
응용 프로그램 제공부(220)는 사용자 단말(110)에 의해 선택된 응용 프로그램을 통신부(210)를 통해 사용자 단말(110)로 제공한다. 예를 들어, 응용 프로그램 제공부(220)는 당해 서비스 제공 장치(120)에서 제공하는 웹 페이지를 통해 사용자 단말(110)이 응용 프로그램을 선택한 후 다운로드를 요청하면, 다운로드 요청된 응용 프로그램을 사용자 단말(110)로 전송할 수 있다.
본 명세서에서는 서비스 제공 장치(120)에 의해 제공되는 인터넷 서비스 이용을 위해 필요한 응용 프로그램이 하나인 것을 가정하여 설명하나 해당 인터넷 서비스 이용을 위해 필요한 응용 프로그램은 복수일 수 있다.
이와 같이, 응용 프로그램이 복수인 경우, 응용 프로그램 제공부(220)는 사용자 단말(110)에 의해 선택된 응용 프로그램 이외에도 해당 응용 프로그램의 실행 순서 리스트를 함께 전송할 수 있다.
또한, 응용 프로그램 제공부(220)는 응용 프로그램의 파일명 및 해당 응용 프로그램의 파일 크기도 함께 전송할 수 있다.
본 명세서에서는 실행 순서 리스트와 응용 프로그램의 파일명 및 파일 크기가 각각 전송되는 것을 가정하여 설명하였으나, 구현 방법에 따라 실행 순서 리스트에 해당 응용 파일의 실행 순서를 지시하는 식별자, 응용 프로그램의 파일명 및 파일 크기가 모두 포함되어 전송될 수도 있음은 당연하다.
또한, 응용 프로그램 제공부(220)는 사용자 단말(110)에 이미 응용 프로그램이 설치되어 있는 경우(즉, 해당 사용자 단말(110)로 응용 프로그램 버전 정보를 요청하여 획득한 후), 기저장된 응용 프로그램의 버전 정보와 상이한 경우, 응용 프로그램의 갱신에 필요한 갱신 파일을 추출하여 사용자 단말(110)로 전송할 수 있다.
정보 획득부(230)는 통신부(210)를 통해 사용자 단말(110)로부터 실행된 응용 프로그램의 파일명 및 파일 크기를 획득하여 인증부(240)로 출력한다. 여기서, 정보 획득부(230)는 사용자 단말(110)로부터 실행된 응용 프로그램의 실행 순서를 더 획득할 수도 있다.
인증부(240)는 정보 획득부(230)를 통해 획득된 응용 프로그램의 파일 크기 및 파일 크기를 이용하여 사용자 단말(110)에서 실행된 응용 프로그램에 대해 인증을 수행하여 인증 정보를 서비스 제어부(260)로 출력한다. 여기서, 파일 크기는 실행된 응용 프로그램의 파일 크기이다.
예를 들어, 인증부(240)는 사용자 단말(110)을 통해 실행된 응응 프로그램의 파일명 및 파일 크기를 획득하고, 획득된 응용 프로그램의 파일명을 이용하여 기저장된 응용 프로그램의 파일 크기를 추출할 수 있다. 이어, 인증부(240)는 획득된 응용 프로그램의 파일 크기와 추출된 응용 프로그램의 파일 크기를 비교하여 파일 크기가 상이한 경우 응용 프로그램이 비정상적으로 실행된 것으로 인식하여 인증실패에 따른 인증 정보를 생성할 수 있다. 반면에, 인증부(240)는 사용자 단말(110)을 통해 획득된 실행된 응용 프로그램의 파일 크기 및 기저장된 응용 프로그램의 파일 크기가 동일한 경우에는 응용 프로그램이 정상적으로 실행된것으로 인식하여 인증 성공에 따른 인증 정보를 생성할 수 있다.
또한, 인증부(240)는 정보 획득부(230)를 통해 실행된 응용 프로그램의 실행 순서, 파일명 및 파일 크기가 입력되면, 실행된 응용 프로그램의 실행 순서를 이용하여 응용 프로그램에 대해 인증을 수행할 수도 있다.
예를 들어, 인증부(240)는 사용자 단말(110)로부터 획득된 응용 프로그램의 실행 순서가 기저장된 실행 순서와 상이한 경우, 해당 응용 프로그램이 비정상 실행된 것으로 인식하여 인증 실패에 따른 인증 정보를 생성하여 서비스 제어부(260)로 출력할 수 있다.
반면, 인증부(는 획득된 응용 프로그램의 실행 순서가 기저장된 실행 순서와 동일한 경우, 획득된 응용 프로그램의 파일 크기를 이용하여 2차 인증을 수행할 수도 있다. 이는 전술한 바와 동일하므로 중복되는 설명은 생략하기로 한다.
다른 예를 들어, 정보 획득부(230)이 사용자 단말에서 실행된 응용 프로그램에 대한 확장자를 더 획득하여 인증부(240)로 출력하면, 인증부(240)는 실행된 응용 프로그램의 확장자를 응용 프로그램의 인증에 더 이용할 수 있다.
예를 들어, 인증부(240)가 정보 획득부(230)를 통해 실행된 응용 프로그램의 실행 순서, 파일명, 파일 크기 및 확장자 중 하나 이상을 입력받는 경우, 인증부(240)는 입력된 실행 순서, 파일명, 파일 크기 및 확장자 중 하나 이상과 기저장된 응용 프로그램에 대한 정보(실행 순서, 파일명, 파일 크기 및 확장자)와의 동일성 여부를 판단하여 응용 프로그램에 대해 인증을 수행할 수 있다.
저장부(250)는 본 실시예에 따른 서비스 제공 장치(120)를 운용하기 위해 필요한 알고리즘, 하나 이상의 응용 프로그램의 파일명에 버전 정보와 파일 크기가 매핑된 매핑 테이블 등을 저장한다. 여기서, 매핑 테이블은 응용 프로그램의 실행 순서를 더 매핑하여 저장할 수 있다.
서비스 제어부(260)는 사용자 단말(110)에서 실행된 응용 프로그램을 인증하는 서비스 제공 장치(120)의 내부 구성 요소들(예를 들어, 통신부(210), 응용 프로그램 제공부(220), 인증부(240), 저장부(250) 등)을 제어하는 기능을 수행한다.
서비스 제어부(260)는 인증부(240)를 통해 입력된 인증 정보에 따라 응용 프로그램의 정상 실행 또는 해당 응용 프로그램의 구동 종료를 제어한다.
예를 들어, 서비스 제어부(260)는 인증부(240)를 통해 입력된 인증 정보가 인증 실패인 경우, 응용 프로그램의 구동 에러에 따른 안내 메시지를 생성하여 통신부(210)를 통해 사용자 단말(110)로 전송할 수 있다. 이어, 서비스 제어부(260)는 응용 프로그램의 종료를 위한 제어 신호를 사용자 단말(110)로 전송하거나 사용자 단말(110)의 당해 서비스 제공 장치(120)의 접속을 종료할 수 있다.
그러나 만일 서비스 제어부(260)는 인증 정보가 인증 성공인 경우, 응용 프로그램의 정상적인 실행에 따라 사용자 단말(110)에서 요청한 인터넷 서비스가 제공되도록 제어할 수 있다.
도 2에서는 서비스 제공 장치(120)가 사용자 단말(110)에서 실행되는 응용 프로그램에 대해 인증을 수행하여 응용 프로그램에 상응하는 인터넷 서비스의 제공 여부를 제어하는 것을 중점으로 설명하였다. 그러나, 서비스 제공 장치(120)는 당해 서비스 제공 장치(120)에서 실행되는 응용 프로그램에 대해서도 실행된 응용 프로그램의 파일 크기와 기저장된 응용 프로그램의 파일 크기를 이용하여 인증한 후 해당 응용 프로그램의 중단 여부를 결정할 수도 있다.
[도 3 설명]
도 3은 도 1의 서비스 제공 장치에서 제공하는 서비스 제공을 위해 필요한 응용 프로그램을 인증하는 사용자 단말의 내부 구성을 개략적으로 도시한 블록도이다.
도 3을 참조하면, 응용 프로그램을 인증하는 사용자 단말(110)은 통신부(310), 응용 프로그램 관리부(320), 인증부(330), 저장부(340) 및 단말 제어부(350)를 포함하여 구성된다.
통신부(310)는 통신망을 통해 서비스 제공 장치(120)와 연결되어 데이터를 송수신하는 기능을 수행한다. 예를 들어, 통신부(310)는 단말 제어부(350)의 제어에 따라 서비스 제공 장치(120)로부터 응용 프로그램을 수신 받을 수 있다. 또한, 통신부(310)는 단말 제어부(350)의 제어에 따라 실행된 응용 프로그램에 대한 정보(예를 들어, 실행된 응용 프로그램의 실행 순서, 파일명, 파일 크기 및 확장자)를 서비스 제공 장치(120)로 전송할 수 있다.
응용 프로그램 관리부(320)는 단말 제어부(350)의 제어에 따라 통신부(310)를 통해 다운로드된 응용 프로그램을 설치하고, 이를 관리하는 기능을 수행한다.
인증부(330)는 응용 프로그램의 실행에 따라 실행된 응용 프로그램의 파일명 및 파일 크기를 이용하여 실행된 응용 프로그램에 대해 인증하는 기능을 수행한다. 여기서, 파일 크기는 실행된 응용 프로그램의 파일 크기이며, 응용 프로그램이 복수의 파일로 구성되는 경우, 각 파일의 합일 수 있다.
예를 들어, 인증부(330)는 실행된 응용 프로그램의 파일명에 상응하는 실행된 응용 프로그램의 파일 크기와 기저장된 응용 프로그램의 파일 크기를 비교하여 동일한지 여부에 따라 실행된 응용 프로그램에 대해 인증을 수행하여 인증 결과를 생성하여 단말 제어부(350)로 출력할 수 있다. 여기서, 인증 결과는 인증 성공 또는 인증 실패일 수 있다.
다른 예를 들어, 인증부(330)는 실행된 응용 프로그램의 파일명, 파일 크기, 실행 순서 및 확장자 중 하나 이상을 이용하여 기저장된 응용 프로그램의 정보와의 동일성 여부를 판단하여 인증 수행에 따른 인증 결과를 단말 제어부(350)로 출력할 수 있다.
저장부(340)는 실행된 응용 프로그램을 인증하는 사용자 단말을 운용하기 위해 필요한 알고리즘, 하나 이상의 응용 프로그램에 대한 파일명 및 파일 크기 및 다운로드된 응용 프로그램을 저장한다. 또한 저장부(340)는 응용 프로그램에 대한 버전 정보를 더 저장할 수도 있다.
단말 제어부(350)는 실행된 응용 프로그램을 인증하는 사용자 단말(110)의 내부 구성 요소들(통신부(310), 응용 프로그램 관리부(320), 인증부(330), 저장부(340))을 제어하는 기능을 수행한다.
또한, 단말 제어부(350)는 인증부(330)를 통해 입력된 인증 결과가 인증 성공이면, 응용 프로그램이 정상적으로 동작되도록 제어한다. 그러나 만일 인증 결과가 인증 실패이면, 단말 제어부(350)는 실행된 응용 프로그램이 종료되도록 제어할 수 있다.
[도 4 설명]
도 4는 도 2의 서비스 제공 장치가 사용자 단말에서 실행된 응용 프로그램에 대해 인증하는 방법을 설명하기 위해 나타낸 순서도이다. 이하에서 설명되는 각각의 단계는 서비스 제공 장치(120)의 각각의 내부 구성 요소에 의해 수행되어지나 이해와 설명의 편의를 도모하기 위해 서비스 제공 장치(120)로 통칭하여 설명하기로 한다.
단계 410에서 서비스 제공 장치(120)는 사용자 단말(110)의 접속 요청에 따라 당해 서비스 제공 장치(120)에서 제공하는 인터넷 서비스에 관련된 웹 페이지를 생성하여 사용자 단말(110)로 제공한다.
단계 415에서 서비스 제공 장치(120)는 제공된 웹 페이지를 통해 사용자 단말(110)로부터 응용 프로그램 다운로드 요청을 수신받는다. 여기서, 응용 프로그램 다운로드 요청은 해당 응용 프로그램의 식별을 위한 식별정보를 포함할 수 있다.
단계 420에서 서비스 제공 장치(120)는 사용자 단말(110)에 의해 다운로드 요청된 응용 프로그램의 설치를 위한 설치 파일을 추출하여 사용자 단말(110)로 전송한다.
물론, 서비스 제공 장치(120)는 사용자 단말(110)의 접속 요청에 따라 사용자 단말(110)에 응용 프로그램의 설치 여부를 확인한 후 미설치시 필요한 응용 프로그램의 설치를 위한 설치 파일을 추출하여 사용자 단말(110)로 전송할 수도 있다. 또한, 서비스 제공 장치(120)는 사용자 단말(110)의 접속 요청에 따라 사용자 단말(110)에 응용 프로그램이 설치되어 있는 경우, 응용 프로그램의 버전 정보를 확인한 후 갱신이 필요한 경우, 갱신에 필요한 갱신 파일을 추출하여 사용자 단말(110)로 전송할 수도 있다.
이와 같이, 전송된 응용 프로그램의 설치 파일은 사용자 단말(110)에 의해 당해 사용자 단말(110)에 설치된다.
이하에서는 응용 프로그램이 사용자 단말에 설치되어 있는 것을 가정하여 설명하기로 한다.
단계 425에서 서비스 제공 장치(120)는 사용자 단말(110)로부터 실행된 응용 프로그램의 파일명 및 파일크기를 획득한다.
여기서, 서비스 제공 장치(120)는 사용자 단말(110)로부터 실행된 응용 프로그램의 실행 순서를 더 획득할 수도 있다.
단계 430에서 서비스 제공 장치(120)는 획득된 응용 프로그램의 파일명을 이용하여 기저장된 응용 프로그램의 파일 크기를 독출한다.
이어, 단계 435에서 서비스 제공 장치(120)는 사용자 단말(110)로부터 획득된 응용 프로그램의 파일 크기와 독출된 응용 프로그램의 파일 크기가 동일한지 여부를 판단한다. 여기서, 서비스 제공 장치(120)는 사용자 단말(110)에 의해 획득된 응용 프로그램의 파일 크기와 독출된 응용 프로그램의 파일 크기의 차이가 오차 범위 이내(예를 들어, 0.1바이트)인 경우에는 동일한 것으로 판단할 수 있다.
다른 예를 들어, 서비스 제공 장치(120)는 전술한 바와 같이, 응용 프로그램의 확장자를 더 획득하여 응용 프로그램의 인증에 이용할 수 있다. 이는 전술한 바와 동일하므로 중복되는 설명은 생략하기로 한다.
만일 획득된 응용 프로그램의 파일 크기와 독출된 응용 프로그램의 파일 크기가 동일한 경우, 단계 440에서 서비스 제공 장치(120)는 사용자 단말(110)에서 실행된 응용 프로그램이 정상 실행된 것으로 인식한다. 이에 따라, 서비스 제공 장치(120)는 사용자 단말(110)에 의해 실행된 응용 프로그램에 연동된 인터넷 서비스가 사용자 단말(110)로 제공되도록 제어할 수 있다.
반면, 획득된 응용 프로그램의 파일 크기와 독출된 응용 프로그램의 파일 크기가 상이한 경우, 단계 445에서 서비스 제공 장치(120)는 사용자 단말(110)에서 실행된 응용 프로그램이 비정상 실행된 것으로 인식한다.
이에 따라, 서비스 제공 장치(120)는 응용 프로그램 구동 에러 메시지를 생성하여 사용자 단말(110)로 전송하고, 사용자 단말(110)에 실행된 응용 프로그램이 종료되도록 제어한다. 물론, 구현 방법에 따라, 서비스 제공 장치(120)는 사용자 단말(110)과의 통신접속을 해제할 수도 있다.
예를 들어, 서비스 제공 장치(120)가 증권 거래에 관련된 서비스를 제공하는 경우를 가정하여 설명하면, 사용자 단말(110)의 접속에 따라 서비스 제공 장치(120)는 증권 거래 관련된 웹 페이지를 사용자 단말(110)로 전송한다.
이에 따라, 사용자 단말(110)은 해당 웹 페이지를 통해 증권 거래에 필요한 응용 프로그램(예를 들어, 조회 프로그램, 증권 매수 프로그램, 증권 매도 프로그램, 인증 프로그램 등)을 다운로드 요청하여 서비스 제공 장치(120)로부터 다운로드받아 설치할 수 있다.
사용자 단말(110)이 증권 거래를 위해 응용 프로그램을 실행하면, 사용자 인증을 위해 사용자 아이디 및 패스워드를 입력하면 사용자 인증을 위한 응용 프로그램이 실행된다. 이에 따라, 사용자 단말(110)은 사용자 인증을 위해 실행된 응용 프로그램의 파일명 및 파일크기를 획득하여 서비스 제공 장치(120)로 전송할 수 있다. 이때, 사용자 인증을 위한 응용 프로그램이 복수의 파일로 구성되는 경우, 사용자 단말(110)은 실행된 각 파일의 크기를 모두 합산하여 파일 크기로써 서비스 제공 장치(120)로 전송할 수 있다.
이에, 서비스 제공 장치(120)는 사용자 단말(110)로부터 수신된 응용 프로그램의 파일명을 이용하여 당해 서비스 제공 장치(120)에 기저장된 응용 프로그램의 파일 크기를 독출하고, 해당 독출된 응용 프로그램의 파일 크기와 사용자 단말(110)로부터 전송된 응용 프로그램의 파일 크기를 비교하여 응용 프로그램의 정상 실행 또는 비정상 실행 여부를 판단할 수 있다. 만일 독출된 응용 프로그램의 파일 크기와 사용자 단말(110)로부터 전송된 응용 프로그램의 파일 크기가 상이한 경우, 서비스 제공 장치(120)는 사용자 단말(110)에서 비정상적으로 응용 프로그램이 실행된 것으로 인식하여 사용자 단말(110)의 응용 프로그램이 실행 종료되도록 제어한다. 이어, 서비스 제공 장치(120)는 사용자 단말(110)로 증권 거래 관련 서비스가 제공되지 않도록 제어한 후 통신 접속을 해제할 수 있다.
도 4를 참조하여, 서비스 제공 장치(120)에서 사용자 단말(110)에 실행된 응용 프로그램에 대해 인증하는 방법에 대해 설명하였다. 이하에서는 사용자 단말(110)에서 서비스 제공 장치(120)와 연동하여 당해 사용자 단말(110)에 실행된 응용 프로그램에 대해 인증하는 방법에 대해 설명하기로 한다.
[도 5 설명]
도 5는 도 2의 사용자 단말에서 실행된 응용 프로그램에 대해 인증하는 방법을 설명하기 위해 도시한 순서도이다. 이하에서 수행되는 각각의 단계는 사용자 단말의 각각의 내부 구성 요소에 의해 수행되어지나 이해와 설명의 편의를 도모하기 위해 사용자 단말(110)로 통칭하여 설명하기로 한다.
단계 510에서 사용자 단말(110)은 인터넷 서비스(예를 들어, 전자 상거래, 금융 거래, 증권 거래, 콘텐츠 제공 등)를 제공하는 서비스 제공 장치(120)에 접속 요청하여 웹 페이지를 제공받는다.
단계 515에서 사용자 단말(110)은 웹 페이지를 통해 사용자에 의해 다운로드받을 응용 프로그램을 선택받은 후 서비스 제공 장치(120)로 다운로드 요청한다. 여기서, 다운로드 요청은 다운로드 받을 응용 프로그램의 식별정보를 포함한다. 다운로드 요청은 하나 이상의 응용 프로그램에 대한 다운로드 요청을 포함할 수 있다.
단계 520에서 사용자 단말(110)은 서비스 제공 장치(120)로부터 응용 프로그램의 설치 파일을 다운로드받는다.
본 실시예에서는 응용 프로그램이 사용자 단말(110)에 설치되는 것을 가정하여 서비스 제공 장치(120)로부터 다운로드 요청된 응용 프로그램에 대한 설치 파일을 다운로드받는 것을 가정하여 설명하나 응용 프로그램이 사용자 단말(110)에 설치되지 않는 형태인 경우에는 응용 프로그램을 직접 다운로드 받을 수도 있다.
또한, 본 실시예에서는 응용 프로그램으로 한정하여 설명하고 있으나, 다운로드되는 대상은 응용 프로그램 이외에도 콘텐츠일 수도 있으며, 일반 데이터일 수도 있다.
단계 525에서 사용자 단말(110)은 다운로드받은 응용 프로그램의 설치 파일을 이용하여 응용 파일을 설치한다.
이어, 단계 530에서 사용자 단말(110)은 서비스 제공 장치(120)로부터 응용 프로그램의 실행 순서 리스트를 수신받는다. 여기서, 응용 프로그램 실행 순서 리스트는 각 응용 프로그램의 실행 순서, 응용 프로그램 파일명 및 응용 프로그램 파일 크기 중 하나 이상을 포함할 수 있다.
본 실시예에서는 이해와 설명의 편의를 도모하기 위해, 사용자 단말(110)이 응용 프로그램 실행 순서 리스트를 서비스 제공 장치(120)로부터 수신받는 것을 가정하여 설명하였으나, 실행 순서와 파일명 및 파일 크기를 각각 수신받을 수도 있다.
단계 535에서 사용자 단말(110)은 사용자의 선택에 의해 응용 프로그램을 실행한다.
이어, 단계 540에서 사용자 단말(110)은 실행된 응용 프로그램의 파일 크기를 계산한다.
그리고, 단계 545에서 사용자 단말(110)은 계산된 파일크기와 수신된 응용 프로그램의 파일 크기가 동일한지 여부를 판단한다.
예를 들어, 사용자 단말(110)은 계산된 파일크기와 수신된 응용 프로그램의 파일 크기의 차이가 오차 범위 이내인 경우, 동일한 것으로 판단할 수 있다.
만일 계산된 파일크기와 수신된 응용 프로그램의 파일 크기가 동일한 경우, 단계 550에서 사용자 단말(110)은 실행된 응용 프로그램이 정상 실행된 것으로 인식한다. 이에 따라 사용자 단말(110)은 서비스 제공 장치(120)와의 연동하여 인터넷 서비스를 제공받도록 제어한다.
그러나 만일 계산된 파일크기와 수신된 응용 프로그램의 파일 크기가 상이한 경우, 단계 555에서 사용자 단말(110)은 실행된 응용 프로그래밍 비정상 실행된 것으로 인식한다. 이에 따라, 사용자 단말(110)은 실행된 응용 프로그램이 종료되도록 제어한다. 이어, 사용자 단말(110)은 서비스 제공 장치(120)와의 통신 접속을 해제할 수 있다.
한편, 본 발명의 실시예에 따른 사용자 단말에서 실행된 응용 프로그램을 인증하는 방법은 다양한 전자적으로 정보를 처리하는 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 저장 매체에 기록될 수 있다. 저장 매체는 프로그램 명령, 데이터 파일, 데이터 구조등을 단독으로 또는 조합하여 포함할 수 있다.
저장 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 소프트웨어 분야 당업자에게 공지되어 사용 가능한 것일 수도 있다. 저장 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 또한 상술한 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 전자적으로 정보를 처리하는 장치, 예를 들어, 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
110: 사용자 단말
120: 서비스 제공 장치
120: 서비스 제공 장치
Claims (20)
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 서비스 제공 장치로부터 응용 프로그램을 다운로드받아 설치하는 응용 프로그램 관리부;
상기 서비스 제공 장치로부터 응용 프로그램 파일명, 파일 크기 및 실행 순서 리스트를 수신하는 통신부;
설치된 응용 프로그램의 실행에 따른 실행된 응용 프로그램의 파일 크기를 계산하고, 상기 계산된 파일 크기와 수신된 응용 프로그램의 파일크기의 동일 여부 및 상기 실행된 응용 프로그램의 실행 순서와 상기 실행 순서 리스트와의 동일 여부 에 따라 상기 실행된 응용 프로그램을 인증하고, 인증 성공 또는 인증 실패에 따른 인증 결과를 출력하는 인증부- 상기 파일크기는 상기 실행된 응용 프로그램의 파일 크기이며, 상기 응용 프로그램이 복수의 파일로 구성되는 경우, 상기 복수의 파일 크기의 합임; 및
인증 결과가 인증 실패이면, 상기 실행된 응용 프로그램이 실행 종료되도록 제어하고, 상기 서비스 제공 장치와의 통신접속을 해제하는 단말 제어부를 포함하는 응용 프로그램을 인증하는 사용자 단말.
- 삭제
- 삭제
- 삭제
- 삭제
- 서비스 제공 장치와 통신망을 통해 연결된 사용자 단말에서 실행된 응용 프로그램을 인증하는 방법에 있어서,
(a) 상기 서비스 제공 장치로부터 응용 프로그램을 다운로드받아 설치하는 단계;
(b) 상기 서비스 제공 장치로부터 응용 프로그램 파일명, 파일 크기 및 실행 순서 리스트를 수신하는 단계;
(c) 설치된 응용 프로그램의 실행에 따른 실행된 응용 프로그램의 파일크기를 계산하는 단계-상기 파일크기는 상기 실행된 응용 프로그램의 파일 크기이며, 상기 응용 프로그램이 복수의 파일로 구성되는 경우, 상기 복수의 파일 크기의 합임;
(d) 상기 계산된 응용 프로그램의 파일크기와 상기 수신된 응용 프로그램의 파일 크기의 동일 여부 및 실행된 응용 프로그램의 실행 순서와 상기 실행 순서 리스트와의 동일 여부에 따라 상기 실행된 응용 프로그램을 인증을 수행하고, 인증 성공 또는 인증 실패에 따른 인증 결과를 출력하는 단계; 및
(d) 인증 결과가 인증 실패이면, 상기 실행된 응용 프로그램이 실행 종료되도록 제어하고, 상기 서비스 제공 장치와의 통신접속을 해제하는 단계를 포함하는 응용 프로그램을 인증하는 방법.
- 삭제
- 삭제
- 삭제
- 삭제
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100023913A KR101101322B1 (ko) | 2010-03-17 | 2010-03-17 | 응용 프로그램 인증 방법 및 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100023913A KR101101322B1 (ko) | 2010-03-17 | 2010-03-17 | 응용 프로그램 인증 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20110104802A KR20110104802A (ko) | 2011-09-23 |
KR101101322B1 true KR101101322B1 (ko) | 2011-12-30 |
Family
ID=44955412
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020100023913A KR101101322B1 (ko) | 2010-03-17 | 2010-03-17 | 응용 프로그램 인증 방법 및 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101101322B1 (ko) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8555402B2 (en) | 2012-01-26 | 2013-10-08 | Microsoft Corporation | Dynamic selection of authorization processes |
KR102197001B1 (ko) * | 2018-10-24 | 2020-12-30 | 김종호 | 인터넷 서비스를 파일 시스템으로 변환할 수 있는 장치 및 방법과 컴퓨터로 읽을 수 있는 기록매체 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100458515B1 (ko) * | 2001-12-21 | 2004-12-03 | 한국전자통신연구원 | 무선 인터넷을 통한 이동 단말용 응용프로그램 설치시스템 및 그 방법 |
-
2010
- 2010-03-17 KR KR1020100023913A patent/KR101101322B1/ko not_active IP Right Cessation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100458515B1 (ko) * | 2001-12-21 | 2004-12-03 | 한국전자통신연구원 | 무선 인터넷을 통한 이동 단말용 응용프로그램 설치시스템 및 그 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR20110104802A (ko) | 2011-09-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9667426B2 (en) | Information processing apparatus, program, storage medium and information processing system | |
JP5644770B2 (ja) | アクセス制御システム、サーバ、およびアクセス制御方法 | |
CN104584480A (zh) | 用于应用安全验证的云协助方法及服务 | |
KR20220019834A (ko) | 디바이스로의 보안 자격증명 전송을 인증하는 방법 및 시스템 | |
JP2003223235A (ja) | アプリケーション認証システム | |
US20140150055A1 (en) | Data reference system and application authentication method | |
US20170286873A1 (en) | Electronic ticket management | |
JP2010097512A (ja) | 携帯端末のアプリケーションダウンロードシステム及び方法 | |
KR101445137B1 (ko) | 근거리 통신 기반 스마트 카드 서비스 정보 제공 방법 | |
US11722307B2 (en) | Electronic device for processing digital key, and operation method therefor | |
KR20150106198A (ko) | 인증 방법, 인증 중계 서버 및 단말 | |
US20150106871A1 (en) | System and method for controlling access to security engine of mobile terminal | |
KR101101322B1 (ko) | 응용 프로그램 인증 방법 및 장치 | |
JP5277888B2 (ja) | アプリケーション発行システム、装置及び方法 | |
US11949779B2 (en) | Method and apparatus for registering shared key | |
CN112437071A (zh) | 设备控制的方法、系统、设备及存储介质 | |
KR101189802B1 (ko) | 응용 프로그램 인증 방법 및 장치 | |
CN105141586B (zh) | 一种对用户进行验证的方法和系统 | |
KR101481101B1 (ko) | Usim 보안토큰을 이용한 인증 서비스 방법 및 이를 위한 장치 | |
KR101502944B1 (ko) | 휴대단말을 이용한 전자서명 시스템 | |
CN112732676B (zh) | 基于区块链的数据迁移方法、装置、设备及存储介质 | |
KR20140106940A (ko) | 모바일 단말용 애플리케이션 검증 장치 | |
KR101498000B1 (ko) | 환자 관리 서버 노드 및 통신 서비스 서버 노드를 포함하는 무선 네트워크에서의 환자 관리 서비스 시스템 및 방법 | |
KR101351243B1 (ko) | 애플리케이션 인증 방법 및 그 시스템 | |
KR102348312B1 (ko) | 사용자 식별자 및 서명 수집을 이용한 모바일 애플리케이션 위변조 탐지 방법 및 시스템 |
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 | ||
X701 | Decision to grant (after re-examination) | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20141118 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20161221 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20171226 Year of fee payment: 7 |
|
LAPS | Lapse due to unpaid annual fee |