KR102431266B1 - 통신 시스템에서 정보 보호 장치 및 방법 - Google Patents

통신 시스템에서 정보 보호 장치 및 방법 Download PDF

Info

Publication number
KR102431266B1
KR102431266B1 KR1020150135491A KR20150135491A KR102431266B1 KR 102431266 B1 KR102431266 B1 KR 102431266B1 KR 1020150135491 A KR1020150135491 A KR 1020150135491A KR 20150135491 A KR20150135491 A KR 20150135491A KR 102431266 B1 KR102431266 B1 KR 102431266B1
Authority
KR
South Korea
Prior art keywords
application
database
security analysis
analysis result
database security
Prior art date
Application number
KR1020150135491A
Other languages
English (en)
Other versions
KR20170036392A (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 KR1020150135491A priority Critical patent/KR102431266B1/ko
Priority to EP16848779.1A priority patent/EP3338216B1/en
Priority to PCT/KR2016/007921 priority patent/WO2017052053A1/en
Priority to US15/216,947 priority patent/US10380378B2/en
Priority to CN201610849584.9A priority patent/CN107038385B/zh
Publication of KR20170036392A publication Critical patent/KR20170036392A/ko
Application granted granted Critical
Publication of KR102431266B1 publication Critical patent/KR102431266B1/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/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
    • 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
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • 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/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • 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/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • 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/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • 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
    • G06F21/6281Protecting 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 at program execution time, where the protection is within the operating system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1433Vulnerability analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
    • 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/034Test or assess a computer or a system
    • 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/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Virology (AREA)
  • Medical Informatics (AREA)
  • Data Mining & Analysis (AREA)
  • Automation & Control Theory (AREA)
  • Telephonic Communication Services (AREA)
  • Information Transfer Between Computers (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 센서 네트워크(sensor network), 사물 통신(machine to machine (M2M) communication), MTC(machine type communication) 및 사물 인터넷(internet of things: IoT)을 위한 기술과 관련된 것이다. 본 발명은 상기 기술을 기반으로 하는 지능형 서비스(스마트 홈, 스마트 빌딩, 스마트 시티, 스마트 카 혹은 커넥티드 카, 헬스 케어, 디지털 교육, 소매업, 보안 및 안전 관련 서비스 등)에 활용될 수 있다.
본 발명은 통신 시스템에서 이동 디바이스가 정보를 보호하는 방법에 있어서, 상기 이동 디바이스가 어플리케이션이 상기 이동 디바이스에서 설치될 것임을 검출 또는 상기 어플리케이션이 상기 이동 디바이스에 의해 처음으로 실행되는 것을 검출하는 것에 응답하여, 상기 이동 디바이스에 의해 어플리케이션에 대응되는 데이터베이스의 데이터베이스 보안 분석 결과를 획득하고, 상기 데이터베이스 보안 분석 결과는 상기 데이터베이스를 보호하기 위한 데이터베이스 보안 분석 동작을 수행한 결과인 과정과,상기 이동 디바이스의 디스플레이에, 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 출력하는 과정을 포함하고, 상기 어플리케이션의 설치에 대한 응답으로 상기 데이터베이스가 상기 이동 디바이스에 생성되고, 상기 데이터 베이스는 어플리케이션의 실행과 관련된 개인 사용자 정보를 포함하는 것을 특징으로 한다.

Description

통신 시스템에서 정보 보호 장치 및 방법{APPARATUS AND METHOD FOR PROTECTING INFORMATION IN COMMUNICATION SYSTEM}
본 발명은 통신 시스템에서 정보를 보호하는 장치 및 방법에 관한 것으로서, 특히 통신 시스템에서 어플리케이션(application: App)에 대한 데이터베이스(database) 보안 분석 결과를 기반으로 정보를 보호하는 장치 및 방법에 관한 것이다.
인터넷은 인간이 정보를 생성하고 소비하는 인간 중심의 연결 네트워크에서, 사물 등 분산된 구성 요소들 간에 정보를 주고 받아 처리하는 사물 인터넷(internet of things: IoT, 이하 " IoT"라 칭하기로 한다) 네트워크로 진화하고 있다. IoE (internet of everything) 기술은 클라우드 서버(cloud server) 등과의 연결을 통한 빅 데이터(big data) 처리 기술 등이 IoT 기술에 결합된 하나의 예가 될 수 있다.
IoT를 구현하기 위해서, 센싱 기술, 유무선 통신 및 네트워크 인프라, 서비스 인터페이스 기술 및 보안 기술 등과 같은 기술 요소 들이 요구되어, 최근에는 사물간의 연결을 위한 센서 네트워크(sensor network), 사물 통신 (machine to machine (M2M) communication: 이하 " M2M 통신"이라 칭하기로 한다), MTC(machine type communication) 등의 기술이 연구되고 있다.
IoT 환경에서는 연결된 사물들에서 생성된 데이터를 수집, 분석하여 인간의 삶에 새로운 가치를 창출하는 지능형 IT (internet technology) 서비스가 제공될 수 있다. IoT는 기존의 IT 기술과 다양한 산업 간의 융합 및 복합을 통하여 스마트 홈, 스마트 빌딩, 스마트 시티, 스마트 카 혹은 커넥티드 카, 스마트 그리드, 헬스 케어, 스마트 가전, 첨단 의료 서비스 등의 분야에 응용될 수 있다.
통신 디바이스, 일 예로, 스마트 폰(smart phone), 태블릿(tablet), 스마트 시계, 스마트 밴드, 스마트 목걸이 또는 스마트 반지와 같은 스마트 디바이스(smart device)와 같은 통신 디바이스가 사용될 동안, 다양한 사용자 정보가 상기 통신 디바이스가 포함하는 저장 유닛에 저장되어 관리된다. 여기서, 상기 다양한 사용자 정보는 시스템 설정, 검색 기록, 알람, Wi-Fi (wireless fidelity) 리스트, 사진, 동영상 파일과, 연락처, 통화 내역, 문자, 일정, e-mail 등과 같은 개인 정보를 포함한다. 또한, 상기 다양한 사용자 정보는 상기 저장 유닛에 데이터베이스 형태로 저장된다. 이하, 설명의 편의상 개인 정보가 저장되는, 통신 디바이스가 포함하는 저장 유닛 내의 데이터베이스를 "디바이스 내부 개인 정보 데이터베이스(personal information database within device: PIDBD)"라고 칭하기로 한다.
한편, 상기 통신 디바이스에 설치된 다양한 어플리케이션들 각각은 해당 서비스를 제공하기 위해 상기 통신 디바이스 내부 개인 정보 데이터베이스에 억세스를 요청하여 개인 정보를 획득할 수 있다.
이와는 달리, 상기 어플리케이션들 각각은 상기 어플리케이션들 각각이 자체적으로 데이터베이스를 생성하여 개인 정보를 저장 및 관리할 수도 있다. 여기서, 어플리케이션에서 생성되는 데이터베이스는 시스템 레벨에서 관리되는 통신 디바이스 내부 개인 정보 데이터베이스에 비해 다양한 외부 위협 요소들, 일 예로 악성 어플리케이션과, 악성 코드, 디바이스 분실, 루팅된 디바이스 등과 같은 다양한 외부 위협 요소들로부터 비교적 쉽게 공격 당할 수 있기 때문에, 개인 정보 유출과 같은 보안 사고가 발생될 확률이 높다.
따라서, 사용자 수가 비교적 많은 일부 어플리케이션들은 보안 사고를 방지하기 위해 데이터베이스 암호화 등과 같은 다양한 보안 정책들을 사용하고 있다. 하지만, 어플리케이션을 개발할 경우 어플리케이션에 데이터베이스 보안 솔루션(solution)을 적용하는 것이 어플리케이션 개발 자체보다 더 큰 로드가 될 수 있으며, 따라서 현재 어플리케이션 마켓(market)에 등록되는 어플리케이션들 대부분에는 데이터베이스 보안 정책이 적용되고 있지 않다.
한편, 현재 통신 디바이스에서는 상기 통신 디바이스에 설치되어 있는 어플리케이션들에서 어떤 개인 정보가 얼마나 안전하게 관리되고 있는지 확인할 수 있는 방식이 존재하지 않는다.
그러면 여기서 도 1을 참조하여 일반적인 통신 시스템에서 통신 디바이스가 악성 어플리케이션을 검출하여 개인 정보를 보호하는 방법의 일 예에 대해서 설명하기로 한다.
도 1은 일반적인 통신 시스템에서 통신 디바이스가 악성 어플리케이션을 검출하여 개인 정보를 보호하는 방법의 일 예를 개략적으로 도시한 도면이다.
도 1을 참조하면, 먼저 통신 디바이스에 어플리케이션 패키지 파일(application package file), 일 예로 안드로이드 어플리케이션 패키지(Android application package: APK, 이하 "APK"라 칭하기로 한다) 파일을 통해 어플리케이션이 설치되면, 상기 통신 디바이스는 상기 어플리케이션에 대해 보안 스캐닝 프로세스(security scanning process) 및 코드 정적 분석 프로세스를 수행하여 상기 어플리케이션이 악성 어플리케이션인지 여부를 판단한다. 여기서, 상기 통신 디바이스는 상기 어플리케이션으로부터 권한 관련 파일을 추출하고, 상기 추출한 관한 관련 파일을 분석하여 상기 어플리케이션이 악성 어플리케이션인지 여부를 판단한다.
도 1에서 설명한 바와 같이 통신 디바이스는 상기 통신 디바이스에 어플리케이션이 설치될 경우 상기 설치된 어플리케이션이 악성 어플리케이션인지 여부를 검출할 수 있다. 그런데, 상기 설치된 어플리케이션이 알려지지 않은 새로운 악성 어플리케이션일 경우 다양한 외부 위협 요소들로부터 개인 정보 유출을 방지하는 것은 불가능하다.
도 1에서는 일반적인 통신 시스템에서 통신 디바이스가 악성 어플리케이션을 검출하여 개인 정보를 보호하는 방법의 일 예에 대해서 설명하였으며, 다음으로 도 2를 참조하여 일반적인 통신 시스템에서 통신 디바이스가 악성 어플리케이션을 검출하여 개인 정보를 보호하는 방법의 다른 예에 대해서 설명하기로 한다.
도 2는 일반적인 통신 시스템에서 통신 디바이스가 악성 어플리케이션을 검출하여 개인 정보를 보호하는 방법의 다른 예를 개략적으로 도시한 도면이다.
도 2를 참조하면, 도 1에서 설명한 바와 같이 통신 디바이스에 어플리케이션 패키지 파일, 일 예로 APK 파일을 통해 어플리케이션이 설치되면, 상기 통신 디바이스는 상기 어플리케이션에 대해 보안 스캐닝 프로세스 및 코드 정적 분석 프로세스를 수행하여 상기 어플리케이션이 악성 어플리케이션인지 여부를 판단한다.
상기 판단 결과 상기 어플리케이션이 악성 어플리케이션이라고 할지라도, 다양한 외부 위협 요소들, 일 예로 악성 어플리케이션, 멀웨어(malware), 디바이스 분실, 루팅된 디바이스와 같은 다양한 외부 위협 요소들로부터 발생할 수 있는 개인 정보 유출을 방지하는 데에는 한계가 있을 수 밖에 없다.
따라서, 통신 디바이스에 설치되는 어플리케이션에서 관리되는 개인 정보를 안전하게 보호할 수 있는 방법에 대한 필요성이 대두되고 있다.
한편, 상기와 같은 정보는 본 발명의 이해를 돕기 위한 백그라운드(background) 정보로서만 제시될 뿐이다. 상기 내용 중 어느 것이라도 본 발명에 관한 종래 기술로서 적용 가능할지 여부에 관해, 어떤 결정도 이루어지지 않았고, 또한 어떤 주장도 이루어지지 않는다.
본 발명의 일 실시예는 통신 시스템에서 정보를 보호하는 장치 및 방법을 제안한다.
또한, 본 발명의 일 실시예는 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 결과를 기반으로 정보를 보호하는 장치 및 방법을 제안한다.
또한, 본 발명의 일 실시예는 통신 시스템에서 서버가 동적으로 어플리케이션에 대한 데이터베이스 보안 분석 결과를 기반으로 정보를 보호하는 장치 및 방법을 제안한다.
또한, 본 발명의 일 실시예는 통신 시스템에서 통신 디바이스가 동적으로 어플리케이션에 대한 데이터베이스 보안 분석 결과를 기반으로 정보를 보호하는 장치 및 방법을 제안한다.
또한, 본 발명의 일 실시예는 통신 시스템에서 어플리케이션 별로 어플리케이션 내부 데이터베이스(database within application: DBA)에 대한 보안을 향상시킬 수 있도록 정보를 보호하는 장치 및 방법을 제안한다.
또한, 본 발명의 일 실시예는 통신 시스템에서 보안 환경 설정에 따른 어플리케이션에 대한 데이터베이스 보안 분석 결과를 기반으로 정보를 보호하는 장치 및 방법을 제안한다.
본 발명의 일 실시예에서 제안하는 방법은; 통신 시스템에서 통신 디바이스가 정보를 보호하는 방법에 있어서, 상기 이동 디바이스가 어플리케이션이 상기 이동 디바이스에서 설치될 것임을 검출 또는 상기 어플리케이션이 상기 이동 디바이스에 의해 처음으로 실행되는 것을 검출하는 것에 응답하여, 상기 이동 디바이스에 의해 어플리케이션에 대응되는 데이터베이스의 데이터베이스 보안 분석 결과를 획득하고, 상기 데이터베이스 보안 분석 결과는 상기 데이터베이스를 보호하기 위한 데이터베이스 보안 분석 동작을 수행한 결과인 과정과, 상기 이동 디바이스의 디스플레이에, 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 출력하는 과정을 포함하고,상기 어플리케이션의 설치에 대한 응답으로 상기 데이터베이스가 상기 이동 디바이스에 생성되고, 상기 데이터 베이스는 어플리케이션의 실행과 관련된 개인 사용자 정보를 포함하는 것을 특징으로 한다.
본 발명의 일 실시예에서 제안하는 다른 방법은; 통신 시스템에서 서버가 정보를 보호하는 방법에 있어서, 통신 디바이스로부터 어플리케이션(application)에 대한 데이터베이스(database) 보안 분석 결과를 요청하는 데이터베이스 보안 분석 요청 메시지를 수신하는 과정과, 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과가 저장되어 있는지 여부를 기반으로 상기 통신 디바이스로 데이터베이스 보안 분석 결과 응답 메시지를 송신하는 과정을 포함함을 특징으로 한다.
본 발명의 일 실시예에서 제안하는 장치는; 통신 시스템에서 통신 디바이스에 있어서, 상기 이동 디바이스가 어플리케이션이 상기 이동 디바이스에서 설치될 것임을 검출 또는 상기 어플리케이션이 상기 이동 디바이스에 의해 처음으로 실행되는 것을 검출하는 것에 응답하여, 상기 이동 디바이스에 의해 어플리케이션에 대응되는 데이터베이스의 데이터베이스 보안 분석 결과를 획득하고, 상기 데이터베이스 보안 분석 결과는 상기 데이터베이스를 보호하기 위한 데이터베이스 보안 분석 동작을 수행한 결과이고, 상기 이동 디바이스의 디스플레이에 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 출력하는 프로세서를 포함하고,상기 어플리케이션의 설치에 대한 응답으로 상기 데이터베이스가 상기 이동 디바이스에 생성되고, 상기 데이터 베이스는 어플리케이션의 실행과 관련된 개인 사용자 정보를 포함함을 특징으로 한다.
본 발명의 일 실시예에서 제안하는 다른 장치는; 통신 시스템에서 서버에 있어서, 통신 디바이스로부터 어플리케이션(application)에 대한 데이터베이스(database) 보안 분석 결과를 요청하는 데이터베이스 보안 분석 요청 메시지를 수신하는 수신기와, 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과가 저장되어 있는지 여부를 기반으로 상기 통신 디바이스로 데이터베이스 보안 분석 결과 응답 메시지를 송신하는 송신기를 포함함을 특징으로 한다.
본 발명의 다른 측면들과, 이득들 및 핵심적인 특징들은 부가 도면들과 함께 처리되고, 본 발명의 바람직한 실시예들을 개시하는, 하기의 구체적인 설명으로부터 해당 기술 분야의 당업자에게 자명할 것이다.
하기의 본 개시의 구체적인 설명 부분을 처리하기 전에, 이 특허 문서를 통해 사용되는 특정 단어들 및 구문들에 대한 정의들을 설정하는 것이 효과적일 수 있다: 상기 용어들 “포함하다(include)” 및 “포함하다(comprise)”와 그 파생어들은 한정없는 포함을 의미하며; 상기 용어 “혹은(or)”은 포괄적이고, “및/또는”을 의미하고; 상기 구문들 “~와 연관되는(associated with)” 및 “~와 연관되는(associated therewith)”과 그 파생어들은 포함하고(include), ~내에 포함되고(be included within), ~와 서로 연결되고(interconnect with), 포함하고(contain), ~내에 포함되고(be contained within), ~에 연결하거나 혹은 ~와 연결하고(connect to or with), ~에 연결하거나 혹은 ~와 연결하고(couple to or with), ~와 통신 가능하고(be communicable with), ~와 협조하고(cooperate with), 인터리빙하고(interleave), 병치하고(juxtapose), ~로 가장 근접하고(be proximate to), ~로 ~할 가능성이 크거나 혹은 ~와 ~할 가능성이 크고(be bound to or with), 가지고(have), 소유하고(have a property of) 등과 같은 내용을 의미하고; 상기 용어 “제어기”는 적어도 하나의 동작을 제어하는 임의의 디바이스, 시스템, 혹은 그 부분을 의미하고, 상기와 같은 디바이스는 하드웨어, 펌웨어 혹은 소프트웨어, 혹은 상기 하드웨어, 펌웨어 혹은 소프트웨어 중 적어도 2개의 몇몇 조합에서 구현될 수 있다. 어떤 특정 제어기와 연관되는 기능성이라도 집중화되거나 혹은 분산될 수 있으며, 국부적이거나 원격적일 수도 있다는 것에 주의해야만 할 것이다. 특정 단어들 및 구문들에 대한 정의들은 이 특허 문서에 걸쳐 제공되고, 해당 기술 분야의 당업자는 많은 경우, 대부분의 경우가 아니라고 해도, 상기와 같은 정의들이 종래 뿐만 아니라 상기와 같이 정의된 단어들 및 구문들의 미래의 사용들에도 적용된다는 것을 이해해야만 할 것이다.
본 발명의 일 실시예는 통신 시스템에서 정보를 보호하는 것을 가능하게 한다는 효과가 있다.
또한, 본 발명의 일 실시예는 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 결과를 기반으로 정보를 보호하는 것을 가능하게 한다는 효과가 있다.
또한, 본 발명의 일 실시예는 통신 시스템에서 서버가 동적으로 어플리케이션에 대한 데이터베이스 보안 분석 결과를 기반으로 정보를 보호하는 것을 가능하게 한다는 효과가 있다.
또한, 본 발명의 일 실시예는 통신 시스템에서 통신 디바이스가 동적으로 어플리케이션에 대한 데이터베이스 보안 분석 결과를 기반으로 정보를 보호하는 것을 가능하게 한다는 효과가 있다.
또한, 본 발명의 일 실시예는 통신 시스템에서 어플리케이션 별로 어플리케이션 내부 데이터베이스에 대한 보안을 향상시킬 수 있도록 정보를 보호하는 것을 가능하게 한다는 효과가 있다.
또한, 본 발명의 일 실시예는 통신 시스템에서 보안 환경 설정에 따른 어플리케이션에 대한 데이터베이스 보안 분석 결과를 기반으로 정보를 보호하는 것을 가능하게 한다는 효과가 있다.
본 발명의 특정한 바람직한 실시예들의 상기에서 설명한 바와 같은 또한 다른 측면들과, 특징들 및 이득들은 첨부 도면들과 함께 처리되는 하기의 설명으로부터 보다 명백하게 될 것이다:
도 1은 일반적인 통신 시스템에서 통신 디바이스가 악성 어플리케이션을 검출하여 개인 정보를 보호하는 방법의 일 예를 개략적으로 도시한 도면이다;
도 2는 일반적인 통신 시스템에서 통신 디바이스가 악성 어플리케이션을 검출하여 개인 정보를 보호하는 방법의 다른 예를 개략적으로 도시한 도면이다;
도 3은 본 발명의 일 실시예에 따른 통신 시스템의 구조를 개략적으로 도시한 도면이다;
도 4는 본 발명의 일 실시예에 따른 통신 시스템에서 각 3rd party 어플리케이션이 관리하는 데이터베이스에 대한 보안 정책이 모든 통신 디바이스들에 대해 동일하게 적용될 경우의 통신 디바이스들의 동작 과정을 개략적으로 도시한 도면이다;
도 5는 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 결과가 서버에 저장되어 있는 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정을 개략적으로 도시한 도면이다;
도 6은 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 결과가 서버에 저장되어 있지 않을 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정을 개략적으로 도신한 신호 흐름도이다;
도 7은 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 동작이 서버에서 수행될 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정을 개략적으로 도시한 도면이다;
도 8은 본 발명의 일 실시예에 따른 통신 시스템에서 통신 디바이스가 어플리케이션을 설치하기 전에 서버로부터 어플리케이션에 대한 데이터베이스 보안 분석 결과를 수신할 경우의 통신 디바이스의 동작 과정을 개략적으로 도시한 도면이다;
도 9는 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 동작이 서버 및 통신 디바이스에서 수행될 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정을 개략적으로 도시한 도면이다;
도 10은 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 동작이 통신 디바이스에서 수행될 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정을 개략적으로 도시한 도면이다;
도 11은 본 발명의 일 실시예에 따른 통신 시스템에서 통신 디바이스가 어플리케이션을 설치한 후 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하는 과정을 개략적으로 도시한 도면이다;
도 12는 도 11의 데이터베이스 보안 분석 단계(1119)에서 수행되는 과정을 개략적으로 도시한 도면이다;
도 13은 본 발명의 일 실시예에 따른 통신 시스템에서 데이터베이스 스키마 분석 과정을 개략적으로 도시한 도면이다;
도 14는 본 발명의 일 실시예에 따른 통신 시스템에서 각 3rd party 어플리케이션이 관리하는 데이터베이스에 대한 보안 정책이 모든 통신 디바이스들에 대해 다르게 적용될 경우의 통신 디바이스들의 동작 과정을 개략적으로 도시한 도면이다;
도 15는 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 정책이 변경되는 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정을 개략적으로 도시한 도면이다;
도 16은 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 정책이 변경되는 경우 통신 디바이스가 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하는 과정의 일 예를 개략적으로 도시한 도면이다;
도 17은 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 정책이 변경되는 경우 통신 디바이스가 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하는 과정의 다른 예를 개략적으로 도시한 도면이다;
도 18은 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션 내부 데이터베이스에 대한 보안 정책을 적용하는 동작의 일 예를 개략적으로 도시한 도면이다;
도 19는 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션 내부 데이터베이스에 대한 보안 정책을 적용하는 동작의 다른 예를 개략적으로 도시한 도면이다;
도 20은 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션 내부 데이터베이스에 대한 보안 정책을 적용하는 동작의 또 다른 예를 개략적으로 도시한 도면이다;
도 21은 본 발명의 일 실시예에 따른 통신 시스템에서 통신 디바이스의 내부 구조를 개략적으로 도시한 도면이다;
도 22는 본 발명의 일 실시예에 따른 통신 시스템에서 서버의 내부 구조를 개략적으로 도시한 도면이다.
상기 도면들을 통해, 유사 참조 번호들은 동일한 혹은 유사한 엘리먼트들과, 특징들 및 구조들을 도시하기 위해 사용된다는 것에 유의해야만 한다.
첨부되는 도면들을 참조하는 하기의 상세한 설명은 청구항들 및 청구항들의 균등들로 정의되는 본 개시의 다양한 실시예들을 포괄적으로 이해하는데 있어 도움을 줄 것이다. 하기의 상세한 설명은 그 이해를 위해 다양한 특정 구체 사항들을 포함하지만, 이는 단순히 예로서만 간주될 것이다. 따라서, 해당 기술 분야의 당업자는 여기에서 설명되는 다양한 실시예들의 다양한 변경들 및 수정들이 본 개시의 범위 및 사상으로부터 벗어남이 없이 이루어질 수 있다는 것을 인식할 것이다. 또한, 공지의 기능들 및 구성들에 대한 설명은 명료성 및 간결성을 위해 생략될 수 있다.
하기의 상세한 설명 및 청구항들에서 사용되는 용어들 및 단어들은 문헌적 의미로 한정되는 것이 아니라, 단순히 발명자에 의한 본 개시의 명료하고 일관적인 이해를 가능하게 하도록 하기 위해 사용될 뿐이다. 따라서, 해당 기술 분야의 당업자들에게는 본 개시의 다양한 실시예들에 대한 하기의 상세한 설명은 단지 예시 목적만을 위해 제공되는 것이며, 첨부되는 청구항들 및 상기 청구항들의 균등들에 의해 정의되는 본 개시를 한정하기 위해 제공되는 것은 아니라는 것이 명백해야만 할 것이다.
또한, 본 명세서에서 명백하게 다른 내용을 지시하지 않는 “한”과, “상기”와 같은 단수 표현들은 복수 표현들을 포함한다는 것이 이해될 수 있을 것이다. 따라서, 일 예로, “컴포넌트 표면(component surface)”은 하나 혹은 그 이상의 컴포넌트 표현들을 포함한다.
또한, 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
또한, 본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
또한, 별도로 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 이해되어야만 한다.
본 발명의 다양한 실시예들에 따르면, 전자 디바이스는 통신 기능을 포함할 수 있다. 일 예로, 전자 디바이스는 스마트 폰(smart phone)과, 태블릿(tablet) 개인용 컴퓨터(personal computer: PC, 이하 ‘PC’라 칭하기로 한다)와, 이동 전화기와, 화상 전화기와, 전자책 리더(e-book reader)와, 데스크 탑(desktop) PC와, 랩탑(laptop) PC와, 넷북(netbook) PC와, 개인용 복합 단말기(personal digital assistant: PDA, 이하 ‘PDA’라 칭하기로 한다)와, 휴대용 멀티미디어 플레이어(portable multimedia player: PMP, 이하 ‘PMP’라 칭하기로 한다)와, 엠피3 플레이어(mp3 player)와, 이동 의료 디바이스와, 카메라와, 웨어러블 디바이스(wearable device)(일 예로, 헤드-마운티드 디바이스(head-mounted device: HMD, 일 예로 ‘HMD’라 칭하기로 한다)와, 전자 의류와, 전자 팔찌와, 전자 목걸이와, 전자 앱세서리(appcessory)와, 전자 문신, 혹은 스마트 워치(smart watch) 등이 될 수 있다.
본 발명의 다양한 실시예들에 따르면, 전자 디바이스는 통신 기능을 가지는 스마트 가정용 기기(smart home appliance)가 될 수 있다. 일 예로, 상기 스마트 가정용 기기는 텔레비젼과, 디지털 비디오 디스크(digital video disk: DVD, 이하 ‘DVD’라 칭하기로 한다) 플레이어와, 오디오와, 냉장고와, 에어 컨디셔너와, 진공 청소기와, 오븐과, 마이크로웨이브 오븐과, 워셔와, 드라이어와, 공기 청정기와, 셋-탑 박스(set-top box)와, TV 박스 (일 예로, Samsung HomeSyncTM, Apple TVTM, 혹은 Google TVTM)와, 게임 콘솔(gaming console)과, 전자 사전과, 캠코더와, 전자 사진 프레임 등이 될 수 있다.
본 발명의 다양한 실시예들에 따르면, 전자 디바이스는 의료 기기(일 예로, 자기 공명 혈관 조영술(magnetic resonance angiography: MRA, 이하 ‘MRA’라 칭하기로 한다) 디바이스와, 자기 공명 화상법(magnetic resonance imaging: MRI, 이하 “MRI”라 칭하기로 한다)과, 컴퓨터 단층 촬영(computed tomography: CT, 이하 ‘CT’라 칭하기로 한다) 디바이스와, 촬상 디바이스, 혹은 초음파 디바이스)와, 네비게이션(navigation) 디바이스와, 전세계 위치 시스템(global positioning system: GPS, 이하 ‘GPS’라 칭하기로 한다) 수신기와, 사고 기록 장치(event data recorder: EDR, 이하 ‘EDR’이라 칭하기로 한다)와, 비행 기록 장치(flight data recorder: FDR, 이하 ‘FER’이라 칭하기로 한다)와, 자동차 인포테인먼트 디바이스(automotive infotainment device)와, 항해 전자 디바이스(일 예로, 항해 네비게이션 디바이스, 자이로스코프(gyroscope), 혹은 나침반)와, 항공 전자 디바이스와, 보안 디바이스와, 산업용 혹은 소비자용 로봇(robot) 등이 될 수 있다.
본 발명의 다양한 실시예들에 따르면, 전자 디바이스는 통신 기능을 포함하는, 가구와, 빌딩/구조의 일부와, 전자 보드와, 전자 서명 수신 디바이스와, 프로젝터와, 다양한 측정 디바이스들(일 예로, 물과, 전기와, 가스 혹은 전자기 파 측정 디바이스들) 등이 될 수 있다.
본 발명의 다양한 실시예들에 따르면, 전자 디바이스는 상기에서 설명한 바와 같은 디바이스들의 조합이 될 수 있다. 또한, 본 발명의 바람직한 실시예들에 따른 전자 디바이스는 상기에서 설명한 바와 같은 디바이스에 한정되는 것이 아니라는 것은 당업자에게 자명할 것이다.
본 발명의 일 실시예는 통신 시스템에서 정보를 보호하는 장치 및 방법을 제안한다.
또한, 본 발명의 일 실시예는 통신 시스템에서 어플리케이션(application)에 대한 데이터베이스(database) 보안 분석 결과를 기반으로 정보를 보호하는 장치 및 방법을 제안한다.
또한, 본 발명의 일 실시예는 통신 시스템에서 서버가 동적으로 어플리케이션에 대한 데이터베이스 보안 분석 결과를 기반으로 정보를 보호하는 장치 및 방법을 제안한다.
또한, 본 발명의 일 실시예는 통신 시스템에서 통신 디바이스가 동적으로 어플리케이션에 대한 데이터베이스 보안 분석 결과를 기반으로 정보를 보호하는 장치 및 방법을 제안한다.
또한, 본 발명의 일 실시예는 통신 시스템에서 어플리케이션 별로 어플리케이션 내부 데이터베이스(database within application: DBA)에 대한 보안을 향상시킬 수 있도록 정보를 보호하는 장치 및 방법을 제안한다.
또한, 본 발명의 일 실시예는 통신 시스템에서 보안 환경 설정에 따른 어플리케이션에 대한 데이터베이스 보안 분석 결과를 기반으로 정보를 보호하는 장치 및 방법을 제안한다.
한편, 본 발명의 일 실시예에서 제안하는 장치 및 방법은 롱 텀 에볼루션(long-term evolution: LTE, 이하 ‘LTE’라 칭하기로 한다) 이동 통신 시스템과, 롱 텀 에볼루션-어드밴스드(long-term evolution-advanced: LTE-A, 이하 ‘LTE-A’라 칭하기로 한다) 이동 통신 시스템과, 인가-보조 억세스(licensed-assisted access: LAA, 이하 " LAA"라 칭하기로 한다)-LTE 이동 통신 시스템과, 고속 하향 링크 패킷 접속(high speed downlink packet access: HSDPA, 이하 ‘HSDPA’라 칭하기로 한다) 이동 통신 시스템과, 고속 상향 링크 패킷 접속(high speed uplink packet access: HSUPA, 이하 ‘HSUPA’라 칭하기로 한다) 이동 통신 시스템과, 3세대 프로젝트 파트너쉽 2(3rd generation partnership project 2: 3GPP2, 이하 ‘3GPP2’라 칭하기로 한다)의 고속 레이트 패킷 데이터(high rate packet data: HRPD, 이하 ‘HRPD’라 칭하기로 한다) 이동 통신 시스템과, 3GPP2의 광대역 부호 분할 다중 접속(wideband code division multiple access: WCDMA, 이하 ‘WCDMA’라 칭하기로 한다) 이동 통신 시스템과, 3GPP2의 부호 분할 다중 접속(code division multiple access: CDMA, 이하 ‘CDMA’라 칭하기로 한다) 이동 통신 시스템과, 국제 전기 전자 기술자 협회(institute of electrical and electronics engineers: IEEE, 이하 ‘IEEE’라 칭하기로 한다) 802.16m 통신 시스템과, IEEE 802.16e 통신 시스템과, 진화된 패킷 시스템(evolved packet system: EPS, 이하 'EPS'라 칭하기로 한다)과, 모바일 인터넷 프로토콜(mobile internet protocol: Mobile IP, 이하 ‘Mobile IP ‘라 칭하기로 한다) 시스템 등과 같은 다양한 통신 시스템들에 적용 가능하다.
먼저, 도 3을 참조하여 본 발명의 일 실시예에 따른 통신 시스템의 구조에 대해서 설명하기로 한다.
도 3은 본 발명의 일 실시예에 따른 통신 시스템의 구조를 개략적으로 도시한 도면이다.
도 3을 참조하면, 상기 통신 시스템은 통신 디바이스(300)와 서버(310)를 포함한다. 상기 통신 디바이스(300)는 데이터베이스 보안 분석기(301)를 포함한다.
먼저, 상기 통신 디바이스(300)에 제3자(3rd party, 이하 "3rd party "라 칭하기로 한다) 어플리케이션(application)(303)이 설치되면, 상기 3rd party 어플리케이션(303)은 상기 3rd party 어플리케이션(303)의 실행에 관련된 정보, 일 예로 시스템 설정, 검색 기록, 알람, Wi-Fi (wireless fidelity) 리스트, 사진, 동영상 파일과, 연락처, 통화 내역, 문자, 일정, e-mail 등과 같은 개인 정보를 포함하는 상기 3rd party 어플리케이션(303)의 실행에 관련된 정보를 저장하는 3rd party 어플리케이션 데이터베이스(305)를 생성 및 관리한다.
상기 데이터베이스 보안 분석기(301)는 상기 통신 디바이스(300)에 설치되는, 적어도 하나의 3rd party 어플리케이션에서 관리되는 3rd party 어플리케이션 데이터베이스를 분석하고, 상기 분석 결과는 상기 서버(310)로 송신된다.
상기 서버(310)는 상기 통신 디바이스(300)가 포함하는 데이터베이스 보안 분석기(301)기로부터 수신되는 분석 결과를 기반으로 상기 통신 디바이스(300)에 설치되는, 적어도 하나의 3rd party 어플리케이션 각각의 3rd party 어플리케이션 데이터베이스에 대한 보안 레벨(security level)을 판단한다. 또한, 상기 서버(310)는 상기 통신 디바이스(300)가 포함하는 데이터베이스 보안 분석기(301)기로부터 수신되는 분석 결과를 기반으로 상기 통신 디바이스(300)의 사용자 혹은 3rd party 로 3rd party 어플리케이션 데이터베이스에 대한 보안 솔루션(solution)을 제공한다. 즉, 상기 서버(310)는 상기 통신 디바이스(300)로부터 수신되는 어플리케이션 별 어플리케이션 데이터베이스 보안 분석 결과를 관리하거나, 혹은 상기 통신 디바이스(300)로 저장되어 있는 어플리케이션 별 어플리케이션 데이터베이스 보안 분석 결과를 제공한다.
도 3에서는 본 발명의 일 실시예에 따른 통신 시스템의 구조에 대해서 설명하였으며, 다음으로 도 4를 참조하여 본 발명의 일 실시예에 따른 통신 시스템에서 각 3rd party 어플리케이션이 관리하는 데이터베이스에 대한 보안 정책(security policy)이 모든 통신 디바이스들에 대해 동일하게 적용될 경우의 통신 디바이스들의 동작 과정에 대해서 설명하기로 한다.
도 4는 본 발명의 일 실시예에 따른 통신 시스템에서 각 3rd party 어플리케이션이 관리하는 데이터베이스에 대한 보안 정책이 모든 통신 디바이스들에 대해 동일하게 적용될 경우의 통신 디바이스들의 동작 과정을 개략적으로 도시한 도면이다.
도 4를 참조하면, 먼저 도 4에 도시되어 있는 통신 디바이스들의 동작 과정은 다수 개의 통신 디바이스들, 일 예로 n개의 통신 디바이스들, 일 예로 통신 디바이스#1(410)과, 통신 디바이스#2(420)와, 통신 디바이스#n(430) 각각에 다수 개의 3rd party 어플리케이션들, 일 예로 2개의 3rd party 어플리케이션들, 일 예로 3rd party 어플리케이션 #1(440)과 3rd party 어플리케이션 #2(450)이 설치되고, 상기 3rd party 어플리케이션 #1(440)과 3rd party 어플리케이션 #2(450) 각각이 설치된 통신 디바이스들에 대해서는 동일한 데이터베이스 보안 정책이 적용되는 경우의 통신 디바이스들의 동작 과정임에 유의하여야만 할 것이다.
도 4에서는 상기 3rd party 어플리케이션 #1(440)에 대한 데이터베이스는 저장되어 있는 정보 중 연락처에 대해서만 암호화가 적용되고, 상기 3rd party 어플리케이션 #2(450)에 대한 데이터베이스는 저장되어 있는 정보 중 모든 개인 정보에 대해서 암호화가 적용된다고 가정하기로 한다.
상기 3rd party 어플리케이션 #1(440)과 3rd party 어플리케이션 #2(450) 각각에 대한 데이터베이스 보안 분석은 서버(도 4에 도시되어 있지 않음) 혹은 상기 통신 디바이스#1(410)과, 통신 디바이스#2(420)와, 통신 디바이스#n(430) 각각에서 수행되며, 상기 데이터베이스 보안 분석 결과는 상기 서버에서 관리된다.
상기 서버가 3rd party 어플리케이션들에 대한 데이터베이스 보안 분석 결과를 저장하는 동작에 대해서 설명하면 다음과 같다.
먼저, 상기 서버는 3rd party 어플리케이션 별로 어플리케이션 정보 및 데이터베이스 보안 분석 결과를 저장 및 관리한다. 여기서, 상기 어플리케이션 정보는 어플리케이션 네임(name)과, 패키지(package) 네임과, 어플리케이션 개발자 정보와, 버전 정보와, 업데이트 정보 등을 포함할 수 있다. 또한, 상기 데이터베이스 보안 분석 결과는 데이터베이스 생성 여부와, 데이터베이스에서 관리되는 개인 정보의 타입과, 데이터베이스에 대한 암호화 적용 여부 등을 포함할 수 있다.
한편, 상기 서버에 데이터베이스 보안 분석 결과가 등록되어 있는 어플리케이션이 어플리케이션 마켓(market)에서 버전이 업데이트되는 경우, 상기 업데이트된 버전의 어플리케이션에 대해서도 상기 서버 혹은 해당 통신 디바이스들에서 데이터베이스 보안 분석 동작이 다시 수행되며, 따라서 상기 다시 수행된 데이터베이스 보안 분석 결과가 상기 서버에 저장된다. 도 4에서는 설명의 편의상 일 예로 상기 어플리케이션의 버전이 업데이트되는 경우 데이터베이스 보안 분석 동작이 다시 수행되는 경우에 대해서 설명하였으나, 상기 버전이 업데이트되는 경우 뿐만 아니라 상기 어플리케이션에 대한 데이터베이스가 분석된 경우와 비교하여 변경 사항이 발생할 때마다 상기 데이터베이스 보안 분석 동작이 다시 수행될 수도 있음은 물론이다.
도 4에서는 본 발명의 일 실시예에 따른 통신 시스템에서 각 3rd party 어플리케이션이 관리하는 데이터베이스에 대한 보안 정책이 모든 통신 디바이스들에 대해 동일하게 적용될 경우의 통신 디바이스들의 동작 과정에 대해서 설명하였으며, 다음으로 도 5를 참조하여 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 결과가 서버에 저장되어 있는 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정에 대해서 설명하기로 한다.
도 5는 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 결과가 서버에 저장되어 있는 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정을 개략적으로 도시한 도면이다.
도 5를 참조하면, 상기 통신 시스템은 통신 디바이스(510)와 서버(520)를 포함한다.
상기 통신 디바이스(510)는 비지니스 계층(business layer)(511)와 어플리케이션 계층(application layer)(513)를 포함한다. 여기서, 상기 비지니스 계층(511)은 어플리케이션 프레임워크(framework)이다.
또한, 상기 서버(520)는 어플리케이션 계층(521)과, 비지니스 계층(523)과, 데이터 계층(525)을 포함한다.
먼저, 상기 통신 디바이스(510)에 어플리케이션이 설치된 후 상기 어플리케이션이 처음 실행될 경우 상기 통신 디바이스(510)의 어플리케이션 계층(513)은 상기 서버(520)의 어플리케이션 계층(521)으로 데이터베이스 보안 분석 결과를 요청하는 데이터베이스 보안 분석 결과 요청 메시지를 송신한다(531단계).
상기 통신 디바이스(510)의 어플리케이션 계층(513)으로부터 데이터베이스 보안 분석 결과 요청 메시지를 수신한 서버(520)의 어플리케이션 계층(521)은 상기 서버(520)의 데이터 계층(525)으로 데이터베이스 보안 분석 결과 쿼리(query)를 전달한다(533단계). 상기 서버(520)의 어플리케이션 계층(521)으로부터 데이터베이스 보안 분석 결과 쿼리를 수신한 서버(520)의 데이터 계층(525)은 상기 데이터베이스 보안 분석 결과 쿼리에 상응하는 어플리케이션에 대한 데이터베이스 보안 분석 결과를 저장하고 있는지 검사한다.
상기 결정 결과 상기 데이터베이스 보안 분석 결과를 저장하고 있을 경우 상기 서버(520)의 데이터 계층(525)은 상기 서버(520)의 데이터 계층(525) 자신이 저장하고 있는 데이터베이스 보안 분석 결과를 포함하는 데이터베이스 보안 분석 결과 메시지를 상기 서버(520)의 어플리케이션 계층(521)으로 전달한다(535단계). 상기 서버(520)의 데이터 계층(525)으로부터 데이터베이스 보안 분석 결과 메시지를 수신한 서버(520)의 어플리케이션 계층(521)은 상기 통신 디바이스(510)의 어플리케이션 계층(513)으로 상기 데이터베이스 보안 분석 결과를 포함하는 데이터베이스 보안 분석 결과 응답 메시지를 송신한다(537단계).
상기 서버(520)의 어플리케이션 계층(521)으로부터 데이터베이스 보안 분석 결과 응답 메시지를 수신한 통신 디바이스(510)의 어플리케이션 계층(513)은 상기 통신 디바이스(510)의 비지니스 계층(511)으로 상기 데이터베이스 보안 분석 결과를 포함하는 데이터베이스 보안 분석 결과 배달 메시지를 전달한다(539단계). 상기 통신 디바이스(510)의 어플리케이션 계층(513)으로부터 상기 데이터베이스 보안 분석 결과 배달 메시지를 수신한 통신 디바이스(510)의 비지니스 계층(511)은 상기 데이터베이스 분석 결과를 상기 통신 디바이스(510)의 어플리케이션 계층(513)으로 알려준다(541단계).
도 5에서 설명한 바와 같이, 통신 디바이스는 어플리케이션을 처음 실행할 경우 상기 어플리케이션에 대해 별도의 데이터베이스 보안 분석 동작을 수행하지 않고 서버로부터 수신한 데이터베이스 보안 분석 결과를 사용할 수 있게 됨을 알 수 있다.
한편, 도 5가 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 결과가 서버에 저장되어 있는 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정을 도시하고 있더라도, 다양한 변형들이 도 5에 대해 이루어질 수 있음은 물론이다. 일 예로, 도 5에는 연속적인 단계들이 도시되어 있지만, 도 5에서 설명한 단계들은 오버랩될 수 있고, 병렬로 발생할 수 있고, 다른 순서로 발생할 수 있거나, 혹은 다수 번 발생할 수 있음은 물론이다.
도 5에서는 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 결과가 서버에 저장되어 있는 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정에 대해서 설명하였으며, 다음으로 도 6을 참조하여 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 결과가 서버에 저장되어 있지 않을 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정에 대해서 설명하기로 한다.
도 6은 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 결과가 서버에 저장되어 있지 않을 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정을 개략적으로 도신한 신호 흐름도이다.
도 6을 참조하면, 상기 통신 시스템은 통신 디바이스(610)와 서버(620)를 포함한다.
상기 통신 디바이스(610)는 데이터 계층(611)과, 비지니스 계층(613)와 어플리케이션 계층(615)를 포함한다. 여기서, 상기 비지니스 계층(613)은 어플리케이션 프레임워크이다.
또한, 상기 서버(620)는 어플리케이션 계층(621)과, 비지니스 계층(623)과, 데이터 계층(625)을 포함한다.
먼저, 상기 통신 디바이스(610)에 어플리케이션이 설치된 후 상기 어플리케이션이 처음 실행될 경우 상기 통신 디바이스(610)의 어플리케이션 계층(615)은 상기 서버(620)의 어플리케이션 계층(621)으로 데이터베이스 보안 분석 결과를 요청하는 데이터베이스 보안 분석 결과 요청 메시지를 송신한다(631단계).
상기 통신 디바이스(610)의 어플리케이션 계층(615)으로부터 데이터베이스 보안 분석 결과 요청 메시지를 수신한 서버(620)의 어플리케이션 계층(621)은 상기 서버(620)의 데이터 계층(625)으로 데이터베이스 보안 분석 결과 쿼리를 전달한다(633단계). 상기 서버(620)의 어플리케이션 계층(621)으로부터 데이터베이스 보안 분석 결과 쿼리를 수신한 서버(620)의 데이터 계층(625)은 상기 데이터베이스 보안 분석 결과 쿼리에 상응하는 어플리케이션에 대한 데이터베이스 보안 분석 결과를 저장하고 있는지 검사한다.
상기 검사 결과 상기 데이터베이스 보안 분석 결과를 저장하고 있지 않을 경우 상기 서버(620)의 데이터 계층(625)은 상기 서버(620)의 비지니스 계층(623)으로 데이터베이스 보안 분석 결과가 존재하지 않음을 나타내는 데이터베이스 보안 분석 결과 응답 메시지를 송신한다(635단계). 상기 서버(620)의 데이터 계층(625)으로부터 데이터베이스 보안 분석 결과 응답 메시지를 수신한 서버(620)의 비지니스 계층(623)은 상기 통신 디바이스(610)의 어플리케이션 계층(615)으로 데이터베이스 보안 분석 결과가 존재하지 않음을 나타내는 데이터베이스 보안 분석 결과 응답 메시지를 송신한다(637단계).
상기 서버(620)의 어플리케이션 계층(621)으로부터 데이터베이스 보안 분석 결과 응답 메시지를 수신한 통신 디바이스(610)의 어플리케이션 계층(615)은 상기 통신 디바이스(610)의 비지니스 계층(613)으로 상기 설치된 어플리케이션에 대한 권한을 확인할 것을 요청하는 어플리케이션 권한 확인 요청 메시지를 전달한다(639단계). 상기 통신 디바이스(610)의 어플리케이션 계층(615)으로부터 어플리케이션 권한 확인 요청 메시지를 수신한 통신 디바이스(610)의 비지니스 계층(613)은 상기 통신 디바이스(610)의 데이터 계층(611)으로 상기 설치된 어플리케이션에 대한 권한을 확인할 것을 요청하는 어플리케이션 권한 확인 요청 메시지를 전달한다(641단계).
상기 통신 디바이스(610)의 비지니스 계층(613)으로부터 어플리케이션 권한 확인 요청 메시지를 수신한 통신 디바이스(610)의 데이터 계층(611)은 상기 설치된 어플리케이션에 대한 데이터베이스를 생성하고, 억세스 정보를 검출한 후, 상기 억세스 정보를 상기 통신 디바이스(610)의 비지니스 계층(613)으로 전달한다(643단계). 그리고 나서, 상기 통신 디바이스(610)의 데이터 계층(611)은 상기 통신 디바이스(610)가 관리하고 있는 디바이스 내부 개인 정보 데이터베이스(personal information database within device: PIDBD)에 저장되어 있는 데이터를 상기 통신 디바이스(610)의 비지니스 계층(613)으로 전달한다(645단계). 여기서, 상기 디바이스 내부 개인 정보 데이터베이스는 상기 통신 디바이스(610)가 포함하는 저장 유닛에 저장되는, 개인 정보가 저장되는 데이터베이스를 나타낸다.
상기 통신 디바이스(610)의 데이터 계층(611)으로부터 디바이스 내부 개인 정보 데이터베이스에 포함되어 있는 데이터를 전달받은 통신 디바이스(610)의 비지니스 계층(613)은 상기 전달받은 디바이스 내부 개인 정보 데이터베이스에 포함되어 있는 데이터에 대한 데이터베이스 보안 분석 동작을 수행하고(647단계), 상기 데이터베이스 보안 분석 동작을 수행함에 따라 발생되는 데이터베이스 보안 분석 결과를 상기 통신 디바이스(610)의 어플리케이션 계층(615)으로 전달한다(649단계). 또한, 상기 통신 디바이스(610)의 비지니스 계층(613)은 상기 서버(620)의 어플리케이션 계층(621)으로 상기 데이터베이스 보안 분석 결과를 포함하는 데이터베이스 보안 분석 결과 보고 메시지를 송신한다(651단계).
상기 통신 디바이스(610)의 비지니스 계층(613)으로부터 데이터베이스 보안 분석 결과 보고 메시지를 수신한 서버(620)의 어플리케이션 계층(621)은 상기 데이터베이스 보안 분석 결과를 상기 서버(620)의 데이터 계층(625)에 업로드한다(653단계).
도 6에서 설명한 바와 같이, 통신 디바이스는 어플리케이션을 처음 실행할 경우 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과가 서버에 존재하지 않을 경우, 상기 통신 디바이스가 데이터베이스 보안 분석 동작을 수행하여 그 데이터베이스 보안 분석 결과를 서버로 업로드할 수도 있음을 알 수 있다.
한편, 도 6이 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 결과가 서버에 저장되어 있지 않은 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정을 도시하고 있더라도, 다양한 변형들이 도 6에 대해 이루어질 수 있음은 물론이다. 일 예로, 도 6에는 연속적인 단계들이 도시되어 있지만, 도 6에서 설명한 단계들은 오버랩될 수 있고, 병렬로 발생할 수 있고, 다른 순서로 발생할 수 있거나, 혹은 다수 번 발생할 수 있음은 물론이다.
도 6에서는 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 결과가 서버에 저장되어 있지 않은 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정에 대해서 설명하였으며, 다음으로 도 7을 참조하여 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 동작이 서버에서 수행될 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정에 대해서 설명하기로 한다.
도 7은 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 동작이 서버에서 수행될 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정을 개략적으로 도시한 도면이다.
도 7을 참조하면, 먼저 서버(720)는 어플리케이션 마켓에 등록되어 있는 모든 어플리케이션들에 대한 데이터베이스 보안 분석 동작을 수행하고, 상기 데이터베이스 보안 분석 동작 수행에 따른 데이터베이스 보안 분석 결과를 저장 및 관리한다.
이후, 통신 디바이스(710)가 특정 어플리케이션을 설치할 경우, 상기 통신 디바이스(710)는 상기 서버(720)로 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 송신해줄 것을 요청하는 데이터베이스 보안 분석 결과 요청 메시지를 송신한다(731단계). 그러면, 상기 서버(720)는 상기 통신 디바이스(710)로 상기 서버(720) 자신이 저장하고 있는 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 포함하는 데이터베이스 보안 분석 결과 응답 메시지를 송신한다(733단계).
도 7에서는 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 동작이 서버에서 수행될 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정에 대해서 설명하였으며, 다음으로 도 8을 참조하여 본 발명의 일 실시예에 따른 통신 시스템에서 통신 디바이스가 어플리케이션을 설치하기 전에 서버로부터 어플리케이션에 대한 데이터베이스 보안 분석 결과를 수신할 경우의 통신 디바이스의 동작 과정에 대해서 설명하기로 한다.
도 8은 본 발명의 일 실시예에 따른 통신 시스템에서 통신 디바이스가 어플리케이션을 설치하기 전에 서버로부터 어플리케이션에 대한 데이터베이스 보안 분석 결과를 수신할 경우의 통신 디바이스의 동작 과정을 개략적으로 도시한 도면이다.
도 8을 참조하면, 먼저 서버(도 8에 별도로 도시되어 있지 않음)는 어플리케이션 마켓에 등록되어 있는 모든 어플리케이션들에 대해 데이터베이스 보안 분석 동작을 수행하고, 상기 데이터베이스 보안 분석 동작이 완료되면 그 데이터베이스 보안 분석 결과를 저장한다.
이후, 통신 디바이스(800)에서 특정 어플리케이션을 설치해야 함이 검출되면, 상기 통신 디바이스(800)는 상기 서버로 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 요청하는 데이터베이스 보안 분석 결과 요청 메시지를 송신한다. 상기 통신 디바이스(800)로부터 데이터베이스 보안 분석 결과 요청 메시지를 수신한 서버는 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과가 저장되어 있는지 검사한다. 상기 검사 결과 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과가 저장되어 있을 경우, 상기 서버는 상기 통신 디바이스(800)로 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 송신한다.
그러면 상기 통신 디바이스(800)는 상기 서버로부터 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 수신하고, 상기 수신한 데이터베이스 보안 분석 결과를 출력한다. 여기서, 상기 통신 디바이스(800)는 도 8에 도시되어 있는 바와 같이 상기 통신 디바이스(800)가 포함하고 있는 디스플레이, 일 예로 터치 스크린(touch screen)에 상기 수신한 데이터베이스 보안 분석 결과, 일 예로 "해당 App은 사용자 개인 정보를 안전하게 보호하지 않습니다. 계속 설치하시겠습니까?"와 같은 상기 수신한 데이터베이스 보안 분석 결과를 출력한다.
이렇게, 상기 통신 디바이스(800)가 설치하고자 하는 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 출력함으로써, 사용자는 상기 특정 어플리케이션을 설치할지 여부를 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 참조하여 결정할 수 있게 된다.
한편, 상기 통신 디바이스(800)가 요청한, 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과가 상기 서버에 저장되어 있지 않을 경우, 상기 서버는 상기 통신 디바이스(800)로 상기 데이터베이스 보안 분석 결과가 저장되어 있지 않음을 나타내는 데이터베이스 보안 분석 결과 응답 메시지를 송신한다.
또한, 상기 서버는 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과가 저장되어 있지 않으므로, 상기 특정 어플리케이션의 어플리케이션 식별자(identifier: ID, 이하 "ID"라 칭하기로 한다)를 상기 서버가 관리하고 있는 데이터베이스 보안 분석 리스트에 등록하고, 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행한다.
한편, 상기 통신 디바이스(800)는 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과가 상기 서버에 저장되어 있지 않으므로, 일단 상기 특정 어플리케이션을 설치한다.
이후, 상기 서버가 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 동작을 완료하면, 상기 서버는 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 상기 통신 디바이스(800)로 송신한다. 상기 통신 디바이스(800)는 상기 서버로부터 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 수신하고, 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 출력하는 등과 같은 해당하는 동작을 수행한다.
도 8에서는 본 발명의 일 실시예에 따른 통신 시스템에서 통신 디바이스가 어플리케이션을 설치하기 전에 서버로부터 어플리케이션에 대한 데이터베이스 보안 분석 결과를 수신할 경우의 통신 디바이스의 동작 과정에 대해서 설명하였으며, 다음으로 도 9를 참조하여 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 동작이 서버 및 통신 디바이스에서 수행될 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정에 대해서 설명하기로 한다.
도 9는 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 동작이 서버 및 통신 디바이스에서 수행될 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정을 개략적으로 도시한 도면이다.
도 9를 참조하면, 먼저 서버(910)는 어플리케이션 마켓에 등록되어 있는 모든 어플리케이션들에 대해 데이터베이스 보안 분석 동작을 수행하고, 상기 데이터베이스 보안 분석 동작이 완료되면 그 데이터베이스 보안 분석 결과를 저장한다.
이후, 통신 디바이스(900)에서 특정 어플리케이션을 설치해야 함이 검출되면, 상기 통신 디바이스(900)는 서버(910)로 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 요청하는 데이터베이스 보안 분석 결과 요청 메시지를 송신한다(911단계).
상기 검사 결과 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과가 저장되어 있을 경우, 상기 서버(910)는 상기 통신 디바이스(900)로 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 송신한다.
그러면 상기 통신 디바이스(900)는 상기 서버(910)로부터 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 수신하고, 상기 수신한 데이터베이스 보안 분석 결과를 출력한다. 여기서, 상기 통신 디바이스(900)는 상기 통신 디바이스(900)가 포함하고 있는 디스플레이, 일 예로 터치 스크린에 상기 수신한 데이터베이스 보안 분석 결과, 일 예로 "해당 App은 사용자 개인 정보를 안전하게 보호하지 않습니다. 계속 설치하시겠습니까?"와 같은 상기 수신한 데이터베이스 보안 분석 결과를 출력한다.
이렇게, 상기 통신 디바이스(900)가 설치하고자 하는 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 출력함으로써, 사용자는 상기 특정 어플리케이션을 설치할지 여부를 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 참조하여 결정할 수 있게 된다.
한편, 상기 검사 결과 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과가 저장되어 있지 않을 경우, 상기 서버(910)는 상기 통신 디바이스(900)로 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과가 저장되어 있지 않음을 나타내는 데이터베이스 보안 분석 결과 응답 메시지를 송신한다(913단계).
상기 서버(910)로부터 데이터베이스 보안 분석 결과 응답 메시지를 수신한 통신 디바이스(900)는 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과가 상기 서버(910)에 저장되어 있지 않으므로, 일단 상기 특정 어플리케이션을 설치한다(915단계). 그리고 나서, 상기 통신 디바이스(900)는 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하고, 상기 데이터베이스 보안 분석 동작을 완료하면, 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 상기 서버(910)로 송신한다(917단계).
상기 서버(910)는 상기 통신 디바이스(900)로부터 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 수신하고, 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 저장한다.
도 9에서는 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 동작이 서버 및 통신 디바이스에서 수행될 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정에 대해서 설명하였으며, 다음으로 도 10을 참조하여 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 동작이 통신 디바이스에서 수행될 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정에 대해서 설명하기로 한다.
도 10은 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 동작이 통신 디바이스에서 수행될 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정을 개략적으로 도시한 도면이다.
도 10을 참조하면, 먼저 서버(1010)는 어플리케이션들에 대한 데이터베이스 보안 분석 동작을 수행하지 않고, 따라서 상기 서버(1010)는 통신 디바이스들로부터 수신되는, 어플리케이션들에 대한 데이터베이스 보안 분석 결과들만을 저장하고 있다.
이후, 통신 디바이스(1000)에서 특정 어플리케이션을 설치해야 함이 검출되면, 상기 통신 디바이스(1000)는 서버(1010)로 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 요청하는 데이터베이스 보안 분석 결과 요청 메시지를 송신한다(1011단계).
상기 검사 결과 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과가 저장되어 있을 경우, 상기 서버(1010)는 상기 통신 디바이스(1000)로 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 송신한다.
그러면 상기 통신 디바이스(1000)는 상기 서버(1010)로부터 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 수신하고, 상기 수신한 데이터베이스 보안 분석 결과를 출력한다. 여기서, 상기 통신 디바이스(1000)는 상기 통신 디바이스(1000)가 포함하고 있는 디스플레이, 일 예로 터치 스크린에 상기 수신한 데이터베이스 보안 분석 결과, 일 예로 "해당 App은 사용자 개인 정보를 안전하게 보호하지 않습니다. 계속 설치하시겠습니까?"와 같은 상기 수신한 데이터베이스 보안 분석 결과를 출력한다.
이렇게, 상기 통신 디바이스(1000)가 설치하고자 하는 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 출력함으로써, 사용자는 상기 특정 어플리케이션을 설치할지 여부를 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 참조하여 결정할 수 있게 된다.
한편, 상기 검사 결과 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과가 저장되어 있지 않을 경우, 상기 서버(1010)는 상기 통신 디바이스(1000)로 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과가 저장되어 있지 않음을 나타내는 데이터베이스 보안 분석 결과 응답 메시지를 송신한다(1013단계).
상기 서버(1010)로부터 데이터베이스 보안 분석 결과 응답 메시지를 수신한 통신 디바이스(1000)는 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과가 상기 서버(1010)에 저장되어 있지 않으므로, 일단 상기 특정 어플리케이션을 설치한다(1015단계). 그리고 나서, 상기 통신 디바이스(1000)는 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하고, 상기 데이터베이스 보안 분석 동작을 완료하면, 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 상기 서버(1010)로 송신한다(1017단계).
상기 서버(1010)는 상기 통신 디바이스(1000)로부터 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 수신하고, 상기 특정 어플리케이션에 대한 데이터베이스 보안 분석 결과를 저장한다.
도 10에서는 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 분석 동작이 통신 디바이스에서 수행될 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정에 대해서 설명하였으며, 다음으로 도 11을 참조하여 본 발명의 일 실시예에 따른 통신 시스템에서 통신 디바이스가 어플리케이션을 설치한 후 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하는 과정에 대해서 설명하기로 한다.
도 11은 본 발명의 일 실시예에 따른 통신 시스템에서 통신 디바이스가 어플리케이션을 설치한 후 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하는 과정을 개략적으로 도시한 도면이다.
도 11을 참조하면, 먼저 1111단계에서 통신 디바이스는 어플리케이션이 설치된 후 상기 어플리케이션이 최초로 실행됨을 검출한 후 1113단계로 진행한다. 상기 1113단계에서 상기 통신 디바이스는 상기 어플리케이션에서 요청되는 권한들 중 개인 정보 억세스에 관련된 권한인 개인 정보 억세스 권한이 포함되어 있는지 검사한다. 상기 검사 결과 상기 어플리케이션에서 요청되는 권한들 중 개인 정보 억세스 권한이 포함되어 있지 않을 경우 상기 통신 디바이스는 1121단계로 진행한다.
한편, 상기 1113단계에서 검사 결과 상기 어플리케이션에서 요청되는 권한들 중 개인 정보 억세스 권한이 포함되어 있을 경우 상기 통신 디바이스는 1115단계로 진행한다. 상기 1115단계에서 상기 통신 디바이스는 상기 어플리케이션에 대한 데이터베이스가 생성됨을 검출하고 1117단계로 진행한다. 여기서, 상기 어플리케이션에 대한 데이터베이스는 상기 통신 디바이스에 상기 어플리케이션이 설치되거나, 혹은 상기 어플리케이션이 설치된 후 최초로 실행되거나, 혹은 상기 어플리케이션에서 데이터베이스 리드/라이트(write) 동작이 발생될 경우 생성될 수 있다. 또한, 상기 어플리케이션이 상기 통신 디바이스의 디바이스 내부 데이터베이스를 리드한 후에도 상기 어플리케이션에 대한 데이터베이스가 생성되지 않을 경우, 상기 통신 디바이스는 상기 어플리케이션이 상기 어플리케이션을 위한 데이터베이스를 별도로 생성하지 않는다고 검출할 수 있다.
여기서, 상기 통신 디바이스는 상기 어플리케이션이 설치된 파일 경로에 대해서 먼저 스캐닝 동작을 수행하고, 상기 스캐닝 동작 결과 상기 어플리케이션에 대한 데이터베이스가 생성되지 않았을 경우, 상기 통신 디바이스에 대한 전체 파일 시스템에 대해 상기 어플리케이션에 대한 데이터베이스가 생성되는지 검사할 수 있다.
상기 1117단계에서 상기 통신 디바이스는 상기 어플리케이션이 디바이스 내부 개인 정보 데이터베이스를 리드(read)함을 검출하고 1119단계로 진행한다. 상기 1119단계에서 상기 통신 디바이스는 상기 어플리케이션에 대한 데이터베이스에 대한 데이터베이스 보안 분석 동작을 수행하고 1121단계로 진행한다. 여기서, 상기 통신 디바이스가 상기 어플리케이션에 대한 데이터베이스에 대한 데이터베이스 보안 분석 동작을 수행할 동안에는 외부 위협 요소들로부터의 개인 정보 유출을 방지하기 위해 상기 어플리케이션 이외의 백그라운드 프로세스(background process)의 실행을 중단할 수 있다.
상기 1121단계에서 상기 통신 디바이스는 상기 데이터베이스 보안 분석 동작에 따른 데이터베이스 보안 분석 결과를 출력하고, 서버로 송신한다.
한편, 도 11이 본 발명의 일 실시예에 따른 통신 시스템에서 통신 디바이스가 어플리케이션을 설치한 후 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하는 과정을 도시하고 있더라도, 다양한 변형들이 도 11에 대해 이루어질 수 있음은 물론이다. 일 예로, 도 11에는 연속적인 단계들이 도시되어 있지만, 도 11에서 설명한 단계들은 오버랩될 수 있고, 병렬로 발생할 수 있고, 다른 순서로 발생할 수 있거나, 혹은 다수 번 발생할 수 있음은 물론이다.
도 11에서는 본 발명의 일 실시예에 따른 통신 시스템에서 통신 디바이스가 어플리케이션을 설치한 후 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하는 과정에 대해서 설명하였으며, 다음으로 도 12를 참조하여 도 11의 데이터베이스 보안 분석 단계(1119)에서 수행되는 과정에 대해서 설명하기로 한다.
도 12는 도 11의 데이터베이스 보안 분석 단계(1119)에서 수행되는 과정을 개략적으로 도시한 도면이다.
도 12를 참조하면, 먼저 1211단계에서 통신 디바이스는 해당 어플리케이션에 대한 어플리케이션 내부 데이터베이스에 데이터가 라이트됨을 검출하고 1213단계로 진행한다. 상기 1213단계에서 상기 통신 디바이스는 상기 어플리케이션 내부 데이터베이스에 대한 억세스가 가능한지 검사한다. 상기 검사 결과 상기 어플리케이션 내부 데이터베이스에 대한 억세스가 가능하지 않을 경우 상기 통신 디바이스는 상기 어플리케이션 내부 데이터베이스에 대한 데이터베이스 보안 분석 동작을 종료한다. 여기서, 상기 어플리케이션 내부 데이터베이스에 대한 억세스 가능하지 않다는 것은 상기 어플리케이션 내부 데이터베이스에 대해 암호화가 적용되었거나 혹은 허용된 디바이스만 상기 어플리케이션 내부 데이터베이스에 억세스 가능하다는 것을 의미할 수 있다. 따라서, 상기 어플리케이션 내부 데이터베이스가 3rd party에게 유추되더라도 상기 3rd party가 상기 어플리케이션 내부 데이터베이스에 대한 패스워드(password)를 모르거나 혹은 상기 어플리케이션 내부 데이터베이스에 대한 권한이 없다면 상기 어플리케이션 내부 데이터베이스에 억세스 할 수 없기 때문에, 상기 어플리케이션 내부 데이터베이스에 대한 보안 레벨은 안전한 레벨이라고 결정할 수 있다. 따라서, 상기 통신 디바이스는 상기 어플리케이션 내부 데이터베이스에 대한 데이터베이스 보안 분석 동작을 종료하는 것이다.
한편, 상기 1213단계에서 검사 결과 상기 어플리케이션 내부 데이터베이스에 대한 억세스가 가능할 경우, 상기 통신 디바이스는 1215단계로 진행한다. 상기 1215단계에서 상기 통신 디바이스는 상기 어플리케이션 내부 데이터베이스 내의 데이터를 데이터베이스 보안 분석을 위한 포맷으로 변환한 후 1217단계로 진행한다. 상기 1217단계에서 상기 디바이스는 상기 변환된 데이터 중 Base64 인코딩(encoding) 타입으로 저장되어 있는 문자가 존재하는지 검사한다. 상기 검사 결과 상기 Base64 인코딩 타입으로 저장되어 있는 문자가 존재할 경우 상기 통신 디바이스는 1219단계로 진행한다. 상기 1219단계에서 상기 통신 디바이스는 상기 Base64 인코딩 타입으로 저장되어 있는 문자에 대해 Base64 디코딩 동작을 수행하여 오리지널(original) 데이터를 복원한 후 1221단계로 진행한다. 한편, 상기 1217단계에서 검사 결과 상기 Base64 인코딩 타입으로 저장되어 있는 문자가 존재하지 않을 경우 상기 통신 디바이스는 상기 1221단계로 진행한다.
상기 1221단계에서 상기 통신 디바이스는 상기 변환된 데이터와 상기 디바이스 내부 데이터베이스에 저장되어 있는 데이터를 비교 분석한 후 1223단계로 진행한다. 여기서, 상기 통신 디바이스는 상기 어플리케이션 내부 데이터베이스 내에 평문 상태의 개인 정보가 얼마나 저장되었는지 검출하기 위해 상기 변환된 데이터와 상기 디바이스 내부 데이터베이스에 저장되어 있는 데이터를 비교 분석하며, 일 예로 패턴 매칭(pattern matching) 등과 같은 데이터 비교 방식을 사용하여 상기 변환된 데이터와 상기 디바이스 내부 데이터베이스에 저장되어 있는 데이터를 비교 분석한다.
또한, 문자 스트림(stream) 비교 만으로는 일치하는 데이터의 속성을 정확히 검출하기 어려운 상황에서는 스코어링(scoring) 방식을 기반으로 데이터베이스 보안 분석 동작이 수행될 수 있다. 일 예로, 문자 스트림 비교 동작만 수행될 경우 어플리케이션 내부 데이터베이스에 포함되어 있는 전화번호 컬럼(column)은 암호화될 수 있지만, 암호화가 적용되지 않은 문자 메시지 컬럼의 메시지 내용 중에 전화번호가 평문 상태로 저장되어 있는 경우 전화번호 컬럼이 안전하지 않다고 오판될 수 있다.
상기 1223단계에서 상기 통신 디바이스는 상기 비교 분석된 데이터에 대해 데이터베이스 스키마 분석 동작을 수행한다. 상기 데이터베이스 스키마 분석 동작에 대해서는 하기에서 도 13을 참조하여 구체적으로 설명할 것이므로 여기서는 그 상세한 설명을 생략하기로 한다.
한편, 도 12가 도 11의 데이터베이스 보안 분석 단계(1119)에서 수행되는 과정을 도시하고 있더라도, 다양한 변형들이 도 12에 대해 이루어질 수 있음은 물론이다. 일 예로, 도 12에는 연속적인 단계들이 도시되어 있지만, 도 12에서 설명한 단계들은 오버랩될 수 있고, 병렬로 발생할 수 있고, 다른 순서로 발생할 수 있거나, 혹은 다수 번 발생할 수 있음은 물론이다.
도 12에서는 도 11의 데이터베이스 보안 분석 단계(1119)에서 수행되는 과정에 대해서 설명하였으며, 다음으로 도 13을 참조하여 본 발명의 일 실시예에 따른 통신 시스템에서 데이터베이스 스키마 분석 과정에 대해서 설명하기로 한다.
도 13은 본 발명의 일 실시예에 따른 통신 시스템에서 데이터베이스 스키마 분석 과정을 개략적으로 도시한 도면이다.
도 13을 참조하면, 도 12에서 설명한 바와 같이 어플리케이션 내부 데이터베이스에 저장되어 있는 데이터와 상기 디바이스 내부 데이터베이스에 저장되어 있는 데이터를 비교 분석한 후 데이터베이스 스키마 분석 동작이 수행될 수 있다.
상기 데이터베이스 스키마는 테이블 네임(table name)과, 컬럼 네임(column name)과, 컬럼 타입(column type) 등을 포함하며, 따라서 상기 통신 디바이스는 상기 데이터베이스 스키마를 사용하여 개인 정보를 관리하는 컬럼의 유무 혹은 테이블 구성을 정확하게 검출할 수 있다.
본 발명의 일 실시예에서, 상기 통신 디바이스는 상기 데이터베이스 스키마 분석을 위해 미리 구성한, 개인 정보 문자 스트림 집합을 이용하며, 상기 개인 정보 문자 스트림 집합은 '네임(name)', '프로파일 이미지(profile image)', '전화(phone)', '번호(number)' 등과 같이 개인 정보와 관련될 수 있는 다양한 텍스트들을 포함할 수 있다.
따라서, 상기 어플리케이션 내부 데이터베이스에 저장되어 있는 데이터에서 개인 정보 문자 스트림 집합에 포함된 텍스트가 검출되면, 상기 통신 디바이스는 해당 텍스트가 포함되어 있는 문장을 추출하고, 상기 추출된 문장에서 상기 어플리케이션 내부 데이터베이스의 테이블 구조나 컬럼 정보 등을 분석할 수 있다.
따라서, 이러한 데이터베이스 스키마 분석 결과를 사용하여 상기 통신 디바이스는 해당 어플리케이션에서는 어떤 타입의 개인 정보가 보안에 있어 위험할 수 있는지에 대한 구체적인 정보를 수집할 수 있다.
도 13에서는 본 발명의 일 실시예에 따른 통신 시스템에서 데이터베이스 스키마 분석 과정에 대해서 설명하였으며, 다음으로 도 14를 참조하여 본 발명의 일 실시예에 따른 통신 시스템에서 각 3rd party 어플리케이션이 관리하는 데이터베이스에 대한 보안 정책이 통신 디바이스들에 대해 다르게 적용될 경우의 통신 디바이스들의 동작 과정에 대해서 설명하기로 한다.
도 14는 본 발명의 일 실시예에 따른 통신 시스템에서 각 3rd party 어플리케이션이 관리하는 데이터베이스에 대한 보안 정책이 모든 통신 디바이스들에 대해 다르게 적용될 경우의 통신 디바이스들의 동작 과정을 개략적으로 도시한 도면이다.
도 14를 참조하면, 먼저 도 14에 도시되어 있는 통신 디바이스들의 동작 과정은 다수 개의 통신 디바이스들, 일 예로 n개의 통신 디바이스들, 일 예로 통신 디바이스#1(1410)과, 통신 디바이스#2(1420)와, 통신 디바이스#n(1430) 각각에 다수 개의 3rd party 어플리케이션들, 일 예로 2개의 3rd party 어플리케이션들, 일 예로 3rd party 어플리케이션 #1(1440)과 3rd party 어플리케이션 #2(1450)이 설치되고, 상기 3rd party 어플리케이션 #1(1440)과 3rd party 어플리케이션 #2(1450) 각각이 설치된 통신 디바이스들에 대해서 다른 데이터베이스 보안 정책이 적용되는 경우의 통신 디바이스들의 동작 과정임에 유의하여야만 할 것이다.
도 14에서는 동일한 3rd party 어플리케이션에 대해서라도 다양한 파라미터들을 고려하여 데이터베이스 보안 정책이 다르게 적용될 수 있으며, 이에 대해서 구체적으로 설명하면 다음과 같다.
첫 번째로, 통신 디바이스에 설정된 보안 레벨을 기반으로 3rd party 어플리케이션에 대한 데이터베이스 보안 정책이 적용되는 경우에 대해서 설명하면 다음과 같다.
먼저, 상기 통신 디바이스#1(1410)과, 통신 디바이스#2(1420)와, 통신 디바이스#n(1430) 각각에 3rd party 어플리케이션 #1(1440)이 설치될 경우, 상기 통신 디바이스#1(1410)과, 통신 디바이스#2(1420)와, 통신 디바이스#n(1430) 각각에서 상기 3rd party 어플리케이션 #1(1440)의 어플리케이션 내부 데이터베이스에 대한 데이터베이스 보안 정책은 다르게 설정될 수 있다. 일 예로, 상기 통신 디바이스#1(1410)는 보안 레벨을 미리 설정되어 있는 보안 등급 #1이상의 보안 레벨인 보안 레벨 #1로 설정하고, 상기 통신 디바이스#2(1420)는 보안 레벨을 상기 보안 등급 #1미만이고 미리 설정되어 있는 보안 등급 #2 이상의 보안 레벨인 보안 레벨 #2로 설정하고, 상기 통신 디바이스#n(1430)은 보안 레벨을 상기 보안 등급 #2 미만의 보안 레벨인 보안 레벨 #3으로 설정한다고 가정하기로 한다. 여기서, 상기 보안 레벨 #1은 어플리케이션 내부 데이터베이스에 포함되어 있는 모든 개인 정보에 대해 암호화가 적용되는 보안 레벨을 나타내며, 상기 보안 레벨 #2는 필요에 따라 어플리케이션 내부 데이터베이스에 포함되어 있는 개인 정보에 대한 암호화 여부가 적용되는 보안 레벨을 나타내며, 상기 보안 레벨 #3은 어플리케이션 내부 데이터베이스에 포함되어 있는 모든 개인 정보에 대해 암호화가 적용되지 않는 보안 레벨을 나타낸다.
또한, 상기 통신 디바이스#2(1420)는 특정 위치들을 안전한 위치들로 미리 설정하고, 상기 안전한 위치들에서는 어플리케이션 내부 데이터베이스들에 대해서는 암호화를 적용하지 않는다고 가정하기로 한다. 도 14에서는 해당 통신 디바이스에 설정되는 보안 레벨을 기반으로 하는 보안보다 위치를 기반으로 하는 보안이 더 우선 순위가 높다고 가정하기로 한다.
따라서, 동일한 어플리케이션, 즉 상기 3rd party 어플리케이션 #1(1440)이 상기 통신 디바이스#1(1410)과, 통신 디바이스#2(1420)와, 통신 디바이스#n(1430) 각각에 동일하게 설치된다고 할지라도, 상기 통신 디바이스#1(1410)과, 통신 디바이스#2(1420)와, 통신 디바이스#n(1430) 각각에서 상기 3rd party 어플리케이션 #1(1440)에 대한 데이터베이스 보안 정책은 달라질 수 있다. 일 예로, 상기 통신 디바이스#1(1410)은 보안 레벨이 보안 레벨 #1이기 때문에 상기 3rd party 어플리케이션 #1(1440)의 어플리케이션 내부 데이터베이스에 저장되어 있는 모든 개인 정보에 대해 암호화를 적용하고, 상기 통신 디바이스#2(1420)는 보안 레벨이 보안 레벨 #2이지만 안전한 위치에 존재하기 때문에 상기 3rd party 어플리케이션 #1(1440)의 어플리케이션 내부 데이터베이스에 저장되어 있는 모든 개인 정보에 대해 암호화를 적용하지 않고, 상기 통신 디바이스#2(1420)는 보안 레벨이 보안 레벨 #3이므로 상기 3rd party 어플리케이션 #1(1440)의 어플리케이션 내부 데이터베이스에 저장되어 있는 모든 개인 정보에 대해 암호화를 적용하지 않는다.
도 14에서 설명한 바와 같이 동일한 어플리케이션이라고 할지라도 다양한 파라미터들을 기반으로 해당 어플리케이션의 어플리케이션 내부 데이터베이스에 대한 데이터베이스 보안 정책이 다르게 적용될 수 있음을 알 수 있다.
도 14에서는 본 발명의 일 실시예에 따른 통신 시스템에서 각 3rd party 어플리케이션이 관리하는 데이터베이스에 대한 보안 정책이 모든 통신 디바이스들에 대해 다르게 적용될 경우의 통신 디바이스들의 동작 과정에 대해서 설명하였으며, 다음으로 도 15를 참조하여 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 정책이 변경되는 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정에 대해서 설명하기로 한다.
도 15는 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 정책이 변경되는 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정을 개략적으로 도시한 도면이다.
도 15를 참조하면, 상기 통신 시스템은 통신 디바이스(1510)와 서버(1520)를 포함한다.
상기 통신 디바이스(1510)는 데이터 계층(1511)과, 비지니스 계층(1513)와 어플리케이션 계층(1515)를 포함한다. 여기서, 상기 비지니스 계층(1513)은 어플리케이션 프레임워크이다.
또한, 상기 서버(1520)는 어플리케이션 계층(1521)과, 비지니스 계층(1523)과, 데이터 계층(1525)을 포함한다.
먼저, 상기 통신 디바이스(1510)의 어플리케이션 계층(1515)은 상기 통신 디바이스(1510)에 설정되어 있는 보안 레벨을 검출해야 함을 검출하면, 상기 통신 디바이스(1510)의 비지니스 계층(1513)과 통신하여 상기 통신 디바이스(1510)에 설정되어 있는 보안 레벨을 검출한다(1531단계).
이렇게, 상기 통신 디바이스(1510)에 설정되어 있는 보안 레벨을 확인한 후, 상기 통신 디바이스(1510)의 어플리케이션 계층(1515)은 상기 통신 디바이스(1510)의 비지니스 계층(1513)으로 설치된 어플리케이션에 대한 권한을 확인할 것을 요청하는 어플리케이션 권한 확인 요청 메시지를 전달한다(1533단계). 상기 통신 디바이스(1510)의 어플리케이션 계층(1515)으로부터 어플리케이션 권한 확인 요청 메시지를 수신한 통신 디바이스(1510)의 비지니스 계층(1513)은 상기 통신 디바이스(1510)의 데이터 계층(1511)으로 상기 설치된 어플리케이션에 대한 권한을 확인할 것을 요청하는 어플리케이션 권한 확인 요청 메시지를 전달한다(1535단계).
상기 통신 디바이스(1510)의 비지니스 계층(1513)으로부터 어플리케이션 권한 확인 요청 메시지를 수신한 통신 디바이스(1510)의 데이터 계층(1511)은 상기 어플리케이션에 대한 권한을 검출하고, 상기 검출된 권한에 대한 정보를 포함하는 어플리케이션 권한 응답 메시지를 상기 통신 디바이스(1510)의 어플리케이션 계층(1515)으로 전달한다(1537단계). 상기 통신 디바이스(1510)의 데이터 계층(1511)으로부터 어플리케이션 권한 응답 메시지를 수신한 통신 디바이스(1510)의 어플리케이션 계층(1515)은 상기 검출한 보안 레벨에 상응하게 상기 서버(1520)의 어플리케이션 계층(1521)으로 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 요청하는 데이터베이스 보안 분석 결과 요청 메시지를 송신한다(1539단계).
상기 통신 디바이스(1510)의 어플리케이션 계층(1515)으로부터 데이터베이스 보안 분석 결과 요청 메시지를 수신한 서버(1520)의 어플리케이션 계층(1521)은 상기 서버(1520)의 데이터 계층(1525)으로 데이터베이스 보안 분석 결과 쿼리를 전달한다(1541단계). 상기 서버(1520)의 어플리케이션 계층(1521)으로부터 데이터베이스 보안 분석 결과 쿼리를 수신한 서버(1520)의 데이터 계층(1525)은 상기 데이터베이스 보안 분석 결과 쿼리에 상응하는 어플리케이션에 대한 데이터베이스 보안 분석 결과를 저장하고 있는지 검사한다.
상기 검사 결과 상기 데이터베이스 보안 분석 결과를 저장하고 있지 않을 경우 상기 서버(1520)의 데이터 계층(1525)은 상기 서버(1520)의 비지니스 계층(1523)으로 데이터베이스 보안 분석 결과가 존재하지 않음을 나타내는 데이터베이스 보안 분석 결과 응답 메시지를 송신한다(1543단계). 상기 서버(1520)의 데이터 계층(1525)으로부터 데이터베이스 보안 분석 결과 응답 메시지를 수신한 서버(1520)의 비지니스 계층(1523)은 상기 통신 디바이스(1510)의 어플리케이션 계층(1515)으로 데이터베이스 보안 분석 결과가 존재하지 않음을 나타내는 데이터베이스 보안 분석 결과 응답 메시지를 송신한다(1545단계).
상기 서버(1520)의 어플리케이션 계층(1521)으로부터 데이터베이스 보안 분석 결과 응답 메시지를 수신한 통신 디바이스(1510)의 어플리케이션 계층(1515)은 상기 통신 디바이스(1510)의 비지니스 계층(1513)으로 상기 설치된 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행할 것을 요청하는 데이터베이스 보안 분석 요청 메시지를 전달한다(1547단계).
한편, 상기 통신 디바이스(1510)의 데이터 계층(1511)은 상기 설치된 어플리케이션에 대한 데이터베이스를 생성하고, 억세스 정보를 검출한 후, 상기 억세스 정보를 상기 통신 디바이스(1510)의 비지니스 계층(1513)으로 전달한다(1549단계). 그리고 나서, 상기 통신 디바이스(1510)의 데이터 계층(1511)은 상기 통신 디바이스(1510)가 관리하고 있는 디바이스 내부 개인 정보 데이터베이스에 저장되어 있는 데이터를 상기 통신 디바이스(1510)의 비지니스 계층(1513)으로 전달한다(1551단계). 여기서, 상기 디바이스 내부 개인 정보 데이터베이스는 상기 통신 디바이스(1510)가 포함하는 저장 유닛에 저장되는, 개인 정보가 저장되는 데이터베이스를 나타낸다.
상기 통신 디바이스(1510)의 데이터 계층(1511)으로부터 디바이스 내부 개인 정보 데이터베이스에 포함되어 있는 데이터를 전달받은 통신 디바이스(1510)의 비지니스 계층(1513)은 상기 전달받은 디바이스 내부 개인 정보 데이터베이스에 포함되어 있는 데이터에 대한 데이터베이스 보안 분석 동작을 수행하고(1533단계), 상기 데이터베이스 보안 분석 동작을 수행함에 따라 발생되는 데이터베이스 보안 분석 결과를 상기 통신 디바이스(1510)의 어플리케이션 계층(1515)으로 전달한다(1555단계). 또한, 상기 통신 디바이스(1510)의 비지니스 계층(1513)은 상기 서버(1520)의 어플리케이션 계층(1521)으로 상기 데이터베이스 보안 분석 결과를 포함하는 데이터베이스 보안 분석 결과 보고 메시지를 송신한다(1557단계).
상기 통신 디바이스(1510)의 비지니스 계층(1513)으로부터 데이터베이스 보안 분석 결과 보고 메시지를 수신한 서버(1520)의 어플리케이션 계층(1521)은 상기 데이터베이스 보안 분석 결과를 상기 서버(1520)의 데이터 계층(1525)에 업로드한다(1559단계).
한편, 도 15가 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 정책이 변경되는 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정을 도시하고 있더라도, 다양한 변형들이 도 15에 대해 이루어질 수 있음은 물론이다. 일 예로, 도 15에는 연속적인 단계들이 도시되어 있지만, 도 15에서 설명한 단계들은 오버랩될 수 있고, 병렬로 발생할 수 있고, 다른 순서로 발생할 수 있거나, 혹은 다수 번 발생할 수 있음은 물론이다.
도 15에서는 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 정책이 변경되는 경우의 통신 디바이스와 서버간의 메시지 송/수신 과정에 대해서 설명하였으며, 다음으로 도 16을 참조하여 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 정책이 변경되는 경우 통신 디바이스가 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하는 과정의 일 예에 대해서 설명하기로 한다.
도 16은 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 정책이 변경되는 경우 통신 디바이스가 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하는 과정의 일 예를 개략적으로 도시한 도면이다.
도 16을 설명하기에 앞서, 도 16에 도시되어 있는 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하는 과정은 통신 디바이스별로 보안 레벨이 다르게 설정될 수 있는 경우의 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하는 과정임에 유의하여야만 할 것이다.
도 16을 참조하면, 먼저 1611단계에서 통신 디바이스는 어플리케이션이 설치된 후 상기 어플리케이션이 최초로 실행됨을 검출한 후 1613단계로 진행한다. 상기 1613단계에서 상기 통신 디바이스는 상기 통신 디바이스에 미리 설정되어 있는 보안 레벨이 어플리케이션 내부 데이터베이스에 저장되어 있는 모든 개인 정보에 대해 암호화가 적용되는 보안 레벨 #1인지 검사한다. 상기 검사 결과 상기 통신 디바이스에 미리 설정되어 있는 보안 레벨이 상기 보안 레벨 #1일 경우 상기 통신 디바이스는 1623단계로 진행한다. 여기서, 상기 보안 레벨 #1은 어플리케이션 내부 데이터베이스에 포함되어 있는 모든 개인 정보에 대해 암호화가 적용되는 보안 레벨이므로, 상기 통신 디바이스는 상기 어플리케이션 내부 데이터베이스에 대한 데이터베이스 보안 분석 동작을 수행할 필요가 없다고 결정한다. 따라서, 상기 통신 디바이스는 상기 통신 디바이스에 미리 설정되어 있는 보안 레벨이 상기 보안 레벨 #1일 경우 더 이상의 데이터베이스 보안 분석 동작에 관련된 동작을 수행하지 않고 상기 1623단계로 진행하는 것이다.
한편, 상기 1613단계에서 검사 결과 상기 통신 디바이스에 미리 설정되어 있는 보안 레벨이 상기 보안 레벨 #1이 아닐 경우, 상기 통신 디바이스는 1615단계로 진행한다. 상기 1615단계에서 상기 통신 디바이스는 상기 어플리케이션에서 요청되는 권한들 중 개인 정보 억세스에 관련된 권한인 개인 정보 억세스 권한이 포함되어 있는지 검사한다. 상기 검사 결과 상기 어플리케이션에서 요청되는 권한들 중 개인 정보 억세스 권한이 포함되어 있지 않을 경우 상기 통신 디바이스는 1623단계로 진행한다.
한편, 상기 1615단계에서 검사 결과 상기 어플리케이션에서 요청되는 권한들 중 개인 정보 억세스 권한이 포함되어 있을 경우 상기 통신 디바이스는 1617단계로 진행한다. 상기 1617단계에서 상기 통신 디바이스는 상기 검출한, 상기 통신 디바이스에 설정되어 있는 보안 레벨에 대한 데이터베이스 보안 분석 결과가 서버에 저장되어 있는지 검사한다. 상기 검사 결과 상기 보안 레벨에 대한 데이터베이스 보안 분석 결과가 서버에 저장되어 있을 경우 상기 통신 디바이스는 1623단계로 진행한다.
한편, 상기 1617단계에서 검사 결과 상기 보안 레벨에 대한 데이터베이스 보안 분석 결과가 서버에 저장되어 있지 않을 경우 상기 통신 디바이스는 1619단계로 진행한다. 상기 1619단계에서 상기 통신 디바이스는 상기 어플리케이션 내부 데이터페이스에 대한 데이터베이스 보안 분석 동작을 수행하고 1621단계로 진행한다. 여기서, 상기 통신 디바이스가 상기 어플리케이션에 대한 데이터베이스에 대한 데이터베이스 보안 분석 동작을 수행할 동안에는 외부 위협 요소들로부터의 개인 정보 유출을 방지하기 위해 상기 어플리케이션 이외의 백그라운드 프로세스의 실행을 중단할 수 있다.
상기 1621단계에서 상기 통신 디바이스는 상기 데이터베이스 보안 분석 동작에 따른 데이터베이스 보안 분석 결과를 상기 서버로 송신하고 1623단계로 진행한다. 상기 1623단계에서 상기 통신 디바이스는 상기 데이터베이스 보안 분석 동작에 따른 데이터베이스 보안 분석 결과를 출력한다.
도 16에서 설명한 바와 같이 본 발명의 일 실시예에서 통신 디바이스는 보안 레벨이 임계 보안 레벨, 일 예로 보안 레벨 #1 미만으로 설정되어 있을 경우 서버로부터 해당 어플리케이션에 대한 데이터베이스 보안 분석 결과를 수신하거나 혹은 상기 통신 디바이스 자신이 상기 해당 어플리케이션에 대해 데이터베이스 보안 분석 동작을 수행하여 상기 해당 어플리케이션에 대한 데이터베이스 보안 분석 결과를 획득한다.
한편, 도 16이 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 정책이 변경되는 경우 통신 디바이스가 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하는 과정의 일 예를 도시하고 있더라도, 다양한 변형들이 도 16에 대해 이루어질 수 있음은 물론이다. 일 예로, 도 16에는 연속적인 단계들이 도시되어 있지만, 도 16에서 설명한 단계들은 오버랩될 수 있고, 병렬로 발생할 수 있고, 다른 순서로 발생할 수 있거나, 혹은 다수 번 발생할 수 있음은 물론이다.
도 16에서는 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 정책이 변경되는 경우 통신 디바이스가 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하는 과정의 일 예에 대해서 설명하였으며, 다음으로 도 17을 참조하여 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 정책이 변경되는 경우 통신 디바이스가 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하는 과정의 다른 예에 대해서 설명하기로 한다.
도 17은 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 정책이 변경되는 경우 통신 디바이스가 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하는 과정의 다른 예를 개략적으로 도시한 도면이다.
도 17을 설명하기에 앞서, 도 17에 도시되어 있는 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하는 과정은 보안 환경 설정에 따라 보안 레벨이 다르게 설정될 수 있는 경우의 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하는 과정임에 유의하여야만 할 것이다.
도 17을 참조하면, 먼저 1711단계에서 통신 디바이스는 어플리케이션이 실행됨을 검출한 후 1713단계로 진행한다. 상기 1713단계에서 상기 통신 디바이스는 상기 통신 디바이스에 미리 설정되어 있는 보안 환경 설정을 검출한 후 1715단계로 진행한다. 상기 1715단계에서 상기 통신 디바이스는 상기 통신 디바이스 자신이 현재 존재하고 있는 위치 및 현재 시간 등과 같은 현재 환경을 검출하고, 상기 검출한 현재 환경에 상응하는 보안 레벨을 검출한 후 1717단계로 진행한다.
상기 1717단계에서 상기 통신 디바이스는 상기 어플리케이션에서 요청되는 권한들 중 개인 정보 억세스에 관련된 권한인 개인 정보 억세스 권한이 포함되어 있는지 검사한다. 상기 검사 결과 상기 어플리케이션에서 요청되는 권한들 중 개인 정보 억세스 권한이 포함되어 있지 않을 경우 상기 통신 디바이스는 1723단계로 진행한다.
한편, 상기 1717단계에서 검사 결과 상기 어플리케이션에서 요청되는 권한들 중 개인 정보 억세스 권한이 포함되어 있을 경우 상기 통신 디바이스는 1719단계로 진행한다. 상기 1719단계에서 상기 통신 디바이스는 상기 검출한, 상기 현재 환경에 상응하는 보안 레벨에 대한 데이터베이스 보안 분석 결과가 서버에 저장되어 있는지 검사한다. 상기 검사 결과 상기 보안 레벨에 대한 데이터베이스 보안 분석 결과가 서버에 저장되어 있을 경우 상기 통신 디바이스는 상기 1725단계로 진행한다.
한편, 상기 1719단계에서 검사 결과 상기 보안 레벨에 대한 데이터베이스 보안 분석 결과가 서버에 저장되어 있지 않을 경우 상기 통신 디바이스는 1721단계로 진행한다. 상기 1721단계에서 상기 통신 디바이스는 상기 어플리케이션 내부 데이터페이스에 대한 데이터베이스 보안 분석 동작을 수행하고 1723단계로 진행한다. 여기서, 상기 통신 디바이스가 상기 어플리케이션에 대한 데이터베이스에 대한 데이터베이스 보안 분석 동작을 수행할 동안에는 외부 위협 요소들로부터의 개인 정보 유출을 방지하기 위해 상기 어플리케이션 이외의 백그라운드 프로세스의 실행을 중단할 수 있다.
상기 1723단계에서 상기 통신 디바이스는 상기 데이터베이스 보안 분석 동작에 따른 데이터베이스 보안 분석 결과를 상기 서버로 송신하고 1725단계로 진행한다. 상기 1725단계에서 상기 통신 디바이스는 상기 데이터베이스 보안 분석 동작에 따른 데이터베이스 보안 분석 결과를 출력한다.
도 17에서 설명한 바와 같이 본 발명의 일 실시예에서 통신 디바이스는 통신 디바이스의 보안 환경 설정에 따라 서버로부터 해당 어플리케이션에 대한 데이터베이스 보안 분석 결과를 수신하거나 혹은 상기 통신 디바이스 자신이 상기 해당 어플리케이션에 대해 데이터베이스 보안 분석 동작을 수행하여 상기 해당 어플리케이션에 대한 데이터베이스 보안 분석 결과를 획득한다.
한편, 도 17이 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 정책이 변경되는 경우 통신 디바이스가 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하는 과정의 다른 예를 도시하고 있더라도, 다양한 변형들이 도 17에 대해 이루어질 수 있음은 물론이다. 일 예로, 도 17에는 연속적인 단계들이 도시되어 있지만, 도 17에서 설명한 단계들은 오버랩될 수 있고, 병렬로 발생할 수 있고, 다른 순서로 발생할 수 있거나, 혹은 다수 번 발생할 수 있음은 물론이다.
도 17에서는 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션에 대한 데이터베이스 보안 정책이 변경되는 경우 통신 디바이스가 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하는 과정의 다른 예에 대해서 설명하였으며, 다음으로 도 18을 참조하여 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션 내부 데이터베이스에 대한 보안 정책을 적용하는 동작의 일 예에 대해서 설명하기로 한다.
도 18은 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션 내부 데이터베이스에 대한 보안 정책을 적용하는 동작의 일 예를 개략적으로 도시한 도면이다.
도 18을 참조하면, 먼저 통신 디바이스(1800)에 포함되는 데이터베이스 보안 분석기(1811)는 특정 3rd party 어플리케이션에 대한 어플리케이션 내부 데이터베이스에 대한 보안 정책 적용이 필요함을 검출하면, 상기 특정 3rd party 어플리케이션을 변경하지 않고 상기 어플리케이션 내부 데이터베이스에 대해 보안 정책을 적용할 수 있다. 여기서, 데이터베이스 보안 분석기(1811)가 상기 특정 3rd party 어플리케이션에 대한 어플리케이션 내부 데이터베이스에 대한 보안 정책 적용이 필요함을 검출할 수 있는 경우들은 다양하게 존재할 수 있으며, 이에 대한 구체적인 설명은 생략하기로 한다.
상기 데이터베이스 보안 분석기(1811)가 상기 특정 3rd party 어플리케이션에 대한 어플리케이션 내부 데이터베이스에 대해 보안 정책을 적용하는 동작에 대해서 구체적으로 설명하면 다음과 같다.
먼저, 상기 데이터베이스 보안 분석기(1811)는 삽입(insert), 삭제(delete), 쿼리(query), 업데이트(update) 등과 같은 데이터베이스 관련 함수에 대한 호출이 발생함을 검출할 경우, 상기 데이터베이스 관련 함수가 어떤 어플리케이션으로부터 호출되는지 검사한다. 상기 검사 결과 상기 데이터베이스 관련 함수가 상기 통신 디바이스(1800)에서 보안 레벨이 설정되어 있는 3rd party 어플리케이션에서 호출될 경우, 상기 데이터베이스 관련 함수에 암호화 및 복호화 기능을 추가시키고, 따라서 해당 3rd party 어플리케이션에서 발생되는 데이터베이스 관련 동작에 대해 보안 정책이 적용될 수 있도록 한다.
이와 같이 어플리케이션에 대한 어플리케이션 내부 데이터베이스에 보안 정책이 적용될 경우, 해당 어플리케이션이 추가적으로 수정되지 않더라도 상기 해당 어플리케이션에 대한 어플리케이션 내부 데이터베이스는 안전하게 보호될 수 있다.
도 18에서는 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션 내부 데이터베이스에 대한 보안 정책을 적용하는 동작의 일 예에 대해서 설명하였으며, 다음으로 도 19를 참조하여 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션 내부 데이터베이스에 대한 보안 정책을 적용하는 동작의 다른 예에 대해서 설명하기로 한다.
도 19는 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션 내부 데이터베이스에 대한 보안 정책을 적용하는 동작의 다른 예를 개략적으로 도시한 도면이다.
도 19를 참조하면, 먼저 본 발명의 일 실시예에서는 3rd party 어플리케이션에 대한 어플리케이션 내부 데이터베이스에 비교적 쉽게 데이터베이스 보안 정책을 적용하도록 하기 위해서 일반적인 데이터베이스 관련 함수와 동일한 형태의 어플리케이션 프로그램 인터페이스(application program interface: API, 이하 "API"라 칭하기로 한다)를 제공한다.
일 예로, insert와, update와, delete와, query 등과 같은 일반적인 데이터베이스 관련 함수 대신 소프트웨어 개발 키트(software development kit: SDK, 이하 "SDK"라 칭하기로 한다)의 보안 삽입(secureInsert), 보안 업데이트(secureUpdate), 보안 삭제(secureDelete), 보안 쿼리(secureQuery) 등과 같은 형태의 API를 호출하면 동일한 데이터베이스 기능을 가지면서 암호화 및 복호화 기능이 적용된 데이터베이스 관련 함수를 사용하게 된다.
따라서, 어플리케이션 개발자 입장에서는 암호화 기능에 대한 전문적인 이해가 없을지라도 SDK를 통해 어플리케이션 내부 데이터베이스에 대해 보안 정책을 적용할 수 있고, 이렇게 개발된 어플리케이션을 3rd party 가 어플리케이션 마켓에 배포할 경우, 통신 디바이스들은 안전한 어플리케이션 내부 데이터베이스를 사용하는 어플리케이션을 사용할 수 있게 된다.
도 19에서는 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션 내부 데이터베이스에 대한 보안 정책을 적용하는 동작의 다른 예에 대해서 설명하였으며, 다음으로 도 20을 참조하여 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션 내부 데이터베이스에 대한 보안 정책을 적용하는 동작의 또 다른 예에 대해서 설명하기로 한다.
도 20은 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션 내부 데이터베이스에 대한 보안 정책을 적용하는 동작의 또 다른 예를 개략적으로 도시한 도면이다.
도 20을 참조하면, 3rd party와 통신 디바이스(2000)가 포함하는 데이터베이스 보안 분석기(2011)는 어플리케이션 내부 데이터베이스에 대한 보안성을 향상시키기 위해 미리 협약할 수 있으며, 이런 협약을 통해 상기 3rd party는 상기 데이터베이스 보안 분석기(2011)로 상기 데이터베이스 보안 분석기(2011)가 상기 어플리케이션 내부 데이터베이스에 억세스할 수 있는 API를 제공할 수 있다. 그러면, 상기 데이터베이스 보안 분석기(2011)는 상기 3rd party로부터 수신한 API를 기반으로 해당 어플리케이션 내부 데이터베이스가 저장하고 있는 데이터에 암호화 및 복호화를 적용시킬 수 있다.
도 20에서는 본 발명의 일 실시예에 따른 통신 시스템에서 어플리케이션 내부 데이터베이스에 대한 보안 정책을 적용하는 동작의 또 다른 예에 대해서 설명하였으며, 다음으로 도 21을 참조하여 본 발명의 일 실시예에 따른 통신 시스템에서 통신 디바이스의 내부 구조에 대해서 설명하기로 한다.
도 21은 본 발명의 일 실시예에 따른 통신 시스템에서 통신 디바이스의 내부 구조를 개략적으로 도시한 도면이다.
도 21을 참조하면, 통신 디바이스(2100)는 통신 모듈과, 커넥터, 및 이어폰 연결잭 중 적어도 하나를 이용하여 외부 전자 디바이스(도 21에 별도로 도시하지 않음)와 연결될 수 있다. 이러한, 상기 외부 전자 디바이스는 상기 통신 디바이스(2100)에 탈착되어 유선으로 연결 가능한 이어폰(earphone), 외부 스피커(external speaker), 범용 직렬 버스(universal serial bus: USB, 이하 ‘USB’라 칭하기로 한다) 메모리, 충전기, 크래들/도크(cradle/dock), 디지털 미디어 방송(digital media broadcasting: DMB, 이하 ‘DMB’라 칭하기로 한다) 안테나, 모바일 결제 관련 디바이스, 건강 관리 디바이스(혈당계 등), 게임기, 자동차 네비게이션 디바이스 등과 같은 다양한 디바이스들 중의 하나를 포함할 수 있다.
또한, 상기 외부 전자 디바이스는 무선으로 연결 가능한 블루투스 통신 디바이스, 근거리 통신(near field communication: NFC, 이하 ‘NFC’라 칭하기로 한다) 디바이스, 와이파이 다이렉트(WiFi direct) 통신 디바이스, 무선 억세스 포인트(access point: AP, 이하 ‘AP’라 칭하기로 한다) 등이 될 수 있다. 그리고, 상기 통신 디바이스(2100)는 유선 또는 무선을 이용하여 서버 또는 다른 통신 디바이스, 예를 들어, 휴대폰, 스마트 폰, 태블릿 PC, 데스크 탑 PC 및 서버 중의 하나와 연결될 수 있다.
상기 통신 디바이스(2100)는 카메라(camera) 처리부(2111)와, 영상 처리부(2113)와, 표시부(2115)와, 제어기(2117)와, 무선 주파수(radio frequency: RF, 이하 ‘RF’라 칭하기로 한다) 처리부(2119)와, 데이터 처리부(2121)와, 메모리(memory)(2123)와, 오디오(audio) 처리부(2125)와, 키입력부(2127)를 포함한다.
먼저, 상기 RF 처리부(2119)는 상기 통신 디바이스(2100)의 무선 통신 기능을 수행한다. 상기 RF 처리부(2119)는 송신되는 신호의 주파수를 상승변환 및 증폭하는 RF 송신기와, 수신되는 신호를 저잡음 증폭하고 주파수를 하강 변환하는 RF 수신기 등을 포함한다.
상기 데이터 처리부(2121)는 상기 송신되는 신호를 부호화 및 변조하는 송신기 및 상기 수신되는 신호를 복조 및 복호화 하는 수신기 등을 구비한다. 즉, 상기 데이터 처리부(2121)는 모뎀(modulator/de-modulator: MODEM, 이하 " MODEM"라 칭하기로 한다) 및 코덱(coder/decoder: CODEC, 이하 "CODEC"라 칭하기로 한다)으로 구성될 수 있다. 여기서, 상기 CODEC은 패킷 데이터 등을 처리하는 데이터 CODEC과 음성 등의 오디오 신호를 처리하는 오디오 CODEC을 포함한다.
오디오 처리부(2125)는 상기 데이터 처리부(2121)의 오디오 CODEC에서 출력되는 수신 오디오 신호를 재생하거나 또는 마이크로부터 발생되는 송신 오디오 신호를 상기 데이터 처리부(2121)의 오디오 CODEC에 송신하는 기능을 수행한다.
상기 키 입력부(2127)는 숫자 및 문자 정보를 입력하기 위한 키들 및 각종 기능들을 설정하기 위한 기능 키들을 구비한다.
상기 메모리(2123)는 프로그램 메모리, 데이터 메모리 등을 포함할 수 있다. 상기 프로그램 메모리는 상기 통신 디바이스(2100)의 일반적인 동작을 제어하기 위한 프로그램들 및 본 발명의 실시예에 따른 정보 보호 동작과 관련된 프로그램들을 저장할 수 있다. 또한 상기 데이터 메모리는 상기 프로그램들을 수행하는 중에 발생되는 데이터들을 일시 저장하는 기능을 수행한다.
상기 메모리(2123)는 리드 온니 메모리(read only memory: ROM, 이하 ‘ROM’이라 칭하기로 한다)와, 랜덤 억세스 메모리(random access memory: RAM, 이하 ‘RAM’이라 칭하기로 한다)와, 메모리 카드(memory card)(일 예로, 보안 디지털(secure digital: SD, 이하 ‘SD’라 칭하기로 한다) 카드, 메모리 스틱) 등과 같은 임의의 데이터 저장 디바이스로 구현될 수 있다. 또한, 상기 메모리(2123)는 비휘발성 메모리와, 휘발성 메모리와, 하드 디스크 드라이브(hard disk drive: HDD, 이하 ‘HDD’라 칭하기로 한다) 또는 솔리드 스테이트 드라이브(solid state drive: SSD, 이하 ‘SSD’라 칭하기로 한다) 등을 포함할 수도 있다.
또한, 상기 메모리(2123)는 네비게이션, 화상 통화, 게임, 사용자에게 시간을 기반으로 하는 알람 애플리케이션 등과 같은 다양한 기능들의 애플리케이션들과, 이와 관련된 그래픽 사용자 인터페이스(graphical user interface: GUI, 이하 "GUI"라 칭하기로 한다)를 제공하기 위한 이미지들, 사용자 정보, 문서, 터치 입력을 처리하는 방법과 관련된 데이터베이스들 또는 데이터, 상기 통신 디바이스(2100)를 구동하는데 필요한 배경 이미지들(메뉴 화면, 대기 화면 등) 또는 운영 프로그램들, 카메라 처리부(2111)에 의해 촬영된 이미지들 등을 저장할 수 있다.
또한, 상기 메모리(2123)는 머신(예를 들어, 컴퓨터)을 통해 리드할 수 있는 매체이며, 머신 리드 가능 매체라는 용어는 머신이 특정 기능을 수행할 수 있도록 상기 머신으로 데이터를 제공하는 매체로 정의될 수 있다. 또한, 상기 메모리(2123)는 비휘발성 매체(non-volatile media) 및 휘발성 매체를 포함할 수 있다. 이러한 모든 매체는 상기 매체에 의해 전달되는 명령들이 상기 명령들을 상기 머신 리드 가능 물리적 기구에 의해 검출될 수 있도록 유형의 것이어야 한다.
상기 머신 리드 가능 매체는, 이에 한정되지 않지만, 플로피 디스크(floppy disk), 플렉서블 디스크(flexible disk), 하드 디스크, 자기 테이프, 컴팩트 디스크 리드 온니 메모리(compact disc read-only memory: CD-ROM, 이하 "CD-ROM"라 칭하기로 한다), 광학 디스크, 펀치 카드(punch card), 페이퍼 테이프(paper tape), RAM, 프로그램 가능 리드 온니 메모리(programmable read-only memory: PROM, 이하 "PROM"라 칭하기로 한다), 제거 가능 프로그램 가능 리드 온니 메모리(erasable programmable read-only memory: EPROM, 이하 "EPROM"라 칭하기로 한다) 및 플래시-제거 가능 프로그램 가능 리드 온니 메모리(flash-erasable programmable read-only memory: flash-EPROM, 이하 "flash-EPROM"라 칭하기로 한다) 중의 적어도 하나를 포함한다.
상기 제어기(2117)는 상기 통신 디바이스(2100)의 전반적인 동작을 제어하는 기능을 수행한다. 상기 제어기(2117)는 본 발명의 실시예에 따른 정보 보호 동작과 관련된 동작을 수행한다. 여기서, 본 발명의 실시예에 따른 정보 보호 동작과 관련된 동작은 도 3 내지 도 20에서 설명한 바와 동일하므로 여기서는 그 상세한 설명을 생략하기로 한다.
상기 카메라 처리부(2111)는 영상 데이터를 촬영하며, 촬영된 광 신호를 전기적 신호로 변환하는 카메라 센서와, 상기 카메라센서로부터 촬영되는 아날로그 영상신호를 디지털 데이터로 변환하는 신호 처리부를 포함한다. 여기서, 상기 카메라 센서는 CCD(charge coupled device) 또는 상보성 금속 산화물 반도체(complementary metal-oxide semiconductor: CMOS, 이하 "CMOS"라 칭하기로 한다) 센서라 가정하며, 상기 신호 처리부는 디지털 신호 프로세서(digital signal processor: DSP, 이하 "DSP"라 칭하기로 한다)로 구현될 수 있다. 또한, 상기 카메라 센서 및 신호 처리부는 일체형으로 구현될 수 있으며, 또한 분리하여 구현될 수도 있다.
상기 영상 처리부(2113)는 상기 카메라 처리부(2111)에서 출력되는 영상 신호를 표시부(2115)에 표시하기 위한 이미지 신호 프로세싱(image signal processing: ISP, 이하 "ISP"라 칭하기로 한다)를 수행하며, 상기 ISP는 감마교정, 인터폴레이션, 공간적 변화, 이미지 효과, 이미지 스케일, AWB(automatic white balance), AE(automatic exposure), AF(automatic focus) 등과 같은 기능을 수행한다. 따라서, 상기 영상 처리부(2113)는 상기 카메라 처리부(2111)에서 출력되는 영상 신호를 프레임 단위로 처리하며, 상기 프레임 영상데이터를 상기 표시부(2115)의 특성 및 크기에 맞춰 출력한다.
또한 상기 영상 처리부(2113)는 영상 코덱을 구비하며, 상기 표시부(2115)에 표시되는 프레임 영상데이터를 설정된 방식으로 압축하거나, 압축된 프레임 영상데이터를 원래의 프레임 영상데이터로 복원하는 기능을 수행한다. 여기서 상기 영상 코덱은 JPEG(joint photographic experts group) 코덱, MPEG4(moving picture experts group 4) 코덱, Wavelet 코덱 등이 될 수 있다. 상기 영상 처리부(2113)는 OSD(on screen display) 기능을 구비한다고 가정하며, 상기 제어기(2117)의 제어하여 표시되는 화면 크기에 따라 온 스크린 표시데이터를 출력할 수 있다.
상기 표시부(2115)는 상기 영상 처리부(2113)에서 출력되는 영상 신호를 화면으로 표시하며, 상기 제어부(2117)에서 출력되는 사용자 데이터를 표시한다. 여기서, 상기 표시부(2115)는 액정 크리스탈 디스플레이(liquid crystal display: LCD, 이하 "LCD"라 칭하기로 한다)를 사용할 수 있으며, 이런 경우 상기 표시부(2115)은 LCD 제어부(LCD controller), 영상 데이터를 저장할 수 있는 메모리 및 LCD표시 소자 등을 구비할 수 있다. 여기서, 상기 LCD를 터치스크린(touch screen) 방식으로 구현하는 경우, 입력부로 동작할 수도 있으며, 이때 상기 표시부(2115)에는 상기 키 입력부(2127)와 같은 키들을 표시할 수 있다.
상기 표시부(2115)가 상기 터치 스크린으로 구현될 경우, 상기 표시부(2115)는 사용자 그래픽 인터페이스에 입력되는 적어도 하나의 사용자 입력에 대응되는 아날로그 신호를 상기 제어부(2117)로 출력할 수 있다.
상기 표시부(2115)는 사용자의 신체(예를 들어, 엄지를 포함하는 손가락) 또는 상기 키입력부(2127)(일 예로, 스타일러스 펜, 전자 펜)을 통해 적어도 하나의 사용자 입력을 수신할 수 있다.
상기 표시부(2115)는 하나의 터치의 연속적인 움직임(일 예로, 드래그 입력)을 수신할 수도 있다. 상기 표시부(2115)는 입력되는 터치의 연속적인 움직임에 대응되는 아날로그 신호를 상기 제어부(2117)로 출력할 수 있다.
본 발명의 실시예에서 터치는 터치 스크린, 즉 상기 표시부(2115)와 손가락 또는 상기 키 입력부(2127)와의 접촉에 한정되지 않고, 비접촉(일 예로, 상기 표시부(2115)와의 직접 접촉 없이 사용자 입력 수단을 검출할 수 있는 인식 거리(예를 들어, 1cm) 이내에 사용자 입력 수단이 위치하는 경우)을 포함할 수 있다. 상기 표시부(2115)에서 사용자 입력 수단을 인식할 수 있는 거리 또는 간격은 상기 통신 디바이스(2100)의 성능 또는 구조에 따라 변경될 수 있으며, 특히 상기 표시부(2115)는 사용자 입력 수단과의 접촉에 의한 직접 터치 이벤트와, 간접 터치 이벤트(즉, 호버링 이벤트)를 구분하여 검출 가능하도록, 상기 직접 터치 이벤트와 호버링 이벤트에 의해 검출되는 값(일 예로, 아날로그 값으로 전압 값 또는 전류 값을 포함)이 다르게 출력될 수 있도록 구성될 수 있다.
상기 표시부(2115)는 일 예로, 저항막(resistive) 방식, 정전용량(capacitive) 방식, 적외선(infrared) 방식, 초음파(acoustic wave) 방식, 또는 이들의 조합으로 구현될 수 있다.
또한, 상기 표시부(2115)는 손가락 및 키 입력부(2127)에 의한 입력을 각각 입력 받을 수 있도록, 손가락 및 상기 키 입력부(2127)의 터치나 접근을 각각 감지할 수 있는 적어도 두 개의 터치 패널들을 포함할 수 있다. 적어도 두 개의 터치 패널들은 서로 다른 출력 값을 상기 제어기(2117)에 제공하고, 상기 제어기(2117)는 상기 적어도 두 개의 터치 스크린 패널들에서 입력되는 값을 서로 다르게 인식하여, 키 입력부(2127)으로부터의 입력이 손가락에 의한 입력인지, 상기 키입력부(2127)에 의한 입력인지를 구분할 수 있다.
상기 제어기(2117)는 상기 표시부(2115)로부터 입력된 아날로그 신호를 디지털 신호로 변환하고, 상기 제어기(2117)는 상기 디지털 신호를 사용하여 상기 표시부(2115)를 제어할 수 있다. 일 예로, 상기 제어기(2117)는 직접 터치 이벤트 또는 호버링 이벤트에 응답하여 상기 제어기(2117)에 표시된 단축 아이콘(도 21에 별도로 도시하지 않음) 또는 객체가 선택 또는 실행되도록 할 수 있다.
상기 제어기(2117)는 상기 표시부(2115)를 통해 출력되는 값(일 예로, 전류값 등)을 검출하여 사용자 입력 위치 뿐만 아니라 호버링 간격 또는 거리를 확인할 수 있고, 확인된 거리 값을 디지털 신호(일 예로, Z좌표)로 변환할 수도 있다. 또한, 상기 제어기(2117)는 상기 표시부(2115)를 통해 출력되는 값(일 예로, 전류값 등)을 검출하여 사용자 입력 수단이 상기 표시부(2115)를 누르는 압력을 검출할 수 있고, 상기 검출된 압력 값을 디지털 신호로 변환할 수도 있다.
또한, 도 21에서는 상기 통신 디바이스(2100)가 상기 카메라 처리부(2111)와, 상기 영상 처리부(2113)와, 상기 표시부(2115)와, 상기 제어기(2117)와, 상기 RF 처리부(2119)와, 상기 데이터 처리부(2121)와, 상기 메모리(2123)와, 상기 오디오 처리부(2125)와, 상기 키 입력부(2127)와 같이 별도의 유닛들로 구현된 경우가 도시되어 있으나, 상기 통신 디바이스(2100)는 상기 카메라 처리부(2111)와, 상기 영상 처리부(2113)와, 상기 표시부(2115)와, 상기 제어기(2117)와, 상기 RF 처리부(2119)와, 상기 데이터 처리부(2121)와, 상기 메모리(2123)와, 상기 오디오 처리부(2125)와, 상기 키 입력부(2127) 중 적어도 두 개가 통합된 형태로 구현될 수도 있음은 물론이다.
이와는 달리, 상기 통신 디바이스(2100)는 1개의 프로세서로 구현될 수도 있다.
도 21에서는 본 발명의 일 실시예에 따른 통신 시스템에서 통신 디바이스의 내부 구조에 대해서 설명하였으며, 다음으로 도 22를 참조하여 본 발명의 일 실시예에 따른 통신 시스템에서 서버의 내부 구조에 대해서 설명하기로 한다.
도 22는 본 발명의 일 실시예에 따른 통신 시스템에서 서버의 내부 구조를 개략적으로 도시한 도면이다.
도 22을 참조하면, 서버(2200)는 송신기(2211)와, 제어기(2213)와, 수신기(2215)와, 저장 유닛(2217)을 포함한다.
먼저, 상기 제어기(2213)는 상기 서버(2200)의 전반적인 동작을 제어하며, 특히 본 발명의 실시예에 따른 정보 보호 동작과 관련된 동작을 제어한다. 본 발명의 실시예에 따른 정보 보호 동작과 관련된 동작에 대해서는 도 3 내지 도 20에서 설명한 바와 동일하므로 여기서는 그 상세한 설명을 생략하기로 한다.
상기 송신기(2211)는 상기 제어기(2213)의 제어에 따라 상기 통신 시스템에 포함되어 있는 통신 노드들 등으로 각종 신호들 및 각종 메시지들을 송신한다. 여기서, 상기 송신기(2211)가 송신하는 각종 신호들 및 각종 메시지들은 도 3 내지 도 20에서 설명한 바와 동일하므로 여기서는 그 상세한 설명을 생략하기로 한다.
또한, 상기 수신기(2215)는 상기 제어기(2213)의 제어에 따라 상기 통신 시스템에 포함되어 있는 통신 노드들 등으로부터 각종 신호들 및 각종 메시지들을 수신한다. 여기서, 상기 수신기(2215)가 수신하는 각종 신호 및 각종 메시지들은 도 3 내지 도 20에서 설명한 바와 동일하므로 여기서는 그 상세한 설명을 생략하기로 한다.
상기 저장 유닛(2217)은 상기 제어기(2213)의 제어에 따라 상기 서버(2200)가 수행하는 본 발명의 일 실시예에 따른 정보 보호 동작과 관련된 동작과 관련된 프로그램과 각종 데이터 등을 저장한다.
또한, 상기 저장 유닛(2217)은 상기 수신기(2215)가 상기 통신 노드들 등으로부터 수신한 각종 신호 및 각종 메시지들을 저장한다.
한편, 도 22에는 상기 서버(2200)가 상기 송신기(2211)와, 제어기(2213)와, 수신기(2215)와, 저장 유닛(2217)과 같이 별도의 유닛들로 구현된 경우가 도시되어 있으나, 상기 서버(2200)는 상기 송신기(2211)와, 제어기(2213)와, 수신기(2215)와, 저장 유닛(2217) 중 적어도 두 개가 통합된 형태로 구현 가능함은 물론이다. 또한, 상기 서버(2200)는 1개의 프로세서로 구현될 수도 있음은 물론이다.
본 발명의 특정 측면들은 또한 컴퓨터 리드 가능 기록 매체(computer readable recording medium)에서 컴퓨터 리드 가능 코드(computer readable code)로서 구현될 수 있다. 컴퓨터 리드 가능 기록 매체는 컴퓨터 시스템에 의해 리드될 수 있는 데이터를 저장할 수 있는 임의의 데이터 저장 디바이스이다. 상기 컴퓨터 리드 가능 기록 매체의 예들은 리드 온니 메모리(Read-Only Memory: ROM)와, 랜덤-접속 메모리(Random-Access Memory: RAM)와, CD-ROM들과, 마그네틱 테이프(magnetic tape)들과, 플로피 디스크(floppy disk)들과, 광 데이터 저장 디바이스들, 및 캐리어 웨이브(carrier wave)들(상기 인터넷을 통한 데이터 송신과 같은)을 포함할 수 있다. 상기 컴퓨터 리드 가능 기록 매체는 또한 네트워크 연결된 컴퓨터 시스템들을 통해 분산될 수 있고, 따라서 상기 컴퓨터 리드 가능 코드는 분산 방식으로 저장 및 실행된다. 또한, 본 발명을 성취하기 위한 기능적 프로그램들, 코드, 및 코드 세그먼트(segment)들은 본 발명이 적용되는 분야에서 숙련된 프로그래머들에 의해 쉽게 해석될 수 있다.
또한 본 발명의 일 실시예에 따른 장치 및 방법은 하드웨어, 소프트웨어 또는 하드웨어 및 소프트웨어의 조합의 형태로 실현 가능하다는 것을 알 수 있을 것이다. 이러한 임의의 소프트웨어는 예를 들어, 삭제 가능 또는 재기록 가능 여부와 상관없이, ROM 등의 저장 장치와 같은 휘발성 또는 비휘발성 저장 장치, 또는 예를 들어, RAM, 메모리 칩, 장치 또는 집적 회로와 같은 메모리, 또는 예를 들어 CD, DVD, 자기 디스크 또는 자기 테이프 등과 같은 광학 또는 자기적으로 기록 가능함과 동시에 기계(예를 들어, 컴퓨터)로 읽을 수 있는 저장 매체에 저장될 수 있다. 본 발명의 일 실시예에 따른 방법은 제어부 및 메모리를 포함하는 컴퓨터 또는 휴대 단말에 의해 구현될 수 있고, 상기 메모리는 본 발명의 실시 예들을 구현하는 지시들을 포함하는 프로그램 또는 프로그램들을 저장하기에 적합한 기계로 읽을 수 있는 저장 매체의 한 예임을 알 수 있을 것이다.
따라서, 본 발명은 본 명세서의 임의의 청구항에 기재된 장치 또는 방법을 구현하기 위한 코드를 포함하는 프로그램 및 이러한 프로그램을 저장하는 기계(컴퓨터 등)로 읽을 수 있는 저장 매체를 포함한다. 또한, 이러한 프로그램은 유선 또는 무선 연결을 통해 전달되는 통신 신호와 같은 임의의 매체를 통해 전자적으로 이송될 수 있고, 본 발명은 이와 균등한 것을 적절하게 포함한다
또한 본 발명의 일 실시예에 따른 장치는 유선 또는 무선으로 연결되는 프로그램 제공 장치로부터 상기 프로그램을 수신하여 저장할 수 있다. 상기 프로그램 제공 장치는 상기 프로그램 처리 장치가 기 설정된 컨텐츠 보호 방법을 수행하도록 하는 지시들을 포함하는 프로그램, 컨텐츠 보호 방법에 필요한 정보 등을 저장하기 위한 메모리와, 상기 그래픽 처리 장치와의 유선 또는 무선 통신을 수행하기 위한 통신부와, 상기 그래픽 처리 장치의 요청 또는 자동으로 해당 프로그램을 상기 송수신 장치로 전송하는 제어부를 포함할 수 있다.
한편 본 발명의 상세한 설명에서는 구체적인 실시예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형할 수 있음은 물론이다. 그러므로 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 안되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.

Claims (36)

  1. 통신 시스템에서 이동 디바이스가 정보를 보호하는 방법에 있어서,
    상기 이동 디바이스가 어플리케이션이 상기 이동 디바이스에서 설치될 것임을 검출 또는 상기 어플리케이션이 상기 이동 디바이스에 의해 처음으로 실행되는 것을 검출하는 것에 응답하여, 상기 이동 디바이스에 의해 어플리케이션에 대응되는 데이터베이스의 데이터베이스 보안 분석 결과를 획득하고, 상기 데이터베이스 보안 분석 결과는 상기 데이터베이스를 보호하기 위한 데이터베이스 보안 분석 동작을 수행한 결과인 과정과,
    상기 이동 디바이스의 디스플레이에, 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 출력하는 과정을 포함하고,
    상기 어플리케이션의 설치에 대한 응답으로 상기 데이터베이스가 상기 이동 디바이스에 생성되고,
    상기 데이터 베이스는, 어플리케이션의 실행과 관련된 개인 사용자 정보를 포함하는 것을 특징으로 하는 통신 시스템에서 이동 디바이스가 정보를 보호하는 방법.
  2. 제1항에 있어서,
    상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 획득하는 과정은;
    서버로 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 요청하는 데이터베이스 보안 분석 결과 요청 메시지를 송신하는 과정과,
    상기 서버로부터 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 포함하는 데이터베이스 보안 분석 결과 응답 메시지를 수신하는 과정을 포함함을 특징으로 하는 통신 시스템에서 이동 디바이스가 정보를 보호하는 방법.
  3. 제1항에 있어서,
    상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 획득하는 과정은;
    서버로 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 요청하는 데이터베이스 보안 분석 결과 요청 메시지를 송신하는 과정과,
    상기 서버로부터 상기 서버에 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과가 저장되어 있지 않음을 나타내는 데이터베이스 보안 분석 결과 응답 메시지를 수신하는 과정과,
    상기 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하여 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 검출하는 과정을 포함함을 특징으로 하는 통신 시스템에서 이동 디바이스가 정보를 보호하는 방법.
  4. 제3항에 있어서,
    상기 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하여 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 검출하는 과정은;
    상기 어플리케이션에서 요청되는 권한들 중 특정 타입의 정보 억세스에 관련된 권한인 특정 타입 정보 억세스 권한이 포함되어 있을 경우, 상기 어플리케이션에 대한 어플리케이션 내부 데이터베이스 생성을 검출하는 과정과,
    상기 어플리케이션이 상기 이동 디바이스에 포함되어 있는 디바이스 내부 데이터베이스에 포함되어 있는 특정 타입의 정보를 리드(read)하는 것을 검출하는 과정과,
    상기 어플리케이션 내부 데이터베이스에 대한 데이터베이스 보안 분석 동작을 수행하여 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 검출하는 과정을 포함함을 특징으로 하는 통신 시스템에서 이동 디바이스가 정보를 보호하는 방법.
  5. 제1항에 있어서,
    상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 서버로 송신하는 과정을 더 포함함을 특징으로 하는 통신 시스템에서 이동 디바이스가 정보를 보호하는 방법.
  6. 제1항에 있어서,
    상기 개인 사용자 정보는, 시스템 설정, 검색 기록, 알람, Wi-Fi (wireless fidelity) 리스트, 사진, 동영상 파일과, 연락처, 통화 내역, 문자, 일정, 또는 이메일 중 적어도 하나를 포함하는 것을 특징으로 하는 통신 시스템에서 이동 디바이스가 정보를 보호하는 방법.
  7. 삭제
  8. 삭제
  9. 삭제
  10. 삭제
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 통신 시스템에서 이동 디바이스에 있어서,
    상기 이동 디바이스가 어플리케이션이 상기 이동 디바이스에서 설치될 것임을 검출 또는 상기 어플리케이션이 상기 이동 디바이스에 의해 처음으로 실행되는 것을 검출하는 것에 응답하여, 상기 이동 디바이스에 의해 어플리케이션에 대응되는 데이터베이스의 데이터베이스 보안 분석 결과를 획득하고, 상기 데이터베이스 보안 분석 결과는 상기 데이터베이스를 보호하기 위한 데이터베이스 보안 분석 동작을 수행한 결과이고, 상기 이동 디바이스의 디스플레이에 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 출력하는 프로세서를 포함하고,
    상기 어플리케이션의 설치에 대한 응답으로 상기 데이터베이스가 상기 이동 디바이스에 생성되고,
    상기 데이터 베이스는 어플리케이션의 실행과 관련된 개인 사용자 정보를 포함함을 특징으로 하는 통신 시스템에서 이동 디바이스.
  20. 제19항에 있어서,
    상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 획득하는 동작은;
    서버로 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 요청하는 데이터베이스 보안 분석 결과 요청 메시지를 송신하는 동작과,
    상기 서버로부터 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 포함하는 데이터베이스 보안 분석 결과 응답 메시지를 수신하는 동작을 포함함을 특징으로 하는 통신 시스템에서 이동 디바이스.
  21. 제19항에 있어서,
    상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 획득하는 동작은;
    서버로 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 요청하는 데이터베이스 보안 분석 결과 요청 메시지를 송신하는 동작과,
    상기 서버로부터 상기 서버에 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과가 저장되어 있지 않음을 나타내는 데이터베이스 보안 분석 결과 응답 메시지를 수신하는 동작과,
    상기 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하여 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 검출하는 동작을 포함함을 특징으로 하는 통신 시스템에서 이동 디바이스.
  22. 제21항에 있어서,
    상기 어플리케이션에 대한 데이터베이스 보안 분석 동작을 수행하여 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 검출하는 동작은;
    상기 어플리케이션에서 요청되는 권한들 중 특정 타입의 정보 억세스에 관련된 권한인 특정 타입 정보 억세스 권한이 포함되어 있을 경우, 상기 어플리케이션에 대한 어플리케이션 내부 데이터베이스 생성을 검출하는 동작과,
    상기 어플리케이션이 상기 이동 디바이스에 포함되어 있는 디바이스 내부 데이터베이스에 포함되어 있는 특정 타입의 정보를 리드(read)하는 것을 검출하는 동작과,
    상기 어플리케이션 내부 데이터베이스에 대한 데이터베이스 보안 분석 동작을 수행하여 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 검출하는 동작을 포함함을 특징으로 하는 통신 시스템에서 이동 디바이스.
  23. 제19항에 있어서,
    상기 프로세서는 상기 어플리케이션에 대한 데이터베이스 보안 분석 결과를 서버로 송신함을 특징으로 하는 통신 시스템에서 이동 디바이스.
  24. 제19항에 있어서,
    상기 개인 사용자 정보는, 시스템 설정, 검색 기록, 알람, Wi-Fi (wireless fidelity) 리스트, 사진, 동영상 파일과, 연락처, 통화 내역, 문자, 일정, 또는 이메일 중 적어도 하나를 포함함을 특징으로 하는 통신 시스템에서 이동 디바이스.

  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
  32. 삭제
  33. 삭제
  34. 삭제
  35. 삭제
  36. 삭제
KR1020150135491A 2015-09-24 2015-09-24 통신 시스템에서 정보 보호 장치 및 방법 KR102431266B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020150135491A KR102431266B1 (ko) 2015-09-24 2015-09-24 통신 시스템에서 정보 보호 장치 및 방법
EP16848779.1A EP3338216B1 (en) 2015-09-24 2016-07-20 Apparatus and method for protecting information in communication system
PCT/KR2016/007921 WO2017052053A1 (en) 2015-09-24 2016-07-20 Apparatus and method for protecting information in communication system
US15/216,947 US10380378B2 (en) 2015-09-24 2016-07-22 Apparatus and method for protecting information in communication system
CN201610849584.9A CN107038385B (zh) 2015-09-24 2016-09-23 用于在通信系统中保护信息的设备和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150135491A KR102431266B1 (ko) 2015-09-24 2015-09-24 통신 시스템에서 정보 보호 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20170036392A KR20170036392A (ko) 2017-04-03
KR102431266B1 true KR102431266B1 (ko) 2022-08-11

Family

ID=58386243

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150135491A KR102431266B1 (ko) 2015-09-24 2015-09-24 통신 시스템에서 정보 보호 장치 및 방법

Country Status (5)

Country Link
US (1) US10380378B2 (ko)
EP (1) EP3338216B1 (ko)
KR (1) KR102431266B1 (ko)
CN (1) CN107038385B (ko)
WO (1) WO2017052053A1 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180239786A1 (en) * 2017-02-22 2018-08-23 RhinoDox Augmenting Code For Databases With Modular Code Elements
JP7131946B2 (ja) 2017-04-20 2022-09-06 Line株式会社 アプリケーションの保安性を評価する方法およびシステム
WO2019004502A1 (ko) * 2017-06-29 2019-01-03 라인 가부시키가이샤 어플리케이션의 보안성을 평가하는 방법 및 시스템
US10305923B2 (en) 2017-06-30 2019-05-28 SparkCognition, Inc. Server-supported malware detection and protection
KR20190047477A (ko) 2017-10-27 2019-05-08 한국전력공사 스마트시티 통합 관리 시스템의 보안 강화를 위한 보안키 분배 방법 및 이를 이용한 공격자 이상행동 탐지 방법
KR102456835B1 (ko) * 2017-12-22 2022-10-21 삼성전자주식회사 음성 데이터 패킷의 송신을 제어하는 전자 장치 및 방법
KR102212806B1 (ko) * 2019-03-28 2021-02-08 (주)한국아이티평가원 클라우드 기반 어플리케이션의 이용 관리 방법
CN110263515B (zh) * 2019-04-26 2021-12-24 荣耀终端有限公司 一种加密应用的打开方法及终端设备
CN112270015A (zh) * 2020-10-27 2021-01-26 维沃移动通信有限公司 数据保护方法、装置、电子设备及可读存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150163668A1 (en) * 2013-12-11 2015-06-11 Tsinghua University Protecting system and method for privacy information in mobile terminal

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7613930B2 (en) * 2001-01-19 2009-11-03 Trustware International Limited Method for protecting computer programs and data from hostile code
US20060031938A1 (en) * 2002-10-22 2006-02-09 Unho Choi Integrated emergency response system in information infrastructure and operating method therefor
JP2006262157A (ja) * 2005-03-17 2006-09-28 Murata Mach Ltd 通信装置及びそのプログラム
US7934253B2 (en) * 2006-07-20 2011-04-26 Trustwave Holdings, Inc. System and method of securing web applications across an enterprise
US9860274B2 (en) * 2006-09-13 2018-01-02 Sophos Limited Policy management
US8499170B1 (en) * 2008-10-08 2013-07-30 Trend Micro, Inc. SQL injection prevention
US8347386B2 (en) * 2008-10-21 2013-01-01 Lookout, Inc. System and method for server-coupled malware prevention
US8533844B2 (en) * 2008-10-21 2013-09-10 Lookout, Inc. System and method for security data collection and analysis
JP5332838B2 (ja) * 2009-04-07 2013-11-06 ソニー株式会社 情報処理装置、および実行制御方法
US9355126B2 (en) * 2009-09-22 2016-05-31 Oracle International Corporation Active auditing in a database system
KR20120084184A (ko) 2011-01-19 2012-07-27 한남대학교 산학협력단 화이트 리스트 기반 스마트폰 악성 코드 차단 방법 및 그 기록매체
KR101264102B1 (ko) 2011-02-07 2013-05-14 조성환 보안 기능을 가지는 스마트 폰 및 이의 보안방법
CN102254120B (zh) * 2011-08-09 2014-05-21 华为数字技术(成都)有限公司 恶意代码的检测方法、系统及相关装置
US8990561B2 (en) * 2011-09-09 2015-03-24 Microsoft Technology Licensing, Llc Pervasive package identifiers
KR101329789B1 (ko) * 2012-03-28 2013-11-15 이니텍(주) 모바일 디바이스의 데이터베이스 암호화 방법
CN103377341A (zh) * 2012-04-28 2013-10-30 北京网秦天下科技有限公司 一种安全检测的方法和系统
CN102810143B (zh) * 2012-04-28 2015-01-14 天津大学 基于Android平台手机应用程序的安全检测系统及方法
KR101739125B1 (ko) 2013-02-27 2017-05-24 한국전자통신연구원 모바일 디바이스용 어플리케이션의 권한을 분석하고 위험성을 검출하기 위한 장치 및 방법
KR101414084B1 (ko) * 2013-03-28 2014-07-04 한신대학교 산학협력단 모바일 단말의 악성 어플리케이션 탐지 시스템 및 방법
CN103226583B (zh) * 2013-04-08 2017-07-28 北京奇虎科技有限公司 一种广告插件识别的方法和装置
US9721116B2 (en) * 2013-06-24 2017-08-01 Sap Se Test sandbox in production systems during productive use
US9652617B1 (en) * 2013-06-25 2017-05-16 Amazon Technologies, Inc. Analyzing security of applications
US9591003B2 (en) * 2013-08-28 2017-03-07 Amazon Technologies, Inc. Dynamic application security verification
JP5620604B1 (ja) * 2014-05-12 2014-11-05 株式会社ワイワイワイネット ネット上での検索結果のランキングシステム
US20150379268A1 (en) * 2014-06-27 2015-12-31 Prabhat Singh System and method for the tracing and detection of malware
US9936528B2 (en) * 2014-06-29 2018-04-03 Tetherball Technology, LLC Automatic wireless grid access sharing and monetization from a mobile device app

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150163668A1 (en) * 2013-12-11 2015-06-11 Tsinghua University Protecting system and method for privacy information in mobile terminal

Also Published As

Publication number Publication date
CN107038385A (zh) 2017-08-11
US20170091484A1 (en) 2017-03-30
EP3338216B1 (en) 2019-12-11
US10380378B2 (en) 2019-08-13
KR20170036392A (ko) 2017-04-03
EP3338216A4 (en) 2018-08-15
EP3338216A1 (en) 2018-06-27
WO2017052053A1 (en) 2017-03-30
CN107038385B (zh) 2022-01-11

Similar Documents

Publication Publication Date Title
KR102431266B1 (ko) 통신 시스템에서 정보 보호 장치 및 방법
US10979901B2 (en) Electronic device and method for processing data in electronic device
CN105530596B (zh) 用于安全连接的设备和方法
KR102489876B1 (ko) 알림을 제공하기 위한 방법 및 그 전자 장치
KR102503937B1 (ko) 전자 장치의 사용자 인터페이스 제공 방법 및 장치
CN105824772B (zh) 用于使用多个处理器来管理数据的方法和装置
KR102082347B1 (ko) 통지 정보를 전송하기 위한 전자 장치 및 방법
KR102125923B1 (ko) 전자 장치의 운영체제 업그레이드 방법 및 장치
KR102428461B1 (ko) 선택적 암호화 방법 및 그를 이용한 전자 장치
US20150244724A1 (en) Service authorization methods and apparatuses
KR102386893B1 (ko) 이미지 데이터의 보안 방법 및 이를 지원하는 전자 장치
KR102483836B1 (ko) 전자 장치 및 그의 동작 방법
KR102370842B1 (ko) 컨텐츠를 암호화하기 위한 전자 장치 및 방법
KR20150091839A (ko) 전자 장치 및 이의 정보 제공 방법
KR20170081976A (ko) 클라우드 스토리지 서비스를 지원하는 무선 통신 시스템에서 파일 송/수신 장치 및 방법
KR102109883B1 (ko) 컨텐츠 전송 방법 및 전자 장치
KR20180046149A (ko) 인증을 수행하기 위한 전자 장치 및 방법
CN110084035B (zh) 用于在发生拒绝时建议响应指南的电子设备和方法
KR102256683B1 (ko) 재난 관리 방법 및 그 전자 장치
US20170046279A1 (en) Content security processing method and electronic device supporting the same
KR102332468B1 (ko) 기능 제어 방법 및 그 전자 장치
KR102495924B1 (ko) 어플리케이션의 보안 처리 방법 및 이를 지원하는 전자 장치
KR102376962B1 (ko) 서버, 전자 장치 및 전자 장치에서 이미지를 처리하는 방법
KR102378373B1 (ko) 복수의 충전 회로를 활용하는 전자 장치 및 방법
KR102269590B1 (ko) 바이너리 생성 방법 및 그 전자 장치

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