KR102474243B1 - 사용자 디바이스에 보안 모드를 제공하기 위한 방법 및 장치 - Google Patents

사용자 디바이스에 보안 모드를 제공하기 위한 방법 및 장치 Download PDF

Info

Publication number
KR102474243B1
KR102474243B1 KR1020160008877A KR20160008877A KR102474243B1 KR 102474243 B1 KR102474243 B1 KR 102474243B1 KR 1020160008877 A KR1020160008877 A KR 1020160008877A KR 20160008877 A KR20160008877 A KR 20160008877A KR 102474243 B1 KR102474243 B1 KR 102474243B1
Authority
KR
South Korea
Prior art keywords
secure
user
security
mode
user input
Prior art date
Application number
KR1020160008877A
Other languages
English (en)
Other versions
KR20160108136A (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 US15/554,266 priority Critical patent/US10558826B2/en
Priority to PCT/KR2016/002206 priority patent/WO2016140548A1/ko
Publication of KR20160108136A publication Critical patent/KR20160108136A/ko
Application granted granted Critical
Publication of KR102474243B1 publication Critical patent/KR102474243B1/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/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/74Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode
    • 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
    • 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/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/83Protecting input, output or interconnection devices input devices, e.g. keyboards, mice or controllers thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/84Protecting input, output or interconnection devices output devices, e.g. displays or monitors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • 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/52Monitoring 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/53Monitoring 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 executing in a restricted environment, e.g. sandbox or secure virtual machine
    • 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/629Protecting access to data via a platform, e.g. using keys or access control rules to features or functions of an application
    • 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/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/031Protect user input by software means
    • 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
    • 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/2111Location-sensitive, e.g. geographical location, GPS

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Human Computer Interaction (AREA)
  • Telephone Function (AREA)
  • Signal Processing (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

본 발명은 디바이스의 보안 모드 제공 방법 및 장치에 관한 것이다. 일 실시시예에 따른 보안 모드 제공 방법은 상기 디바이스에 포함된 하나 이상의 기기로부터 상기 디바이스의 보안 환경을 결정하기 위한 복수의 파라미터를 획득하는 단계; 상기 획득된 복수의 파라미터에 기초하여 상기 디바이스가 비보안 환경에 있는지 여부를 결정하는 단계; 및 상기 디바이스가 비보안 환경에 있다고 결정되면, 상기 디바이스가 보안 모드에서 동작하도록 제어 하는 단계를 포함할 수 있다.

Description

사용자 디바이스에 보안 모드를 제공하기 위한 방법 및 장치{A Method and Apparatus For Providing a Secure Mode for User Device}
본 발명은 사용자 디바이스에 보안 모드를 제공하기 위한 것이다. 구체적으로, 일 실시 예에 따른 방법 및 장치는 제3자로부터 민감한 사용자 정보를 보호하기 위한 보안 모드를 제공한다.
다양한 애플리케이션이 이용 될 수 있는 스마트 폰, 모바일 디바이스, 태블릿 컴퓨터, 웨어러블(wearable) 등의 현대 사용자 디바이스는, 민감한 사용자 정보의 사용을 수반 할 수 있다. 예를 들어, 스마트 폰에서 실행되는 모바일 뱅킹 애플리케이션은 사용자가 개인 금융 정보를 사용하도록 할 수 있다. 또는, 스마트폰과 같은 사용자 디바이스에서 웹 사이트에 액세스 할 때 사용자 이름 및 암호와 같은 보안 정보를 입력 하도록 할 수 있다. 그런데, 이러한 민감한 사용자 데이터는 사용자 디바이스와 같은 시야를 공유하는 제3자에게 보여 질 수 있다. 예를 들어, 혼잡한 대중교통과 같은 환경에서, 사용자의 민감한 데이터가 디바이스에 표시될 때, 근처의 다른 사람들이 볼 수 있다. 나아가, 사용자 디바이스에 악성 키 로그인 프로그램(malware)이 설치되어 있다며, 악성 키 로그인 프로그램에 의해 제3자에게 전송될 위험이 있다.
보안 모드를 제공하는 방법 및 장치를 제공한다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 개시의 제 1 측면은 디바이스의 보안 모드 제공 방법에 있어서, 상기 디바이스에 포함된 하나 이상의 기기로부터 상기 디바이스의 보안 환경을 결정하기 위한 복수의 파라미터를 획득하는 단계; 상기 획득된 복수의 파라미터의 조합에 기초하여 상기 디바이스가 비보안 환경에 있는지 여부를 결정하는 단계; 및 상기 디바이스가 비보안 환경에 있다고 결정되면, 상기 디바이스가 보안 모드에서 동작하도록 제어 하는 단계를 포함할 수 있다.
일 실시 예에 따라 상기 복수의 파라미터를 획득하는 단계는 상기 복수의 파라미터들을 조합하여 보안 점수를 생성하는 단계; 및 상기 보안 점수가 임계값을 넘는 경우에 비보안 환경에 있는 것으로 결정하는 단계를 더 포함 할 수 있다.
일 실시 예에 따라 상기 복수의 파라미터를 획득하는 단계는 디바이스의 마이크로폰에서 캡쳐된 오디오 신호를 분석하여 비보안 환경을 나타내는 하나 이상의 파라미터를 획득 할 수 있다.
일 실시 예에 따라 상기 파라미터는 잡음 레벨을 포함 할 수 있다.
일 실시 예에 따라 상기 디바이스가 비보안 환경에 있는지 여부를 결정하는 단계는, 상기 디바이스가 공공 장소에 있다고 결정되면, 상기 디바이스가 비보안 환경에 있다고 결정 할 수 있다.
일 실시 예에 따라 상기 보안 모드는 보안 입력 모드를 포함하고, 상기 보안 입력 모드는 사용자 입력에 대해 디코딩 알고리즘을 적용한 뒤 어플리케이션을 전송 할 수 있다.
일 실시 예에 따라 상기 보안 모드는 보안 출력 모드를 포함하고, 상기 보안 출력 모드는, 사용자 시선이 머무는 영역을 제외한 나머지 영역을 비가시화 처리 할 수 있다.
일 실시 예에 따라 상기 디바이스가 보안모드에서 동작하는 것을 사용자에게만 알리기 위한 통지를 발행 할 수 있다.
본 개시의 제 2 측면은 보안모드를 제공하는 디바이스에 있어서, 상기 디바이스에 포함된 하나 이상의 기기로부터 상기 디바이스의 보안 환경을 결정하기 위한 복수의 파라미터를 획득하고, 상기 생성된 복수의 파라미터의 조합에 기초하여 상기 디바이스가 비보안 환경에 있는지 여부를 결정하는 보안 관리자; 및 상기 디바이스가 비보안 환경에 있다고 결정되면, 상기 디바이스가 보안 모드에서 동작하도록 제어 하는 제어부를 포함 할 수 있다.
일 실시 예에 따른 상기 보안 관리자는 상기 복수의 파라미터들을 조합하여 보안 점수를 생성하는 보안 점수 생성부를 더 포함하고, 상기 보안 점수가 임계값을 넘는 경우에 비보안 환경에 있는 것으로 결정 할 수 있다.
일 실시 예에 따른 상기 디바이스는 마이크로폰을 더 포함하고, 상기 보안 관리자는 상기 마이크로폰에서 캡쳐된 오디오 신호를 분석하여 비보안 환경을 나타내는 하나 이상의 파라미터를 획득 할 수 있다.
일 실시 예에 따른 상기 파라미터는 잡음 레벨을 포함 할 수 있다.
일 실시 예에 따른 상기 보안 관리자는, 상기 디바이스가 공공 장소에 있다고 결정되면, 상기 디바이스가 비보안 환경에 있다고 결정 할 수 있다.
일 실시 예에 따른 상기 보안모드는 보안 입력 모드를 포함하고, 상기 디바이스는, 상기 보안 입력 모드가 제공될 때, 사용자 입력에 대해 디코딩 알고리즘을 적용한 뒤 어플리케이션을 전송하는 입력부를 더 포함 할 수 있다.
일 실시 예에 따른 상기 보안 모드는 사용자 정보를 인코딩하여 출력하는 보안 출력 모드를 포함하고, 상기 제어부는, 상기 보안 출력 모드가 제공될 때, 디스플레이부에 표시될 콘텐트 중 사용자 시선이 머무는 영역을 제외한 나머지 영역을 비가시화 처리하도록 제어 할 수 있다.
일 실시 예에 따른 상기 디바이스는, 상기 디바이스가 보안모드에서 동작하는 것을 사용자에게만 알리기 위한 통지를 발행하는 진동 발생부를 더 포함 할 수 있다.
또한, 본 개시의 제 3 측면은 제 1 측면의 방법을 컴퓨터에서 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공할 수 있다.
일 실시 예에 따른 방법 및 장치는 제3자로부터 민감한 사용자 정보를 보호하기 위한 보안 모드를 제공한다.
도 1은 일 실시 예에 따른 사용자 디바이스가 보안모드를 제공하는 일례를 도시한 도면이다.
도 2는 일 실시 예에 따른 사용자 디바이스가 보안 모드를 제공하는 방법을 나타내는 흐름도이다.
도 3은 일 실시 예에 따른 사용자 디바이스가 보안 출력 모드를 제공하는 일 예를 나타낸다.
도 4 는 일 실시 예에 따른 보안모드를 제공하는 디바이스를 블록도로 나타낸다.
도 5는 일 실시 예에 따르는, 사용자 디바이스의 보안 입력 모드를 블록도로 나타낸다
도 6은 일 실시 예에 따르는, 사용자 디바이스에서 보안 출력 모드를 블록도로 나타낸다.
도7은 일 실시 예에 따라 사용자 디바이스에서 보안 입력을 가능하게 하는 방법을 나타내는 흐름도이다.
도 8은 일 실시 예에 따라, 보안 입출력 모드를 제공하도록 구성된 사용자 디바이스를 블록도로 나타낸다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 발명에 대해 구체적으로 설명하기로 한다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에서 사용되는 "부"라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, "부"는 어떤 역할들을 수행한다. 그렇지만 "부"는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. "부"는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 "부"는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 "부"들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부"들로 결합되거나 추가적인 구성요소들과 "부"들로 더 분리될 수 있다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
이하, 본 발명과 관련된 전자 기기에 대하여 도면을 참조하여 보다 상세하게 설명한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다.
본 명세서에서 본 발명의 원리의 "일 실시 예" 또는 "실시 예"라는 것은 본 발명의 원리의 적어도 하나의 실시 예에 포함되는 실시 예와 함께 설명된 특별한 특성, 구조, 특징 등을 의미하는 것이다. 그러므로, 본 명세서 전반에 걸쳐 다양한 곳에 등장하는 "일 실시 예에서" 또는 "실시 예에서"라는 어구의 등장은 반드시 모두 동일한 실시예를 가리키는 것은 아니다.
본 명세서에서 일 실시 예에 따른 인터셉트란 타인의 정보를 몰래 획득하는 행동을 의미할 수 있다. 예를 들면, 인터셉트는 염탐, 훔쳐보기, 엿보기 및 엿듣기(도청) 중 적어도 하나를 포함할 수 있다.
이하, 도면을 참조하여 일 실시 예에 따른 사용자 디바이스가 보안모드를 제공하는 방법을 설명한다.
도 1은 일 실시 예에 따른 사용자 디바이스(100)가 보안모드를 제공하는 일례를 도시한 도면이다.
도 1을 참조하면, 디바이스(100)의 사용자가 혼잡한 대중교통과 같이 밀집된 환경에 있는 경우 주변에 있는 타인(102)이 사용자 디바이스(100)의 화면(101)을 볼 수 있다. 이때, 화면에 사용자의 개인정보(전화번호, 집주소 등) 또는 보안이 필요한 정보(예컨대, 비밀번호, 계좌 정보)가 표시된다면, 타인(102)은 이를 쉽게 인식할 수 있다. 따라서, 일 실시 예에 따른 디바이스(100)는 상술한 바와같이 사용자의 민감한 정보가 타인에 의해서 침해될 우려가 있는 상황(이하, 비보안 상황)에 있어서, 사용자에게 보안모드를 제공하여 사용자가 디바이스에 입/출력 되는 민감한 정보를 보호할 수 있도록 할 수 있다.
예를 들면, 사용자 디바이스가 비보안 환경에 있다고 결정되는 경우 사용자 디바이스에 표시되는 콘텐츠의 크기를 줄여서 표시(103)할 수 있다. 또는 사용자 디바이스에 표시되는 민감한 정보를 블러(blur) 처리하거나 음영 처리(104)하여 타인이 식별하기 어렵게 할 수 있다. 또는 사용자 디바이스에 민감한 정보를 입력 해야 하는 상황에서, 사용자와 디바이스가 미리 정한 방식으로 문자가 입력되도록 보안 입력 모드를 설정(105)할 수 있다.
이하 도 2를 참조하여 디바이스가 보안 모드를 제공하는 방법을 상세히 설명한다.
도 2는 일 실시 예에 따른 사용자 디바이스가 보안 모드를 제공하는 방법을 나타내는 흐름도이다.
단계 S210에서, 디바이스(100)는 디바이스(100)에 포함된 하나 이상의 기기로부터 디바이스(100)의 환경을 결정하기 위한 복수의 파라미터를 획득할 수 있다.
디바이스(100)에 포함된 기기는 마이크로폰, GPS, WIFI, 카메라와 같이 디바이스(100)의 민감한 정보가 타인에 의해 관찰될 수 있는 환경에 있는지 여부를 결정할 수 있는 정보를 생성 및/또는 수신할 수 있는 장치가를 포함할 수 있다. 예를 들면, 마이크로폰으로 복수의 사용자 목소리가 입력된다면 디바이스(100)가 비보안 환경에 있다고 결정될 수 있다.
일 실시 예에 따른 비보안 환경이란 디바이스(100)가 공공장소 또는 대중교통과 같이 제3자에 의해 관찰될 우려가 있는 환경 또는 디바이스(100)에 표시되는 콘텐트를 사용자가 아닌 제3자가 실제로 보고 있는 환경을 의미할 수 있다. 한편, 복수의 사용자 목소리가 입력되는지 여부는 마이크로폰으로 입력된 잡음레벨로 결정될 수 있으며, 기타 후술하는 다양한 방법이 이용될 수 있다.
다음으로, 단계 S220에서, 디바이스(100)는 단계 S210에서 획득된 복수의 파라미터의 조합에 기초하여 디바이스가 비보안 환경에 있는지 여부를 결정할 수 있다. 예를 들면, 디바이스(100)는 상기 기기로부터 획득된 적어도 하나의 파라미터에 대해 가중치가 부여되어 보안 점수를 생성할 수 있다. 따라서, 디바이스(100)는 보안점수와 소정의 임계값을 비교하여 디바이스(100)가 비보안 환경에 있는지 여부를 결정할 수 있다.
단계 S230에서, 디바이스(100)는 비보안 환경에 있다고 결정되면, 디바이스(100)가 보안 모드에서 동작하도록 제어할 수 있다. 여기서 보안모드는 보안 입력 모드 및/또는 보안 출력 모드를 포함할 수 있다.
예를 들면, 보안 입력모드에서 사용자는 미리 약속된 방식으로 암호화된 문자를 입력함으로써, 입력 내용이 제3자에게 공개되는 것을 방지할 수 있다. 특히, 이러한 방식은 복잡한 보안 시스템 사용 없이, 디바이스(100)가 사용자가 암호화된 입력을 수행할 수 있도록 가이드 해주기만 하면 되므로 범용성이 높을 뿐 아니라, 사용자 입력 자체가 암호화 되기 때문에 디바이스(100)에 악성 소프트웨어가 설치되어 있더라도 보안을 유지할 수 있는 장점이 있다. 보안 입력 모드에 대해서는 도 6을 참조하여 상세히 후술한다.
다른 예로, 보안 출력 모드는 사용자 시선이 머무르는 영역을 제외한 나머지 영역을 비가시화 처리할 수 있다.
도 3은 일 실시 예에 따른 사용자 디바이스(100)가 보안 출력 모드를 제공하는 일 예를 나타낸다. 도 3을 참조하면, 디바이스(100)는 사용자 시선이 머무르는 영역만을 표시하고 그 이외의 영역은 비가시화 처리(예컨대, 흐림표시 또는 음영표시)할 수 있다. 한편, 디바이스(100)는 카메라를 이용하여 사용자의 시선을 추적함으로써 사용자 시선이 머무르는 영역을 결정할 수 있다. 또는, 사용자가 터치하고 있는 지점으로부터 일 영역을 사용자 시선이 머무르는 영역으로 표시할 수 있다.
이 외에도, 후술하는 다양한 방법을 통해서 사용자의 민감한 정보를 제3자가 관찰하기 어렵도록 보호 할 수 있다.
도 4는 일 실시 예에 따른 보안모드를 제공하는 디바이스(100)를 블록도로 나타낸다.
도 4에 도시된 일 실시 예에 따른 보안모드를 제공하는 디바이스(100)에는 본 실시예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 4에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 본 실시예와 관련된 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있다. 또한, 일 실시 예에 따른 보안모드를 제공하는 디바이스(100)는 모바일 단말기 자체 일 수 있으며, 또는 하나의 모듈로써, 휴대폰, 스마트폰 및 태블릿PC 등의 모바일 단말에 포함될 수 있다.
도 4를 참조하면, 일 실시 예에 따른 보안모드를 제공하는 디바이스(100)는 보안 관리자(100)와 제어부(130)를 포함할 수 있다. 일 실시 예에 따른 보안관리자(100)는 디바이스(100)에 포함된 기기로부터 상기 디바이스의 환경을 결정하기 위한 복수의 파라미터를 획득하고, 생성된 복수의 파라미터에 기초하여 디바이스(100)가 비보안 환경에 있는지 여부를 결정할 수 있다.
예를 들면, 보안 관리자(110)는 상기 복수의 파라미터들을 조합하여 보안 점수를 생성하는 보안 점수 생성부를 더 포함하고, 보안 점수가 임계값을 넘는 경우에 비보안 환경에 있는 것으로 결정할 수 있다. 또한, 디바이스(100)는 마이크로폰을 더 포함하고, 보안 관리자(110)는 상기 마이크로폰에서 캡쳐된 오디오 신호를 분석하여 비보안 환경을 나타내는 하나 이상의 파라미터를 획득할 수 있다.
또한, 일 실시 예에 따른 제어부(130)는 디바이스(100)가 비보안 환경에 있다고 결정되면, 디바이스(100)가 보안 모드에서 동작하도록 제어할 수 있다.
여기서, 보안모드는 보안 입력 모드 또는 보안 출력 모드를 포함할 수 있다.
따라서, 디바이스(100)는, 보안 입력 모드가 제공될 때, 사용자 입력에 대해 디코딩 알고리즘을 적용한 뒤 어플리케이션을 전송하는 입력부를 더 포함할 수 있다.
또한, 상기 디바이스(100)는 디스플레이부 및 카메라를 더 포함하고, 상기 보안 출력 모드가 제공될 때, 제어부(130)는 디스플레이부에 표시될 콘텐트 중 사용자 시선이 머무는 영역을 제외한 나머지 영역을 비가시화 처리하도록 제어할 수도 있다.
또한, 디바이스(100)는 보안모드에서 동작하는 것을 사용자에게만 알리기 위한 통지를 발행하는 진동 발생부를 더 포함할 수도 있다.
이하, 도 5 내지 도 8을 참조하여 디바이스(100)가 보안 모드를 제공하는 방법을 상술한다.
도 5를 참조하면, 일 실시 예에 따른 사용자 디바이스의 보안 입력 모드가 개략적으로 도시된다. 디바이스(100)는 비보안 환경이 검출 될 때까지, 또는 사용자 명령에 응답하여 활성화 될 때까지 보안 입력 모드는 자동으로 활성화 될 수 있다. 예를 들어, 디바이스(100)는 사용자가 일정 시간 동안 버튼 누름을 유지 할 때 일반 사용자 입력 모드에서 보안 사용자 입력 모드로 전환되도록 구성 될 수 있다.
보안 입력 모드에서, 디스플레이부 상에 디스플레이 된 사용자 인터페이스 스크린(501)을 통해 사용자 입력 (502)이 수신된다. 다음으로, 사용자 입력 (502)은 디코딩 알고리즘 (503)에 의해 처리된다. 일 실시 예에 따라, 보안 입력 모드로 동작하는 동안에는 디코딩 알고리즘(503)이 모든 사용자의 입력에 적용되거나, 또는 미리 정의된 하나 이상의 종류들의 입력 정보에만 적용될 수 있다. 예를 들어, 디코딩 알고리즘(503)은 계정 사용자 이름 및 암호 같은 민감한 사용자 데이터에는 적용 되지만, 인터넷 브라우저로 입력 된 웹 사이트 주소에는 적용되지 않을 수 있다.
본 실시 예에서, 디코딩 알고리즘(503)은 입력 된 문자열 "VTFS2"이 출력 문자열 "USER1"로 디코딩 될 수 있도록, 알파벳에서 선행하는 문자로 사용자 입력 (502)의 각각의 문자를 치환함으로써, 사용자 입력(502)을 디코딩하고, 입력 문자열 "QBTTXPSE"는 출력 문자열 "PASSWORD"로 디코딩 된다. 디코딩 된 사용자 입력(504)은 애플리케이션(505)으로 전달된다.
일 실시 예에 따라, 디코딩 알고리즘 (503)은 사용자 디바이스에 미리 프로그래밍되어 있거나 사용자에 의해서 정의 될 수 있다. 예를 들어, 사용자는 안전한 장소에 있는 동안 미리 디코딩 알고리즘을 설정할 수 있다. 일부 실시 예에서, 사용자 디바이스의 보안 관리자가 사용자 디바이스가 보안 환경에 있다고 판정 한 경우에만, 사용자가 디코딩 알고리즘을 설정할 수 있도록 구성된다.
또한, 일부 실시 예들에서, 사용자 디바이스는 사용자 디바이스에 설치된 악성 소프트웨어(malware)에 의해 디코딩 알고리즘이 복사되는 것을 막기 위해, 보안모드에서 사용자 디바이스가 실행 될 때만, 디코딩 알고리즘을 수정 또는 생성하는 것이 허용 되도록 구성될 수 있다. 이런 실시 예에서, 사용자 디바이스는 디코딩 알고리즘이 설정되기 전에 반드시 보안모드로 전환 되어야 한다. 보안모드는 다양한 방법으로 구현 될 수 있다. 예를 들면, 일부 실시 예에서는 디바이스(100)가 보안모드에서 동작 할 때, 신뢰 애플리케이션들이 신뢰할 수 있는 실행 환경 (TEE)에서 실행될 수 있다. 이러한 신뢰 애플리케이션은 디코딩 알고리즘을 선택하는 사용자 입력을 수신하기 위한 보안 사용자 인터페이스를 표시하기 위해 사용될 수 있다. 신뢰 애플리케이션은 신뢰할 수 있는 실행 환경에서 실행되기 때문에, 신뢰 애플리케이션은 악성 소프트웨어로부터 분리될 수 있다. 다른 실시 예에서, 어느 정도 악성 소프트웨어로부터 분리를 제공하는 애플리케이션 레벨의 용기화 기술들(container techniques)을 사용하도록, 디코딩 알고리즘을 구성하기 위한 애플리케이션이 용기화(containerized) 될 수 있다. 또 다른 실시 예에서, 디코딩 알고리즘은 외부 장치(예를 들면, 외부 디바이스에서 신뢰할 수 있는 실행 환경의 디코딩 알고리즘을 구성하기 위한 애플리케이션을 실행할 수 있는 노트북 컴퓨터)를 사용하여 구성 될 수 있다. 예를 들어, 외부 디바이스에서 신뢰할 수 있는 실행 환경은 보안 디지털(Secure Digital: SD) 스마트 카드 이거나, 또는 내장 된 보안 요소(embedded Secure Element: eSE)와 같은 다른 구성 요소들을 포함 할 수 있다. 바람직하게는, 디코딩 알고리즘을 구성하는 기능이 시스템의 약점이 되는 것을 피하고, 공격자들이 보안모드의 약점을 이용함으로써 보안 모드를 우회하는 것을 피하기 위해서, 상기 보안모드는 그 자체에 의해 제공되는 안전한 입력 모드의 보안의 레벨보다 같거나 높은 수준의 보안을 제공한다.
한편, 상기 디코딩 알고리즘은 다양한 방법으로 구성 될 수 있다. 예를 들어, 일부 실시 예에서 매개 변수 기반 방법은 사용자가 디코딩 알고리즘의 작동 방법을 제어하는 하나 이상의 파라미터를 선택하는데 사용될 수 있다. 알파벳에서 고정된 개수의 위치만큼 각 문자 단위로 치환함으로써 사용자 입력이 디코딩되는 문자 시프트 알고리즘에서, 사용자 구성 가능 파라미터는 각각의 문자가 사용자 입력을 디코딩하기 위해 이동해야 하는 위치의 개수가 될 수 있다. 다른 예에서, 알고리즘-선택 방법은 사용자가 미리 구성된 복수의 디코딩 알고리즘들 중 하나를 선택함으로써 이용될 수 있다. 또 다른 예에서, 알고리즘-정의 방법은, 사용자가 임의의 디코딩 알고리즘을 정의함으로써 이용될 수 있다.
일 실시 예에 따른 디바이스(100)는 사용자가 정의한 디코딩 알고리즘 또는 기설정된 디코딩 알고리즘을 디스플레이할 수 있다. 예를 들면, 1개의 문자가 시프트되는 알고리즘이 적용되는 경우, 디바이스(100)는 “1문자 시프트”라는 문구를 디스플레이할 수 있다. 일 실시 예에 따라, 디코딩 알고리즘을 디스플레이할지 여부는 사용자의 입력에 기초하여 결정될 수 있다. 사용자는 디스플레이되는 문구를 통해 오류 없이 입력할 수 있다. 이 경우, 암호 입력을 위한 터치 입력이 유출되더라도, 디스플레이되는 문구에 대한 정보가 유출되지 않았다면 암호 유출이 방지될 수 있다.
본 실시 예에서, 디코딩 알고리즘은 사용자 입력에서 각각의 문자를 알파벳에서 선행하는 문자로 대체한다. 그러나, 이는 디코딩 알고리즘의 한 예를 나타낼 뿐이다. 따라서, 본 발명의 다른 실시 예들에서 다음의 디코딩 알고리즘의 예제들이 사용될 수 있지만, 반드시 이에 한정되는 것은 아니다:
a) 다음 문자를 이용 : 사용자 입력의 각 문자에 대해 알파벳상 다음 문자로 치환함으로써 사용자 입력을 디코딩 한다. 예를 들어, 사용자 입력이 “a, d, i, s”이면 "b, e, j, t"가 디코딩 될 것이다.
b) 모든 N 번째 문자를 취함 : 사용자 입력의 모든 N 번째 문자를 취하고 다른 문자를 버림으로써 사용자입력을 디코딩 한다. 예를들어, N이 2 인 경우, 사용자 입력 “ a, b, c, d, e, f, g, h”가 “b, d, f, h” 로 디코딩 될 것이다.
c) 모든 N 번째 문자 폐기 : 사용자 입력의 모든 N 번째 문자를 버리고 다른 문자를 유지하여 사용자입력을 디코딩 한다. 예를 들어, N이 2 인 경우, 사용자 입력이“a, b, c, d, e, f, g, h”일 때,“a, c, e, g”가 디코딩 될 것이다.
사용자 입력을 애플리케이션에 전달하기 전에 디코딩 알고리즘을 통해 사용자의 입력을 전달함으로써, 디바이스(100)는 사용자 입력을 난독처리(obfuscated) 방식으로 입력 할 수 있다. 디코딩된 사용자 입력(본 실시 예에서 실제 이름(USER1)과 패스워드(PASSWORD))은 표시되지 않으므로, 인터셉트될 수 없다. 또한, 제3자는 디코딩 알고리즘에 대한 정보없이 디코딩 된 사용자 입력을 재구성 할 수 없다. 따라서, 사용자 장치에 설치된 악성 키 로깅 프로그램을 이용하여 개인정보 스누핑을 시도하는 제3자는 오직 입력된 그대로의 암호화된 사용자 입력만을 수신할 것이므로, 디코딩 된 사용자 입력을 복원 할 수 없을 것이다. 또한, 본 발명의 몇몇 실시 예에서 복호화 알고리즘은 코드 난독화 방법을 적용하여 리버스 엔지니어링으로부터 사용자 입력을 보호 할 수 있다. 특정 코드 난독화 방법은 추가적인 보안을 제공하기 위한 디코딩 알고리즘의 주기적인 소프트웨어 업그레이드에 의해 변할 수 있다.
코드 난독화 방법이 변경 될 때마다, 디코딩 알고리즘 또한 갱신 될 수 있다. 이로 인해 이전 코드 난독 화 기술이 적용된 이전 디코딩 알고리즘이 손상되었던 경우에도 추가적인 보안을 제공할 수 있다. 또한, 일부 실시 예들에서 디코딩 알고리즘은 자동으로 사용자에 의해 암호가 성공적으로 입력 될 때마다 변경 될 수 있다. 따라서, 공격자가 디코딩 알고리즘의 지식없이 이전에 관찰 된 부호화 된 암호를 이용하여 재진입하는 재사용 공격을 방지할 수 있다.
본 발명의 몇몇 실시 예에서, 보안 입력 모드가 보안 모드 출력과 함께 사용될 수 있다. 본 발명의 일 실시 예에 따른 사용자 장치에서 보안 출력 모드의 예는 도 6에 개략적으로 도시되어있다.
보안 입력 모드에서, 디바이스(100)는 디스플레이될 데이터(602)를 획득한다. 본 실시 예에서, 데이터(602)는 사용자 디바이스(100)에서 실행되는 애플리케이션(601)에 의해 생성되지만, 다른 실시 예에서 데이터(602)는 상이한 방식으로 얻을 수 있었다. 예를 들어, 데이터(602)는 서버로부터 수신 될 수 있다. 본 실시예에서, 데이터(602)는 사용자 디바이스에 표시되기 전에 디코딩 알고리즘(503)에 의해 사용 된 것과 반대되는 부호화 방법을 적용한 인코딩 알고리즘(603)을 통과할 수 있다. 하지만, 다른 실시 예에서는 인코딩 알고리즘은 보안 입력 모드에서 사용된 디코딩 알고리즘과 완전히 분리된 부호화 방법을 사용할 수도 있다. 인코딩 알고리즘(603)은 표시되기 전에 데이터 (602)를 인코딩하는 콘텐츠 렌더러에 의해 사용될 수 있다. 인코딩 알고리즘 (603)은 부호화된 데이터(604)를 출력하고, 부호화된 데이터(604)는 디스플레이 화면6205)에 표시될 수 있다. 본 실시 예에서, 사용자 이름 "USER1" 및 생년월일 "01.08.71"을 포함하는 부호화 데이터(602)가 표시된다.
인코딩 알고리즘(603)은 데이터(202)의 각각의 문자를 알파벳의 다음 문자 또는 다음으로 높은 정수로 치환함으로써 데이터를 인코딩 한다. 따라서, 입력 스트링“USER1”이 출력 문자열 "VTFS2"로 인코딩 되고, 입력 문자열 "01.08.71"이 출력 문자열 "02.09.82"로 인코딩된다. 인코딩 알고리즘은 사용자 디바이스의 소유자에게 공지되어 있으므로, 그들은 올바르게 표시된 인코딩 데이터를 해석 할 수 있다. 동시에, 인코딩 알고리즘(603)의 정보 없이 인터셉트를 통해 원본 데이터(602)에 접근하는 것이 방지된다.
도 7을 참조하면, 본 발명의 일 실시 예에 따라, 보안 입력과 보안 출력을 제공하도록 구성되는 사용자 디바이스가 개략적으로 도시된다. 도 7에 도시된 특정 요소는, 특정 실시 예에 따라 소프트웨어, 하드웨어 또는 이 둘의 조합으로 구현 될 수 있다. 도 7에 도시된 디바이스(700)는, 다양한 형태의 사용자 디바이스로 구현될 수 있다. 디바이스(700)는 스마트 폰, 태블릿 컴퓨터, 데스크톱 또는 랩톱 컴퓨터를 포함하지만, 이러한 구성에 반드시 국한되는 것은 아니다. 도 7에 도시 된 디바이스(700)의 다양한 구성 요소는 동일한 물리적 디바이스에 구비 될 수도 있고, 서로 통신하도록 구성되는 복수의 디바이스들 사이에 분산 될 수도 있다.
도 7에 도시되듯이, 디바이스(700)는 보안 관리자(710) 및 도 5를 참조하여 상술한 보안 사용자 입력 모드가 동작 가능하도록 구성된 사용자 입력부(720)를 포함한다. 보안 관리자(710)는 사용자 디바이스 (700)가 안전하지 않은 환경(비보안 환경)에 있는지 여부를 결정하도록 구성된다. 본 실시 예에서는, 보안 관리자(710)는 사용자 디바이스가 현재 위치하는 환경의 보안과 관련된 복수의 입력 파라미터를 수신하고, 상기 복수의 입력 파라미터들에 기초하여 보안 점수를 산출하는 보안 점수 생성자(711)를 포함한다. 보안 관리자(710)는 사용자 디바이스(700)가 비보안 환경에 있는지 여부를 결정하기 위해 임계 점수와 보안 점수를 비교하도록 구성된다. 예를 들어, 높은 보안 점수는 상대적으로 안전한 환경을 나타낼 수 있고, 낮은 보안 점수는 비교적 불안정한 환경을 나타낼 수 있다. 비보안 환경에 있는지 여부를 판정하기 위한 임계 값은 고정 될 수도 있고, 사용자가 구성 가능할 수도 있다. 보안 관리자(710)는 사용자 디바이스(700)가 비보안 환경에 있다는 결정에 응답하여, 사용자 입력부(720)가 보안 사용자 입력 모드로 동작하도록 제어한다.
디바이스(700)는 보안 관리자(710)가 통신 할 수 있도록 하는 하나 이상의 입/출력 디바이스(770)를 포함 할 수 있다. 본 실시 예에서 디바이스(700)는 사용자 디바이스가 현재 위치한 환경의 오디오 신호를 캡처하도록 구성된 마이크로폰 (771)과 진동 기구(772)를 포함하는 복수의 입/출력 디바이스(770)를 포함한다.
본 실시 예에서는, 보안 관리자(710)는 입력부가 보안 사용자 입력 모드로 전환 될 때, 진동 경고를 발행하는 진동기구(772)를 제어하도록 구성된다. 진동 경고는 보안 사용자 입력 모드를 사용하고 있음을 사용자에게 알리기 위해 단일 진동 펄스 또는 코드 펄스를 구성할 수 있다. 사용자 디바이스(700)의 진동은 다른 사람이 감지하기 어렵기 때문에, 이것은 입력 모드의 변경을 근처의 다른 사람들에게 알리지 않고, 사용자에게 보안 입력 모드가 활성화 되었음을 신중하게 알릴 수 있다. 그러나, 다른 실시 예에서는 사용자에게 통지하는 다른 방법으로, 예를 들면, 부호화 된 오디오 및/또는 시각적 신호가 출력 될 수 있다. 이와 같은 신중한(discreet) 통지 방법을 사용하여, 보안 입력모드 또는 민감한 애플리케이션이 활성화 되어 있다는 것을 다른 사람이 인식하는 것을 방지함으로써, 추가적인 보안 레이어를 제공할 수 있다.
전술 한 바와 같이, 보안 관리자(710)는 보안점수 생성부(711)에서 생성된 보안점수에 기초하여 현재 보안 또는 비보안 환경인지 여부를 결정하도록 구성된다. 마이크로폰(771)에서 수집된 오디오 신호는 보안점수를 생성하는 입력 파라미터들중 하나로 이용될 수 있다. 예를 들면, 오디오 신호에서 배경 잡음의 레벨이 낮은 경우, 높은 보안 점수가 생성 될 수 있다. 오디오 신호의 배경 잡음 레벨이 높은 경우에는, 도청자들에 의해 개인정보가 관찰될 위험이 높은 붐비는 환경을 나타내므로 낮은 보안 점수가 생성 될 수 있다. 일부 실시 예에서 보안 관리자 (710)는 오디오 신호의 더 복잡한 분석을 수행 할 수도 있다. 예를 들면, 상기 오디오 신호에서 사람 음성을 검출함으로써, 사용자 디바이스(700)의 근방에 있는 사람의 수의 근사값을 결정 할 수 있다.
복수의 입력에 기초한 보안 점수를 생성하는 방법에 대한 대안으로서, 일부 실시 예에 따른 보안 관리자(710)는 오직 하나의 입력에 기초하여 비보안 환경을 검출 할 수 있다. 예를 들어, 보안 관리자(710)는 비보안 환경을 나타내는 하나 이상의 오디오 특성(예컨대, 오디오신호로부터 검출되는 배경 잡음 또는 사람 목소리의 수)을 검출하기 위해 마이크로폰(771)에 의해 캡처된 오디오 신호를 분석함으로써 사용자 디바이스가 비보안 환경에 있는지 여부를 결정할 수 있다. 더구나, 일부 실시예에서는 앞서 설명된 두가지 기술이 모두 이용될 수 있다. 예를 들어, 오직 하나의 입력이 가능할 때 보안 관리자(710)는 하나의 가능한 입력에 기초하여 결정을 수행하도록 구성 될 수 있지만, 복수의 입력이 가능해 지면, 보안 점수 생성부(711)가 복수의 입력을 보안 점수로 변환하도록 이용될 수 있다.
복수의 입력들을 보안점수로 변환함으로써, 비보안 환경의 오 검출(이하에서, “오류 긍정(false positive)”이라 한다.)의 확률이 감소 될 수 있다. 오직 하나의 매개 변수만 고려되면, 사용자 디바이스(700)가 실제로 보안 환경에 있을 때도, 비보안 환경을 나타내는 오류 긍정 결과가 때때로 도출될 수 있다. 예를 들면, 가정 환경은 비교적 안전 할 수 있지만, 가정 환경에서 기록 된 오디오 신호는 가전 제품의 사용 때문에 때때로 높은 수준의 배경잡음을 가질 수 있다. 즉, 배경 잡음의 레벨에 기초하여 단순한 결정이 수행 되면, 보안 관리자(710)는 어떤 인터셉팅이 존재하지 않는 경우에도 비보안 환경이라고 판정 할 수 있다. 따라서, 보안 점수 발생기(711)의 사용을 통해 비보안 환경의 검출을 더욱 신뢰성 있도록 하는 것이 바람직하다. 현재 환경이 보안환경에 있는지 여부를 결정 할 때 다수의 입력을 고려하는 방법의 추가적인 이점은, 공격자가 보안 관리자가 보안 환경에 있다고 잘못된 결정을 하도록 만드는 것이 더욱 어려워 지는 것이다. 왜냐하면, 공격자는 보안 점수 생성부에 입력되는 많은 파라미터들을 제어/조작해야 하기 때문이다. 그럼에도 불구하고, 일부 실시 예에서는 사용자 디바이스(700)에 리소스 제한(예컨대, 배터리 충전 레벨, 사용 가능한 처리 능력 등)을 고려하여 단 하나의 입력에 기초한 간편 결정 알고리즘을 이용하고, 보안 점수 발생기(711)의 이용을 배제할 수 있다.
계속하여 도 7을 참조해 설명하면, 장치는 애플리케이션을 실행하도록 구성된 제어부(730)를 더 포함한다. 장치가 보안 사용자 입력 모드에서 동작 할 때, 사용자 입력부 (720)는, 사용자 입력을 수신하고 디코딩 알고리즘(751)을 사용하여 수신 된 사용자 입력을 디코딩하며, 애플리케이션에 디코딩된 사용자 입력을 전달하도록 구성된다. 본 실시 예에서, 사용자 디바이스는 사용자-정의 디코딩 알고리즘을 저장하도록 구성된 메모리(740)를 더 포함한다. 그러나, 본 발명의 일 실시 예에서 사용자-정의 디코딩 알고리즘 대신에, 또는 사용자-정의 디코딩 알고리즘에 부가하여 미리-프로그램 된 복호화 알고리즘 또한 이용될 수 있다. 또한, 일부 실시 예들에서 사용자 입력부(320)는 주기적으로 소정의 시퀀스에 따라 복수의 디코딩 알고리즘들로부터 다음 디코딩 알고리즘을 선택하여 디코딩 알고리즘(751)을 변경하도록 구성 될 수 있다. 또한, 사용자 디바이스(700)는 디코딩 알고리즘이 변경된 경우에 사용자에게 통지하도록 구성 될 수 있다. 상기 통지는 복수의 디코딩 알고리즘 중 현재 디코딩 알고리즘을 나타내기위해 선택된 디코딩 알고리즘에 따라 다를 수 있다. 예를 들어, 가능한 디코딩 알고리즘이 세가지 있는 경우, 사용자 입력부(720)에서 이용되는 디코딩 알고리즘이 순서대로 순환되도록 구성 될 수 있다. 디코딩 알고리즘이 변경 될 때마다, 진동 기구(772)는 디코딩 알고리즘 시퀀스의 순서에 대응하는 수의 진동펄스를 생성하도록 제어될 수 있다. 즉, 시퀀스의 첫 번째 디코딩 알고리즘에 대해서는 하나의 펄스를, 두번째 디코딩 알고리즘에 대해서는 두개의 펄스를, 세번째 디코딩 알고리즘에 대해서는 세개의 펄스를 생성할 수 있다.
특히, 하나의 디코딩 알고리즘이 다음 디코딩 알고리즘으로 전환되는 특정 시간을 인식하지 못한다면, 이런 방식으로 디코딩 알고리즘을 정기적으로 변경하는 것은 인터셉트를 하려는자가 사용자 입력을 관찰함으로써 디코딩 알고리즘을 추론하는 것을 더욱 어렵게 한다.
이러한 방법으로 애플리케이션은 어떤 수정 없이 그리고, 보안 사용자 입력이 사용되는지 여부에 대한 어떠한 정보 없이도, 보안 사용자 입력 모드에서 정상적인 동작을 계속할 수 있다. 또한, 본 발명의 몇몇 실시 예에서 복수의 애플리케이션은 제어부(730)에 의해 실행될 수 있으며, 사용자 입력부(720)는 상기 복수의 애플리케이션 중 다른 하나와 각각 연관된 다른 디코딩 알고리즘을 사용하도록 구성 될 수 있다. 상기 애플리케이션들 중 하나를 통해 사용자 입력이 수신될 때, 사용자 입력부(720)는 사용자 입력이 의미하는 애플리케이션을 결정하고, 특정 애플리케이션에 관련된 디코딩 알고리즘을 사용하여 사용자 입력을 디코딩 할 수 있다.
어떤 경우에는, 수신 된 사용자 입력은 네트워크로 송신 될 수 있고, 네트워크 송신을 대신하여 또는 이에 부가하여, 사용자 디바이스(700)에서 실행중인 응용 프로그램에 전달될 수 있다. 본 실시 예에서, 사용자 디바이스(700)는 네트워크를 통해 다른 장치들과 통신하기 위한 네트워크 인터페이스(760)를 더 포함할 수 있다. 사용자 입력부(720)가 보안 사용자 입력 모드에서 동작하고 디코딩 된 사용자 입력이 네트워크로 송신 될 때, 추가적인 보안을 위해 디코딩 된 사용자 입력은 네트워크 인터페이스(760)를 통해 전송 되기 전에 선택적으로 암호화 될 수 있다. 본 실시 예에서, 장치(700)는 네트워크로 암호화 된 사용자 입력을 전송하기 이전에, 디코딩 알고리즘(751)에 의해 디코딩 된 사용자 입력을 암호화 하기 위한 암호화 알고리즘(753)을 더 포함할 수 있다.
또한, 본 실시예에 따른 사용자 디바이스(700)는 신뢰할 수 있는 실행 환경(Trusted Execution Environment : TEE, 750)를 더 포함할 수 있다. 외부 디바이스에서 신뢰할 수 있는 실행 환경은 보안 디지털(Secure Digital: SD) 스마트 카드 및/또는 내장 된 보안 요소(embedded Secure Element: eSE)와 같은 다른 구성 요소들을 포함 할 수 있다. 디코딩 알고리즘 (751) 및 암호화 알고리즘(753)은 모두 TEE(750)에서 실행될 수 있다. 또한, 본 발명의 일 실시 예에 따른 신뢰할 수 있는 실행환경(TEE)은 사용자 정의 디코딩 알고리즘을 저장하도록 구성된 메모리(740)를 포함할 수 있으며, 다른 실시 예에서 사용자 정의 디코딩 알고리즘은 신뢰할 수 있는 실행 환경(750) 밖의 메모리에 저장될 수 있다. 디코딩 알고리즘(751) 및 부호화 알고리즘(753)이 신뢰할 수 있는 실행환경에서 실행됨으로써, 사용자 디바이스(700)에서 실행될수 있는 어떠한 악성 소프트웨어가 디코딩 알고리즘(751) 또는 암호화 알고리즘(753)에 액세스하는 것을 방지 할 수 있다. 그러나, 다른 실시 예에서 디코딩 알고리즘 및 암호화 알고리즘 중 하나 또는 모두는 신뢰할 수 있는 실행환경(TEE)밖에 실행될 수 있고, 심지어 신뢰할 수 있는 실행환경(TEE)이 완전히 생략될 수 있다.
일부 실시예에서, 사용자 디바이스가 TEE(750)을 포함할 때, 보안 관리자(710)는 TEE(750)내에서 실행될 수 있다. 하지만, TEE(750)안에서 가능한 프로세싱 리소스의 제한이 있을 수 있다. 따라서, 일부 실시예에 따른 보안 관리자(710)는 TEE(750) 외부에서 실행 되고, 장치(700)는 TEE(750) 내에서의 보안 관리자(710)의 무결성을 검증하기 위한 무결성 검증 알고리즘(752)을 수행하도록 구성될 수 있다. 무결성 검증 알고리즘(752)는 TEE(750) 밖에서 동작하는 보안 관리자(710)가 손상되었는지 여부를 결정하기 위해 사용될 수 있다. 예를 들어, 무결성 검증 알고리즘(752)은 보안 관리자(710)의 메모리 내의 처리 공간에 해시를 생성하고, 생성 된 해시에 대한 검증 알고리즘을 실행할 수 있다. 검증이 실패하는 경우, 무결성 검증 알고리즘은 경고를 출력하도록 구성된다. 무결성 검증 알고리즘(752)에 대한 컴퓨터 프로그램 코드는 보안 관리자(710)를 위한 컴퓨터 프로그램 코드보다 훨씬 더 작을 수 있다. 따라서 이러한 접근은, 보안 관리자가 손상되었는지 여부를 검증하는 보안 방법을 제공하는 동안 TEE (750)의 이용 가능한 자원을 효율적으로 사용하는 것을 가능하게 한다.
본 실시 예에서, 보안 관리자(710)에 의해 자동적으로 보안 사용자 입력 모드로 전환될 때 뿐만 아니라, 사용자 입력부(720)는 보안 사용자 입력 모드로 사용자가 전환 가능하도록 구성된다. 보안 관리자(712)는 상기 사용자가 사용자 입력 수단을 상기 보안 사용자 입력 모드로 전환하는 것을 선호하는 조건을 학습하도록 구성된 학습 알고리즘(712)을 포함한다. 예를 들어, 학습 알고리즘은 디바이스가 GPS좌표 또는 무선 통신 식별자로 결정되는 특정 위치에 있을 때, 사용자가 주로 보안 사용자 입력 모드를 선택하는 것을 학습 할 수 있다. 상기 보안 관리자(710)는 조건 발생에 응답하여, 사용자 입력부(720)를 보안 사용자 입력 모드로 신속히 전환하도록 구성되거나, 또는 사용자 승인 요청 없이 자동으로 사용자 입력부(720)를 보안 사용자 입력 모드로 전환하도록 구성될 수 있다. 학습 알고리즘의 사용은 사용자 입장에서 편리하다. 왜냐하면, 사용자 디바이스(700)는 사용자가 보안 사용자 입력 모드로 전환하고자 하는 경우를 예상 할 수 있고, 사용자가 일반적으로 보안 사용자 입력을 선택하는 경우이지만 이를 까먹고 있을 때 보안 사용자 입력을 선택 해야 함을 상기 시킬 수 있기 때문이다.
사용자 디바이스 (700)는 콘텐츠가 사용자 디바이스(700)에 통합되거나 물리적으로 분리된 디스플레이부(790)에 표시되도록 렌더링하도록 구성된 콘텐츠 렌더러(780)를 더 포함할 수 있다. 콘텐츠 렌더러(780)는 렌더링된 콘텐트를 디스플레이부(790)에 전송하도록 구성된다. 도2를 참조하여 상술한 바와 같이 본 실시예에서는, 사용자 디바이스 (700)가 비보안 환경에 있다고 결정되면, 보안 관리자(710)는 콘텐츠가 렌더링 및 표시되기 전에, 인코딩 알고리즘을 이용하여 상기 콘텐트가 암호화되어 표시되도록 하는 보안 출력 모드로 동작하도록 상기 콘텐츠 렌더러(780)를 제어하도록 구성된다. 다른 실시 예에서는, 디코딩 알고리즘을 이용하는 것 대신 또는 이에 추가하여, 스포트라이트-기반 디스플레이 방법과 같은 다른 보안 출력 모드가 이용될 수 있다. 또한, 일부 실시 예에서는 보안 출력모드가 생략 되거나 또는 보안 사용자 입력 모드와는 다른 기준에 응답하여 트리거 될 수 있다.
도 8을 참조하면, 본 발명의 실시 예에 따른 사용자 디바이스에 보안 입력을 가능하게하는 방법을 나타내는 흐름도가 예시되어있다. 이 방법은 사용자 디바이스가 일반 입력 모드에서 또는 보안 모드에서 동작할지 여부를 결정하기 위해 수행 될 수 있다. 이 방법은, 사용자 디바이스의 제어부에 의해 이 방법을 수행하도록 구성된 컴퓨터 프로그램 명령들에 의해서 구현 될 수 있다.
우선, 단계 S801에서, 사용자 디바이스의 보안 관리자는 하나 이상의 보안 파라미터를 수신한다. 보안 파라미터는 사용자 디바이스에 포함 된 하나 이상의 센서로부터의 출력을 포함 할 수 있고, 또는 사용자로부터 수신된 정보 또는 다른 소스로부터 수신 된 정보(예를 들어 서버)를 포함 할 수 있다.
본 실시 예에 따라, 단계 S802에서 보안 파라미터는 보안 파라미터를 보안 점수로 변환하는 보안 점수 생성부의 입력으로 이용된다. 본 발명의 일 실시 예에 따라 보안 파라미터들에 포함될 수 있는 정보의 종류가 다음과 같이 예시되지만 이에 반드시 한정되는 것은 아니다.
a) 위치 파라미터 : 예를 들면, 사용자 디바이스는 글로벌 항법 위성 시스템 (Global Navigation Satellite System : GNSS) 수신기 및/또는 근거리 무선 네트워크를 식별하는 무선(WiFi) 신호로부터, 사용자 디바이스의 현재 위치를 획득하도록 구성 될 수 있다. 일부 실시 예에서, 삼각 측량이 복수의 WiFi 신호들로부터 더 정확한 위치를 계산하는데 사용될 수 있다. 사용자 디바이스는 데이터베이스의 현재 위치를 찾음으로써 보안 점수 생성부에 입력되는 위치 파라미터를 획득할 수 있다. 여기서, 데이터 베이스는 사용자 장치에 국부적으로 저장되거나 서버를 통해 접근될 수 있고, 데이터 베이스에서 현재 위치가 보안 환경 또는 비보안 환경에 있는지 여부를 나타내는 위치 파라미터를 검색할 수 있다.
b) 노이즈 파라미터 : 사용자 디바이스는, 사용자 디바이스의 주변 환경에서 주변 잡음을 기록하도록 구성된 마이크로폰으로부터의 오디오 신호를 수신하도록 구성 될 수 있다. 상기 오디오 신호가 직접 보안 점수 발생기에 입력 되거나, 오디오 신호로부터 유도 된 파라미터가 보안 점수 발생기 입력되는 노이즈 파라미터로서 사용될 수 있다. 오디오 신호로부터 유도될 수 있는 파라미터들의 예(하지만, 반드시 이에 한정되는 것은 아니다): 평균 배경 노이즈 수준; 인간 음성의 존재/부재; 오디오 신호 검출 다른 음색의 수; 및 오디오 신호로부터 감지된 에코에 기초하여 추정 된 방의 크기. 예를 들어 배경 잡음 레벨이 높거나 개인 음성이 많이 검출되는 것은 사용자가 안전하지 않은 환경에 있음을 나타낼 수 있다.
c) 비주얼 정보 : 사용자 디바이스는 카메라(예컨대, 사용자 디바이스에 포함된 앞면 또는 후면 카메라)로부터 이미지 또는 동영상을 캡쳐하도록 구성될 수 있다. 보안 점수 발생기는 잠재적으로 인터셉트를 하려는 자들이 존재하는지 여부를 결정하기 위해, 상기 캡쳐 된 이미지를 분석하여 사용자 디바이스의 근방의 사람의 얼굴을 검출하도록 구성 될 수 있다. 사용자 디바이스 사용자의 얼굴 이외의 얼굴이 검출되면, 상기 보안 점수 발생부는 사용자 디바이스를 보안 입력 모드로 전환하도록 하는 보안 점수를 출력 하도록 구성 될 수 있다. 일부 실시예에 있어서, 사용자 장치에 의해 캡처된 정지 또는 비디오 이미지에서 얼굴이 검출되면, 안면 인식 소프트웨어는 검출된 얼굴과 권한 있는 사용자의 데이터 베이스를 비교하는데 이용될 수 있다. 여기서 권한 있는 사용자의 데이터 베이스는 사용자 디바이스의 민감한 사용자 정보를 볼 수 있는 권한이 있는 개인인지 여부를 결정하기 위한 데이터베이스 이다. 만약 검출된 얼굴이 권한이 있는 사용자와 일치하지 않으면, 상기 보안 입력 모드가 활성화된다.
d) 지오 펜싱 파라미터(Geo fencing parameter) : 사용자 디바이스는 사용자 디바이스가 정의 된 보안 영역의 경계 외부로 이동 한 경우를 나타내는 지오 펜싱 시스템으로부터 신호를 수신하도록 구성 될 수 있다. 사용자 디바이스가 보안 영역 밖에 있음을 나타내는 지오 펜싱 파라미터에 응답하여, 보안 점수 발생기는 사용자 디바이스가 보안 입력 모드로 전환되도록 구성 될 수 있다.
e) 애플리케이션 파라미터: 사용자 장치에 의해 실행될 수 있는 애플리케이션이 '보안' 애플리케이션으로 플래그 될 수 있다. ‘보안’애플리케이션은 민감한 정보의 입력을 사용자에게 요구하는 애플리케이션이다. 보안 점수 생성부에 입력되는 애플리케이션 파라미터의 값은 사용자 디바이스에 현재 실행되는 애플리케이션이 ‘보안’애플리케이션인지 여부에 달려 있다. 하나 이상의 '보안' 애플리케이션이 실행되는 경우, 보안 사용자 입력 모드가 활성화 될 수 있다.
다양한 보안 파라미터는 실시 예에 따라, 상이한 형태를 취할 수 있다. 예를 들어, 보안 파라미터는 'TRUE'가 보안 환경을 의미하도록 설정되고, 'FALSE'가 비보안 환경을 의미하도록 설정된 불리언(Boolean) 플래그 일 수 있다. 또는, 보안 파라미터는 상이한 레벨의 위험과 관련된 임의의 레벨 값을 가질 수 있다. 예를 들어, 상술한 위치 파라미터는, 0 내지 4의 정수 값을 가질 수 있고, 0은 신뢰할 수 있는 위치를 나타내고, 1은 낮은 위험 위치를 나타내며, 2는 중간 위험 위치를 나타내고, 3은 고위험 위치를 나타고, 4는 매우 높은 위험 위치를 나타낼 수 있다.
보안 점수 생성부는 입력 보안 파라미터를 조합하여 출력 보안 점수를 생성 할 수 있다. 출력 보안 점수는 보안/비보안 환경을 TRUE/FALSE로 나타내도록 설정하는 간단한 플래그 일 수도 있고, 상술 한 것과 유사한 방식으로 다른 레벨의 위험을 나타내는 다른 값을 가질수 있고, 계속해서 변할 수도 있다. 예를 들어, 일부 실시 예에서 보안 점수 생성부는 단순히 함께 입력 된 파라미터들을 추가 할 수 있다. 다른 실시 예에서, 각 보안 파라미터에 가중치가 적용되어 가중 합이 생성될 수 있다. 또 다른 실시 예에서, 보안 점수를 생성하기 위해 보안 의사 - 기반 프로세스를 따를 수 있다. 예를 들어, 만약 고위험 환경을 나타내는 값을 가지는 보안 파라미터들의 수가 특정 개수라면 비보안 환경을 나타내는 보안 점수를 생성할 수 있다.
단계 S803에서, 보안 점수는 현재 환경이 보안 또는 비보안 여부를 결정하기 위해 임계치와 비교된다. 높은 보안 점수가 보안 환경을 나타내는 경우, 예를 들면, 보안 점수가 임계치보다 낮을 때 비보안 환경으로 결정된다. 전술 한 바와 같이, 임계 값은 사용자에 의해 정의 되거나 또는 사전에 프로그래밍 될 수 있다. 일부 실시 예에서, 임계 값은 사용자 디바이스의 관리자가에 의해 설정 될 수 있고, 또는 서로 다른 애플리케이션에 대해 다른 임계 값이 설정 될 수 있다. 일부 응용 프로그램은 적절하게 기본 임계 값을 대체 허용 될 수 있다.
단계 S804는, 현재 환경이 보안환경이라는 단계 S803에서의 결정에 응답하여, 상기 사용자 디바이스가 일반 사용자 입력 모드로 동작하도록 제어된다. 일반 입력 모드에서, 단계 S805의 사용자 입력이 수신되면, 단계 S806에서 사용자 입력은 바로 애플리케이션으로 직접 전달된다. 한편, 단계 S803에서의 현재 환경이 보안 환경이라고 결정되면, 단계 S807에서 사용자 디바이스는 보안 사용자 입력 모드에서 동작하도록 제어된다. 전술 한 바와 같이, 본 실시 예에서, 보안 사용자 입력 모드는, 사용자 입력에 디코딩 알고리즘을 적용한다. 사용자 입력이 단계 S808에서 수신되면, 상기 사용자 입력은 단계 S809에서 디코딩 알고리즘을 이용하여 디코딩되고, 단계 S810에서 디코딩된 사용자 입력이 해당 애플리케이션에 전달된다.
상술한 바와 같이 본 발명의 특정 실시 예들이 도면을 참조하여 설명 되었지만, 이하 특허 청구 범위에 기재된 발명의 범위 내에서 다양한 변형 및 수정이 가능할 것이다.
일 실시 예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.

Claims (17)

  1. 디바이스의 보안 모드 제공 방법에 있어서,
    상기 디바이스에 포함된 하나 이상의 기기로부터 상기 디바이스의 보안 환경을 식별하기 위한 복수의 파라미터들을 획득하는 단계;
    상기 획득된 복수의 파라미터들의 조합에 기초하여, 상기 디바이스가 비보안 환경에 있는지 여부를 식별하는 단계;
    상기 디바이스가 상기 비보안 환경에 있음에 기초하여, 상기 디바이스가 보안 모드에서 동작하도록 제어 하는 단계;
    상기 디바이스가 상기 보안 모드에서 동작함에 기초하여, 제1 사용자 입력을 획득하는 단계;
    제1 디코딩 알고리즘(decoding algorithm)을 상기 제1 사용자 입력에 적용하는 단계;
    상기 디바이스가 상기 보안 모드에서 동작함 및 제2 사용자 입력에 기초하여, 제2 디코딩 알고리즘을 상기 제2 사용자 입력에 적용하는 단계;
    사용자가 보고있는 영역만을 출력하도록 디스플레이를 제어하는 단계; 및
    카메라를 사용하여 상기 사용자의 적어도 하나의 눈을 추적하는 것에 기초하여, 상기 사용자가 보지 않는 상기 디스플레이의 다른 영역을 난독화하도록 상기 디스플레이를 제어하는 단계를 포함하는 보안 모드 제공 방법.
  2. 제 1항에 있어서,
    상기 디바이스가 상기 비보안 환경에 있는지 여부를 식별하는 단계는,
    상기 복수의 파라미터들을 조합하여, 보안의 수위를 나타내는 보안 점수를 생성하는 단계; 및
    상기 보안 점수가 임계값을 넘음에 기초하여, 상기 디바이스가 상기 비보안 환경에 있다고 식별하는 단계를 더 포함하는 보안 모드 제공 방법.
  3. 제 1항에 있어서,
    상기 복수의 파라미터들을 획득하는 단계는,
    상기 디바이스의 마이크로폰에서 캡쳐된 오디오 신호를 획득하는 단계를 포함하는 보안 모드 제공 방법.
  4. 제 3항에 있어서,
    상기 디바이스가 상기 비보안 환경에 있는지 여부를 식별하는 단계는,
    상기 오디오 신호와 잡음 레벨의 비교에 기초하여, 상기 디바이스가 상기 비보안 환경에 있는지 여부를 식별하는 단계를 포함하는 보안 모드 제공 방법.
  5. 제 1항에 있어서,
    상기 디바이스가 공공 장소에 있다고 식별됨에 기초하여, 상기 디바이스가 상기 비보안 환경에 있다고 식별하는 것을 특징으로 하는 보안 모드 제공 방법.
  6. ◈청구항 6은(는) 설정등록료 납부시 포기되었습니다.◈
    제 1항에 있어서,
    상기 제1 사용자 입력에 대해 상기 제1 디코딩 알고리즘을 적용한 뒤, 상기 제1 사용자 입력을 어플리케이션에 전송하는 단계를 더 포함하는 보안 모드 제공 방법
  7. 삭제
  8. ◈청구항 8은(는) 설정등록료 납부시 포기되었습니다.◈
    제 1항에 있어서,
    상기 디바이스가 상기 보안 모드에서 동작하는 것을 상기 사용자에게만 알리기 위한 통지를 발행하는 단계를 더 포함하는 보안 모드 제공 방법.
  9. 보안 모드를 제공하는 디바이스에 있어서,
    디스플레이;
    카메라; 및
    적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는
    상기 디바이스에 포함된 하나 이상의 기기로부터 상기 디바이스의 보안 환경을 식별하기 위한 복수의 파라미터들을 획득하고,
    상기 획득된 복수의 파라미터들의 조합에 기초하여, 상기 디바이스가 비보안 환경에 있는지 여부를 식별하고,
    상기 디바이스가 상기 비보안 환경에 있음에 기초하여, 상기 디바이스가 보안 모드에서 동작하도록 제어하고,
    상기 디바이스가 상기 보안 모드에서 동작함에 기초하여, 제1 사용자 입력을 획득하고,
    제1 디코딩 알고리즘(decoding algorithm)을 상기 제1 사용자 입력에 적용하고,
    상기 디바이스가 상기 보안 모드에서 동작함 및 제2 사용자 입력에 기초하여, 제2 디코딩 알고리즘을 상기 제2 사용자 입력에 적용하고,
    사용자가 보고있는 영역만을 출력하도록 상기 디스플레이를 제어하고,
    상기 카메라를 사용하여 상기 사용자의 적어도 하나의 눈을 추적하는 것에 기초하여, 상기 사용자가 보지 않는 상기 디스플레이의 다른 영역을 난독화하도록 상기 디스플레이를 제어하도록 구성된 보안 모드 제공 디바이스.
  10. 제 9항에 있어서, 상기 적어도 하나의 프로세서는,
    상기 복수의 파라미터들을 조합하여 보안의 수위를 나타내는 보안 점수를 생성하고,
    상기 보안 점수가 임계값을 넘음에 기초하여, 상기 디바이스가 상기 비보안 환경에 있다고 식별하도록 더 구성된 보안 모드 제공 디바이스.
  11. 제 9항에 있어서,
    상기 디바이스는 마이크로폰을 더 포함하고,
    상기 적어도 하나의 프로세서는 상기 마이크로폰에서 캡쳐된 오디오 신호를 획득하도록 구성된 보안 모드 제공 디바이스.
  12. 제 11항에 있어서,
    상기 적어도 하나의 프로세서는 상기 오디오 신호와 잡음 레벨의 비교에 기초하여, 상기 디바이스가 상기 비보안 환경에 있는지 여부를 식별하도록 구성된 보안 모드 제공 디바이스.
  13. 제 9항에 있어서,
    상기 적어도 하나의 프로세서는 상기 디바이스가 공공 장소에 있다고 식별됨에 기초하여, 상기 디바이스가 상기 비보안 환경에 있다고 식별하도록 구성된 보안 모드 제공 디바이스.
  14. ◈청구항 14은(는) 설정등록료 납부시 포기되었습니다.◈
    제 9항에 있어서
    상기 적어도 하나의 프로세서는, 상기 제1 사용자 입력에 대해 상기 제1 디코딩 알고리즘을 적용한 뒤, 상기 제1 사용자 입력을 어플리케이션에 전송하도록 더 구성된 보안 모드 제공 디바이스.
  15. 삭제
  16. ◈청구항 16은(는) 설정등록료 납부시 포기되었습니다.◈
    제 9항에 있어서, 상기 디바이스는,
    상기 디바이스가 상기 보안 모드에서 동작하는 것을 상기 사용자에게만 알리기 위한 통지를 발행하는 진동 발생부를 더 포함하는 보안 모드 제공 디바이스.

  17. 삭제
