KR20220056705A - 데이터 보안 장치 및 데이터 보안 방법 - Google Patents

데이터 보안 장치 및 데이터 보안 방법 Download PDF

Info

Publication number
KR20220056705A
KR20220056705A KR1020200141528A KR20200141528A KR20220056705A KR 20220056705 A KR20220056705 A KR 20220056705A KR 1020200141528 A KR1020200141528 A KR 1020200141528A KR 20200141528 A KR20200141528 A KR 20200141528A KR 20220056705 A KR20220056705 A KR 20220056705A
Authority
KR
South Korea
Prior art keywords
data
security
application
path
verification module
Prior art date
Application number
KR1020200141528A
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 KR1020200141528A priority Critical patent/KR20220056705A/ko
Publication of KR20220056705A publication Critical patent/KR20220056705A/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/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • 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/31User 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/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • 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/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Databases & Information Systems (AREA)
  • Telephone Function (AREA)

Abstract

데이터 보안 장치가 개시된다. 본 발명에 따른 데이터 보안 장치는, 복수의 애플리케이션에서 생성된 명령어가 모이는 커널에 설치되어 데이터 처리 명령을 감지하고, 상기 데이터 처리 명령이 감지되면 상기 데이터 처리 명령의 최초 요청 애플리케이션에 대한 정보를 획득하는 보안 센서, 상기 최초 요청 애플리케이션에 대한 정보를 수신하고, 상기 최초 요청 애플리케이션이 보호 대상 애플리케이션이면 데이터의 암호화 요청 또는 복호화 요청을 전송하는 보안 검증 모듈, 및, 상기 암호화 요청에 기초하여 상기 데이터를 암호화 하여 저장하거나, 상기 복호화 요청에 기초하여 데이터를 복호화 하고 상기 복호화된 데이터의 경로를 제공하는 보안 드라이버를 포함한다.

Description

데이터 보안 장치 및 데이터 보안 방법{DATA SECURITY DEVICE AND DATA SECURITY METHOD}
본 발명은, 커널에서 복수의 애플리케이션으로부터 생성된 데이터 처리 명령을 감지하고 데이터 처리 명령의 근원이 되는 애플리케이션이 보호 대상인지 여부에 따라 데이터 처리를 수행함으로써, 범용 애플리케이션들에서의 데이터 접근에 대한 보안성 및 사용자 편의성을 향상시킬 수 있는 데이터 보안 장치 및 데이터 보안 방법에 관한 것이다.
스마트 폰 등의 이동 단말기에 저장된 데이터에는, 개인적인 사진, 개인 정보가 담긴 자료 등 프라이버시를 침해할 수 있는 데이터가 포함된다.
그리고, 악성 애플리케이션을 통한 데이터 유출, 수리기사 등 타인에 의한 데이터 유출, 분실에 의한 데이터 유출, 타인과 스마트 폰을 공유하여 보는 도중 원하지 않은 데이터의 노출 등, 다양한 원인으로 인하여 개인적인 사진 등이 타인에게 보여지는 프라이버시 침해가 발생하고 있다.
이러한 문제점을 방지하기 위하여, 최근에는 데이터를 별도의 보안 공간에 저장하는 서비스를 지원하는 애플리케이션이 등장하고 있다. 다만 이러한 애플리케이션은, 해당하는 애플리케이션을 통해서만 데이터에 접근할 수 있기 때문에, 애플리케이션의 실행, 애플리케이션 메뉴의 조작을 통한 보안 데이터 저장, 애플리케이션 메뉴의 조작을 통한 보안 데이터의 독출(read), 애플리케이션 메뉴 조작을 통한 인증 정보의 입력 등 사용자 조작성과 편의성을 해치는 문제점을 가지고 있다.
본 발명은 상술한 문제점을 해결하기 위한 것으로, 본 발명의 목적은 커널에서 복수의 애플리케이션으로부터 생성된 데이터 처리 명령을 감지하고 데이터 처리 명령의 근원이 되는 애플리케이션이 보호 대상인지 여부에 따라 데이터 처리를 수행함으로써, 범용 애플리케이션들에서의 데이터 접근에 대한 보안성 및 사용자 편의성을 향상시킬 수 있는 데이터 보안 장치 및 데이터 보안 방법을 제공하기 위함이다.
본 발명에 따른 데이터 보안 장치는, 복수의 애플리케이션에서 생성된 명령어가 모이는 커널에 설치되어 데이터 처리 명령을 감지하고, 상기 데이터 처리 명령이 감지되면 상기 데이터 처리 명령의 최초 요청 애플리케이션에 대한 정보를 획득하는 보안 센서, 상기 최초 요청 애플리케이션에 대한 정보를 수신하고, 상기 최초 요청 애플리케이션이 보호 대상 애플리케이션이면 데이터의 암호화 요청 또는 복호화 요청을 전송하는 보안 검증 모듈, 및, 상기 암호화 요청에 기초하여 상기 데이터를 암호화 하여 저장하거나, 상기 복호화 요청에 기초하여 데이터를 복호화 하고 상기 복호화된 데이터의 경로를 제공하는 보안 드라이버를 포함한다.
이 경우 상기 보안 센서는, 접근 요청 애플리케이션이 직접 데이터 처리를 요청한 경우, 바인더 드라이버, 공유 메모리 및 메시지 큐 중 적어도 하나를 확인하여 상기 데이터 처리의 근원인 상기 최초 요청 애플리케이션에 대한 정보를 획득할 수 있다.
이 경우 상기 보안 검증 모듈은, 상기 데이터 처리 명령이 데이터 저장 명령인 경우, 상기 데이터의 경로 및 상기 암호화 요청을 상기 보안 드라이버에 전송하고, 상기 보안 드라이버는, 상기 데이터의 경로를 기초로 상기 데이터를 암호화 하여 인비저블 폴더에 저장할 수 있다.
이 경우 사용자 인증 정보가 등록되면, 데이터 키를 상기 사용자 인증 정보로 암호화 하여 시큐어 엘리먼트에 저장하는 보안 애플리케이션을 더 포함하고, 상기 보안 드라이버는, 상기 시큐어 엘리먼트에 저장된 상기 데이터 키를 이용하여 상기 데이터를 암호화 할 수 있다.
이 경우 상기 보안 애플리케이션은, 잠금 화면을 디스플레이 하고, 상기 사용자로부터 상기 사용자 인증 정보가 수신되면 상기 잠금 화면을 해제하고, 상기 보안 드라이버는, 상기 잠금 화면을 해제하기 위하여 사용된 상기 사용자 인증 정보를 이용하여 상기 시큐어 엘리먼트에 저장된 상기 데이터 키를 획득할 수 있다.
한편 상기 보안 애플리케이션은, 상기 복수의 애플리케이션 중 사용자에 의해 선택된 특정 애플리케이션을 상기 보호 대상 애플리케이션으로 등록하고, 보호 대상 애플리케이션의 리스트를 상기 보안 검증 모듈에 전송하고, 상기 보안 검증 모듈은, 상기 최초 요청 애플리케이션이 상기 보호 대상 애플리케이션의 리스트에 속하면 상기 데이터의 경로 및 상기 암호화 요청을 상기 보안 드라이버에 전송할 수 있다.
한편 상기 보안 애플리케이션은, 사용자에 의해 선택된 데이터를 보호 대상 데이터로 등록하고, 상기 보호 대상 데이터의 경로를 포함하는 리스트를 상기 보안 검증 모듈에 전송하고, 상기 보안 검증 모듈은, 상기 보호 대상 데이터의 경로 및 암호화 요청을 상기 보안 드라이버에 전송할 수 있다.
한편 상기 보안 검증 모듈은, 상기 데이터 처리 명령이 데이터 독출 명령인 경우, 상기 데이터 독출 명령에 의해 지정된 보호 데이터의 경로 및 복호화 요청을 상기 보안 드라이버에 전송하고, 상기 보안 드라이버는, 상기 보호 데이터의 경로에 기초하여 상기 보호 데이터를 복호화 하고, 상기 복호화된 보호 데이터의 경로를 상기 보안 검증 모듈에 전송할 수 있다.
이 경우 상기 보안 검증 모듈은, 상기 데이터 독출 명령에 의해 지정된 폴더의 경로 및 상기 복호화된 보호 데이터의 경로를 반환할 수 있다.
이 경우 사용자로부터 사용자 인증 정보가 등록되면, 데이터 키를 상기 사용자 인증 정보로 암호화 하여 시큐어 엘리먼트에 저장하는 보안 애플리케이션을 더 포함하고, 상기 보안 드라이버는, 상기 시큐어 엘리먼트에 저장된 상기 데이터 키를 이용하여 상기 보호 데이터를 복호화 할 수 있다.
이 경우 상기 보안 애플리케이션은, 잠금 화면을 디스플레이 하고, 상기 사용자로부터 상기 사용자 인증 정보가 수신되면 상기 잠금 화면을 해제하고, 상기 보안 드라이버는, 상기 잠금 화면을 해제하기 위하여 사용된 상기 사용자 인증 정보를 이용하여 상기 시큐어 엘리먼트에 저장된 상기 데이터 키를 획득할 수 있다.
한편 상기 보안 애플리케이션은, 잠금 화면을 디스플레이 하고, 게스트로부터 게스트 인증 정보가 수신되면 상기 잠금 화면을 해제하고, 상기 게스트에 의한 잠금 화면의 해제 정보를 상기 보안 검증 모듈에 전송하고, 상기 보안 검증 모듈은, 상기 게스트에 의한 잠금 화면의 해제 정보가 수신되면, 상기 복호화된 보호 데이터의 경로를 제외하고, 상기 데이터 독출 명령에 의해 지정된 폴더의 경로를 반환할 수 있다.
한편 상기 보안 검증 모듈은, 상기 최초 요청 애플리케이션이 비 보호 대상 애플리케이션이면, 상기 복호화된 보호 데이터의 경로를 제외하고, 상기 데이터 독출 명령에 의해 지정된 폴더의 경로를 반환할 수 있다.
한편 데이터 보안 방법은, 복수의 애플리케이션에서 생성된 명령어가 모이는 커널에 설치된 보안 센서가 데이터 처리 명령을 감지하는 단계, 상기 보안 센서가, 상기 데이터 처리 명령이 감지되면 상기 데이터 처리 명령의 최초 요청 애플리케이션에 대한 정보를 획득하는 단계, 보안 검증 모듈이, 상기 최초 요청 애플리케이션에 대한 정보를 수신하고, 상기 최초 요청 애플리케이션이 보호 대상 애플리케이션이면 데이터의 암호화 요청 또는 복호화 요청을 전송하는 단계, 및, 보안 드라이버가, 상기 암호화 요청에 기초하여 상기 데이터를 암호화 하여 저장하거나, 상기 복호화 요청에 기초하여 데이터를 복호화 하고 상기 복호화된 데이터의 경로를 제공하는 단계를 포함한다.
이 경우 상기 최초 요청 애플리케이션에 대한 정보를 획득하는 단계는, 접근 요청 애플리케이션이 직접 데이터 처리를 요청한 경우, 바인더 드라이버, 공유 메모리 및 메시지 큐 중 적어도 하나를 확인하여 상기 데이터 처리의 근원인 상기 최초 요청 애플리케이션에 대한 정보를 획득하는 단계를 포함할 수 있다.
이 경우 상기 데이터의 암호화 요청을 전송하는 단계는, 상기 데이터 처리 명령이 상기 데이터의 데이터 저장 명령인 경우, 상기 데이터의 경로 및 상기 암호화 요청을 상기 보안 드라이버에 전송하는 단계를 포함하고, 상기 암호화 요청에 기초하여 상기 데이터를 암호화 하여 저장하는 단계는, 상기 데이터의 경로를 기초로 상기 데이터를 암호화 하여 인비저블 폴더에 저장하는 단계를 포함할 수 있다.
이 경우 보안 애플리케이션이, 사용자 인증 정보가 등록되면, 데이터 키를 상기 사용자 인증 정보로 암호화 하여 시큐어 엘리먼트에 저장하는 단계;를 더 포함하고, 상기 데이터의 경로를 기초로 상기 데이터를 암호화 하여 인비저블 폴더에 저장하는 단계는, 상기 시큐어 엘리먼트에 저장된 상기 데이터 키를 이용하여 상기 데이터를 암호화 하는 단계를 포함할 수 있다.
한편 상기 데이터의 복호화 요청을 전송하는 단계는, 상기 데이터 처리 명령이 데이터 독출 명령인 경우, 상기 데이터 독출 명령에 의해 지정된 보호 데이터의 경로 및 복호화 요청을 상기 보안 드라이버에 전송하는 단계;를 포함하고, 상기 복호화 요청에 기초하여 데이터를 복호화 하고 상기 복호화된 데이터의 경로를 제공하는 단계는, 상기 보호 데이터의 경로에 기초하여 상기 보호 데이터를 복호화 하고, 상기 복호화된 보호 데이터의 경로를 상기 보안 검증 모듈에 전송하는 단계를 포함할 수 있다.
이 경우 상기 보안 검증 모듈이, 상기 데이터 독출 명령에 의해 지정된 폴더의 경로 및 상기 복호화된 보호 데이터의 경로를 반환하는 단계;를 더 포함할 수 있다.
이 경우 상기 보안 애플리케이션이, 잠금 화면을 디스플레이 하고, 게스트로부터 게스트 인증 정보가 수신되면 상기 잠금 화면을 해제하고, 상기 게스트에 의한 잠금 화면의 해제 정보를 상기 보안 검증 모듈에 전송하는 단계, 및, 상기 보안 검증 모듈이, 상기 게스트에 의한 잠금 화면의 해제 정보가 수신되면, 상기 복호화된 보호 데이터의 경로를 제외하고, 상기 데이터 독출 명령에 의해 지정된 폴더의 경로를 반환하는 단계를 더 포함할 수 있다.
본 발명에 따르면, 복수의 애플리케이션으로부터 생성된 데이터 처리 명령을 커널에서 감지하고 감지 결과에 따라 접근 제어를 수행하기 때문에, 스마트 폰에 설치되어 있는 모든 애플리케이션에 대한 보안성을 향상시킬 수 있으며, 스마트 폰에 설치되어 있는 모든 애플리케이션에 범용적으로 적용되는 방식이기 때문에 사용자 편의성을 향상시킬 수 있는 장점이 있다.
또한 본원 발명에 따르면, 사용자가 보호 데이터와 일반 데이터를 모두 제공받기를 원할 때는, 사용자는 보호 대상 애플리케이션을 실행할 수 있다. 반면에 사용자가 일반 데이터만 제공받기를 원할 때, 사용자는 보호 대상 애플리케이션이 아닌 다른 애플리케이션을 실행할 수 있다. 즉 사용자는 기존의 일반 애플리케이션을 그대로 사용하면 되며, 데이터 보안 장치가 상황에 따라 적절한 데이터를 제공하기 때문에 사용자 편의성을 향상시킬 수 있는 장점이 있다.
또한 본 발명에 따르면, 복수의 애플리케이션으로부터 생성된 데이터 처리 명령을 커널에서 감지하고 감지 결과에 따라 접근 제어를 수행하기 때문에, 데이터 영역에 접근하는 애플리케이션의 종류, 방법 및 경로에 관계 없이 사용자 프라이버시를 보호할 수 있는 장점이 있다.
또한 본 발명에 따르면, 실제 데이터 영역에 접근을 시도하는 최초 애플리케이션을 탐지하여 접근 제어를 수행하기 때문에, 사용자의 의도에 부합하는 접근 제어를 수행할 수 있다. 예를 들어 사용자는 자신이 실제로 사용자하고 있는 최초 애플리케이션을 기준으로 보안의 필요성을 생각하는 것이 보통이다. 그리고 본 발명에 따르면, 최초 애플리케이션을 기준으로 접근 제어를 수행함으로써 이러한 사용자의 의도에 부합할 수 있는 장점이 있다.
또한 본 발명에 따르면, 실제 데이터 영역에 접근을 시도하는 최초 애플리케이션을 탐지하여 접근 제어를 수행하기 때문에, 일반 애플리케이션을 이용하는 악성 애플리케이션의 공격을 방지할 수 있는 장점이 있다.
또한 본 발명에 따르면 게스트가 스마트 폰을 이용하는 경우 보호 데이터를 제공하지 않음으로써, 사용자 프라이버시를 향상시킬 수 있는 장점이 있다.
도 1은 본 발명에 따른 데이터 보안 장치의 구성 요소를 설명하기 위한 도면이다.
도 2는 본 발명에 따른 데이터 보안 방법을 설명하기 위한 순서도이다.
도 3은 본 발명에 따른, 사용자 인증 정보 및 게스트 인증 정보를 등록하는 방법을 설명하기 위한 도면이다.
도 4는 보호 대상 애플리케이션을 등록하는 방법을 설명하기 위한 도면이다.
도 5는 보호 대상 폴더(folder)를 등록하는 방법을 설명하기 위한 도면이다.
도 6은 스마트 폰을 사용하는 사람을 사용자 또는 게스트로 구분하는 방법을 설명하기 위한 도면이다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 발명을 구현함에 있어서 설명의 편의를 위하여 구성요소를 세분화하여 설명할 수 있으나, 이들 구성요소가 하나의 장치 또는 모듈 내에 구현될 수도 있고, 혹은 하나의 구성요소가 다수의 장치 또는 모듈들에 나뉘어져서 구현될 수도 있다.
도 1은 본 발명에 따른 데이터 보안 장치의 구성 요소를 설명하기 위한 도면이다.
본 발명에서 설명하는 데이터 보안 장치는, 이동 단말기에 설치될 수 있다.
여기서 이동 단말기는 애플리케이션의 설치가 가능한 스마트폰일 수 있다.
다만 이에 한정되지 않으며, 이동 단말기(100)는 휴대폰, 노트북 컴퓨터(laptop computer), 디지털방송용 단말기, PDA(personal digital assistants), PMP(portable multimedia player), 네비게이션, 슬레이트 PC(slate PC), 태블릿 PC(tablet PC), 울트라북(ultrabook), 웨어러블 디바이스(wearable device, 워치형 단말기 (smartwatch), 글래스형 단말기 (smart glass), HMD(head mounted display)) 등일 수 있다. 또한 본 발명은 이동 단말기뿐만이 아니라, 디지털 TV, 데스크탑 컴퓨터, 디지털사이니지 등과 같은 고정 단말기에도 적용될 수 있다.
이하에서는 스마트 폰의 예를 들어 설명한다.
일반적인 스마트폰에는 최하의 계층에 각종 하드웨어(예를 들어 이동통신 모듈, CPU, 메모리, 디스플레이, 키패드, GPS 수신 모듈)가 탑재되고, 중간 계층인 운영체제 계층에 OS(Operating system, 이하 OS라고 함.)가 탑재되고, 최상의 계층인 애플리케이션 계층에 상기 OS를 기반으로 구동되는 각종 애플리케이션(Application) 등이 탑재된다.
그리고 OS는 스마트폰에 탑재된 각종 하드웨어 및 각종 소프트웨어에 대한 단말 리소스 할당, 프로세스 제어 등을 전반적으로 수행하는 커널(kernel)과, 커널(kernel)에 접근하려는 애플리케이션에게 제공되는 각종 스마트폰 API(Application Programming Interface)로 구성될 수 있다.
그리고 스마트 폰에는 다양한 애플리케이션이 설치되어 운용될 수 있다. 예를 들어 스마트폰에는 메신저 애플리케이션, 카메라 애플리케이션, 갤러리 애플리케이션, 탐색기 애플리케이션 등이 설치되어 실행 및 운용될 수 있다.
이와 같이 데이터의 보안과는 관계 없이, 자신의 고유의 기능을 수행하는 애플리케이션을 일반 애플리케이션(210, 220, 230)이라고 명칭 할 수 있다.
이와 같은 일반 애플리케이션(210, 220, 230)은, 스마트 폰의 운영 체제(operating system)를 이용하여 데이터에 접근할 수 있다. 구체적으로 범용 애플리케이션(210, 220, 230)은 대부분 API, JNI 등을 통해서 데이터에 접근할 수 있다. 반면에 악성 애플리케이션의 경우는 대부분 네이티브 콜(Native Call)을 이용하여 파일시스템에 직접 접근하여 데이터에 엑세스 한다.
도 1에서는 다양한 일반 애플리케이션(210, 220, 230)이 자바 API, 안드로이드 API, 바이오닉(BIONIC) 등을 통하여 데이터에 접근하는 다양한 루트를 도시하였다.
한편 메모리 등의 하드웨어에 데이터를 저장하거나 메모리 내 데이터를 독출하기 위해 일반 애플리케이션(210, 220, 230) 또는 악성 애플리케이션이 생성한 명령어는 커널(kernel)에 모이게 된다.
따라서 본 발명에서는 커널(kernel)에 보안 센서(120), 보안 검증 모듈(130) 및 보안 드라이버(140)를 설치하고, 커널(kernel)에서의 명령어의 흐름을 감시함으로써, 일반 애플리케이션(210, 220, 230)이나 악성 애플리케이션에 대해서도 범용적으로 적용될 수 있는 데이터 보안 방법을 제안한다.
또한 악성 애플리케이션은 흔적을 남기지 않기 위하여 정상적인 일반 어플리케이션을 이용하여 데이터에 접근하기도 한다. 따라서 본 발명에서는, 단순히 데이터 처리 명령을 생성한 애플리케이션이 아니라, 실제로 데이터에 접근을 시도한 최초 어플리케이션을 찾아 접근 제어를 수행하는 방법을 제안한다.
데이터 보안 장치는 보안 애플리케이션(110), 보안 센서(120), 보안 검증 모듈(130) 및 보안 드라이버(140)를 포함할 수 있다.
보안 애플리케이션(110)은, 일반 애플리케이션(210, 220, 230)과는 달리, 데이터의 보안을 수행하기 위해 설치되는 애플리케이션일 수 있다.
이 경우 보안 애플리케이션(110)은 잠금 화면을 디스플레이 하고, 잠금 화면을 해제 하기 위한 인증 정보의 입력을 수신할 수 있다.
또한 보안 애플리케이션(110)은 사용자 인증 정보 및 게스트 인증 정보의 등록을 위한 실행 화면을 디스플레이 하고, 사용자 인증 정보 및 게스트 인증 정보를 등록하기 위한 사용자 입력을 수신할 수 있다.
또한 보안 애플리케이션(110)은 보호 대상 애플리케이션, 보호 대상 폴더 및 보호 대상 데이터를 등록하기 위한 실행 화면을 디스플레이 하고, 보호 대상 애플리케이션, 보호 대상 폴더 및 보호 대상 데이터를 등록하기 위한 사용자 입력을 수신할 수 있다.
한편 애플리케이션이 동작을 수행하는 것은, 애플리케이션이 이동 단말기의 구성 요소를 이용하여 동작을 수행하는 것을 포함할 수 있다. 예를 들어 보안 애플리케이션은 이동 단말기의 디스플레이부를 이용하여 잠금 화면을 디스플레이 할 수 있고, 이동 단말기의 입력부(예를 들어 터치 스크린)을 이용하여 인증 정보의 입력을 수신할 수 있다.
한편 보안 센서(120)는 커널에 설치되어 데이터의 입력 및 출력을 감지할 수 있다.
구체적으로 보안 센서(120)는 커널을 감시하여, 복수의 일반 애플리케이션(210, 220, 230)에서 생성된 데이터 처리 명령을 감지 할 수 있다.
한편 본 명세서에서 데이터 처리 명령이란, 데이터 저장 명령, 데이터 독출(read) 명령, 데이터 수정 명령을 포함할 수 있다.
보안 검증 모듈(130)은 보호 대상 애플리케이션의 리스트를 보유할 수 있다. 그리고 보안 검증 모듈(130)은 보호 대상 애플리케이션의 리스트에 기초하여, 데이터에 접근하려는 최초 애플리케이션이 보호 대상애플리케이션인지 판단할 수 있다.
한편 보안 드라이버(140)는 커널에 설치되어, 데이터를 암호화 하여 저장하거나, 저장된 데이터를 복호화할 수 있다. 또한 보안 드라이버(140)는 암호화된 데이터의 경로나 복호화된 데이터의 경로를 반환할 수 있다.
구체적으로 보안 드라이버(140)는 데이터를 암호화 하여 인비저블 폴더에 저장하고, 암호화하여 저장된 데이터의 경로를 보안 검증 모듈(130)에 전송할 수 있다. 또한 보안 드라이버(140)는 인비저블 폴더에 저장된 보호 데이터를 복호화 하고, 복호화된 보호 데이터의 경로를 보안 검증 모듈(130)에 전송할 수 있다.
또한 보안 드라이버(140)는 보안 어플리케이션(110)과 커널 내 보안 검증 모듈(130)과의 통신을 지원하는 드라이버로써 동작할 수 있다.
도 2는 본 발명에 따른 데이터 보안 방법을 설명하기 위한 순서도이다.
본 발명에 따른 데이터 보안 방법(200)은, 사용자 인증 정보 및 게스트 인증 정보를 등록하는 단계(S210), 보호 대상 애플리케이션 및 보호 대상 데이터 중 적어도 하나를 등록하는 단계(S230), 데이터 처리 명령이 보호 대상 데이터의 저장 명령인 경우, 보호 대상 데이터를 암호화 하여 저장하는 단계(S250) 및 데이터 처리 명령이 보호 데이터의 읽기 명령인 경우, 보호 데이터를 복호화 하고 복호화된 보호 데이터의 경로를 반환하는 단계(S270)를 포함할 수 있다.
먼저 사용자 인증 정보 및 게스트 인증 정보를 등록하는 단계(S210)에 대하여 도 3을 참고하여 설명한다.
도 3은 본 발명에 따른, 사용자 인증 정보 및 게스트 인증 정보를 등록하는 방법을 설명하기 위한 도면이다.
보안 애플리케이션(110)은, 사용자 및 게스트를 등록할 수 있다.
여기서 사용자는 스마트 폰의 소유자나 스마트 폰의 점유자를 의미할 수 있다. 또한 스마트 폰 수리 기사, 친구 등 사용자 이외의 사람을 의미할 수 있다.
한편 사용자 및 게스트를 등록한다는 것의 의미는, 사용자와 게스트를 구분하기 위하여, 사용자가 사용하는 사용자 인증 정보 및 게스트가 사용하는 게스트 인증 정보를 등록한다는 것을 의미할 수 있다.
그리고 사용자 인증 정보 및 게스트 인증 정보는 잠금 화면을 해제하기 위하여 사용될 수 있다.
또한 사용자 인증 정보는, 비밀 번호, 핀(PIN), 잠금 패턴 및 생체 정보(홍채, 지문 등) 중 적어도 하나를 포함할 수 있다.
또한 게스트 인증 정보는, 비밀 번호, 핀(PIN) 및 잠금 패턴 중 적어도 하나를 포함할 수 있다.
한편 보안 애플리케이션(110)은 사용자 인증 정보를 등록하기 위한 실행 화면(310)을 디스플레이 할 수 있다.
그리고 사용자 인증 정보를 등록하기 위한 사용자 입력이 수신되면, 보안 애플리케이션(110)은 사용자 인증 정보를 등록할 수 있다. 이 경우 보안 애플리케이션(110)은 사용자 인증 정보를 메모리에 저장할 수 있다.
또한 사용자 인증 정보가 등록되면, 보안 애플리케이션(110)은 데이터 키를 사용자 인증 정보로 암호화 하여 시큐어 엘리먼트(Secure Element)에 저장할 수 있다.
구체적으로 보안 애플리케이션(110)은 데이터 키를 생성할 수 있다. 여기서 데이터 키는 데이터를 암호화 또는 복호화 하기 위한 키로써, “데이터 암호화 키”라는 용어와 혼용되어 사용될 수 있다.
그리고 보안 애플리케이션(110)은 생성된 데이터 키를 안드로이드 시스템에서 제공하는 보안 저장소인 시큐어 엘리먼트(Secure Element)에 저장할 수 있다. 이 경우 보안 애플리케이션(110)은 데이터 키를 사용자 인증 정보를 이용해서 암호화 하여 저장할 수 있다.
한편 도 3b에서 도시하는 바와 같이, 보안 애플리케이션(110)은 사용자 인증 정보를 보안 드라이버(140)에 전송할 수 있다. 이 경우 보안 드라이버(140)는 사용자 인증 정보를 메모리에 저장할 수 있다.
한편 보안 애플리케이션(110)은 게스트 인증 정보를 등록하기 위한 실행 화면을 디스플레이 할 수 있다.
그리고 게스트 인증 정보를 등록하기 위한 사용자 입력이 수신되면, 보안 애플리케이션(110)은 게스트 인증 정보를 등록할 수 있다. 이 경우 보안 애플리케이션(110)은 게스트 인증 정보를 메모리에 저장할 수 있다.
다음은, 보호 대상 애플리케이션 및 보호 대상 데이터 중 적어도 하나를 등록하는 단계(S230)에 대하여 도 4 및 도 5를 참고하여 설명한다.
도 4는 보호 대상 애플리케이션을 등록하는 방법을 설명하기 위한 도면이다.
보안 애플리케이션(110)은 보호 대상 애플리케이션을 등록할 수 있다.
구체적으로 보안 애플리케이션(110)은 보호 대상 애플리케이션을 등록하기 위한 실행 화면(410)을 디스플레이 할 수 있다. 여기서 실행 화면(410)은 복수의 일반 애플리케이션을 포함할 수 있다.
그리고 복수의 일반 애플리케이션 중 특정 일반 애플리케이션을 선택하는 입력이 수신되면, 보안 애플리케이션(110)은 복수의 일반 애플리케이션 중 사용자에 의해 선택된 특정 애플리케이션을 보호 대상 애플리케이션으로 등록할 수 있다.
그리고 보안 애플리케이션(110)은 등록된 하나 이상의 애플리케이션을 포함하는 보호 대상 애플리케이션 리스트를 보안 검증 모듈(130)에 전송할 수 있다. 이 경우 보안 검증 모듈(130)은 보호 대상 애플리케이션 리스트를 저장할 수 있다.
한편 보호 대상 애플리케이션이 데이터 처리 명령의 최초 요청 애플리케이션인 경우, 데이터 처리의 대상은 보호 대상 데이터로 처리될 수 있다. 이와 관련해서는 이후에 자세히 설명한다.
한편 보호 대상 애플리케이션이 생성한 데이터를 보호 데이터로써 저장하기를 원하지 않는 경우, 사용자는 보호 데이터 생성 기능을 오프할 수 있다. 그리고 보호 데이터 생성 기능이 오프되면, 데이터 보안 장치는 보호 대상 애플리케이션이 생성한 데이터를 보호 데이터가 아닌 일반 데이터로 저장할 수 있다.
도 5는 보호 대상 폴더를 등록하는 방법을 설명하기 위한 도면이다.
보안 애플리케이션(110)은 보호 대상 데이터를 등록할 수 있다.
여기서 보호 대상 데이터를 등록하는 방법에는, 보호 대상 데이터를 직접 지정하는 방법 및 보호 대상 데이터들이 포함되어 있는 폴더를 지정하는 방법이 있을 수 있다.
구체적으로 보안 애플리케이션(110)은 보호 대상 데이터 또는 보호 대상 폴더를 등록하기 위한 실행 화면(510)을 디스플레이 할 수 있다. 이 경우 실행 화면(510)은 하나 이상의 폴더(폴더를 나타내는 이미지) 및 하나 이상의 데이터(데이터를 나타내는 이미지)를 포함할 수 있다.
그리고 특정 데이터를 선택하는 입력이 수신되면, 보안 애플리케이션(110)은 하나 이상의 데이터 중 사용자에 의해 선택된 특정 데이터를 보호 대상 데이터로 등록할 수 있다.
또한 특정 폴더를 선택하는 입력이 수신되면, 보안 애플리케이션(110)은 사용자에 의해 선택된 폴더 내 하나 이상의 데이터를 보호 대상 데이터로 등록할 수 있다.
그리고 보안 애플리케이션(110)은 등록된 하나 이상의 보호 대상 데이터의 경로를 포함하는 보호 대상 데이터 리스트를 보안 검증 모듈(130)에 전송할 수 있다. 이 경우 보안 검증 모듈(130)은 보호 대상 데이터 리스트를 저장할 수 있다.
한편 폴더 내 하나 이상의 데이터가 보호 대상 데이터로 등록된다고 설명하였으나 이에 한정되지 않는다. 예를 들어 특정 폴더를 선택하는 입력이 수신되면, 보안 애플리케이션(110)은 사용자에 의해 선택된 폴더를 보호 대상 폴더로 등록하고, 보호 대상 폴더의 경로를 포함하는 보호 대상 데이터 리스트를 보안 검증 모듈(130)에 전송할 수 있다.
한편 보호 대상 데이터의 등록 시, 데이터의 경로가 리스트화 되어 데이터 보안 장치에 의해 보유되게 된다. 따라서 폴더, 사진, 문서, 동영상 등 모든 유형의 데이터 또는 폴더가 보호 대상으로 등록될 수 있다.
다음은 스마트 폰을 사용하는 사람을 사용자 또는 게스트로 구분하는 방법에 대하여 설명한다.
도 6은 스마트 폰을 사용하는 사람을 사용자 또는 게스트로 구분하는 방법을 설명하기 위한 도면이다.
보안 애플리케이션(110)은 잠금 화면을 디스플레이 할 수 있다. 구체적으로 스마트 폰이 슬립 모드에서 해제되거나 파워 온 되면, 보안 애플리케이션(110)은 잠금 화면을 디스플레이 할 수 있다. 이 경우 스마트 폰에서 기본적으로 제공하는 잠금 화면 대신, 보안 애플리케이션(110)에 의해 실행된 잠금 화면이 디스플레이 될 수 있다.
그리고 보안 애플리케이션(110)은 잠금 화면을 해제하기 위한 인증 정보의 입력을 수신할 수 있다.
그리고 인증 정보가 수신되면, 보안 애플리케이션(110)은 수신된 인증 정보를 이용하여 사용자 또는 게스트를 구분할 수 있다.
구체적으로 보안 애플리케이션(110)은 수신된 인증 정보를 스마트 폰에 기 저장된 사용자 인증 정보 및 게스트 인증 정보와 비교하여, 수신된 인증 정보가 사용자의 인증 정보인지 게스트의 인증 정보인지 판단할 수 있다.
그리고 사용자 인증 정보가 수신된 경우, 보안 애플리케이션(110)은 잠금 화면을 해제하고 사용자에 의한 잠금 화면 해제 정보를 보안 검증 모듈(130)에 전송할 수 있다.
또한 게스트 인증 정보가 수신된 경우, 보안 애플리케이션(110)은 잠금 화면을 해제하고 게스트에 의한 잠금 화면 해제 정보를 보안 검증 모듈(130)에 전송할 수 있다.
다음은 데이터 처리 명령이 보호 대상 데이터의 저장 명령인 경우, 보호 대상 데이터를 암호화 하여 저장하는 단계(S250)에 대하여 도 1을 다시 참고하여 설명한다.
보호 대상 데이터를 암호화 하여 저장하는 단계(S250)는, 게스트가 아닌, 사용자가 잠금 화면을 해제하는 경우 적용될 수 있다.
애플리케이션은 데이터를 생성할 수 있다.
예를 들어 카메라 애플리케이션은 촬영된 영상을 생성할 수 있다. 다른 예를 들어 메신저 애플리케이션은 메신저 창에서 다운로드 한 데이터를 생성할 수 있다.
애플리케이션은 생성된 데이터에 대한 저장을 OS 에 요청할 수 있다. 이 경우 애플리케이션은 데이터의 저장 명령을 생성하여 전송할 수 있다.
한편 애플리케이션이 전송한 보호 대상 데이터의 저장 명령은, API나 JNI를 통해서 커널로 들어가게 된다. 그리고 보안 센서(120)는 커널(kernel)에서의 명령어의 흐름을 감시함으로써, 데이터 처리 명령(데이터 저장 명령)을 감지할 수 있다.
한편 데이터 저장 명령이 감지되면, 보안 센서(120)는 데이터 저장 명령의 최초 요청 애플리케이션에 대한 정보를 획득할 수 있다.
여기서 최초 요청 애플리케이션이란, 데이터 처리의 근원이 되는 애플리케이션을 의미할 수 있다.
일 례로 특정 애플리케이션이, 다른 애플리케이션의 호출 없이, 데이터를 생성하여 저장하려는 경우 상기 특정 애플리케이션이 최초 요청 애플리케이션일 수 있다.
다른 일 례로, 제1 애플리케이션이 제2 애플리케이션을 호출하여 제2 애플리케이션이 OS에 데이터 처리를 요청한 경우, 제1 애플리케이션이 최초 요청 애플리케이션이 될 수 있다.
예를 들어 메신저 애플리케이션의 실행 중 메신저 애플리케이션 내 메뉴인 촬영 버튼을 눌러 영상을 촬영하는 경우를 가정한다. 이 경우 메신저 애플리케이션은 카메라 애플리케이션을 호출하고, 카메라 애플리케이션은 영상을 생성하여 저장을 요청하게 된다. 이 경우 메신저 애플리케이션이 데이터 처리의 근원이 되는 최초 애플리케이션이 될 수 있다.
또 다른 일 례로, 제1 애플리케이션에서 데이터를 생성하고, 생성된 데이터에 대한 데이터 처리 명령을 제2 애플리케이션이 OS에 전송하는 경우, 제1 애플리케이션이 최초 요청 애플리케이션이 될 수 있다.
또 다른 일 례로, 데이터 처리 명령이 제1 애플리케이션에서 생성되어 제2 애플리케이션으로 전달되고, 제2 애플리케이션이 데이터 처리 명령을 OS에 전달하며 데이터 처리를 요청한 경우, 제1 애플리케이션이 최초 요청 애플리케이션이 될 수 있다.
한편 본 명세서에서는, OS에 데이터 처리를 직접 요청하는 제2 애플리케이션을 접근 요청 애플리케이션으로 명칭 하도록 한다.
보안 센서(120)는 바인더 드라이버, 공유 메모리 및 메시지 큐 중 적어도 하나를 확인하여 데이터 처리 명령의 최초 요청 애플리케이션에 대한 정보를 획득할 수 있다.
여기서 바인더 드라이버에는 앱이 다른 앱을 호출한 호출 이력을 저장할 수 있다. 따라서 보안 센서(120)는 바인더 드라이버를 감시하여 어떤 앱이 어떤 다른 어떤 앱을 호출했는지에 대한 정보를 획득할 수 있다.
또한 공유 메모리(Shared Memory)는 커널에서 기본적으로 제공하는 저장 공간으로, 앱과 다른 앱이 데이터를 공유할 때 데이터를 임시 저장할 수 있다. 또한 메시지 큐는 애플리케이션에서 생성된 명령들이 저장되는 저장 공간일 수 있다. 그리고 보안 센서(120)는 공유 메모리(Shared Memory) 및 메시지 큐를 감시함에 따라 접근 요청 애플리케이션을 호출한, 저장의 대상이 되는 데이터를 생성한, 또는 데이터 처리 명령을 생성한 최초의 애플리케이션이 무엇인지 판단할 수 있다.
따라서 보안 센서(120)는 바인더 드라이버, 공유 메모리 및 메시지 큐 중 적어도 하나를 감시함으로써, 데이터 처리 명령의 최초 요청 애플리케이션에 대한 정보를 획득할 수 있다.
또한 보안 센서(120)는 데이터 처리 명령의 최초 요청 애플리케이션에 대한 정보를 보안 검증 모듈(130)에 전송할 수 있다.
한편 보안 검증 모듈(130)은 최초 요청 애플리케이션에 대한 정보를 수신할 수 있다. 또한 보안 검증 모듈(130)은 최초 요청 애플리케이션이 보호 대상 애플리케이션이면 데이터의 암호화 요청을 보안 드라이버(140)에 전송할 수 있다.
구체적으로 보안 검증 모듈(130)은 보유 하고 있는 보호 대상 애플리케이션 리스트와 보안 센서(120)가 전송한 최초 요청 애플리케이션에 대한 정보를 비교하여, 최초 요청 애플리케이션이 보호 대상 애플리케이션 리스트에 속하는지 결정할 수 있다.
그리고 최초 요청 애플리케이션이 보호 대상 애플리케이션 리스트에 속하면, 보안 검증 모듈(130)은 데이터 처리의 대상이 되는 데이터를 보호 대상 데이터로써 처리할 수 있다. 이에 따라 보안 검증 모듈(130)은 보안 드라이버(140)에 암호화 요청을 전송할 수 있다.
이 경우 보안 검증 모듈(130)은 암호화 요청과 함께 데이터(보호 대상 데이터)의 경로를 보안 드라이버(140)에 전송할 수 있다.
한편 보안 드라이버(140)는 데이터의 경로 및 암호화 요청을 수신할 수 있다.
그리고 보안 드라이버(140)는 데이터의 경로를 기초로 데이터를 암호화 하고, 암호화된 데이터를 인비저블 폴더(Invisible Folder)에 저장할 수 있다. 여기서 인비저블 폴더(Invisible Folder)은, 보호 대상 애플리케이션을 통해서만 접근 가능한 보안 폴더를 의미할 수 있다.
한편 보안 드라이버(140)는 시큐어 앨리먼트에 저장된 데이터 키를 이용하여 데이터를 암호화 할 수 있다.
구체적으로 보안 드라이버(140)는 잠금 화면을 해제하기 위하여 사용된 사용자 인증 정보를 이용하여 시큐어 앨리먼트에 저장된 데이터 키를 획득할 수 있다.
그리고 나서 보안 드라이버(140)는 데이터 키를 이용하여 데이터를 암호화 하고, 암호화된 데이터를 인비저블 폴더(Invisible Folder)에 저장할 수 있다. 이와 같이 암호화 되어 인비저블 폴더(Invisible Folder)에 저장된 데이터를 보호 데이터라고 명칭할 수 있다.
한편 데이터가 암호화되서 저장되면, 보안 드라이버(140)는 암호화된 데이터(보호 데이터)의 경로를 보안 검증 모듈(130)에 전송할 수 있다.
다음은 보호 대상 폴더나 보호 대상 데이터가 등록된 경우의 동작에 대하여 설명한다.
앞서 보안 애플리케이션(110)이 보안 검증 모듈(130)에 보호 대상 데이터 리스트를 전송한다고 설명한 바 있다.
이 경우 보안 검증 모듈(130)은 암호화 보안 드라이버(140)에 암호화 요청과 함께 보호 대상 데이터 리스트에 포함된 경로를 전송할 수 있다.
이 경우 보안 드라이버(140)는 보호 대상 데이터의 경로 및 암호화 요청을 수신하고, 보호 대상 데이터의 경로를 기초로 데이터를 암호화 하고, 암호화된 데이터를 인비저블 폴더(Invisible Folder)에 저장할 수 있다.
또한 보안 드라이버(140)는 암호화된 데이터(보호 데이터)의 경로를 보안 검증 모듈(130)에 전송할 수 있다.
다음은 데이터 처리 명령이 보호 데이터의 읽기 명령인 경우, 보호 데이터를 복호화 하고 복호화된 보호 데이터의 경로를 반환하는 단계(S270)에 대하여 도 1을 다시 참고하여 설명한다.
보안 애플리케이션(110)이 잠금 화면을 디스플레이 하고, 사용자 인증 정보가 수신됨에 따라 잠금 화면을 해제하고, 사용자에 의한 잠금 화면 해제 정보를 보안 검증 모듈(130)에 전송한 상황을 가정하여 설명한다.
또한 메신저 애플리케이션이 실행되고 있으며, 사용자가 메신저 대화방에서 사진 전송 버튼을 클릭함으로써 탐색기 애플리케이션이 실행된 상황이다. 따라서 최초 요청 애플리케이션은 메신저 애플리케이션, 접근 요청 애플리케이션은 탐색기 애플리케이션이다.
최초 요청 애플리케이션 또는 접근 요청 애플리케이션은 데이터 독출 명령(read)을 생성할 수 있다. 그리고 접근 요청 애플리케이션은 데이터의 독출을 OS 에 요청하고, 이에 따라 데이터 독출 명령이 OS로 전달될 수 있다.
한편 데이터 독출 명령은, API나 JNI를 통해서 커널로 들어가게 된다. 그리고 보안 센서(120)는 커널(kernel)에서의 명령어의 흐름을 감시함으로써, 데이터 독출 명령을 감지할 수 있다.
한편 데이터 독출 명령이 감지되면, 보안 센서(120)는 데이터 독출 명령의 최초 요청 애플리케이션에 대한 정보를 획득할 수 있다.
일 례로 특정 애플리케이션이, 다른 애플리케이션의 호출 없이, 데이터를 독출하려는 경우, 특정 애플리케이션이 최초 요청 애플리케이션일 수 있다.
다른 일 례로, 제1 애플리케이션이 제2 애플리케이션을 호출하여 제2 애플리케이션이 OS에 데이터 처리를 요청한 경우, 제1 애플리케이션이 최초 요청 애플리케이션이 될 수 있다.
또 다른 일 례로, 데이터 처리 명령이 제1 애플리케이션에서 생성되어 제2 애플리케이션으로 전달되고, 제2 애플리케이션이 데이터 처리 명령을 OS에 전달하며 데이터 처리를 요청한 경우, 제1 애플리케이션이 최초 요청 애플리케이션이 될 수 있다.
보안 센서(120)는 바인더 드라이버, 공유 메모리 및 메시지 큐 중 적어도 하나를 확인하여 데이터 독출 명령의 최초 요청 애플리케이션에 대한 정보를 획득할 수 있다.
또한 보안 센서(120)는 데이터 독출 명령의 최초 요청 애플리케이션에 대한 정보를 보안 검증 모듈(130)에 전송할 수 있다.
한편 보안 검증 모듈(130)은 최초 요청 애플리케이션에 대한 정보를 수신할 수 있다. 또한 보안 검증 모듈(130)은 최초 요청 애플리케이션이 보호 대상 애플리케이션이면 데이터 독출 명령에 의해 지정된 보호 데이터의 복호화 요청을 보안 드라이버(140)에 전송할 수 있다.
구체적으로 보안 검증 모듈(130)은 보유 하고 있는 보호 대상 애플리케이션 리스트와 보안 센서(120)가 전송한 최초 요청 애플리케이션에 대한 정보를 비교하여, 최초 요청 애플리케이션이 보호 대상 애플리케이션 리스트에 속하는지 결정할 수 있다.
그리고 최초 요청 애플리케이션이 보호 대상 애플리케이션 리스트에 속하면, 보안 검증 모듈(130)은 데이터 독출 명령에 의해 지정된 보호 데이터에 대한 복호화 요청을 보안 드라이버에 전송할 수 있다.
여기서 데이터 독출 명령에 의해 지정된 보호 데이터는, 데이터 독출 명령에 의하여 최초 요청 애플리케이션 또는 접근 요청 애플리케이션에 반환되어야 하는 보호 데이터를 의미할 수 있다.
한편 보안 검증 모듈(130)은 보호 대상 데이터 리스트를 보유 중이다. 여기서 보호 대상 데이터 리스트는, 보호 대상 애플리케이션이 최초 요청 애플리케이션일 때 생성된 보호 대상 데이터의 경로, 사용자에 의해 선택된 보호 대상 폴더의 경로, 사용자에 의해 선택된 보호 대상 데이터의 경로를 포함할 수 있다.
그리고 보안 검증 모듈(130)은 보호 대상 데이터 리스트를 이용하여 데이터 독출 명령에 의해 지정된 보호 데이터의 경로 및 복호화 요청을 보안 드라이버(140)에 전송할 수 있다.
구체적으로 보안 드라이버(140)가 보호 데이터(인비저블 폴더에 암호화하여 저장된 데이터)의 경로를 보안 검증 모듈(130)에 전송한 바 있기 때문에, 보안 검증 모듈(130)은 보호 데이터의 경로를 보유하고 있는 상태이다. 따라서 보안 검증 모듈(130)은, 데이터 독출 명령에 의해 지정된 보호 데이터의 경로 및 복호화 요청을 보안 드라이버(140)에 전송할 수 있다.
또한 데이터 독출 명령에 의해 특정 폴더가 지정된 경우, 보안 검증 모듈(130)은 특정 폴더에 속하는 보호 데이터의 경로 및 복호화 요청을 보안 드라이버(140)에 전송할 수 있다.
한편 보안 드라이버(140)는 보호 데이터의 경로 및 복호화 요청을 수신할 수 있다.
그리고 보안 드라이버(140)는 보호 데이터의 경로를 기초로 인비저블 폴더(Invisible Folder) 내 보호 데이터를 복호화 하고, 복호화된 보호 데이터의 경로를 보안 검증 모듈(130)에 전송할 수 있다.
한편 보안 드라이버(140)는 시큐어 앨리먼트에 저장된 데이터 키를 이용하여 보호 데이터를 복호화 할 수 있다.
구체적으로 보안 드라이버(140)는 잠금 화면을 해제하기 위하여 사용된 사용자 인증 정보를 이용하여 시큐어 앨리먼트에 저장된 데이터 키를 획득할 수 있다. 그리고 나서 보안 드라이버(140)는 획득된 데이터 키를 이용하여 보호 데이터를 복호화 하고 복호화 된 보호 데이터의 경로를 보안 검증 모듈(130)에 전송할 수 있다.
이 경우 보안 검증 모듈(130)은 복호화 된 보호 데이터의 경로를 반환할 수 있다.
여기서 복호화 된 보호 데이터의 경로를 반환한다는 것은, 복호화 된 보호 데이터의 경로를 파일 열람을 담당하는 파일 시스템에게 반환한다는 것을 의미할 수 있다. 이 경우 보안 검증 모듈(130)에서 반환된 경로는 보안 센서(120)를 통하여 파일 시스템에 전달될 수 있다.
한편 특정 폴더가 데이터 독출 명령에 의해 지정될 수 있다. 예를 들어 사용자가 메신저 대화방의 사진 전송 버튼을 클릭한 경우, 탐색기 내 특정 폴더에 있는 데이터들이 표시되어야 한다.
한편 특정 폴더에는 일반 데이터 및 보호 대상 데이터가 함께 존재할 수 있다. 그리고 사용자가 보안 대상 애플리케이션을 이용하여 사진 전송 버튼을 클릭한 경우에는, 특정 폴더 내 일반 데이터 및 보호 대상 데이터가 모두 표시되어야 한다.
따라서 보안 검증 모듈(130)은 데이터 독출 명령에 의해 지정된 폴더의 경로 및 복호화된 보호 데이터의 경로를 반환할 수 있다.
구체적으로 보안 검증 모듈(130)은 데이터 독출 명령에 의해 지정된 폴더의 경로 및 복호화된 보호 데이터의 경로를 보안 센서(120)에 전송할 수 있다. 이 경우 보안 센서(120)는 데이터 독출 명령에 의해 지정된 폴더의 경로 및 복호화된 보호 데이터의 경로를 파일 열람을 수행하는 파일 시스템에 전송할 수 있다.
이 경우 파일 시스템은 데이터 독출 명령에 의해 지정된 폴더의 경로 및 복호화된 보호 데이터의 경로를 접근 요청 애플리케이션에 반환할 수 있다. 그리고 나서 접근 요청 애플리케이션은, 데이터 독출 명령에 의해 지정된 폴더의 경로 및 복호화된 보호 데이터의 경로를 이용하여, 데이터 독출 명령에 의해 지정된 폴더에 포함되는 일반 데이터 및 보호 데이터를 디스플레이 할 수 있다.
다음은 보안 애플리케이션(110)이 잠금 화면을 디스플레이 하고, 사용자 인증 정보가 수신됨에 따라 잠금 화면을 해제하고, 사용자에 의한 잠금 화면 해제 정보를 보안 검증 모듈(130)에 전송한 상황을 가정하여 설명한다. 또한 악성 애플리케이션이 갤러리 애플리케이션을 통하여 특정 폴더에 접근하는 상황을 설명한다. 이 경우 최초 요청 애플리케이션은 악성 애플리케이션이며, 접근 요청 애플리케이션은 갤러리 애플리케이션이다.
최초 요청 애플리케이션 또는 접근 요청 애플리케이션은 데이터 독출 명령(read)을 생성할 수 있다. 그리고 접근 요청 애플리케이션은 데이터의 독출을 OS 에 요청하고, 이에 따라 데이터 독출 명령이 OS로 전달될 수 있다.
한편 데이터 독출 명령이 감지되면, 보안 센서(120)는 데이터 독출 명령의 최초 요청 애플리케이션에 대한 정보를 획득할 수 있다.
또한 보안 센서(120)는 데이터 독출 명령의 최초 요청 애플리케이션에 대한 정보를 보안 검증 모듈(130)에 전송할 수 있다.
한편 보안 검증 모듈(130)은 최초 요청 애플리케이션에 대한 정보를 수신할 수 있다. 또한 보안 검증 모듈(130)은 보유 하고 있는 보호 대상 애플리케이션 리스트와 보안 센서(120)가 전송한 최초 요청 애플리케이션에 대한 정보를 비교하여, 최초 요청 애플리케이션이 보호 대상 애플리케이션 리스트에 속하는지 결정할 수 있다.
한편 최초 요청 애플리케이션이 보호 대상 애플리케이션 리스트에 속하는지 않는 경우, 보안 검증 모듈(130)은 최초 요청 애플리케이션이 비 보호 대상 애플리케이션인 것으로 결정할 수 있다.
그리고 최초 요청 애플리케이션이 비 보호 대상 애플리케이션이면, 보안 검증 모듈(130)은 복호화된 보호 데이터의 경로를 제외하고, 데이터 독출 명령에 의해 지정된 폴더의 경로를 반환할 수 있다.
이 경우 파일 시스템은 데이터 독출 명령에 의해 지정된 폴더의 경로를 접근 요청 애플리케이션에 반환할 수 있다.
그리고 나서 접근 요청 애플리케이션은, 데이터 독출 명령에 의해 지정된 폴더의 경로를 이용하여, 데이터 독출 명령에 의해 지정된 폴더에 포함되는 일반 데이터를 디스플레이 할 수 있다. 즉 보호 데이터의 경로는 반환되지 않았으므로, 디스플레이 되는 폴더에는, 보호 데이터가 표시되지 않으며 일반 데이터만 표시되게 된다.
다음은 보안 애플리케이션(110)이 잠금 화면을 디스플레이 하고, 게스트 인증 정보가 수신됨에 따라 잠금 화면을 해제하고, 게스트에 의한 잠금 화면 해제 정보를 보안 검증 모듈(130)에 전송한 상황을 가정하여 설명한다.
최초 요청 애플리케이션 또는 접근 요청 애플리케이션은 데이터 독출 명령(read)을 생성할 수 있다. 그리고 접근 요청 애플리케이션은 데이터의 독출을 OS 에 요청하고, 이에 따라 데이터 독출 명령이 OS로 전달될 수 있다.
한편 데이터 독출 명령이 감지되면, 보안 센서(120)는 데이터 독출 명령의 최초 요청 애플리케이션에 대한 정보를 획득할 수 있다.
또한 보안 센서(120)는 데이터 독출 명령의 최초 요청 애플리케이션에 대한 정보를 보안 검증 모듈(130)에 전송할 수 있다.
한편, 현재는 스마트 폰을 게스트가 사용하고 있으며, 보안 검증 모듈(130)은 보안 애플리케이션(110)으로부터 게스트에 의한 잠금 화면 해제 정보를 수신함으로써 게스트가 스마트 폰을 사용하고 있는 상황을 인지한 상태이다.
즉 게스트에 의한 잠금 화면 해제 정보를 수신한 보안 검증 모듈(130)은 복호화된 보호 데이터의 경로를 제외하고, 데이터 독출 명령에 의해 지정된 폴더의 경로를 반환할 수 있다.
이 경우 파일 시스템은 데이터 독출 명령에 의해 지정된 폴더의 경로를 접근 요청 애플리케이션에 반환할 수 있다.
그리고 나서 접근 요청 애플리케이션은, 데이터 독출 명령에 의해 지정된 폴더의 경로를 이용하여, 데이터 독출 명령에 의해 지정된 폴더에 포함되는 일반 데이터를 디스플레이 할 수 있다. 즉 보호 데이터의 경로는 반환되지 않았으므로, 디스플레이 되는 폴더에는 보호 데이터가 표시되지 않으며 일반 데이터만 표시되게 된다.
본 발명에 따르면, 복수의 애플리케이션으로부터 생성된 데이터 처리 명령을 커널에서 감지하고 감지 결과에 따라 접근 제어를 수행하기 때문에, 스마트 폰에 설치되어 있는 모든 애플리케이션에 대한 보안성을 향상시킬 수 있으며, 스마트 폰에 설치되어 있는 모든 애플리케이션에 범용적으로 적용되는 방식이기 때문에 사용자 편의성을 향상시킬 수 있는 장점이 있다.
또한 본원 발명에 따르면, 사용자가 보호 데이터와 일반 데이터를 모두 제공받기를 원할 때는, 사용자는 보호 대상 애플리케이션을 실행할 수 있다. 반면에 사용자가 일반 데이터만 제공받기를 원할 때, 사용자는 보호 대상 애플리케이션이 아닌 다른 애플리케이션을 실행할 수 있다. 즉 사용자는 기존의 일반 애플리케이션을 그대로 사용하면 되며, 데이터 보안 장치가 상황에 따라 적절한 데이터를 제공하기 때문에 사용자 편의성을 향상시킬 수 있는 장점이 있다.
또한 본 발명에 따르면, 복수의 애플리케이션으로부터 생성된 데이터 처리 명령을 커널에서 감지하고 감지 결과에 따라 접근 제어를 수행하기 때문에, 데이터 영역에 접근하는 애플리케이션의 종류, 방법 및 경로에 관계 없이 사용자 프라이버시를 보호할 수 있는 장점이 있다.
또한 본 발명에 따르면, 실제 데이터 영역에 접근을 시도하는 최초 애플리케이션을 탐지하여 접근 제어를 수행하기 때문에, 사용자의 의도에 부합하는 접근 제어를 수행할 수 있다. 예를 들어 사용자는 자신이 실제로 사용자하고 있는 최초 애플리케이션을 기준으로 보안의 필요성을 생각하는 것이 보통이다. 그리고 본 발명에 따르면, 최초 애플리케이션을 기준으로 접근 제어를 수행함으로써 이러한 사용자의 의도에 부합할 수 있는 장점이 있다.
또한 본 발명에 따르면, 실제 데이터 영역에 접근을 시도하는 최초 애플리케이션을 탐지하여 접근 제어를 수행하기 때문에, 일반 애플리케이션을 이용하는 악성 애플리케이션의 공격을 방지할 수 있는 장점이 있다.
또한 본 발명에 따르면 게스트가 스마트 폰을 이용하는 경우 보호 데이터를 제공하지 않음으로써, 사용자 프라이버시를 향상시킬 수 있는 장점이 있다.
또한 본 발명에 따르면, 잠금 화면을 해제 하기 위한 인증 정보를 이용하여 데이터 키를 저장 및 독출하기 때문에, 사용자 입장에서는 별도의 비밀 번호 입력 없이도 보호 데이터를 저장하거나 제공 받을 수 있는 장점이 있다.
전술한 본 발명은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 또한, 상기 컴퓨터는 제어부를 포함할 수도 있다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니 되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.
110: 보안 앱 120: 보안 센서
130: 보안 검증 모듈 140: 보안 드라이버

