KR100954841B1 - 모바일 기기에서의 통합형 데이터 관리 방법, 그 장치 및이를 기록한 기록 매체 - Google Patents

모바일 기기에서의 통합형 데이터 관리 방법, 그 장치 및이를 기록한 기록 매체 Download PDF

Info

Publication number
KR100954841B1
KR100954841B1 KR1020080070139A KR20080070139A KR100954841B1 KR 100954841 B1 KR100954841 B1 KR 100954841B1 KR 1020080070139 A KR1020080070139 A KR 1020080070139A KR 20080070139 A KR20080070139 A KR 20080070139A KR 100954841 B1 KR100954841 B1 KR 100954841B1
Authority
KR
South Korea
Prior art keywords
authentication
value
user
password
encryption
Prior art date
Application number
KR1020080070139A
Other languages
English (en)
Other versions
KR20100009301A (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 KR1020080070139A priority Critical patent/KR100954841B1/ko
Publication of KR20100009301A publication Critical patent/KR20100009301A/ko
Application granted granted Critical
Publication of KR100954841B1 publication Critical patent/KR100954841B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Telephone Function (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

모바일 기기에서의 통합형 데이터 관리 방법, 그 장치 및 이를 기록한 기록 매체가 개시된다.
본 발명에 따른 모바일 기기에서의 통합형 데이터 관리 방법은,
인증 사용자에 의해 고유의 로그인 패스워드가 모바일 기기에 입력되면, 상기 로그인 패스워드, 상기 인증 사용자에 의해 미리 설정된 이티레이션(iteration) 값, 및 제 1 솔트(salt)값을 입력값으로 하여 해쉬 연산에 의해 인증 패스워드 해쉬값을 생성하고, 상기 모바일 기기의 단말 데이터베이스에 저장하는 단계; 상기 로그인 패스워드, 상기 이티레이션 값 및 제 2 솔트값을 이용하여 암호키를 생성하는 단계; 상기 인증 사용자의 모바일 기기에서 랜덤 생성된 비밀키를 상기 생성된 암호키를 이용하여 암호화함으로써 비밀키 암호화값을 생성하여 상기 단말 데이터베이스에 저장하는 단계; 특정 사용자에 의해 패스워드가 입력되면, 상기 이티레이션 값, 상기 제 1 솔트값을 이용하여 패스워드 해쉬값을 생성하고, 상기 인증 패스워드 해쉬값과 비교하여 사용자 인증을 수행하는 단계; 및 상기 인증 사용자로부터 특정 데이터의 암호 요청에 관한 쿼리를 수신하면, 상기 단말 데이터베이스에 저장된 상기 비밀키 암호화값을 복호화하여 상기 비밀키를 추출하고, 상기 추출된 비밀키를 이용하여 상기 모바일 기기의 특정 데이터를 암호화하는 단계를 포함한다.
본 발명에 의하면, 모바일 기기, 어플리케이션, OS/Platform 및 저장 장치의 종류에 독립적인 통합적 데이터 관리 구조를 제공할 수 있으며, 응용프로그램이 아 닌 보안 플랫폼 구조 자체에 따라 모바일 기기에서 안전한 통합형 데이터 관리 구조를 제공함으로써, 기기의 도난, 분실, 인증되지 않은 사용자로부터의 접근, 각종 해킹, 악성코드로부터의 노출 등의 보안 위협으로부터 향상된 보안성을 제공할 수 있는 효과가 있다.

Description

모바일 기기에서의 통합형 데이터 관리 방법, 그 장치 및 이를 기록한 기록 매체{Method and Apparatus of managing unity data on mobile device and Recording medium using this}
본 발명은 모바일 기기에서의 데이터 관리에 관한 것으로서, 특히 모바일 기기의 데이터에 물리적인 접근뿐만 아니라, 네트워크를 통한 통합 침투에 대하여 안전하면서도 통합적인 데이터 관리 기법인 모바일 기기에서의 통합형 데이터 관리 방법, 그 장치 및 이를 기록한 기록 매체에 관한 것이다.
최근 정보화 시대가 도래하면서, 휴대폰의 기능은 전화를 걸기 위한 목적 이외에 부가적인 기능으로서 그 위치를 자리 잡기 시작했으며, 현대를 살아가는 사람들에게 없어서는 안될 필수품이 되었다. 바로 인터넷이 가지고 있는 장점을 살리면서도 또 하나의 새로운 산업적, 문화적인 가치를 만들어 나가고 있는 것이다.
현재 모바일 기기에서 가능한 서비스로는 이메일 서비스, 위치 정보 서비스, 게임 서비스, 무선 금융 서비스, 무선 전자 상거래, 무선 정보 서비스 등 다양하다.
그러나, 향후 이보다 많은 서비스가 실현될 것으로 보이며, 현재 유선 인터 넷으로 가능한 모든 서비스는 모바일 기기에서 그대로 실현되고 있는 실정이다.
더욱이, 최근 몇 년 동안 컴퓨터의 초소형화 및 무선 통신의 범용화에 따른 유비쿼터스 환경이 급격히 발전하고 있다.
핸드폰, PDA(Personal Digital Assistants), 스마트폰의 판매 수는 급증되고 있으며, 이 모바일 기기들은 다양한 어플리케이션과 저장 인터페이스를 갖추고 있어 여러 가지 정보 노출의 가능성이 열려 있는 실정이다.
한편, 유비쿼터스 환경에서의 사용자들은 다양하고 통합적인 서비스를 이용하기를 원하고 있으며, 이를 위하여 다양한 데이터의 저장 및 관리는 필수적인 요소이다.
이러한 다양한 데이터들 중에는 민감한 정보들도 많이 존재하게 되어 유비쿼터스 환경에서 사용자 데이터의 안전한 관리가 중요한 요소로 부각되고 있다.
최근에는 핸드폰뿐만 아니라 PDA나 스마트폰의 사용자가 급증하면서 모바일 기기에 저장되어 있는 데이터 유출의 위험성이 점점 증가하고 있는 추세이다.
또한 모바일 기기의 크기가 점점 작아지고 경량화되면서 분실 및 도난의 위험성이 커지고 있으며, 기기에 저장된 개인 정보가 유출되어 범죄에 악용될 우려가 커지고 있다.
실제로, 모바일 기기내에는 사용자의 다양한 개인정보(주민등록번호, 금융 거래 정보, 일정, 주소록, 메일, 메모 뿐만 아니라, 기업의 망에 연결하여 이용할 경우 기업 내부의 기밀정보도 저장되어 있으므로 데이터의 관리는 반드시 필요한 요소이다.
현재, 대부분의 모바일 기기들은 데이터를 저장할 때에 기본적으로 암호화를 하지 않고 있으며, 핸드폰의 경우에 문자 메시지를 인코딩하여 저장하는 경우 외에는 데이터를 곧 바로 저장장치에 저장한다.
그 중에서도 일부 모델만 인코딩을 적용할 뿐이고, 인코딩 방식을 알아내는 것 또한 그리 어려운 문제가 아니다.
이런 데이터를 제3자가 접근하지 못하게 하기 위하여, 보통 패스워드를 통하여 접근 제한 기능을 제공하지만 일반적으로 패스워드가 네자리 이고, 숫자 입력만 지원하기 때문에 전수 조사로 쉽게 패스워드를 알아내는 것이 가능하다.
또한, 패스워드를 알아낼 수 없는 환경이라 하더라도, 조인트 테스트 액션 그룹(Joint Test Action Group:JTAG)과 같은 하드웨어적인 방법이나, 퀄컴 프러덕트 서포트 툴(Qualcomm Product Support Tool:QPST)와 같은 소프트웨어 적인 방법으로 모바일 기기 내부의 데이터를 추출하는 것이 가능하기 때문에 데이터가 원본 그대로 저장되어 있다면 정보의 유출은 쉽게 이루어질 수 있다.
더군다나, 이런 모바일 기기들이 기업의 업무에 사용될 경우에 기업의 고객 정보, 기밀 문서 등이 유출되면 기업의 경제적인 손실 및 이미지 실추로 인하여 큰 타격이 예상된다.
이와 같은 하기의 표 1은 모바일 기기에 대한 위협과 공격으로 인한 소요 비용들을 정리한 것이다.
Figure 112008051844879-pat00001
현재, 모바일 기기들은 데이터를 저장할 때에 내부의 메모리에 저장을 하거나, 모바일용 데이터베이스에 저장을 하고 옵션으로 외부의 저장 장치를 따로 두는 방식을 취하고 있다.
또한, 접근 제어 방식으로 사용자가 패스워드를 설정해 놓아 모바일 기기 자체에 잠금 설정을 할 수도 있다.
이러한 잠금 기능을 통하여 원하지 않는 사용자로부터 데이터 접근을 제한한다.
그러나, 이러한 패스워드를 통한 접근 제한은 큰 문제점이 있다. 일단 가장 큰 문제점은 패스워드가 4자리로 제한되어 있고, 숫자만을 패스워드로 입력받기 때문에 전수조사로 쉽게 파악될 수 있다.
그러므로, 패스워드를 알아내기만 한다면 내부의 데이터는 바로 공개가 되어 버린다.
또한, 패스워드를 전수조사로 알아낼 수 없는 상황이라 할지라도, 내부의 메모리를 추출하는 도구를 통하여 데이터의 추출이 가능하다면 내부의 데이터는 공개가 되어 버린다.
여기서, 가장 큰 문제점은 데이터를 원본 그대로 메모리나 데이터베이스에 저장한다는 점에 있다.
또한, 모바일 기기의 사용이 높아져 가면서 모바일 기기내의 저장 정보는 해커와 악성 코드 사용자들의 새로운 공격대상으로 떠오르고 있다.
2004년 6월 처음 발견된 카비르 웜은 자기 복제와 네트워크를 통해 전파되는 최초의 웜 형태의 악성코드로, 삼성, 노키아, 지멘스, 소니에릭슨 등의 생산한 스마트 폰에 사용되는 심비안 운영체제에 침투하여 단말기 전원을 켤때마다 액정화면에 'Caribe'라는 메시지를 보이게 하며, 이는 주로 근거리 무선통신규격인 블루투스(Bluetooth)를 이용하여 전염된다.
이외에도, 전 세계적으로 다양한 모바일 악성코드가 보고되고 있다.
도 1은 다양한 경로의 모바일 기기의 감염 경로를 도시하고 있다. 이러한 모바일 기기에 대한 위협과 공격은 핸드셋 제조업체, 모바일 사업자, 기업, 개인 등에게 상당한 비용의 위험을 초래할 수 있다. 이와 같이, 모바일 기기의 데이터에 물리적인 접근 뿐만 아니라, 네트워크를 통한 침투도 일어나고 있기 때문에 데이터를 저장하고 관리하는데 있어서 새로운 구조를 가지는 프라이버시 보호 아키텍처가 필요하다.
즉, 종래의 휴대 단말에서의 프라이버시 보호 방법은 단말 내부의 관리 프로그램을 응용한 것으로, 기존의 솔루션 제품들은 보통 클라이언트 서버 모델로 중앙 집중식 관리 모델이어서 내부 관리자의 해킹 위험이 있고, 단일 응용 프로그램이 아닌 보안 플랫폼 아키텍처는 암호화 기능을 제공하는 모바일 데이터베이스거나 단말 위에 올라가는 보안 솔루션 응용프로그램으로 모바일 기기의 데이터에 물리적인 접근 뿐만 아니라, 네트워크를 통한 침투도 일어나고 있기 때문에 데이터를 저장하고 관리하는데 있어서 모바일 기기에 개인 프라이버시 보호에 문제가 있다.
따라서, 본 발명이 해결하고자 하는 첫 번째 과제는 단말 내부의 온 디바이스 보안 아키텍쳐를 제공하여 단말기 자체적으로 독립적인 보안환경을 제공할 수 있는 모바일 기기에서의 통합형 데이터 관리 방법을 제공하는 것이다.
본 발명이 해결하고자 하는 두 번째 과제는 상기 모바일 기기에서의 통합형 데이터 관리 방법을 적용한 모바일 기기에서의 통합형 데이터 관리 장치를 제공하는 것이다.
그리고 본 발명이 해결하고자 하는 세 번째 과제는 상기 모바일 기기에서의 통합형 데이터 관리 방법을 컴퓨터에서 수행할 수 있도록 프로그램으로 기록된 기록매체를 제공하는 것이다.
상기 첫 번째 과제를 해결하기 위하여 본 발명은,
인증 사용자에 의해 고유의 로그인 패스워드가 모바일 기기에 입력되면, 상기 로그인 패스워드, 상기 인증 사용자에 의해 미리 설정된 이티레이션(iteration) 값, 및 제 1 솔트(salt)값을 입력값으로 하여 해쉬 연산에 의해 인증 패스워드 해쉬값을 생성하고, 상기 모바일 기기의 단말 데이터베이스에 저장하는 단계; 상기 로그인 패스워드, 상기 이티레이션 값 및 제 2 솔트값을 이용하여 암호키를 생성하는 단계; 상기 인증 사용자의 모바일 기기에서 랜덤 생성된 비밀키를 상기 생성된 암호키를 이용하여 암호화함으로써 비밀키 암호화값을 생성하여 상기 단말 데이터 베이스에 저장하는 단계; 특정 사용자에 의해 패스워드가 입력되면, 상기 이티레이션 값, 상기 제 1 솔트값을 이용하여 패스워드 해쉬값을 생성하고, 상기 인증 패스워드 해쉬값과 비교하여 사용자 인증을 수행하는 단계; 및 상기 인증 사용자로부터 특정 데이터의 암호 요청에 관한 쿼리를 수신하면, 상기 단말 데이터베이스에 저장된 상기 비밀키 암호화값을 복호화하여 상기 비밀키를 추출하고, 상기 추출된 비밀키를 이용하여 상기 모바일 기기의 특정 데이터를 암호화하는 단계를 포함하는 모바일 기기에서의 통합형 데이터 관리 방법을 제공한다.
여기서, 상기 특정 데이터를 암호화하는 단계는 상기 추출된 비밀키에 따라 암호화된 특정 데이터가 상기 인증 사용자의 요청에 의해 로드되면, 상기 인증 사용자의 로그인 패스워드 입력에 따라 상기 암호키를 생성하는 단계; 및 상기 생성된 암호키를 이용하여 상기 암호화된 특정 데이터를 복호화하는 단계를 더 포함할 수 있다.
그리고, 상기 특정 데이터의 암호화 및 복호화는 128, 192 또는 256 비트의 에이이에스(AES) 암호화 알고리즘 및 피비이(PBE) 암호화 알고리즘에 의해 수행되는 것을 특징으로 한다.
아울러, 상기 암호키를 생성하는 단계는 상기 로그인 패스워드, 상기 이티레이션 값 및 상기 제 2 솔트값을 입력값으로 하여 해쉬 연산을 수행하는 단계; 및 상기 해쉬 연산의 결과값의 MSB 16바이트(byte)를 취하여 상기 암호키를 생성하는 단계를 포함할 수 있다.
또한, 상기 암호키는
Figure 112008051844879-pat00002
는 암호키이고,
Figure 112008051844879-pat00003
은 이티레이션 값 이며,
Figure 112008051844879-pat00004
가 로그인 패스워드이며,
Figure 112008051844879-pat00005
는 제 2 솔트값일 때, 수학식
Figure 112008051844879-pat00006
에 의해 생성될 수 있다.
한편, 상기 사용자 인증을 수행하는 단계는 상기 패스워드 해쉬값과 상기 인증 패스워드 해쉬값이 동일하면 사용자 인증을 수행하는 단계; 및 상기 패스워드 해쉬값과 상기 인증 패스워드 해쉬값이 동일하지 않을 경우, 사용자 인증이 실패된 것으로 판단하여 상기 패스워드 해쉬값을 삭제하는 단계를 포함할 수 있다.
그리고, 상기 모바일 기기의 특정 데이터는 캐쉬(cache) 정보, 상기 모바일 기기의 파일 시스템의 각각의 정보 및 상기 인증 사용자의 입력에 의해 생성된 텍스트 정보를 포함할 수 있다.
한편, 상기 모바일 기기는 휴대폰, 스마트폰, 피디에이(Personal Data Assistant:PDA) 및 네비게이션 중에서 선택된 어느 하나를 포함할 수 있다.
상기 두 번째 과제를 해결하기 위하여 본 발명은,
인증 사용자로부터 입력 데이터를 수신받고, 상기 인증 사용자의 쿼리에 의해 생성된 정보를 출력하도록 하는 사용자 인터페이스를 제공하는 사용자 계층; 상기 사용자 계층에 입력된 상기 인증 사용자의 입력 데이터에 의해 암호화 및 복호화를 수행하는 관리 계층; 및 상기 인증 사용자의 모바일 기기의 어플리케이션에서 생성된 데이터, 상기 사용자 계층 및 상기 관리 계층에서 생성된 데이터를 저장하는 모바일 기기의 단말 데이터베이스를 포함하고, 상기 사용자 계층은 상기 인증 사용자로부터 로그인 패스워드를 수신하고, 특정 사용자로부터 인증을 위한 패스워 드를 수신하는 패스워드 수신부; 및 상기 인증 사용자 고유의 비밀키를 생성하는 비밀키 생성부를 포함하고, 상기 관리 계층은 상기 로그인 패스워드, 상기 인증사용자에 의해 미리 설정된 이티레이션(iteration) 값, 및 제 1 솔트(salt)값을 입력값으로 하여 해쉬 연산에 의해 인증 패스워드 해쉬값을 생성하는 인증 패스워드 해쉬값 생성부; 특정 사용자에 의해 상기 패스워드 수신부에 패스워드가 입력되면, 상기 이티레이션 값, 상기 제 1 솔트값을 이용하여 패스워드 해쉬값을 생성하고, 상기 인증 패스워드 해쉬값과 비교하여 사용자 인증을 수행하는 인증부; 상기 로그인 패스워드, 상기 이티레이션 값 및 제 2 솔트값을 이용하여 암호키를 생성하는 암호키 생성부; 상기 비밀키를 상기 암호키를 이용하여 암호화함으로써 비밀키 암호화값을 생성하는 비밀키 암호화값 생성부; 및 상기 인증 사용자로부터 특정 데이터의 암호 요청에 관한 쿼리를 수신하며, 상기 단말 데이터베이스에 저장되는 상기 비밀키 암호화값을 복호화하여 상기 비밀키를 추출하고, 상기 추출된 비밀키를 이용하여 상기 모바일 기기의 특정 데이터를 암호화하는 데이터 암호화부를 포함하는 것을 특징으로 하는 모바일 기기에서의 통합형 데이터 관리 장치를 제공한다.
또한, 상기 관리 계층은 상기 비밀키에 따라 암호화된 특정 데이터가 상기 인증 사용자의 쿼리에 의해 로드되면, 상기 인증 사용자의 로그인 패스워드 입력에 따라 상기 암호키를 생성하고, 상기 생성된 암호키를 이용하여 상기 암호화된 특정 데이터를 복호화하는 데이터 복화화부를 더 포함할 수 있다.
아울러, 상기 관리 계층은 128, 192 또는 256 비트의 에이이에스(AES) 암호화 알고리즘 및 피비이(PBE) 암호화 알고리즘에 따라 암호화 또는 복호화를 수행할 수 있다.
그리고, 상기 암호키 생성부는 상기 로그인 패스워드, 상기 이티레이션 값 및 상기 제 2 솔트값을 입력값으로 하여 해쉬 연산을 수행하고, 상기 해쉬 연산의 결과값의 MSB 16바이트(byte)를 취하여 상기 암호키를 생성할 수 있다.
또한, 상기 암호키는
Figure 112008051844879-pat00007
는 암호키이고,
Figure 112008051844879-pat00008
은 이티레이션 값이며,
Figure 112008051844879-pat00009
가 로그인 패스워드이며,
Figure 112008051844879-pat00010
는 제 2 솔트값일 경우 수학식
Figure 112008051844879-pat00011
에 의해 연산되는 것을 특징으로 한다.
그리고, 상기 인증부는 상기 패스워드 해쉬값과 상기 인증 패스워드 해쉬값이 동일하면 사용자 인증을 수행하고, 상기 패스워드 해쉬값과 상기 인증 패스워드 해쉬값이 동일하지 않을 경우, 사용자 인증이 실패된 것으로 판단하여 상기 패스워드 해쉬값을 삭제하는 것을 특징으로 한다.
아울러, 상기 모바일 기기의 특정 데이터는 캐쉬(cache) 정보, 상기 모바일 기기의 파일 시스템의 각각의 정보 및 상기 인증 사용자의 입력에 의해 생성된 텍스트 정보를 포함하는 것을 특징으로 한다.
그리고, 상기 모바일 기기는 휴대폰, 스마트폰, 피디에이(Personal Data Assistant:PDA) 및 네비게이션 중에서 선택된 어느 하나를 포함하는 것을 특징으로 한다.
상기 세 번째 과제를 해결하기 위하여 본 발명은,
상기 모바일 기기에서의 통합형 데이터 관리 방법을 컴퓨터에서 수행할 수 있도록 프로그램으로 기록된 기록매체를 제공한다.
본 발명에 의하면, 모바일 기기, 어플리케이션, OS/Platform 및 저장 장치의 종류에 독립적인 통합적 데이터 관리 구조를 제공할 수 있으며, 응용프로그램이 아닌 보안 플랫폼 구조 자체에 따라 모바일 기기에서 안전한 통합형 데이터 관리 구조를 제공함으로써, 기기의 도난, 분실, 인증되지 않은 사용자로부터의 접근, 각종 해킹, 악성코드로부터의 노출 등의 보안 위협으로부터 향상된 보안성을 제공할 수 있는 효과가 있다.
본 발명은 휴대 단말, 즉 모바일 기기에 저장되는 사용자 프라이버시와 관련된 모든 정보를 안전하게 암호화하여 저장하고, 이를 필요에 따라 효율적으로 복호화할 수 있는 통합형 사용자 프라이버시 관리 모델을 제공한다.
즉, 모바일 기기 및 사용자 정보를 저장하고, 이를 기반으로 동작하는 모바일 기기의 애플리케이션에서 안전한 사용자 정보 저장 모델을 본 발명은 제공할 수 있다.
이를 위하여 모바일 기기는 사용자에게 사용자 인터페이스(User Interface:UI)를 제공하고, 사용자가 필요한 정보를 사용자의 패스워드를 입력받아 필요한 서비스를 진행한다.
그리고, 사용자가 입력한 로그인 패스워드를 기반으로 하여 대칭키를 생성하고, 모바일 기기에 저장된 정보를 암호화하여 저장하거나, 복호화하여 참조한다.
이에 의하여 사용자 정보는 본인 이외에 어떠한 제3자도 사용자의 정보를 열람할 수 없으며, 기존의 모바일 기기에서의 사용자 정보 관리는 암호화 없이 단말의 파일시스템에 그래도 저장하고, 제3자가 휴대단말 메모리부에 직접적으로 접근할 경우에 사용자 정보가 그래도 노출되는데 반하여, 본 발명에 의하면 사요자 정보는 정확한 사용자 패스워드를 알지 못하는 한 자신이 원하는 정보를 열람할 수 없게 된다.
이와 같은 방식을 적용하면, 기본적으로 휴대 단말에서 제공하는 전화번호부, 문자 메시지뿐만 아니라 사용자의 사진, 위치정보, 파일 관리 등의 휴대 단말기의 모든 서비스 어플리케이션에 필요한 사용자 정보를 통합적으로 안전하게 관리할 수 있게 된다.
한편, 하기에 상술되는 인증 사용자란 모바일 기기에 자신의 정보를 등록한 자로, 합법적인 소유권을 가지거나, 상기 합법적인 소유권을 가진자로부터 사용에 대한 허락을 받은 자를 의미한다.
그리고, 하기에 상술되는 본 발명의 통합형 데이터 관리 방법은 모바일 기기에 한정되었으나, 이에 구애받지 않고, 인증 사용자의 로그인 정보를 이용하는 통신 분야에서의 암호화에 효율적으로 적용될 수 있음은 물론이다.
이하, 본 발명의 바람직한 실시예를 첨부도면에 의거하여 상세하게 설명하기로 한다.
그러나, 다음에 예시하는 본 발명의 실시예는 여러 가지 다른 형태로 변형할 수 있으며, 본 발명의 범위가 하기에 상술되는 실시예에 한정되는 것은 아니다. 본 발명의 실시예는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 더욱 완전하게 설명하기 위하여 제공된다.
도 2는 본 발명의 일 실시예에 따른 모바일 기기에서의 통합형 데이터 관리 방법의 흐름도를 도시한 것이다.
도 2를 참조하면, 우선 인증 사용자에 의해 고유의 로그인 패스워드가 모바일 기기에 입력되면, 로그인 패스워드, 인증 사용자에 의해 미리 설정된 이티레이션(iteration) 값 및 제 1 솔트(salt)값을 입력값으로 하여 해쉬 연산에 의해 인증 패스워드 해쉬값을 생성하고, 모바일 기기의 단말 데이터베이스에 저장한다(S210).
즉, 이는 로그인 패스워드 생성과정으로, 인증 사용자의 로그인 패스워드를 기반으로 인증 사용자인지의 여부를 확인하기 위한 인증 패스워드 해쉬값을 생성하는 과정이다.
이를 위하여, 입력값으로 인증 사용자에 의해 설정되거나, 관리자에 의해 미리 결정된 로그인 패스워드, 시스템 상에서 미리 결정된 이티레이션 값, 제 1 솔트값을 입력값으로 하여 해쉬 연산을 수행함으로써 인증 패스워드 해쉬값을 생성한다.
여기서, 추가적으로 제 1 솔트값이 사용되는 것은 패스워드 만으로 인증 패스워드 해쉬값을 생성하는 것보다 더욱 결과값의 복잡도를 높이기 위함이다.
그 다음, 상기 로그인 패스워드, 상기 이티레이션 값 및 제 2 솔트값을 이용하여 암호키를 생성한다(S220).
여기서, 암호키를 생성하는 이유는 상기 과정(S210)과는 달리, 인증 사용자 에 의해 특정 데이터를 암호화하기 위함이며, 사용자의 인증을 위하여 사용되는 제 1 솔트값과는 별도로 데이터의 암호화를 위하여 제 2 솔트값을 별도로 사용함으로써 암호화의 복잡도를 더욱 증가시킬 수 있다.
그 다음, 상기 인증 사용자의 모바일 기기에서 비밀키를 랜덤 생성하고, 생성된 비밀키를 상기 과정(S220)에서 생성된 암호키를 이용하여 암호화함으로써 비밀키 암호화값을 생성하고, 비밀키 암호화값을 단말 데이터베이스에 저장한다.
여기서, 비밀키 암호화값을 생성하는 이유는 전술한 바와 같이, 모바일 기기에서 생성되거나, 사용자의 조작에 의해 생성된 데이터를 암호화하는 암호키를 암호화하여 모바일 기기의 단말 데이터베이스에 저장하기 위함이며, 상기 비밀키 암호화값이 유출된다고 하더라도, 타 사용자가 상기 로그인 패스워드, 인증 사용자에 의해 미리 설정된 이티레이션(iteration) 값 및 제 1 솔트(salt)을 모두 알지 못하는 한 로그인을 수행할 수 없고, 더불어 상기 로그인 패스워드, 이티레이션 값, 제 2 솔트값을 모두 알지 못하는 한 상기 암호키를 알 수 없으며, 이에 따라 상기 암호키에 의해 암호화된 모바일 기기의 특정 데이터를 복호화 할 수 없다.
그 다음, 특정 사용자에 의해 패스워드가 입력되면, 상기 이티레이션 값, 상기 제 1 솔트값을 이용하여 패스워드 해쉬값을 생성(S240)하고, 상기 인증 패스워드 해쉬값과 비교하여 사용자 인증을 수행한다(S250).
이 과정은 상기 모바일 기기를 사용하는 사용자가 인증 사용자인지의 여부를 확인하는 과정으로, 이는 모바일 기기에 접근하는 사용자에게 패스워드를 입력하도록 하여, 패스워드가 입력되면 이를 기반으로 모바일 기기에 미리 설정된 이티레이 션 값과 제 1 솔트값을 기반으로 패스워드 해쉬값을 생성하고, 패스워드 해쉬값이 생성되면, 상기 패스워드 해쉬값과 상기 모바일 기기의 단말 데이터베이스에 저장된 인증 패스워드 해쉬값과 비교하여, 이의 동일성 여부에 따라 사용자를 인증한다.
그 다음, 인증 사용자로부터 특정 데이터의 암호 요청에 관한 쿼리를 수신하면(S260), 최종적으로 상기 단말 데이터베이스에 저장된 상기 비밀키 암호화값을 복호화하여 상기 비밀키를 추출하고, 상기 추출된 비밀키를 이용하여 상기 모바일 기기의 특정 데이터를 암호화한다(S270).
이 과정은 인증 과정을 수행한 인증 사용자에 의해 특정 데이터를 암호화하는 과정으로, 암호화하고자 하는 단말 데이터베이스에 저장된 특정 데이터를 로드하면, 인증 사용자의 로그인 패스워드 입력에 따라 상기 과정(S220)을 수행하여 암호키를 생성한다.
그러면, 상기 생성된 암호키를 기반으로 단말 데이터베이스에 저장된 개인키 암호화 값을 복호화하여 상기 비밀키를 추출하고, 추출된 비밀키를 이용하여 상기 특정 데이터를 암호화할 수 없다.
따라서, 인증 과정을 수행하지 못한 외부 사용자는 비밀키를 추출하기 위한 여타의 키 값을 알 수 없으므로, 특정 데이터를 암호화할 수 없을 뿐만 아니라, 복호화도 수행할 수 없다.
여기서, 암호화 및 복호화 알고리즘은 128, 192 또는 256 비트의 에이이에스(AES) 암호화 알고리즘을 적용할 수 있고, 피비이(PBE) 알고리즘을 적용할 수 있 다.
여기서, 에이이에스(AES) 암호화 알고리즘은 개선된 암호화 표준(Advanced Encryption Standard:AES)으로 대칭키 암호화 규격(Data Encryption Standard:DES )과 같이 128, 192 또는 256 비트의 블럭 암호를 이용하는 대칭키 암호 시스템이다.
그리고, 피비이(PBE) 암호화 알고리즘은 패스워드 기반의 암호화 알고리즘(Password-Based Encryption:PBE)으로, RSA사가 제시한 공개 키 암호 표준(Public-Key Cryptography Standard:PKCS)의 하나인 PKCS #5를 적용할 수 있고, 이를 기반으로, 개인 키 정보를 사용자의 패스워드에 기반하여 암호화하는 암호화 알고리즘을 적용할 수 있다.
한편, 상기 과정(S270)은 상기 추출된 비밀키에 따라 암호화된 특정 데이터가 상기 인증 사용자의 요청에 의해 로드되면, 상기 인증 사용자의 로그인 패스워드 입력에 따라 암호키를 생성하고, 상기 생성된 암호키를 이용하여 상기 암호화된 특정 데이터를 복호화하는 단계를 더 포함할 수 있다.
즉, 암호화 뿐만 아니라 복호화 과정에서도 인증 사용자의 패스워드가 입력되어야 하며, 잘못된 패스워드가 입력될 경우, 전술한 바와 같은 방법으로 생성되는 암호키의 키 값이 달라지므로 암호화된 특정 데이터를 복호화할 수 없다.
도 3은 도 2의 인증 패스워드 해쉬값 생성 과정(S210)의 상세 흐름도이다.
도 3을 참조하면, 우선 인증 사용자에 의해 패스워드(password)가 입력되면(S211), 인증 사용자의 모바일 기기에서 미리 설정된 이티레이션 값(iteration) 과 제 1 솔트값을 로드(S212)하여, 인증 패스워드 해쉬값
Figure 112008051844879-pat00012
을 생성한다(S213).
여기서, 상기 미리 설정된 이티레이션 값은 인증 패스워드의 해쉬값을 생성하기 위하여 해쉬 연산의 반복 수행 횟수를 의미하여, 상기 제 1 솔트값을 기반으로 패스워드의 암호화의 복잡도를 더욱 증가시킨다.
그리고, 상기 연산된 인증 패스워드 해쉬값을 단말 데이터베이스에 저장( S214)함으로써, 추후 사용자의 인증에 상기 인증 패스워드 해쉬값을 사용하게 된다.
도 4는 상기 도 2의 암호키 생성과정(S220)의 상세 흐름도이다.
도 4를 참조하면, 인증 사용자에 의해 인증 패스워드(password)가 입력(S421)되면, 인증 사용자의 모바일 기기에서 미리 설정된 이티레이션 값(iteration)과 제 2 솔트값(salt2)을 로드(S422)하여, 상기 인증 패스워드, 이티레이션 값 및 제 2 솔트값을 기반으로 해쉬 연산을 수행하여 해쉬연산의 결과값을 생성한다(S423).
마지막으로, 상기 해쉬연산의 결과값에서 최상위 비트(Most Significant Bit:MSB) 16비트를 취하여 암호키
Figure 112008051844879-pat00013
를 생성한다(S424).
즉,
Figure 112008051844879-pat00014
는 암호키이고,
Figure 112008051844879-pat00015
은 이티레이션 값이며,
Figure 112008051844879-pat00016
가 로그인 패스워드이며,
Figure 112008051844879-pat00017
는 제 2 솔트값일 때, 상기 암호키는 하기의 수학식 1에 의해 생성될 수 있다.
Figure 112008051844879-pat00018
도 5는 상기 도 2의 패스워드 해쉬값 생성 과정(S240) 및 사용자 인증 수행 과정(S250)의 상세 흐름도이다.
도 5를 참조하면, 특정 사용자에 의해 패스워드(password')가 입력되면(S541), 단말 데이터베이스에 저장된 이티레이션 값(iteration) 및 제1솔트값(salt1) 을 로드(S542)하여 해쉬연산에 의해 패스워드 해쉬값을 생성한다(S543).
그런 다음, 생성된 패스워드 해쉬값과 인증 사용자의 패스워드에 의해 연산된 인증 패스워드 해쉬값과 비교하여(S544), 양자가 동일할 경우, 사용자 인증을 완료(S545)하고, 동일하지 않을 경우 상기 생성된 패스워드 해쉬값을 삭제(S546)하고 상기 특정 사용자에 의해 패스워드가 재입력되거나, 전체 과정을 종료한다.
도 6은 상기 도 2의 특정 데이터의 암호화 과정(S270)의 상세흐름도이다.
도 6을 참조하면, 인증 사용자로부터 특정 데이터(data)의 암호화 요청에 대한 쿼리를 수신(S671)하면, 단말 데이터베이스에 저장된 비밀키 암호화값
Figure 112008051844879-pat00019
을 로드(S672)하고, 로드된 비밀키 암호화값을 상기 암호키
Figure 112008051844879-pat00020
를 이용하여 복호화함으로써 비밀키를 추출한다(S673).
상기 비밀키를 추출하는 연산은 하기의 수학식 2와 같다.
Figure 112008051844879-pat00021
상기 수학식 2에서
Figure 112008051844879-pat00022
는 복호화 알고리즘을 의미하고,
Figure 112008051844879-pat00023
는 비밀키 암호화값을 의미하고,
Figure 112008051844879-pat00024
는 비밀키를 의미한다
그런 다음, 상기 추출된 비밀키를 이용하여 특정 데이터를 암호화한다(S674).
한편, 여기서 특정 데이터는 모바일 기기의 특정 데이터를 의미하고, 이는 캐쉬(cache) 정보, 상기 모바일 기기의 파일 시스템의 각각의 정보 및 상기 인증 사용자의 입력에 의해 생성된 텍스트 정보를 포함할 수 있고, 상기 모바일 기기는 휴대폰, 스마트폰, 피디에이(Pesonal Data Assitant:PDA)를 포함할 수 있다.
한편, 상기 비밀키를 추출하는 과정(S673) 및 특정 데이터를 암호화하는 과정(S674)에서 암호화 및 복호화 알고리즘은 전술한 128, 192 또는 256 비트의 에이이에스(AES) 암호화 알고리즘을 적용할 수 있고, 피비이(PBE) 알고리즘을 적용할 수 있다.
도 7은 본 발명에 적용되는 암호화된 특정 데이터의 복호화 과정의 상세 흐름도이다.
도 7을 참조하면, 우선 비밀키에 따라 암호화된 특정 데이터
Figure 112008051844879-pat00025
가 인증 사용자의 요청에 의해 로드되면(S781), 인증 사용자의 로그인 패스워드 입력에 따라 암호키
Figure 112008051844879-pat00026
를 생성한다(S782). 상기 암호키 생성과정은 전술한 바와 동일하므로 중복된 설명은 과감히 생략하기로 한다.
그런 다음, 상기 생성된 암호키
Figure 112008051844879-pat00027
에 따라 비밀키 암호화값을 복호화하여 비밀키를 획득한다(S783). 이는 상기 수학식 2에 기재된 바와 동일하다.
그 다음, 상기 비밀키를 이용하여 암호화된 특정 데이터를 복호화한다(S784).
이는 하기의 수학식 3과 같다.
Figure 112008051844879-pat00028
상기 수학식 3에서
Figure 112008051844879-pat00029
는 특정 데이터
Figure 112008051844879-pat00030
를 비밀키
Figure 112008051844879-pat00031
에 의해 암호화한 암호화된 특정 데이터를 의미하고, 이를 상기 과정(S783)에 의해 복호화함으로써 획득된 비밀키
Figure 112008051844879-pat00032
를 기반으로 특정 데이터
Figure 112008051844879-pat00033
를 복호화함을 나타내고 있다.
도 8은 본 발명에 따른 모바일 기기에서의 통합형 데이터 관리 방법의 개괄도를 도시한 것이다.
도 8을 참조하면, 우선 인증 사용자의 로그인 패스워드(810)를 기반으로 미리 설정된 이티레이션 값 및 제 1 솔트값을 이용하여 인증 패스워드 해쉬값(820)을 생성하여 사용자 인증용 인증 패스워드 해쉬값(820)을 단말 데이터베이스(870)에 저장한다.
또한, 인증 사용자의 로그인 패스워드(810)를 기반으로 미리 설정된 이티레이션 값 및 제 2 솔트값을 이용하여 해쉬 연산의 결과값(830)을 생성하고, 상기 해쉬 연산의 결과값 중 최상위 비트(MSB) 16비트를 취하여 암호키(840)를 생성한다.
그리고, 상기 암호키(840)를 이용하여 모바일 기기에서 랜덤 생성된 비밀키(850)을 암호화하여 비밀키 암호화값(860)을 생성하고, 이를 단말 데이터베이스(870)에 저장한다.
도 9는 본 발명의 일 실시예에 따른 모바일 기기에서의 통합형 데이터 관리 장치의 블록도를 도시한 것이다.
한편, 하기에 상술되는 본 발명의 일 실시예에 따른 모바일 기기에서의 통합형 데이터 관리 장치의 상술에 있어서, 전술한 모바일 기기에서의 통합형 데이터 관리 방법과 중복된 상술은 과감히 생략하기로 한다.
도 9를 참조하면, 본 발명의 일 실시예에 따른 모바일 기기에서의 통합형 데이터 관리 장치는 사용자 계층(910), 관리 계층(920) 및 모바일 기기의 단말 데이터베이스(930)을 포함할 수 있다.
한편, 상기 사용자 계층(910)은 인증 사용자로부터 입력 데이터를 수신받고, 상기 인증 사용자의 쿼리에 의해 생성된 정보를 출력하도록 하는 사용자 인터페이스를 제공하며, 이는 패스워드 수신부(911) 및 비밀키 생성부(912)를 포함할 수 있다.
그리고, 관리 계층(920)은 상기 사용자 계층(910)에 입력된 상기 인증 사용자의 입력 데이터에 의해 암호화 및 복호화를 수행하며, 이는 인증 패스워드 해쉬값 생성부(921), 인증부(922), 암호키 생성부(923), 비밀키 암호화값 생성부(924), 및 데이터 암호화부(925)를 포함할 수 있다.
또한, 단말 데이터베이스(930)은 상기 인증 사용자의 모바일 기기의 어플리케이션에서 생성된 데이터, 상기 사용자 계층(910) 및 상기 관리 계층(920)에서 생성된 데이터를 저장하며, 구체적으로는 인증 패스워드 해쉬값(931), 암호키(932) 및 비밀키 암호화 값(933)을 저장할 수 있다.
상기 패스워드 수신부(911)는 상기 인증 사용자로부터 로그인 패스워드를 수신하고, 특정 사용자로부터 인증을 위한 패스워드를 수신한다.
상기 비밀키 생성부는 인증 사용자 고유의 비밀키를 랜덤하게 생성한다.
인증 패스워드 해쉬값 생성부(921)는 상기 로그인 패스워드, 상기 인증 사용자에 의해 미리 설정된 이티레이션(iteration) 값, 및 제 1 솔트(salt)값을 입력값으로 하여 해쉬 연산에 의해 인증 패스워드 해쉬값을 생성한다.
인증부(922)는 특정 사용자에 의해 상기 패스워드 수신부에 패스워드가 입력되면, 상기 이티레이션 값, 상기 제 1 솔트값을 이용하여 패스워드 해쉬값을 생성하고, 상기 인증 패스워드 해쉬값과 비교하여 사용자 인증을 수행하게 된다.
여기서, 상기 인증부(922)는 상기 패스워드 해쉬값과 상기 인증 패스워드 해쉬값이 동일하면 사용자 인증을 수행하고, 상기 패스워드 해쉬값과 상기 인증 패스워드 해쉬값이 동일하지 않을 경우, 사용자 인증이 실패된 것으로 판단하여 상기 패스워드 해쉬값을 삭제할 수 있다.
이와 같이, 패스워드 해쉬값과 상기 인증 패스워드 해쉬값의 동일성 여부에 따라 사용자 인증을 수행함으로써, 한층 보안이 향상된 사용자 인증을 수행할 수 있게 된다.
암호키 생성부(923)는 상기 로그인 패스워드, 상기 이티레이션 값 및 제 2 솔트값을 이용하여 암호키를 생성한다.
여기서, 암호키 생성부(923)는 상기 로그인 패스워드, 상기 이티레이션 값 및 상기 제 2 솔트값을 입력값으로 하여 해쉬 연산을 수행하고, 상기 해쉬 연산의 결과값의 MSB 16바이트(byte)를 취하여 상기 암호키를 생성할 수 있다.
그리고, 상기 암호키는 전술한 바와 같이,
상기 암호키는
Figure 112008051844879-pat00034
는 암호키이고,
Figure 112008051844879-pat00035
은 이티레이션 값이며,
Figure 112008051844879-pat00036
가 로그인 패스워드이며,
Figure 112008051844879-pat00037
는 제 2 솔트값일 때, 상기 수학식 1에 의해 연산될 수 있다.
또한, 비밀키 암호화값 생성부(924)는 상기 비밀키를 상기 암호키를 이용하여 암호화함으로써 비밀키 암호화값을 생성한다.
데이터 암호화부(925)는 상기 인증 사용자로부터 특정 데이터의 암호 요청에 관한 쿼리를 수신하며, 상기 단말 데이터베이스에 저장되는 상기 비밀키 암호화값을 복호화하여 상기 비밀키를 추출하고, 상기 추출된 비밀키를 이용하여 상기 모바 일 기기의 특정 데이터를 암호화하는 역할을 수행한다.
여기서, 모바일 기기의 특정 데이터는 캐쉬(cache) 정보, 상기 모바일 기기의 파일 시스템의 각각의 정보 및 상기 인증 사용자의 입력에 의해 생성된 텍스트 정보를 포함하며, 상기 모바일 기기는 휴대폰, 스마트폰, 피디에이(Personal Data Assistant:PDA) 및 네비게이션을 포함할 수 있다.
한편, 상기 관리 계층(930)은 상기 비밀키에 따라 암호화된 특정 데이터가 상기 인증 사용자의 쿼리에 의해 로드되면, 상기 인증 사용자의 로그인 패스워드 입력에 따라 상기 암호키를 생성하고, 상기 생성된 암호키를 이용하여 상기 암호화된 특정 데이터를 복호화하는 데이터 복화화부(미도시)를 더 포함할 수 있다.
그리고, 상기 관리 계층(930)은 전술한 바와 같이, 128, 192 또는 256 비트의 에이이에스(AES) 암호화 알고리즘 및 피비이(PBE) 암호화 알고리즘에 따라 암호화 또는 복호화를 수행한다.
본 발명에 따른 모바일 기기에서의 통합형 데이터 관리 방법은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터(정보 처리 기능을 갖는 장치를 모두 포함한다)가 읽을 수 있는 코드로서 구현하는 것이 가능하다.
컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 테이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 장치의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등이 있다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 장치에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사항에 의해 정해져야 할 것이다.
도 1은 다양한 경로의 모바일 기기의 감염 경로를 도시한 것이다.
도 2는 본 발명의 일 실시예에 따른 모바일 기기에서의 통합형 데이터 관리 방법의 흐름도를 도시한 것이다.
도 3은 도 2의 인증 패스워드 해쉬값 생성 과정(S210)의 상세 흐름도이다.
도 4는 상기 도 2의 암호키 생성과정(S220)의 상세 흐름도이다.
도 5는 상기 도 2의 패스워드 해쉬값 생성 과정(S240) 및사용자 인증 수행 과정(S250)의 상세 흐름도이다.
도 6은 상기 도 2의 특정 데이터의 암호화 과정(S270)의 상세흐름도이다.
도 7은 본 발명에 적용되는 암호화된 특정 데이터의 복호화 과정의 상세 흐름도이다.
도 8은 본 발명에 따른 모바일 기기에서의 통합형 데이터 관리 방법의 개괄도를 도시한 것이다.
도 9는 본 발명의 일 실시예에 따른 모바일 기기에서의 통합형 데이터 관리 장치의 블록도를 도시한 것이다.

Claims (17)

  1. 인증 사용자에 의해 고유의 로그인 패스워드가 모바일 기기에 입력되면, 상기 로그인 패스워드, 상기 인증 사용자에 의해 미리 설정된 이티레이션(iteration) 값, 및 제 1 솔트(salt)값을 입력값으로 하여 해쉬 연산에 의해 인증 패스워드 해쉬값을 생성하고, 상기 모바일 기기의 단말 데이터베이스에 저장하는 단계;
    상기 로그인 패스워드, 상기 이티레이션 값 및 제 2 솔트값을 이용하여 암호키를 생성하는 단계;
    상기 인증 사용자의 모바일 기기에서 랜덤 생성된 비밀키를 상기 생성된 암호키를 이용하여 암호화함으로써 비밀키 암호화값을 생성하여 상기 단말 데이터베이스에 저장하는 단계;
    특정 사용자에 의해 패스워드가 입력되면, 상기 이티레이션 값, 상기 제 1 솔트값을 이용하여 패스워드 해쉬값을 생성하고, 상기 인증 패스워드 해쉬값과 비교하여 사용자 인증을 수행하는 단계; 및
    상기 인증 사용자로부터 특정 데이터의 암호 요청에 관한 쿼리를 수신하면, 상기 단말 데이터베이스에 저장된 상기 비밀키 암호화값을 복호화하여 상기 비밀키를 추출하고, 상기 추출된 비밀키를 이용하여 상기 모바일 기기의 특정 데이터를 암호화하는 단계를 포함하고,
    상기 특정 데이터를 암호화하는 단계는
    상기 추출된 비밀키에 따라 암호화된 특정 데이터가 상기 인증 사용자의 요청에 의해 로드되면, 상기 인증 사용자의 로그인 패스워드 입력에 따라 상기 암호키를 생성하는 단계;
    상기 생성된 암호키를 이용하여 상기 단말 데이터베이스에 저장된 비밀키 암호화값으로부터 비밀키를 생성하는 단계; 및
    상기 생성된 비밀키를 이용하여 상기 암호화된 특정 데이터를 복호화하는 단계를 더 포함하는 것을 특징으로 하는 모바일 기기에서의 통합형 데이터 관리 방법.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 특정 데이터의 암호화 및 복호화는
    128, 192 또는 256 비트의 에이이에스(AES) 암호화 알고리즘 및 피비이(PBE) 암호화 알고리즘에 의해 수행되는 것을 특징으로 하는 모바일 기기에서의 통합형 데이터 관리 방법.
  4. 제 1 항에 있어서,
    상기 암호키를 생성하는 단계는
    상기 로그인 패스워드, 상기 이티레이션 값 및 상기 제 2 솔트값을 입력값으로 하여 해쉬 연산을 수행하는 단계; 및
    상기 해쉬 연산의 결과값의 MSB 16바이트(byte)를 취하여 상기 암호키를 생성하는 단계를 포함하는 것을 특징으로 하는 모바일 기기에서의 통합형 데이터 관 리 방법.
  5. 제 4 항에 있어서,
    상기 암호키는
    하기의 식 1에 의해 생성되는 것을 특징으로 하는 모바일 기기에서의 통합형 데이터 관리 방법.
    Figure 112008051844879-pat00038
    (1)
    (단,
    Figure 112008051844879-pat00039
    는 암호키이고,
    Figure 112008051844879-pat00040
    은 이티레이션 값이며,
    Figure 112008051844879-pat00041
    가 로그인 패스워드이며,
    Figure 112008051844879-pat00042
    는 제 2 솔트값임.)
  6. 제 1 항에 있어서,
    상기 사용자 인증을 수행하는 단계는
    상기 패스워드 해쉬값과 상기 인증 패스워드 해쉬값이 동일하면 사용자 인증을 수행하는 단계; 및
    상기 패스워드 해쉬값과 상기 인증 패스워드 해쉬값이 동일하지 않을 경우, 사용자 인증이 실패된 것으로 판단하여 상기 패스워드 해쉬값을 삭제하는 단계를 포함하는 것을 특징으로 하는 모바일 기기에서의 통합형 데이터 관리 방법.
  7. 제 1 항에 있어서,
    상기 모바일 기기의 특정 데이터는
    캐쉬(cache) 정보, 상기 모바일 기기의 파일 시스템의 각각의 정보 및 상기 인증 사용자의 입력에 의해 생성된 텍스트 정보를 포함하는 것을 특징으로 하는 모바일 기기에서의 통합형 데이터 관리 방법.
  8. 제 1 항에 있어서,
    상기 모바일 기기는
    휴대폰, 스마트폰, 피디에이(Personal Data Assistant:PDA) 및 네비게이션 중에서 선택된 어느 하나를 포함하는 것을 특징으로 하는 모바일 기기에서의 통합형 데이터 관리 방법.
  9. 제 1 항 또는 제 3 항 내지 제 8 항 중 어느 한 항의 방법을 컴퓨터에서 수행할 수 있도록 프로그램으로 기록된 기록 매체.
  10. 인증 사용자로부터 입력 데이터를 수신받고, 상기 인증 사용자의 쿼리에 의해 생성된 정보를 출력하도록 하는 사용자 인터페이스를 제공하는 사용자 계층;
    상기 사용자 계층에 입력된 상기 인증 사용자의 입력 데이터에 의해 암호화 및 복호화를 수행하는 관리 계층; 및
    상기 인증 사용자의 모바일 기기의 어플리케이션에서 생성된 데이터, 상기 사용자 계층 및 상기 관리 계층에서 생성된 데이터를 저장하는 모바일 기기의 단말 데이터베이스를 포함하고,
    상기 사용자 계층은
    상기 인증 사용자로부터 로그인 패스워드를 수신하고, 특정 사용자로부터 인증을 위한 패스워드를 수신하는 패스워드 수신부; 및
    상기 인증 사용자 고유의 비밀키를 생성하는 비밀키 생성부를 포함하고,
    상기 관리 계층은
    상기 로그인 패스워드, 상기 인증사용자에 의해 미리 설정된 이티레이션(iteration) 값, 및 제 1 솔트(salt)값을 입력값으로 하여 해쉬 연산에 의해 인증 패스워드 해쉬값을 생성하는 인증 패스워드 해쉬값 생성부;
    특정 사용자에 의해 상기 패스워드 수신부에 패스워드가 입력되면, 상기 이티레이션 값, 상기 제 1 솔트값을 이용하여 패스워드 해쉬값을 생성하고, 상기 인증 패스워드 해쉬값과 비교하여 사용자 인증을 수행하는 인증부;
    상기 로그인 패스워드, 상기 이티레이션 값 및 제 2 솔트값을 이용하여 암호키를 생성하는 암호키 생성부;
    상기 비밀키를 상기 암호키를 이용하여 암호화함으로써 비밀키 암호화값을 생성하는 비밀키 암호화값 생성부; 및
    상기 인증 사용자로부터 특정 데이터의 암호 요청에 관한 쿼리를 수신하며, 상기 단말 데이터베이스에 저장되는 상기 비밀키 암호화값을 복호화하여 상기 비밀키를 추출하고, 상기 추출된 비밀키를 이용하여 상기 모바일 기기의 특정 데이터를 암호화하는 데이터 암호화부를 포함하고,
    상기 관리 계층은
    상기 비밀키에 따라 암호화된 특정 데이터가 상기 인증 사용자의 쿼리에 의해 로드되면, 상기 인증 사용자의 로그인 패스워드 입력에 따라 상기 암호키를 생성하고, 상기 생성된 암호키를 이용하여 상기 단말 데이터베이스에 저장된 비밀키 암호화값으로부터 비밀키를 생성한 다음, 상기 생성된 비밀키를 이용하여 상기 암호화된 특정 데이터를 복호화하는 데이터 복호화부를 더 포함하는 것을 특징으로 하는 모바일 기기에서의 통합형 데이터 관리 장치.
  11. 삭제
  12. 제 10 항에 있어서,
    상기 관리 계층은
    128, 192 또는 256 비트의 에이이에스(AES) 암호화 알고리즘 및 피비이(PBE) 암호화 알고리즘에 따라 암호화 또는 복호화를 수행하는 것을 특징으로 하는 모바일 기기에서의 통합형 데이터 관리 장치.
  13. 제 10 항에 있어서,
    상기 암호키 생성부는
    상기 로그인 패스워드, 상기 이티레이션 값 및 상기 제 2 솔트값을 입력값으로 하여 해쉬 연산을 수행하고, 상기 해쉬 연산의 결과값의 MSB 16바이트(byte)를 취하여 상기 암호키를 생성하는 것을 특징으로 하는 모바일 기기에서의 통합형 데이터 관리 장치.
  14. 제 13 항에 있어서,
    상기 암호키는
    하기의 식 2에 의해 생성되는 것을 특징으로 하는 모바일 기기에서의 통합형 데이터 관리 장치.
    Figure 112008051844879-pat00043
    (2)
    (단,
    Figure 112008051844879-pat00044
    는 암호키이고,
    Figure 112008051844879-pat00045
    은 이티레이션 값이며,
    Figure 112008051844879-pat00046
    가 로그인 패스워드이며,
    Figure 112008051844879-pat00047
    는 제 2 솔트값임.)
  15. 제 10 항에 있어서,
    상기 인증부는
    상기 패스워드 해쉬값과 상기 인증 패스워드 해쉬값이 동일하면 사용자 인증을 수행하고, 상기 패스워드 해쉬값과 상기 인증 패스워드 해쉬값이 동일하지 않을 경우, 사용자 인증이 실패된 것으로 판단하여 상기 패스워드 해쉬값을 삭제하는 것을 특징으로 하는 모바일 기기에서의 통합형 데이터 관리 장치.
  16. 제 10 항에 있어서,
    상기 모바일 기기의 특정 데이터는
    캐쉬(cache) 정보, 상기 모바일 기기의 파일 시스템의 각각의 정보 및 상기 인증 사용자의 입력에 의해 생성된 텍스트 정보를 포함하는 것을 특징으로 하는 모바일 기기에서의 통합형 데이터 관리 장치.
  17. 제 10 항에 있어서,
    상기 모바일 기기는
    휴대폰, 스마트폰, 피디에이(Personal Data Assistant:PDA) 및 네비게이션 중에서 선택된 어느 하나를 포함하는 것을 특징으로 하는 모바일 기기에서의 통합형 데이터 관리 장치.
KR1020080070139A 2008-07-18 2008-07-18 모바일 기기에서의 통합형 데이터 관리 방법, 그 장치 및이를 기록한 기록 매체 KR100954841B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080070139A KR100954841B1 (ko) 2008-07-18 2008-07-18 모바일 기기에서의 통합형 데이터 관리 방법, 그 장치 및이를 기록한 기록 매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080070139A KR100954841B1 (ko) 2008-07-18 2008-07-18 모바일 기기에서의 통합형 데이터 관리 방법, 그 장치 및이를 기록한 기록 매체

Publications (2)

Publication Number Publication Date
KR20100009301A KR20100009301A (ko) 2010-01-27
KR100954841B1 true KR100954841B1 (ko) 2010-04-28

Family

ID=41817744

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080070139A KR100954841B1 (ko) 2008-07-18 2008-07-18 모바일 기기에서의 통합형 데이터 관리 방법, 그 장치 및이를 기록한 기록 매체

Country Status (1)

Country Link
KR (1) KR100954841B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9094190B2 (en) 2012-08-06 2015-07-28 Samsung Electronics Co., Ltd. Method of managing key for secure storage of data and apparatus therefor
US10044703B2 (en) 2014-02-28 2018-08-07 Samsung Electronics Co., Ltd. User device performing password based authentication and password registration and authentication methods thereof

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101281099B1 (ko) * 2011-07-18 2013-07-02 순천향대학교 산학협력단 스마트폰 분실 및 도난의 피해 방지를 위한 인증방법
KR101324919B1 (ko) * 2012-01-20 2013-11-01 서울과학기술대학교 산학협력단 휴대 단말기에서 프라이버시 보호를 위한 보안 솔루션 시스템
US9935768B2 (en) 2012-08-06 2018-04-03 Samsung Electronics Co., Ltd. Processors including key management circuits and methods of operating key management circuits
CN106060078B (zh) * 2016-07-11 2019-01-01 浪潮(北京)电子信息产业有限公司 应用于云平台的用户信息加密方法、注册方法及验证方法
CN110855423A (zh) * 2019-09-23 2020-02-28 深圳市智讯互动体育科技有限公司 加密解密有序数值串的方法、装置及存储介质
CN114221762A (zh) * 2021-12-13 2022-03-22 深圳壹账通智能科技有限公司 一种私钥存储方法、读取方法、管理装置、设备及介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030032327A (ko) * 2001-10-17 2003-04-26 엘지전자 주식회사 타원 곡선 암호를 이용한 사용자 인증 방법
KR20030046011A (ko) * 2001-12-03 2003-06-12 정은영 통신 데이터의 자동 암호화 시스템 및 그 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030032327A (ko) * 2001-10-17 2003-04-26 엘지전자 주식회사 타원 곡선 암호를 이용한 사용자 인증 방법
KR20030046011A (ko) * 2001-12-03 2003-06-12 정은영 통신 데이터의 자동 암호화 시스템 및 그 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9094190B2 (en) 2012-08-06 2015-07-28 Samsung Electronics Co., Ltd. Method of managing key for secure storage of data and apparatus therefor
US10044703B2 (en) 2014-02-28 2018-08-07 Samsung Electronics Co., Ltd. User device performing password based authentication and password registration and authentication methods thereof

Also Published As

Publication number Publication date
KR20100009301A (ko) 2010-01-27

Similar Documents

Publication Publication Date Title
KR101769282B1 (ko) 데이터 보안 서비스
KR100954841B1 (ko) 모바일 기기에서의 통합형 데이터 관리 방법, 그 장치 및이를 기록한 기록 매체
EP2798777A1 (en) Method and system for distributed off-line logon using one-time passwords
JP5135509B2 (ja) コンピュータ装置の安全な動作方法
CN103246850A (zh) 文件处理方法和装置
JP2018106026A (ja) アクセス管理システム、アクセス管理方法及びプログラム
US20180053018A1 (en) Methods and systems for facilitating secured access to storage devices
US20210392003A1 (en) Decentralized computing systems and methods for performing actions using stored private data
US10623400B2 (en) Method and device for credential and data protection
CN117751551A (zh) 用于安全互联网通信的系统和方法
JP2009015766A (ja) ユーザ端末、アクセス管理システム、アクセス管理方法、およびプログラム
WO2010038763A1 (ja) 情報管理システム、端末装置、サーバ装置およびプログラム
KR101206735B1 (ko) 모바일 단말기의 보안 관련 정보 보호 장치 및 그 방법
JP2007199978A (ja) 情報処理装置、携帯端末装置及び情報処理実行制御方法
KR101478526B1 (ko) 인증 정보를 이용한 비밀 키 관리 시스템 및 이를 이용한 비밀 키 제공 방법
JP2007060581A (ja) 情報管理システム及び方法
WO2019234801A1 (ja) サービス提供システム及びサービス提供方法
KR20110128371A (ko) 모바일 클라이언트 보안인증시스템과 중앙제어시스템 및 그 동작방법
JP2018110442A (ja) アクセス管理システム、アクセス管理方法及びプログラム
JP4396585B2 (ja) 脆弱性診断プログラム及び脆弱性診断プログラムを記録した記録媒体
JP2008269544A (ja) 利用対象情報管理装置及び利用対象情報管理方法ならびにそのプログラム
JP2005237037A (ja) 認証用記録媒体を用いた認証システムおよび認証用記録媒体の作成方法
JP2020004011A (ja) 情報管理システムおよび情報管理方法
KR100842014B1 (ko) 다수의 장치로부터 네트워크 저장 장치상의 보호 데이터에대한 접근
Pilania et al. ENCRYPTO: A Reliable and Efficient Mobile App for Password Management

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
FPAY Annual fee payment

Payment date: 20130405

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140304

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20150622

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee