KR20150030047A - 애플리케이션 인증 방법 및 그 시스템 - Google Patents

애플리케이션 인증 방법 및 그 시스템 Download PDF

Info

Publication number
KR20150030047A
KR20150030047A KR20130109243A KR20130109243A KR20150030047A KR 20150030047 A KR20150030047 A KR 20150030047A KR 20130109243 A KR20130109243 A KR 20130109243A KR 20130109243 A KR20130109243 A KR 20130109243A KR 20150030047 A KR20150030047 A KR 20150030047A
Authority
KR
South Korea
Prior art keywords
application
authentication
execution
user terminal
authenticated
Prior art date
Application number
KR20130109243A
Other languages
English (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 KR20130109243A priority Critical patent/KR20150030047A/ko
Publication of KR20150030047A publication Critical patent/KR20150030047A/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/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명의 일 실시 예에 따르면, 애플리케이션 실행에 상응하여 인증을 수행하는 장치 및 시스템이 제공된다.
애플리케이션 실행에 따른 인증을 수행하는 시스템에 있어서,
사용자 단말기로부터 특정 애플리케이션 실행 요청을 수신하는 서비스 서버; 및
상기 서비스 서버로부터 상기 애플리케이션 실행 요청 수신에 따른 애플리케이션 인증 요청을 수신하고, 상기 인증 요청에 따라 상기 사용자 단말기로부터 사용자 정보 및 실행 환경 정보를 획득하여 사용자 인증 및 실행 인증을 수행한 후 사용자 인증 및 실행 인증 성공시 상기 실행 요청에 따른 애플리케이션이 상기 서비스 서버를 통해 실행되도록 제어하는 인증 서버를 포함하는 애플리케이션 인증 시스템이 제공된다.

Description

애플리케이션 인증 방법 및 그 시스템{Method and system for application authentication}
본 발명은 실행되는 애플리케이션에 대한 사용자 및 실행 인증을 수행할 수 있는 방법 및 그 시스템에 관한 것이다.
정보통신 기술의 발전에 따라 최근에는 컴퓨터, 스마트폰 등의 사용자 단말기를 통해 다양한 인터넷 서비스(예를 들어, 전자 상거래, 금융 거래, 콘텐츠 제공, 다양한 정보 이용 등)가 사용자에게 제공되고 있다.
국내 공개특허공보 10-2002-0011509에는 프로그램의 불법 복제 상황을 감시할 수 있도록 하는 프로그램 불법복제 감시방법을 제공하고 있다.
인터넷을 통해 제공되는 인터넷 서비스의 이용을 위해 웹 페이지를 통해 아이디 및 패스워드를 입력하거나 전자 인증 절차를 통해 인증을 거쳐야만 한다. 그러나 이와 같은 현재의 방법은 악성 코드 또는 사이트 피싱에 취약하여 데이터 유출 또는 데이터 위/변조를 방지하는데 어려움이 있다.
한국공개특허공보 10-2002-0011509 [프로그램 불법복제 감시방법]
본 발명은 사용자 단말기에서 실행되는 응용 프로그램에 대해 인증할 수 있는 방법 및 장치를 제공하기 위한 것이다.
이에 따라, 본 발명은 악성 코드 또는 사이트 피싱에 의한 데이터 유출 또는 데이터 위/변조를 방지할 수 있다.
본 발명의 일 측면에 따르면, 애플리케이션 실행에 상응하여 인증을 수행하는 방법이 제공된다.
본 발명의 일 실시 예에 따르면,
인증 장치에서 애플리케이션 실행에 따른 실행 인증을 수행하는 방법에 있어서, 애플리케이션 실행 명령에 따라 실행 환경 정보를 취합하는 단계;
상기 취합된 실행 환경 정보 및 상기 애플리케이션에 설정된 인증 설정 조건을 비교하여 상기 애플리케이션에 대한 실행 인증을 수행하는 단계; 및
상기 실행 인증이 성공한 경우, 상기 애플리케이션 실행 조건에 따라 상기 애플리케이션을 실행하도록 제어하는 단계를 포함하되,
상기 애플리케이션 실행 조건은,
네트워크 접속 허용 여부, 상기 애플리케이션 실행에 따른 데이터 편집 여부 및 출력 또는 저장 허용 여부 중 적어도 하나인 것을 특징으로 하며,
상기 실행 인증이 실패한 경우,
상기 실행 명령에 따른 애플리케이션의 실행을 차단하는 단계; 를
포함하는 애플리케이션 인증 방법이 제공된다.
또한, 상기 애플리케이션 인증 실패 통지에는 상기 애플리케이션을 삭제하거나 또는 상기 애플리케이션에 대한 업데이트 준비하는 명령을 더 포함하는 것을 특징으로 한다.
또한, 상기 애플리케이션의 실행을 차단하는 단계 이후에,
사용자 단말기로 애플리케이션 인증 실패 통지 단계; 및
사용자 단말기로 인증된 애플리케이션을 전송하는 단계를 더 포함하는 것을 특징으로 한다.
또한, 상기 사용자 단말기로 인증된 애플리케이션을 전송하는 것은,
상기 인증된 애플리케이션을 암호화하거나, 난수화하거나, 또는 난독화하는 것 중 어느 하나에 의한 것을 특징으로 한다.
본 발명의 또 다른 측면에 따르면, 애플리케이션 실행에 상응하여 인증을 수행하는 장치 및 시스템이 제공된다.
본 발명의 일 실시 예에 따르면, 애플리케이션 실행에 따른 인증을 수행하는 장치에 있어서,
복수의 애플리케이션 및 인증용 애플리케이션을 저장하는 메모리;
상기 인증 애플리케이션을 실행하는 프로세서를 포함하되,
상기 인증 애플리케이션은 다른 애플리케이션 실행 명령에 따라 실행 환경 정보를 취합하고, 상기 취합된 실행 환경 정보 및 상기 다른 애플리케이션에 설정된 인증 설정 조건을 비교하여 상기 다른 애플리케이션에 대한 실행 인증을 수행하며,
상기 실행 인증이 성공한 경우, 상기 다른 애플리케이션 실행 조건에 따라 상기 다른 애플리케이션을 실행하도록 제어하되, 상기 다른 애플리케이션 실행 조건은, 네트워크 접속 허용 여부, 상기 애플리케이션 실행에 따른 데이터 편집 여부 및 출력 또는 저장 허용 여부 중 적어도 하나인 것을 특징으로 하며,
상기 실행 인증이 실패한 경우,
상기 실행 명령에 따른 애플리케이션의 실행을 차단하는 것을 특징으로 하는 애플리케이션 인증을 위한 장치가 제공된다.
또한, 본 발명의 일 실시 예에 따르면,
애플리케이션 실행에 따른 인증을 수행하는 시스템에 있어서,
사용자 단말기로부터 특정 애플리케이션 실행 요청을 수신하는 서비스 서버; 및
상기 서비스 서버로부터 상기 애플리케이션 실행 요청 수신에 따른 애플리케이션 인증 요청을 수신하고, 상기 인증 요청에 따라 상기 사용자 단말기로부터 사용자 정보 및 실행 환경 정보를 획득하여 사용자 인증 및 실행 인증을 수행한 후 사용자 인증 및 실행 인증 성공시 상기 실행 요청에 따른 애플리케이션이 상기 서비스 서버를 통해 실행되도록 제어하는 인증 서버를 포함하는 애플리케이션 인증 시스템이 제공된다.
본 발명의 실시 예에 따른 응용 프로그램 인증 방법 및 장치를 제공함으로써, 사용자 단말기에서 실행되는 응용 프로그램에 대해 인증할 수 있으며, 결과적으로 악성 코드 또는 사이트 피싱에 의한 데이터 유출 또는 데이터 위/변조를 방지할 수 있다.
도 1은 본 발명의 일 실시 예에 따른 애플리케이션을 인증하기 위한 인증 시스템의 구성을 나타낸 블록도.
도 2는 본 발명의 일 실시 예에 따른 사용자 단말기의 내부 구성을 개략적으로 도시한 블록도.
도 3은 본 발명의 일 실시 예에 따른 인증 서버의 내부 구성을 개략적으로 도시한 블록도.
도 4는 본 발명의 일 실시 예에 따른 애플리케이션에 대한 인증을 수행하는 방법을 나타낸 순서도.
도 5는 본 발명의 일 실시 예에 따른 애플리케이션에 대한 인증을 수행하는 방법을 나타낸 순서도.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시 예를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
이하, 본 발명의 실시 예를 첨부한 도면들을 참조하여 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시 예에 따른 애플리케이션을 인증하기 위한 인증 시스템의 구성을 나타낸 블록도이다.
도 1을 참조하면, 인증 시스템은, 사용자 단말기(110), 서비스 서버(120) 및 인증 서버(130)를 포함하여 구성된다.
사용자 단말기(110)는 적어도 하나의 애플리케이션을 당해 사용자 단말기(110)에 설치하고, 해당 설치된 애플리케이션을 실행하기 위한 수단이다. 다른 실시 예에 따르면, 애플리케이션은 서비스 서버(120)를 통해 실행될 수 있으며, 이때, 사용자 단말기(110)는 서비스 서버(120)를 통한 애플리케이션 실행에 따른 실행 화면을 제공받아 표출할 수도 있다.
즉, 사용자 단말기(110)는 당해 사용자 단말기(110)에 설치된 애플리케이션을 실행할 수도 있으며, 서비스 서버(120)에 접속하여 특정 애플리케이션을 실행시킨 후 실행 화면을 당해 사용자 단말기(110)를 통해 표출할 수도 있다.
사용자 단말기(110)의 유형으로는 예를 들어, 이동통신 단말기, 노트북, 개인 컴퓨터, PDA, 태블릿 PC 등과 같은 전자 장치인 경우 모두 동일하게 적용될 수 있다.
서비스 서버(120)는 사용자 단말기(110)의 요청에 따라 특정 애플리케이션을 실행한 후 애플리케이션 실행에 따른 화면(실행 화면이라 칭하기로 함)을 당해 사용자 단말기(110)로 제공하여 표출하기 위한 수단이다.
도 1에서는 인증 시스템에 서비스 서버(120)가 포함되는 것을 가정하여 설명하고 있으나, 구현 방법에 따라 서비스 서버(120)는 미포함될 수도 있다.
즉, 서비스 서버(120)를 통해 특정 애플리케이션이 실행되는 경우, 애플리케이션 실행에 따른 데이터 연산, 데이터 저장 등은 해당 서비스 서버(120)에서 수행되며, 사용자 단말기(110)는 단지 애플리케이션 실행에 따른 실행 화면을 제공받아 표출할 수 있다.
인증 서버(130)는 사용자 단말기(110)의 애플리케이션 실행에 상응하여 애플리케이션에 대해 인증을 수행하기 위한 수단이다.
예를 들어, 인증 서버(130)는 사용자 단말기(110) 또는 서비스 서버(120)를 통해 실행 요청된 애플리케이션에 대해 인증을 수행하여 인증 결과에 따라 실행 요청된 애플리케이션의 실행 여부를 제어하기 위한 수단이다. 여기서, 인증 결과를 인증 성공 및 인증 실패 중 어느 하나일 수 있다.
예를 들어, 인증 서버(130)는 애플리케이션을 실행하기 위한 사용자 인증을 1차 수행하고, 1차 인증이 성공하면, 매체 인증을 2차 인증으로써 수행할 수 있다. 여기서, 매체 인증은 사용자 단말기(110)에 대한 장치 및 접속한 네트워크에 대한 인증일 수 있다.
인증 서버(130)에서 애플리케이션에 대한 사용 인증을 수행하는 방법에 대해서는 하기에서 관련 도면을 참조하여 보다 상세히 설명하기로 한다.
도 1에서는 인증 서버(130)에서 애플리케이션에 대한 사용 인증을 수행하는 것을 가정하고 있으나, 애플리케이션에 대한 사용 인증은 사용자 단말기(110)에서 수행될 수도 있다.
도 2는 본 발명의 일 실시 예에 따른 사용자 단말기의 내부 구성을 개략적으로 도시한 블록도이다.
도 2를 참조하면, 사용자 단말기(110)는 통신 수단(210), 터치스크린(215), 메모리(220) 및 프로세서(225)를 포함하여 구성된다.
통신 수단(210)은 도 2에는 도시되어 있지 않으나 안테나와 RF 데이터 송수신 수단을 포함할 수 있다. 통신 수단(210)은 통신망을 통해 다른 장치들(예를 들어, 서비스 서버(120) 또는 인증 서버(130))와 데이터를 송수신하기 위한 수단이다.
터치스크린(215)은 사용자로부터 당해 사용자 단말기(110)를 제어하기 위한 다양한 제어 명령, 애플리케이션의 실행을 제어하기 위한 제어 명령 등을 입력받거나 다양한 데이터를 시각 정보의 형태로 표출하기 위한 수단이다.
도 2에서는 데이터 또는 제어 명령 등을 사용자로부터 입력받기 위한 입력 수단과 데이터를 시각 정보의 형태로 표출하기 위한 출력 수단이 하나의 구성 요소(즉, 터치스크린)로 통합된 것을 가정하여 설명하고 있으나, 구현 방법에 따라 사용자 단말기(110)는 입력 수단과 출력 수단을 별도의 구성으로 각각 구비할 수도 있다.
메모리(220)는 당해 사용자 단말기(110)를 운용하기 위해 필요한 다양한 애플리케이션, 해당 애플리케이션 실행에 따른 당해 애플리케이션에 대한 실행 인증을 수행하기 위한 인증 애플리케이션을 저장한다. 물론, 이외에도 메모리(220)는 당해 사용자 단말기(110)의 소지자를 인증하기 위해 인증 기관을 통해 발급받은 인증서, 전자 서명 등을 저장할 수도 있다.
프로세서(225)는 본 발명의 일 실시 예에 따른 사용자 단말기(110)의 내부 구성 요소들(예를 들어, 통신 수단(210), 터치스크린(215), 메모리(220) 등)을 제어하기 위한 수단이다.
또한, 프로세서(225)는 메모리(220)에 저장된 다양한 애플리케이션, 인증 애플리케이션 등을 실행하기 위한 수단이다. 프로세서(225)는 실행된 인증 애플리케이션을 통해 다른 애플리케이션 실행에 따른 사용자 인증 및 실행 인증을 수행할 수 있다. 이에, 프로세서(225)는 인증 애플리케이션을 백그라운드로 실행할 수 있다. 또한, 프로세서(225)는 특정 다른 애플리케이션 실행 명령에 따라 해당 다른 애플리케이션을 실행시키기 이전에, 인증 애플리케이션을 우선 실행하고, 실행된 인증 애플리케이션을 통해 다른 애플리케이션에 대한 사용자 인증 및 실행 인증을 수행할 수 있다.
도 2에는 별도로 설명되고 있지 않으나, 각 애플리케이션은 애플리케이션 설치 시점 또는 애플리케이션이 설치된 이후 실행 시점(예를 들어, 최초 실행시)에 각 사용자에 의해 해당 애플리케이션에 대한 인증 설정 조건이 설정될 수 있다. 물론, 구현 방법에 따라, 당해 사용자 단말기(110)에 해당 애플리케이션에 대한 설치 파일이 다운로드시 또는 해당 애플리케이션이 설치된 이후, 해당 애플리케이션에 대해 해당 애플리케이션을 배포한 배포자 또는 해당 애플리케이션을 관리하는 관리자 등에 의해 설정된 인증 설정 조건이 설정되어 애플리케이션과 함께 저장될 수도 있다.
예를 들어, 프로세서(225)를 통해 실행된 인증 애플리케이션은 실행 명령에 따른 다른 애플리케이션에 대한 사용자 인증을 수행한다. 이때, 프로세서(225)를 통해 실행된 인증 애플리케이션은 사용자 인증 수행을 위해, 사용자 식별정보, 인증서 및 전사 서명 중 적어도 하나를 이용하여 사용자 인증을 수행할 수 있다.
사용자 인증을 수행하여 사용자 인증이 성공하면, 프로세서(225)를 통해 실행된 인증 애플리케이션은 해당 다른 애플리케이션의 실행 환경 정보를 취합하고, 취합된 실행 환경 정보와 해당 다른 애플리케이션에 설정된 인증 설정 조건을 비교하여 해당 다른 애플리케이션에 대한 실행 인증을 수행할 수 있다.
여기서, 실행 환경 정보는 해당 애플리케이션이 실행되는 장치, 네트워크 등에 대한 환경 정보로, 예를 들어, 해당 다른 애플리케이션이 실행될 매체(즉, 단말)의 식별정보(예를 들어, MAC 어드레스 등), 해당 매체의 네트워크 정보(예를 들어, 접속 포트 및 IP 어드레스 등) 및 실행 시간 중 적어도 하나일 수 있다.
인증 애플리케이션은 실행 명령에 따른 다른 애플리케이션에 설정된 인증 설정 조건에 따라 실행 환경 정보를 취합하고, 취합된 실행 환경 정보가 인증 설정 조건에 일치하는지 여부를 판단하여 실행 인증을 수행할 수 있다. 여기서, 실행 인증은 인증 성공 또는 인증 실패일 수 있다.
만일 실행 인증이 인증 성공이면, 프로세서(225)는 해당 실행 명령에 따른 다른 애플리케이션에 설정된 실행 조건에 따라 실행되도록 제어할 수 있다. 예를 들어, 실행 조건은 네트워크 접속 허용 여부, 애플리케이션 실행에 따른 데이터 편집 여부, 출력 또는 저장 허용 여부 중 적어도 하나를 포함할 수 있다.
만일 네트워크 접속 허용 여부가 “접속 미허용”으로 설정된 경우, 프로세서(225)는 해당 애플리케이션이 실행되는 동안 네트워크 접속되지 않도록 네트워크 기능을 차단할 수 있다.
또한, 데이터 편집 여부가 “편집 허용”으로 설정된 경우, 프로세서(225)는 애플리케이션 실행에 따른 데이터가 편집되도록 제어할 수 있다. 그러나 만일 데이터 편집 여부가 “편집 미허용”으로 설정된 경우, 프로세서(225)는 애플리케이션 실행에 상응하여 데이터 편집이 불가능하도록 제어할 수 있다. 이와 같은 경우, 사용자는 해당 애플리케이션 실행에 상응하여 단순히 데이터를 확인할 수 있을 뿐이다.
또한, 출력 또는 저장 허용 여부가 “출력 또는 저장 허용”으로 설정된 경우, 프로세서(225)는 애플리케이션 실행에 상응하여 외부 프린터를 통해 데이터가 출력되거나 특정 매체에 저장하도록 제어할 수 있다.
이때, 출력 또는 저장 허용 여부가 “출력 또는 저장 허용”인 경우, 해당 프로세서(225)는 해당 애플리케이션에 상응하여 출력 매체 또는 저장 매체를 별도로 등록받아 설정할 수 있으며, 해당 출력 매체 또는 저장 매체로만 데이터를 출력 또는 저장하도록 제어할 수 있다.
이와 같이, 출력 매체 또는 저장 매체가 별도로 설정된 경우, 프로세서(225)는 실행된 해당 애플리케이션을 통한 출력 또는 저장 명령이 입력되면, 출력 매체 또는 저장 매체를 확인한 후 상이한 경우 데이터가 출력 또는 저장되지 않도록 제어할 수 있다.
도 2에서는 특정 애플리케이션에 대한 인증을 사용자 단말기(110)에서 수행하는 것을 가정하여 이를 중심으로 설명하였다.
이하, 도 3에서는 사용자 단말기(110)에서 실행되거나 사용자 단말기(110)의 요청에 의해 실행되는 애플리케이션에 대한 인증을 인증 서버(130)에서 수행하는 경우를 가정하여 인증 서버(130)의 구성에 대해 상세히 설명하기로 한다.
도 3은 본 발명의 일 실시 예에 따른 인증 서버의 내부 구성을 개략적으로 도시한 블록도이다.
도 3을 참조하면, 인증 서버(130)는 통신 수단(310), 저장 수단(315) 및 제어 수단(320)을 포함하여 구성된다.
통신 수단(310)은 통신망을 통해 다른 장치(예를 들어, 사용자 단말기(110))와 데이터를 송수신하기 위한 수단이다.
저장 수단(315)은 복수의 애플리케이션, 각 애플리케이션에 대한 인증 설정 조건 및 실행 조건을 저장한다. 이때, 애플리케이션 중 어느 하나는 다른 애플리케이션에 대한 사용자 인증, 실행 인증을 수행하기 위한 인증 애플리케이션일 수 있다.
제어 수단(320)은 당해 인증 서버(130)의 내부 구성 요소를 제어하기 위한 수단이다. 또한, 제어 수단(320)은 사용자 단말기(110)의 프로세서(225)와 같이, 사용자 단말기(110)를 통해 실행되는 애플리케이션에 대한 인증을 수행하기 위한 수단이다. 이에 대해서는 전술한 바와 동일하므로 중복되는 설명은 생략하기로 한다.
도 4는 본 발명의 일 실시 예에 따른 애플리케이션에 대한 인증을 수행하는 방법을 나타낸 순서도이다. 이하에서 수행되는 각각의 단계는 사용자 단말기(110)의 각각의 내부 구성 요소에 의해 수행되나 이해와 설명의 편의를 도모하기 위해 사용자 단말기(110)로 통칭하여 설명하기로 한다.
단계 410에서 사용자 단말기(110)는 사용자로부터 임의의 특정 애플리케이션 실행 명령을 입력받는다.
단계 415에서 사용자 단말기(110)는 애플리케이션 실행 명령의 입력에 따라 사용자로부터 사용자 정보를 입력 또는 선택받는다.
단계 420에서 사용자 단말기(110)는 입력 또는 선택된 사용자 정보를 이용하여 사용자 인증을 수행한다. 예를 들어, 사용자 단말기(110)는 기저장된 사용자 정보와 입력 또는 선택된 사용자 정보를 비교하여 일치하는지 여부에 따라 사용자 인증을 수행할 수 있다.
사용자 단말기(110)는 각 애플리케이션에 대해 해당 애플리케이션을 실행 가능한 사용자를 각각 등록받아 별도로 관리할 수 있다. 이에 따라, 사용자 단말기(10)는 특정 애플리케이션 실행에 상응하여 사용자 정보를 입력 또는 선택받고, 해당 사용자가 등록된 사용자인지 여부를 확인할 수 있다.
사용자 인증 수행 결과 인증 실패이면, 단계 425에서 사용자 단말기(110)는 실행 명령에 상응하는 애플리케이션의 실행을 차단한다.
그러나 만일 사용자 인증 수행 결과 인증 성공이면, 단계 430에서 사용자 단말기(110)는 당해 사용자 단말기(110)에 대한 실행 환경 정보를 취합한다.
전술한 바와 같이, 각 애플리케이션별로 해당 애플리케이션을 실행하기 위한 다양한 설정 조건이 설정될 수 있다. 이에 따라, 사용자 단말기(110)는 실행 명령에 상응하여 설정된 애플리케이션에 상응하여 실행 환경 정보를 취합한다.
실행 환경 정보는 전술한 바와 같이, 해당 애플리케이션이 실행되는 장치, 네트워크 등에 대한 환경 정보로, 예를 들어, 해당 다른 애플리케이션이 실행될 매체(즉, 단말)의 식별정보(예를 들어, MAC 어드레스 등), 해당 매체의 네트워크 정보(예를 들어, 접속 포트 및 IP 어드레스 등) 및 실행 시간 중 적어도 하나일 수 있다.
단계 435에서 사용자 단말기(110)는 취합된 실행 환경 정보와 해당 실행 명령에 상응하는 애플리케이션에 설정된 인증 설정 조건을 이용하여 실행 인증을 수행한다.
전술한 바와 같이, 사용자 단말기(110)는 각 애플리케이션에 설정된 인증 설정 조건과 해당 취합된 실행 환경 정보가 일치하는지 여부를 비교하여 해당 애플리케이션에 대한 실행 인증을 수행할 수 있다.
실행 인증 수행 결과 인증 실패이면, 단계 425와 같이, 사용자 단말기(110)는 실행 명령에 상응하는 애플리케이션의 실행을 차단할 수 있다.
그러나 만일 실행 인증 수행 결과 인증 성공이면, 단계 440에서 사용자 단말기(110)는 당해 실행 명령에 상응하는 애플리케이션에 설정된 실행 조건에 따라 해당 애플리케이션이 실행되도록 제어한다.
여기서, 실행 조건은 네트워크 접속 허용 여부, 애플리케이션 실행에 따른 데이터 편집 여부, 출력 또는 저장 허용 여부 중 적어도 하나를 포함할 수 있다. 이는 전술한 바와 동일하므로 중복되는 설명은 생략하기로 한다.
도 4를 참조하면, 실행 인증 수행 결과 인증 실패이면, 단계 610에서 애플리케이션 정비를 수행한다.
상기 단계 610에서 설치된 애플리케이션이 상이한 경우에는 기존에 설치한 애플리케이션을 삭제하거나, 기존의 애플리케이션을 업테이트할 것인지를 판단한다.
예를 들면, 인증결과 전혀 상이한 애플리케이션인 경우에는 삭제를 하고, 애플리케리션 버전이 상이한 경우에는 업데이트할 것으로 결정할 수 있다.
본 발명의 일 실시 예에 따르면, 인증결과 상이하여 삭제를 하여야 할 경우는, 매체별 버전, 경우, 사용자의 아이디, 패스워드, 인터넷 PC인 경우 인터넷주소, MAC 어드레스, 서버의 경우 서버명, IP주소 중 어느 하나 이상이 상이한 경우일 수 있다.
단계 611에서 사용자 단말기(110)가 인증시스템에 제2 애플리케이션을 다운로드 요청한다.
본 발명에서 제2 애플리케이션은 단계 410에서 실행 명령을 받은 임의의 특정 애플리케이션에 대하여 정상적인 것으로 인증된 애플리케이션을 의미한다.
단계 612에서는 인증시스템에서 제2 애플리케이션을 전송받아 사용자 단말기(110)에 상기 제2 애플리케이션을 생성하게 된다.
단계 612에서 인증시스템에서 애플리케이션을 사용자 단말기(110)에 전송할 때에는 암호화하거나, 난수화하거나, 또는 난독화하여 전송할 수 있다.
단계 612에서 제2 애플리케이션이 생성된 이후에는 다시 415단계로 돌아가서 설치된 애플리케이션이 정상적으로 실행될 수 있는 파일인지를 검증하게 된다.
도 4에는 별도로 설명하고 있지 않으나, 애플리케이션이 설치되기 이전에, 다운로드 받는 경우에도 해당 애플리케이션에 대해 인증을 수행할 수 있다. 이때, 사용자 단말기(110)는 해당 애플리케이션 설치 파일은 복수의 개별 설치 파일로 구성될 수 있다. 사용자 단말기(110)는 해당 애플리케이션 설치 파일을 다운로드 받을 때, 각 애플리케이션 설치 파일에 기재된 개별 설치 파일의 실행 순서, 각 개별 설치 파일의 크기를 함께 다운로드를 받을 수 있다. 이에 따라, 해당 애플리케이션 설치시, 개별 설치 파일의 실행 순서 및 파일 크기와 다운로드 받은 개별 설치 파일 실행 순서 및 크기를 비교하여 해당 애플리케이션 설치 파일에 대해 인증을 수행할 수도 있다. 사용자 단말기(110)는 각 애플리케이션 설치 파일에 대한 인증이 완료되면, 실행 조건에 지정된 저장 매체 또는 저장 위치에 해당 애플리케이션을 저장할 수도 있다.
도 5는 본 발명의 일 실시예에 따른 애플리케이션에 대한 인증을 수행하는 방법을 나타낸 순서도이다.
단계 510에서 사용자 단말기(110)는 애플리케이션 실행 요청을 서비스 서버(120)로 전송한다.
단계 515에서 서비스 서버(120)는 애플리케이션 실행 요청에 상응하는 인증 요청을 인증 서버(130)로 전송한다.
단계 520에서 인증 서버(130)는 인증 요청을 수신하고 인증 애플리케이션을 실행하여 사용자 단말기(110)로 사용자 정보 제공을 요청하여 획득한다.
이에, 단계 525에서 인증 서버(130)는 획득된 사용자 정보와 기저장된 사용자 정보를 비교하여 사용자 인증을 수행한다.
사용자 인증 수행 결과 인증 실패이면, 단계 530에서 인증 서버(130)는 애플리케이션 실행이 차단되도록 제어한다.
그러나 만일 사용자 인증 수행 결과 인증 성공이면, 단계 535에서 인증 서버(130)는 사용자 단말기(110)에 대한 애플리케이션 실행을 위한 실행 환경 정보를 취합하여 획득한다.
이어, 단계 540에서 인증 서버(130)는 취합된 실행 환경 정보와 해당 실행 명령에 상응하는 애플리케이션에 설정된 인증 설정 조건을 이용하여 실행 인증을 수행한다.
실행 인증 수행 결과 인증 실패이면, 단계 530과 같이, 인증 서버는 애플리케이션의 실행을 차단되도록 제어할 수 있다.
그러나 만일 실행 인증 수행 결과 인증 성공이면, 단계 545에서 인증 서버(130)는 애플리케이션에 설정된 실행 조건에 따라 해당 애플리케이션이 실행되도록 제어한다.
본 발명의 일 실시 예에 따르면, 해당 애플리케이션의 실행은 서비스 서버를 통하여 실행되도록 제어할 수 있다.
또한, 상기 인증서버는 주어진 프로세스에 따라 해당 애플리케이션의 실행은 서비스 서버를 통하여 실행되도록 제어할 수도 있다.
도 5를 참조하면, 실행 인증 수행 결과 인증 실패이면, 단계 530에서 애플리케이션 실행 차단 명령과 함께 애플리케이션 인증 실패 통지(710)를 한다.
본 발명의 일 실시 예에 따르면, 인증서버는 상기 실행 요청에 따른 애플리케이션이 상기 서비스 서버를 통해 실행되지 못하도록 차단 제어를 할 수 있다.
본 발명의 또 다른 실시 예에 따르면, 인증서버는 상기 실행 요청에 따른 애플리케이션이 상기 사용자 단말기를 통해 실행되지 못하도록 차단 제어를 할 수 있다.
본 발명의 일 실시 예에 따르면, 상기 단계 710에서 애플리케이션 인증 실패 통지에는 애플리케이션 삭제 또는 애플리케이션을 업데이트 명령이 포함될 수 있다.
예를 들면, 애플리케이션의 내용이 상이한 경우에는 기존에 설치한 애플리케이션을 삭제하는 명령이 포함되며, 또는 애플리케이션의 버전만 상이한 경우에는 애플리케이션을 업테이트 명령이 포함될 수 있다.
사용자 단말기는 애플리케이션 인증 실패 통지를 전송받은 후, 단계 711에서 애플리케이션 인증 실패 통지 내용에 따라 애플리케이션 정비를 수행한다.
상기 단계 711에서 애플리케이션을 의 내용이 상이한 경우에는 기존에 설치한 애플리케이션을 삭제한다.
또는 애플리케이션의 버전만 상이한 경우에는 애플리케이션을 업테이트할 준비를 한다.
단계 712에서 사용자 단말기가 인증시스템에 제2 애플리케이션을 다운로드 요청한다.
그러나 또 다른 실시 예에서는 상기 사용자 단말기가 인증시스템에 제2 애플리케이션을 다운로드 요청하는 단계 없이, 인증시스템에서 전송 여부를 판단하여 직접 사용자 단말기로 정상적인 애플리케이션 파일을 전송할 수 있다.
단계 612에서는 인증시스템에서 제2 애플리케이션을 전송받아 사용자 단말기에 상기 제2 애플리케이션을 생성하게 된다.
단계 7152에서 인증시스템에서 제2 애플리케이션을 사용자 단말기에 전송할 때에는 암호화하거나, 난수화하거나, 또는 난독화하여 전송할 수 있다.
단계 715에서 제2 애플리케이션이 생성된 이후에는 다시 510단계로 돌아가서 설치된 애플리케이션이 정상적으로 실행될 수 있는 파일인지를 다시 인증 요청하는 절차를 수행할 수 있다.
또한, 도 5에는 별도로 도시하고 있지 않으나, 인증 서버(130)는 각 애플리케이션을 관리하는 관리자에 대한 인증을 수행할 수도 있다. 즉, 서비스 서버(120)에서 관리되는 애플리케이션의 갱신(예를 들어, 패치), 애플리케이션 추가, 삭제 등을 수행하기 위해 관리자가 특정 애플리케이션을 실행하는 경우, 해당 관리자에 대한 식별정보를 입력 또는 선택받고, 기저장된 관리자 정보와 비교하여 관리자에 대한 인증을 수행할 수도 있다.
한편, 본 발명의 실시예에 따른 애플리케이션에 대한 사용 인증을 수행하는 방법은 다양한 전자적으로 정보를 처리하는 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 저장 매체에 기록될 수 있다. 저장 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.
저장 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 소프트웨어 분야 당업자에게 공지되어 사용 가능한 것일 수도 있다. 저장 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 전자적으로 정보를 처리하는 장치, 예를 들어, 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
상기에서는 본 발명의 바람직한 실시 예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
110: 사용자 단말기
120: 서비스 서버
130: 인증 서버

Claims (14)

  1. 인증 장치에서 애플리케이션 실행에 따른 실행 인증을 수행하는 방법에 있어서,
    애플리케이션 실행 명령에 따라 실행 환경 정보를 취합하는 단계;
    상기 취합된 실행 환경 정보 및 상기 애플리케이션에 설정된 인증 설정 조건을 비교하여 상기 애플리케이션에 대한 실행 인증을 수행하는 단계; 및
    상기 실행 인증이 성공한 경우, 상기 애플리케이션 실행 조건에 따라 상기 애플리케이션을 실행하도록 제어하는 단계를 포함하되,
    상기 애플리케이션 실행 조건은,
    네트워크 접속 허용 여부, 상기 애플리케이션 실행에 따른 데이터 편집 여부 및 출력 또는 저장 허용 여부 중 적어도 하나인 것을 특징으로 하며,
    상기 실행 인증이 실패한 경우,
    상기 실행 명령에 따른 애플리케이션의 실행을 차단하는 단계; 를
    포함하는 애플리케이션 인증 방법.
  2. 제1항에 있어서,
    상기 애플리케이션의 실행을 차단하는 단계 이후에,
    사용자 단말기로 애플리케이션 인증 실패 통지 단계; 및
    상기 사용자 단말기로 인증된 애플리케이션을 전송하는 단계를 더 포함하는 것을 특징으로 하는 애플리케이션 인증 방법.
  3. 제2항에 있어서
    상기 애플리케이션 인증 실패 통지에는 상기 애플리케이션을 삭제하거나 또는 상기 애플리케이션에 대한 업데이트 준비하는 명령을 더 포함하는 것을 특징으로 하는 애플리케이션 인증 방법.
  4. 제2항에 있어서
    상기 사용자 단말기로 인증된 애플리케이션을 전송하는 것은,
    상기 인증된 애플리케이션을 암호화하거나, 난수화하거나, 또는 난독화하는 것 중 어느 하나에 의한 것을 특징으로 하는 애플리케이션 인증 방법.
  5. 애플리케이션 실행에 따른 인증을 수행하는 장치에 있어서,
    복수의 애플리케이션 및 인증용 애플리케이션을 저장하는 메모리;
    상기 인증 애플리케이션을 실행하는 프로세서를 포함하되,
    상기 인증 애플리케이션은 다른 애플리케이션 실행 명령에 따라 실행 환경 정보를 취합하고, 상기 취합된 실행 환경 정보 및 상기 다른 애플리케이션에 설정된 인증 설정 조건을 비교하여 상기 다른 애플리케이션에 대한 실행 인증을 수행하며,
    상기 실행 인증이 성공한 경우, 상기 다른 애플리케이션 실행 조건에 따라 상기 다른 애플리케이션을 실행하도록 제어하되, 상기 다른 애플리케이션 실행 조건은, 네트워크 접속 허용 여부, 상기 애플리케이션 실행에 따른 데이터 편집 여부 및 출력 또는 저장 허용 여부 중 적어도 하나인 것을 특징으로 하며,
    상기 실행 인증이 실패한 경우,
    상기 실행 명령에 따른 애플리케이션의 실행을 차단하는 것을 특징으로 하는 애플리케이션 인증을 위한 장치.
  6. 제5 항에 있어서,
    상기 실행 인증이 실패한 경우,
    사용자 단말기에 상기 애플리케이션을 삭제하거나 또는 상기 애플리케이션에 대한 업데이트 준비하는 명령을 전송하는 것을 더 포함하는 것을 특징으로 하는 애플리케이션 인증을 위한 장치.
  7. 제5항에 있어서,
    상기 실행 인증이 실패한 경우,
    사용자 단말기로 인증된 애플리케이션을 전송하는 것을 더 포함하는 것을 특징으로 하는 애플리케이션 인증을 위한 장치
  8. 제7항에 있어서
    상기 사용자 단말기로 인증된 애플리케이션을 전송하는 것은,
    상기 인증된 애플리케이션을 암호화하거나, 난수화하거나, 또는 난독화하는 것 중 어느 하나에 의한 것을 특징으로 하는 애플리케이션 인증을 위한 장치.
  9. 애플리케이션 실행에 따른 인증을 수행하는 시스템에 있어서,
    사용자 단말기로부터 특정 애플리케이션 실행 요청을 수신하는 서비스 서버; 및
    상기 서비스 서버로부터 상기 애플리케이션 실행 요청 수신에 따른 애플리케이션 인증 요청을 수신하고, 상기 인증 요청에 따라 상기 사용자 단말기로부터 사용자 정보 및 실행 환경 정보를 획득하여 사용자 인증 및 실행 인증을 수행한 후 사용자 인증 및 실행 인증 성공시 상기 실행 요청에 따른 애플리케이션이 상기 서비스 서버를 통해 실행되도록 제어하는 인증 서버를 포함하며,
    상기 실행 인증이 실패한 경우,
    상기 인증서버는 상기 실행 요청에 따른 애플리케이션이 상기 서비스 서버를 통해 실행되지 못하도록 차단하는 것을 특징으로 하는 애플리케이션 인증 시스템.
  10. 제9항에 있어서,
    상기 실행 인증이 실패한 경우,
    상기 인증서버는 상기 사용자 단말기로 애플리케이션 인증 실패 통지를 전송하는 것을 특징으로 하는 애플리케이션 인증 시스템.
  11. 제10항에 있어서
    상기 애플리케이션 인증 실패 통지에는 상기 애플리케이션을 삭제하거나 또는 상기 애플리케이션에 대한 업데이트 준비하는 명령을 더 포함하는 것을 특징으로 하는 애플리케이션 인증 시스템.
  12. 제11항에 있어서
    상기 애플리케이션 인증 실패 통지를 받은 사용자 단말기는 상기 인증서버에 인증된 애플리케이션을 요청하는 것을 더 포함하는 것을 특징으로 하는 애플리케이션 인증 시스템
  13. 제9항에 있어서
    상기 실행 인증이 실패한 경우,
    상기 인증서버는 상기 사용자 단말기로 인증된 애플리케이션을 전송하는 것을 특징으로 하는 애플리케이션 인증 시스템.
  14. 제13항에 있어서
    상기 사용자 단말기로 인증된 애플리케이션을 전송하는 것은,
    상기 인증된 애플리케이션을 암호화하거나, 난수화하거나, 또는 난독화하는 것 중 어느 하나에 의한 것을 특징으로 하는 애플리케이션 인증 시스템.

KR20130109243A 2013-09-11 2013-09-11 애플리케이션 인증 방법 및 그 시스템 KR20150030047A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR20130109243A KR20150030047A (ko) 2013-09-11 2013-09-11 애플리케이션 인증 방법 및 그 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20130109243A KR20150030047A (ko) 2013-09-11 2013-09-11 애플리케이션 인증 방법 및 그 시스템

Publications (1)

Publication Number Publication Date
KR20150030047A true KR20150030047A (ko) 2015-03-19

Family

ID=53024244

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20130109243A KR20150030047A (ko) 2013-09-11 2013-09-11 애플리케이션 인증 방법 및 그 시스템

Country Status (1)

Country Link
KR (1) KR20150030047A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210038456A (ko) * 2020-09-30 2021-04-07 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 증서 송신 방법, 증서 수신 방법, 클라우드 및 단말 기기
WO2021225329A1 (ko) * 2020-05-06 2021-11-11 네이버클라우드 주식회사 사용자 식별자 및 서명 수집을 이용한 모바일 애플리케이션 위변조 탐지 방법 및 시스템
KR20210135907A (ko) * 2020-05-06 2021-11-16 네이버클라우드 주식회사 사용자 식별자 및 서명 수집을 이용한 모바일 애플리케이션 위변조 탐지 방법 및 시스템

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021225329A1 (ko) * 2020-05-06 2021-11-11 네이버클라우드 주식회사 사용자 식별자 및 서명 수집을 이용한 모바일 애플리케이션 위변조 탐지 방법 및 시스템
KR20210135907A (ko) * 2020-05-06 2021-11-16 네이버클라우드 주식회사 사용자 식별자 및 서명 수집을 이용한 모바일 애플리케이션 위변조 탐지 방법 및 시스템
KR20210038456A (ko) * 2020-09-30 2021-04-07 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 증서 송신 방법, 증서 수신 방법, 클라우드 및 단말 기기

Similar Documents

Publication Publication Date Title
US10958437B2 (en) Object signing within a cloud-based architecture
US11237817B2 (en) Operating system update management for enrolled devices
US8015417B2 (en) Remote access system, gateway, client device, program, and storage medium
EP3258407B1 (en) Apparatus, method, and program for controlling profile data delivery
WO2015184891A1 (zh) Android***的安全管控方法、装置及其***
US11082214B2 (en) Key generation apparatus and key update method
US20070005956A1 (en) Remote certificate management
US20180285172A1 (en) Data exchange between applications
CN103890716A (zh) 用于访问基本输入/输出***的功能的基于网页的接口
US20230004371A1 (en) Package distribution and installation in response to user logon
US11443023B2 (en) Distributed profile and key management
EP3195551B1 (en) Method and system for managing fine-grained policies for requiring user approval of device management operations
US8307425B2 (en) Portable computer accounts
KR20190062797A (ko) 클라우드 서비스를 사용하는 사용자 단말기, 단말기의 보안 통합 관리 서버 및 단말기의 보안 통합 관리 방법
US20210243085A1 (en) Deploying data-loss-prevention policies to user devices
US20150296051A1 (en) Methods, remote access systems, client computing devices, and server devices for use in remote access systems
KR20150030047A (ko) 애플리케이션 인증 방법 및 그 시스템
JP2015106236A (ja) 情報処理装置及びユーザ認証方法
JP7445017B2 (ja) ユーザ識別子および署名収集を利用したモバイルアプリケーション偽造・変造探知方法、コンピュータプログラム、コンピュータ読み取り可能な記録媒体およびコンピュータ装置
JP2008176506A (ja) 情報処理装置、情報処理方法、および管理サーバ
KR101351243B1 (ko) 애플리케이션 인증 방법 및 그 시스템
JP5841467B2 (ja) 携帯型情報端末及びプログラム
KR102348312B1 (ko) 사용자 식별자 및 서명 수집을 이용한 모바일 애플리케이션 위변조 탐지 방법 및 시스템
KR102393537B1 (ko) 신뢰실행환경에 기반한 소프트웨어 라이선스 관리 방법 및 시스템
KR20140118199A (ko) Drm 컨텐츠 실행 시스템 및 그 방법, 그리고 이에 적용되는 장치

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application