Claims (20)

  1. 복수의 애플리케이션에서 생성된 명령어가 모이는 커널에 설치되어 데이터 처리 명령을 감지하고, 상기 데이터 처리 명령이 감지되면 상기 데이터 처리 명령의 최초 요청 애플리케이션에 대한 정보를 획득하는 보안 센서;
    상기 최초 요청 애플리케이션에 대한 정보를 수신하고, 상기 최초 요청 애플리케이션이 보호 대상 애플리케이션이면 데이터의 암호화 요청 또는 복호화 요청을 전송하는 보안 검증 모듈; 및
    상기 암호화 요청에 기초하여 상기 데이터를 암호화 하여 저장하거나, 상기 복호화 요청에 기초하여 데이터를 복호화 하고 상기 복호화된 데이터의 경로를 제공하는 보안 드라이버;를 포함하는
    데이터 보안 장치.
  2. 제 1항에 있어서,
    상기 보안 센서는,
    접근 요청 애플리케이션이 직접 데이터 처리를 요청한 경우, 바인더 드라이버, 공유 메모리 및 메시지 큐 중 적어도 하나를 확인하여 상기 데이터 처리의 근원인 상기 최초 요청 애플리케이션에 대한 정보를 획득하는
    데이터 보안 장치.
  3. 제 2항에 있어서,
    상기 보안 검증 모듈은,
    상기 데이터 처리 명령이 데이터 저장 명령인 경우, 상기 데이터의 경로 및 상기 암호화 요청을 상기 보안 드라이버에 전송하고,
    상기 보안 드라이버는,
    상기 데이터의 경로를 기초로 상기 데이터를 암호화 하여 인비저블 폴더에 저장하는
    데이터 보안 장치.
  4. 제 3항에 있어서,
    사용자 인증 정보가 등록되면, 데이터 키를 상기 사용자 인증 정보로 암호화 하여 시큐어 엘리먼트에 저장하는 보안 애플리케이션;을 더 포함하고,
    상기 보안 드라이버는,
    상기 시큐어 엘리먼트에 저장된 상기 데이터 키를 이용하여 상기 데이터를 암호화 하는
    데이터 보안 장치.
  5. 제 4항에 있어서,
    상기 보안 애플리케이션은,
    잠금 화면을 디스플레이 하고, 상기 사용자로부터 상기 사용자 인증 정보가 수신되면 상기 잠금 화면을 해제하고,
    상기 보안 드라이버는,
    상기 잠금 화면을 해제하기 위하여 사용된 상기 사용자 인증 정보를 이용하여 상기 시큐어 엘리먼트에 저장된 상기 데이터 키를 획득하는
    데이터 보안 장치.
  6. 제 4항에 있어서,
    상기 보안 애플리케이션은,
    상기 복수의 애플리케이션 중 사용자에 의해 선택된 특정 애플리케이션을 상기 보호 대상 애플리케이션으로 등록하고, 보호 대상 애플리케이션의 리스트를 상기 보안 검증 모듈에 전송하고,
    상기 보안 검증 모듈은,
    상기 최초 요청 애플리케이션이 상기 보호 대상 애플리케이션의 리스트에 속하면 상기 데이터의 경로 및 상기 암호화 요청을 상기 보안 드라이버에 전송하는
    데이터 보안 장치.
  7. 제 4항에 있어서,
    상기 보안 애플리케이션은,
    사용자에 의해 선택된 데이터를 보호 대상 데이터로 등록하고, 상기 보호 대상 데이터의 경로를 포함하는 리스트를 상기 보안 검증 모듈에 전송하고,
    상기 보안 검증 모듈은,
    상기 보호 대상 데이터의 경로 및 암호화 요청을 상기 보안 드라이버에 전송하는
    데이터 보안 장치.
  8. 제 2항에 있어서,
    상기 보안 검증 모듈은,
    상기 데이터 처리 명령이 데이터 독출 명령인 경우, 상기 데이터 독출 명령에 의해 지정된 보호 데이터의 경로 및 복호화 요청을 상기 보안 드라이버에 전송하고,
    상기 보안 드라이버는,
    상기 보호 데이터의 경로에 기초하여 상기 보호 데이터를 복호화 하고, 상기 복호화된 보호 데이터의 경로를 상기 보안 검증 모듈에 전송하는
    데이터 보안 장치.
  9. 제 8항에 있어서,
    상기 보안 검증 모듈은,
    상기 데이터 독출 명령에 의해 지정된 폴더의 경로 및 상기 복호화된 보호 데이터의 경로를 반환하는
    데이터 보안 장치.
  10. 제 9항에 있어서,
    사용자로부터 사용자 인증 정보가 등록되면, 데이터 키를 상기 사용자 인증 정보로 암호화 하여 시큐어 엘리먼트에 저장하는 보안 애플리케이션;을 더 포함하고,
    상기 보안 드라이버는,
    상기 시큐어 엘리먼트에 저장된 상기 데이터 키를 이용하여 상기 보호 데이터를 복호화 하는
    데이터 보안 장치.
  11. 제 10항에 있어서,
    상기 보안 애플리케이션은,
    잠금 화면을 디스플레이 하고, 상기 사용자로부터 상기 사용자 인증 정보가 수신되면 상기 잠금 화면을 해제하고,
    상기 보안 드라이버는,
    상기 잠금 화면을 해제하기 위하여 사용된 상기 사용자 인증 정보를 이용하여 상기 시큐어 엘리먼트에 저장된 상기 데이터 키를 획득하는
    데이터 보안 장치.
  12. 제 9항에 있어서,
    상기 보안 애플리케이션은,
    잠금 화면을 디스플레이 하고, 게스트로부터 게스트 인증 정보가 수신되면 상기 잠금 화면을 해제하고, 상기 게스트에 의한 잠금 화면의 해제 정보를 상기 보안 검증 모듈에 전송하고,
    상기 보안 검증 모듈은,
    상기 게스트에 의한 잠금 화면의 해제 정보가 수신되면, 상기 복호화된 보호 데이터의 경로를 제외하고, 상기 데이터 독출 명령에 의해 지정된 폴더의 경로를 반환하는
    데이터 보안 장치.
  13. 제 9항에 있어서,
    상기 보안 검증 모듈은,
    상기 최초 요청 애플리케이션이 비 보호 대상 애플리케이션이면, 상기 복호화된 보호 데이터의 경로를 제외하고, 상기 데이터 독출 명령에 의해 지정된 폴더의 경로를 반환하는
    데이터 보안 장치.
  14. 복수의 애플리케이션에서 생성된 명령어가 모이는 커널에 설치된 보안 센서가 데이터 처리 명령을 감지하는 단계;
    상기 보안 센서가, 상기 데이터 처리 명령이 감지되면 상기 데이터 처리 명령의 최초 요청 애플리케이션에 대한 정보를 획득하는 단계;
    보안 검증 모듈이, 상기 최초 요청 애플리케이션에 대한 정보를 수신하고, 상기 최초 요청 애플리케이션이 보호 대상 애플리케이션이면 데이터의 암호화 요청 또는 복호화 요청을 전송하는 단계; 및
    보안 드라이버가, 상기 암호화 요청에 기초하여 상기 데이터를 암호화 하여 저장하거나, 상기 복호화 요청에 기초하여 데이터를 복호화 하고 상기 복호화된 데이터의 경로를 제공하는 단계;를 포함하는
    데이터 보안 방법.
  15. 제 14항에 있어서,
    상기 최초 요청 애플리케이션에 대한 정보를 획득하는 단계는,
    접근 요청 애플리케이션이 직접 데이터 처리를 요청한 경우, 바인더 드라이버, 공유 메모리 및 메시지 큐 중 적어도 하나를 확인하여 상기 데이터 처리의 근원인 상기 최초 요청 애플리케이션에 대한 정보를 획득하는 단계;를 포함하는
    데이터 보안 방법.
  16. 제 15항에 있어서,
    상기 데이터의 암호화 요청을 전송하는 단계는,
    상기 데이터 처리 명령이 상기 데이터의 데이터 저장 명령인 경우, 상기 데이터의 경로 및 상기 암호화 요청을 상기 보안 드라이버에 전송하는 단계;를 포함하고,
    상기 암호화 요청에 기초하여 상기 데이터를 암호화 하여 저장하는 단계는,
    상기 데이터의 경로를 기초로 상기 데이터를 암호화 하여 인비저블 폴더에 저장하는 단계;를 포함하는
    데이터 보안 방법.
  17. 제 16항에 있어서,
    보안 애플리케이션이, 사용자 인증 정보가 등록되면, 데이터 키를 상기 사용자 인증 정보로 암호화 하여 시큐어 엘리먼트에 저장하는 단계;를 더 포함하고,
    상기 데이터의 경로를 기초로 상기 데이터를 암호화 하여 인비저블 폴더에 저장하는 단계는,
    상기 시큐어 엘리먼트에 저장된 상기 데이터 키를 이용하여 상기 데이터를 암호화 하는 단계;를 포함하는
    데이터 보안 방법.
  18. 제 15항에 있어서,
    상기 데이터의 복호화 요청을 전송하는 단계는,
    상기 데이터 처리 명령이 데이터 독출 명령인 경우, 상기 데이터 독출 명령에 의해 지정된 보호 데이터의 경로 및 복호화 요청을 상기 보안 드라이버에 전송하는 단계;를 포함하고,
    상기 복호화 요청에 기초하여 데이터를 복호화 하고 상기 복호화된 데이터의 경로를 제공하는 단계는,
    상기 보호 데이터의 경로에 기초하여 상기 보호 데이터를 복호화 하고, 상기 복호화된 보호 데이터의 경로를 상기 보안 검증 모듈에 전송하는 단계;를 포함하는
    데이터 보안 방법.
  19. 제 18항에 있어서,
    상기 보안 검증 모듈이, 상기 데이터 독출 명령에 의해 지정된 폴더의 경로 및 상기 복호화된 보호 데이터의 경로를 반환하는 단계;를 더 포함하는
    데이터 보안 방법.
  20. 제 19항에 있어서,
    상기 보안 애플리케이션이, 잠금 화면을 디스플레이 하고, 게스트로부터 게스트 인증 정보가 수신되면 상기 잠금 화면을 해제하고, 상기 게스트에 의한 잠금 화면의 해제 정보를 상기 보안 검증 모듈에 전송하는 단계; 및
    상기 보안 검증 모듈이, 상기 게스트에 의한 잠금 화면의 해제 정보가 수신되면, 상기 복호화된 보호 데이터의 경로를 제외하고, 상기 데이터 독출 명령에 의해 지정된 폴더의 경로를 반환하는 단계;를 더 포함하는
    데이터 보안 방법.