KR1020160008877A 2015-03-05 2016-01-25 사용자 디바이스에 보안 모드를 제공하기 위한 방법 및 장치 KR102474243B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US15/554,266 US10558826B2 (en) 2015-03-05 2016-03-04 Method and apparatus for providing security mode to user device
PCT/KR2016/002206 WO2016140548A1 (ko) 2015-03-05 2016-03-04 사용자 디바이스에 보안 모드를 제공하기 위한 방법 및 장치

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB1503736.9 2015-03-05
GB1503736.9A GB2536215B (en) 2015-03-05 2015-03-05 Secure input mode for user device

Publications (2)

Publication Number Publication Date
KR20160108136A KR20160108136A (ko) 2016-09-19
KR102474243B1 true KR102474243B1 (ko) 2022-12-06

Family

ID=52998434

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160008877A KR102474243B1 (ko) 2015-03-05 2016-01-25 사용자 디바이스에 보안 모드를 제공하기 위한 방법 및 장치

Country Status (3)

Country Link
US (1) US10558826B2 (ko)
KR (1) KR102474243B1 (ko)
GB (1) GB2536215B (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105632049B (zh) * 2014-11-06 2019-06-14 北京三星通信技术研究有限公司 一种基于可穿戴设备的预警方法和装置
CN106200891B (zh) * 2015-05-08 2019-09-06 阿里巴巴集团控股有限公司 显示用户界面的方法、装置及系统
CN105160173B (zh) * 2015-08-31 2018-04-06 小米科技有限责任公司 安全评估方法和装置
KR102629424B1 (ko) 2018-01-25 2024-01-25 삼성전자주식회사 보안 기능을 지원하는 저전력 보이스 트리거 시스템을 포함하는 애플리케이션 프로세서, 이를 포함하는 전자 장치 및 그 동작 방법
CN111383015B (zh) * 2018-12-29 2023-11-03 华为技术有限公司 交易安全处理方法、装置及终端设备
US10783054B2 (en) * 2019-07-29 2020-09-22 Alibaba Group Holding Limited Method, apparatus, and device for storing operation record based on trusted execution environment
CN113556323B (zh) * 2021-06-24 2023-04-07 深圳市邦盛实时智能技术有限公司 一种应用于企业内控的旁路无侵入流量采集系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100955284B1 (ko) 2002-11-18 2010-04-30 에이알엠 리미티드 보안 모드와 비보안 모드 사이의 프로세서 전환하는 데이터 처리장치, 데이터 처리방법 및 컴퓨터 판독가능한 기록매체

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6918039B1 (en) * 2000-05-18 2005-07-12 International Business Machines Corporation Method and an apparatus for detecting a need for security and invoking a secured presentation of data
US7836513B2 (en) * 2006-02-22 2010-11-16 International Business Machines Corporation System, method, and computer program product for secure input for mobile devices
US9111108B2 (en) * 2008-02-25 2015-08-18 Telefonaktiebolaget L M Ericsson (Publ) System, method and program for controlling access rights
EP2202662A1 (en) * 2008-12-24 2010-06-30 Gemalto SA Portable security device protecting against keystroke loggers
KR101133544B1 (ko) * 2009-07-03 2012-04-05 한국인터넷진흥원 알파-뉴메릭 매트릭스를 이용한 패스워드 입력 시스템 및 방법
US20110208974A1 (en) * 2010-02-25 2011-08-25 Alcatel-Lucent Usa Inc. Countermeasure Against Keystroke Logger Devices
KR20120132013A (ko) * 2011-05-27 2012-12-05 주식회사 팬택 휴대용 단말, 휴대용 단말의 하드웨어 모듈간에 전송되는 데이터의 보안 방법
US9264447B2 (en) * 2011-09-23 2016-02-16 Arturo Geigel Simultaneous determination of a mobile device and its user identification
US8966656B2 (en) * 2011-10-21 2015-02-24 Blackberry Limited Displaying private information using alternate frame sequencing
CN103999092B (zh) * 2011-11-30 2017-05-10 英特尔公司 保护输入免受恶意软件侵害
US8640252B2 (en) * 2012-05-07 2014-01-28 International Business Machines Corporation Obfuscating entry of sensitive information
CN110727638B (zh) * 2012-11-12 2023-09-15 伊诺卡姆公司 电子系统中的数据系统和数据调度方法以及机器可读介质
KR20140085952A (ko) * 2012-12-28 2014-07-08 삼성전자주식회사 휴대단말기의 보안모드 변경 방법 및 장치
US8973149B2 (en) * 2013-01-14 2015-03-03 Lookout, Inc. Detection of and privacy preserving response to observation of display screen
US9495544B2 (en) * 2013-06-27 2016-11-15 Visa International Service Association Secure data transmission and verification with untrusted computing devices
US20150104013A1 (en) * 2013-10-10 2015-04-16 Elwha Llc Methods, systems, and devices for handling captured image data that is received by devices
US10055756B2 (en) * 2013-10-18 2018-08-21 Apple Inc. Determining user engagement

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100955284B1 (ko) 2002-11-18 2010-04-30 에이알엠 리미티드 보안 모드와 비보안 모드 사이의 프로세서 전환하는 데이터 처리장치, 데이터 처리방법 및 컴퓨터 판독가능한 기록매체

Also Published As

Publication number Publication date
GB201503736D0 (en) 2015-04-22
US20180082085A1 (en) 2018-03-22
GB2536215A (en) 2016-09-14
GB2536215B (en) 2018-01-31
US10558826B2 (en) 2020-02-11
KR20160108136A (ko) 2016-09-19

Similar Documents

Publication Publication Date Title
KR102474243B1 (ko) 사용자 디바이스에 보안 모드를 제공하기 위한 방법 및 장치
Sikder et al. A survey on sensor-based threats to internet-of-things (iot) devices and applications
Sikder et al. A survey on sensor-based threats and attacks to smart devices and applications
Zhu et al. Captcha as graphical passwords—A new security primitive based on hard AI problems
US8868927B1 (en) Method and apparatus for secure data input and output
Sabzevar et al. Universal multi-factor authentication using graphical passwords
US10607035B2 (en) Method of displaying content on a screen of an electronic processing device
US11457017B2 (en) System and method of determing persistent presence of an authorized user while performing an allowed operation on an allowed resource of the system under a certain context-sensitive restriction
US10834257B1 (en) Email alert for unauthorized call
CN104270353B (zh) 一种信息安全传递方法及系统、接收终端、发送终端
CN105281907B (zh) 加密数据的处理方法及装置
US10237268B2 (en) Secure passcode processing device
CN109120576B (zh) 数据分享方法及装置、计算机设备及存储介质
Yang et al. Vulnerability analysis of iPhone 6
CN111177770A (zh) 一种敏感信息的保护方法、移动设备及存储装置
CN111448564B (zh) 一种在电子处理设备的屏幕上显示内容的方法
EP3316547A1 (en) Parameter based data access on a security information sharing platform
TW201523329A (zh) 指示移動設備操作環境的方法和能夠指示操作環境的移動設備
Ikhalia A new social media security model (SMSM)
WO2016140548A1 (ko) 사용자 디바이스에 보안 모드를 제공하기 위한 방법 및 장치
US11968202B2 (en) Secure authentication in adverse environments
Parikh et al. Multimodal data security framework using steganography approaches
EP4231178A1 (en) Synthetic biometrics for user privacy
CN110263553B (zh) 基于公钥验证的数据库访问控制方法、装置及电子设备
CN116975891A (zh) 文件分享方法及电子设备

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