KR1020200141528A 2020-10-28 2020-10-28 데이터 보안 장치 및 데이터 보안 방법 KR20220056705A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200141528A KR20220056705A (ko) 2020-10-28 2020-10-28 데이터 보안 장치 및 데이터 보안 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200141528A KR20220056705A (ko) 2020-10-28 2020-10-28 데이터 보안 장치 및 데이터 보안 방법

Publications (1)

Publication Number Publication Date
KR20220056705A true KR20220056705A (ko) 2022-05-06

Family

ID=81584529

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200141528A KR20220056705A (ko) 2020-10-28 2020-10-28 데이터 보안 장치 및 데이터 보안 방법

Country Status (1)

Country Link
KR (1) KR20220056705A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117131519A (zh) * 2023-02-27 2023-11-28 荣耀终端有限公司 一种信息的保护方法及设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117131519A (zh) * 2023-02-27 2023-11-28 荣耀终端有限公司 一种信息的保护方法及设备

Similar Documents

Publication Publication Date Title
US10375116B2 (en) System and method to provide server control for access to mobile client data
KR102223609B1 (ko) 전자 기기간 콘텐트 공유 방법 및 장치
US10257177B2 (en) Electronic device and method for managing re-enrollment
US9891969B2 (en) Method and apparatus for device state based encryption key
JP6511161B2 (ja) データファイルの保護
US11475123B2 (en) Temporary removal of software programs to secure mobile device
US20210034763A1 (en) Splitting Sensitive Data and Storing Split Sensitive Data in Different Application Environments
WO2022078095A1 (zh) 一种故障检测方法及电子终端
CN115943376A (zh) 认证界面元素交互
KR20140112399A (ko) 어플리케이션 접근 제어 방법 및 이를 구현하는 전자 장치
KR20220056705A (ko) 데이터 보안 장치 및 데이터 보안 방법
WO2019217649A2 (en) Method and system for improved data control and access
EP3284001B1 (en) Device and method of requesting external device to execute task
EP4187420A1 (en) Resource management method, computing device, computing equipment, and readable storage medium
KR102368208B1 (ko) 보안 기능을 지원하는 파일 시스템 및 공통적 파일 액세스 인터페이스에 기초한 파일 유출 방지
CN115544586A (zh) 用户数据的安全存储方法、电子设备及存储介质
US10931446B2 (en) Method and system for protecting sharing information
US20200226278A1 (en) Secure document messaging system, device, and method using biometric authentication
KR20140044145A (ko) 사용자 단말기, 사용자 단말기의 잠금 기능 사용 방법 및 컴퓨터 판독 가능한 기록 매체
CN112632518A (zh) 数据访问方法、装置、终端及存储介质
WO2019127468A1 (zh) 分组应用使用同一密钥共享数据
KR20150029251A (ko) 전자 장치 내의 객체를 보안하기 위한 방법 및 이를 위한 전자 장치
CN117131533A (zh) 打开文件的方法和电子设备
KR20200058147A (ko) 전자 장치 및 그의 제어 방법