KR101839699B1 - 인증정보가 노출되지 않는 안전한 보안 usb 시스템 및 방법 - Google Patents

인증정보가 노출되지 않는 안전한 보안 usb 시스템 및 방법 Download PDF

Info

Publication number
KR101839699B1
KR101839699B1 KR1020160119102A KR20160119102A KR101839699B1 KR 101839699 B1 KR101839699 B1 KR 101839699B1 KR 1020160119102 A KR1020160119102 A KR 1020160119102A KR 20160119102 A KR20160119102 A KR 20160119102A KR 101839699 B1 KR101839699 B1 KR 101839699B1
Authority
KR
South Korea
Prior art keywords
user
file
disk
authentication information
image file
Prior art date
Application number
KR1020160119102A
Other languages
English (en)
Inventor
임강빈
이경률
오인수
이연수
이혜지
Original Assignee
순천향대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 순천향대학교 산학협력단 filed Critical 순천향대학교 산학협력단
Priority to KR1020160119102A priority Critical patent/KR101839699B1/ko
Application granted granted Critical
Publication of KR101839699B1 publication Critical patent/KR101839699B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/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
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data

Landscapes

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

Abstract

일 실시예에 따른 보안 유지 방법은, 파일 시스템 헤더에 사용자로부터 입력된 인증 정보를 삽입하여 디스크 파일을 암호화하고, 인증 과정을 수행함으로써 상기 사용자를 등록하는 단계; 및 상기 사용자의 등록이 완료됨에 따라 상기 암호화된 파일 시스템 헤더를 복호함에 따른 인증 정보와 상기 사용자로부터 재입력된 인증 정보를 비교하여 상기 사용자를 검증함으로써 디스크 파일 전체를 복호하는 인증부를 포함할 수 있다.

Description

인증정보가 노출되지 않는 안전한 보안 USB 시스템 및 방법{METHOD FOR MAINTAINING SECURITY WITHOUT EXPOSURE AUTHENTICATION INFORMATION, AND SECURE USB SYSTEM}
아래의 설명은 보안 기술에 관한 것으로, 인증 정보가 노출되지 않으면서 인증을 우회하는 것이 불가능한 보안 유지 방법 및 장치에 관한 것이다.
기존 보안 USB 플래시 드라이브는 공인인증서 예외 및 비밀번호 초기화 등의 구현상의 취약점, VMware 취약점 및 메모리 직접 접근, 감청 등의 환경상의 취약점, 언락(Unlock) 명령을 악용한 취약점으로 인하여 비밀번호의 노출 및 사용자 인증을 우회함으로써 드라이브 내부에 안전하게 저장된 데이터의 탈취가 가능한 문제점이 존재한다. 더욱이 상기 취약점보다 더욱 심각한 문제점은 현재의 플랫폼이 폰노이만 구조를 고수하고 있어 프로그램 코드 및 프로그램 구동을 위한 다양한 정보가 메모리에 로드되기 때문에 역공학을 통하여 프로그램 분석 및 이를 통한 중요정보가 노출되는 것이다. 다시 말하면, 보안 USB 플래시 드라이브의 관리 프로그램을 역공학하여 내부 동작과정을 분석함으로써 비밀번호의 탈취 및 인증을 우회하여 드라이브 내부에 저장된 데이터에 정상적으로 접근하는 것이 가능하다. 그 일례로 호스트에서 실행되는 관리 프로그램은 기존의 보안 플래시 드라이브와 사용자 사이의 인증정보 전달 및 저장 등의 임무를 담당하는 중간자 역할을 수행하므로 관리 프로그램이 실행되는 자원에 이와 같은 중요한 정보가 할당되어야 한다. 이러한 이유로 역공학을 통하여 중요한 정보가 할당된 자원에 접근함으로써 비밀번호, 혹은 비밀번호와 관련된 인증정보의 탈취가 가능한 취약점, 그리고 이러한 구조로 인하여 인증을 비교하는 루틴이 호스트의 관리 프로그램에 존재함으로써 인증의 우회가 가능한 취약점이 발생한다.
상기 근본적인 원인으로 인하여 보안 USB 플래시 드라이브의 취약점이 지속적으로 드러남에 따라 이를 대응하기 위한 연구가 필요하다.
본 발명은 인증 정보를 노출하지 않으면서 인증을 우회하는 것이 불가능한 안전한 보안 USB 방법 및 시스템을 제공할 수 있다.
일 실시예에 따르면, 보안 유지 방법은 파일 시스템 헤더에 사용자로부터 입력된 인증 정보를 삽입하여 디스크 파일을 암호화하고, 인증 과정을 수행함으로써 상기 사용자를 등록하는 단계; 및 상기 사용자의 등록이 완료됨에 따라 상기 암호화된 파일 시스템 헤더를 복호함에 따른 인증 정보와 상기 사용자로부터 재입력된 인증 정보를 비교하여 디스크 파일 전체를 복호하는 단계를 포함할 수 있다.
상기 사용자를 등록하는 단계는, 디스크로 활용하기 위한 이미지 파일의 생성을 요청함에 따라 상기 사용자로부터 디스크 이미지 파일 및 디스크 이미지 파일과 관련된 정보가 입력되고, 상기 디스크 이미지 파일 및 상기 디스크 이미지 파일과 관련된 정보를 기반으로 보안 USB 플래시 드라이브의 내부에 디스크로 활용하기 위한 파일을 생성하는 단계를 포함할 수 있다.
상기 사용자를 등록하는 단계는, 상기 보안 USB 플래시 드라이브의 내부에 디스크로 활용하기 위한 파일을 생성한 후, 디스크로 인식하기 위한 정보를 추가하기 위하여 포맷을 수행하는 단계를 포함할 수 있다.
상기 사용자를 등록하는 단계는, 상기 사용자로부터 입력된 인증 정보 중 아이디(ID)를 디스크 이미지 파일 내 파일 시스템 헤더의 기 설정된 공간에 삽입하는 단계를 포함할 수 있다.
상기 사용자를 등록하는 단계는, 상기 사용자로부터 입력된 인증 정보 중 비밀번호(PW)를 기반으로 해시 연산을 수행하고, 상기 해시 연산을 수행함에 따른 해시 값을 키로 활용하여 보안 USB 플래시 드라이브의 내부에 생성된 상기 디스크 이미지 파일을 암호화하는 단계를 포함할 수 있다.
상기 사용자를 등록하는 단계는, 상기 사용자의 인증 정보가 요청됨에 따라 사용자 단말을 통하여 상기 사용자의 인증 정보가 재입력되고, 상기 재입력된 인증 정보 중 아이디(ID') 및 디스크 이미지 파일 내 파일 시스템 헤더에 삽입한 아이디(ID)를 비교하여 암호화된 디스크 이미지 파일 내 파일 시스템 헤더에 삽입된 아이디(ID)를 복호화하고, 복호키를 생성하기 위하여 상기 재입력된 인증 정보 중 비밀번호(PW')를 기반으로 해시 연산을 수행하는 단계를 포함할 수 있다.
상기 사용자를 등록하는 단계는, 상기 해시 연산을 수행함에 따른 해시 값을 키로 활용하여 상기 암호화된 디스크 이미지 파일 내 파일 시스템 헤더의 복호를 요청하고, 상기 암호화된 디스크 이미지 파일 내 파일 시스템 헤더를 상기 재입력된 비밀번호(PW')를 기반으로 해시 값을 키로 활용하여 복호화를 수행하는 단계를 포함할 수 있다.
상기 사용자를 등록하는 단계는, 상기 암호화된 디스크 이미지 파일 내 파일 시스템 헤더의 복호가 완료됨에 따라, 상기 복호된 헤더 내에 존재하는 아이디(ID)와 사용자로부터 재입력된 아이디(ID')를 비교하고, 상기 복호된 헤더 내에 존재하는 아이디와 상기 사용자로부터 재입력된 아이디가 일치하는 경우, 상기 사용자를 등록하는 단계를 포함할 수 있다.
상기 암호화된 디스크 파일 전체를 복호하는 단계는, 암호화된 디스크 이미지 파일들 중 복호를 원하는 디스크 이미지 파일을 선택됨을 수신하고, 상기 암호화된 디스크 이미지 파일을 복호하기 위하여 상기 사용자에게 상기 인증 정보를 재요청함에 따라 아이디(ID') 및 비밀번호(PW')를 포함하는 인증 정보를 수신하는 단계를 포함할 수 있다.
상기 암호화된 디스크 파일 전체를 복호하는 단계는, 상기 비밀번호(PW')에 대하여 해시 연산을 수행함으로써 해시 값을 생성하고, 상기 해시 연산을 수행함에 따른 해시 값을 키로 활용하여 상기 암호화된 디스크 이미지 파일 내 파일 시스템 헤더의 복호를 요청하는 단계를 포함할 수 있다.
상기 암호화된 디스크 파일 전체를 복호하는 단계는, 상기 암호화된 디스크 이미지 파일 내 파일 시스템 헤더를 상기 비밀번호(PW')를 기반으로 해시 값을 키로 활용하여 복호화가 수행되고, 상기 디스크 이미지 파일 내 파일 시스템 헤더의 복호가 완료됨에 따라 디스크 이미지 파일 내 파일 시스템 헤더 내부에 삽입한 아이디(ID)와 사용자로부터 재입력된 아이디(ID')를 비교하는 단계를 포함할 수 있다.
상기 암호화된 디스크 파일 전체를 복호하는 단계는, 상기 디스크 이미지 파일 내 파일 시스템 헤더 내부에 삽입한 아이디(ID 와 상기 사용자로부터 재입력된 아이디(ID')가 일치할 경우, 상기 사용자 검증이 완료되는 단계를 포함할 수 있다.
상기 암호화된 디스크 파일 전체를 복호하는 단계는, 상기 디스크 이미지 파일 전체의 복호를 완료한 경우, 이미지 파일을 디스크로 인식하기 위하여 마운트를 수행하는 단계를 포함할 수 있다.
일 실시예에 따르면, 보안 유지 장치는 파일 시스템 헤더에 사용자로부터 입력된 인증 정보를 삽입하여 디스크 파일을 암호화하고, 인증 과정을 수행함으로써 상기 사용자를 등록하는 등록부; 및 상기 사용자의 등록이 완료됨에 따라 상기 암호화된 파일 시스템 헤더를 복호함에 따른 인증 정보와 상기 사용자로부터 재입력된 인증 정보를 비교하여 디스크 파일 전체를 복호하는 인증부를 포함할 수 있다.
본 발명은 디스크 관리 및 사용자 인증, 데이터 암/복호 기능을 제공함으로써 데이터의 안전성을 확보할 수 있다. 이러한 기능을 통하여 기밀성, 무결성, 인증, 접근제어를 만족하고 위장 공격, 중간자 공격, 재전송 공격, 감청 공격으로부터의 데이터를 안전하게 보호할 수 있다.
도 1은 일 실시예에 따른 보안 유지 방법을 개괄적으로 설명하기 위한 도면이다.
도 2는 일 실시예에 따른 보안 유지 장치의 구성을 설명하기 위한 블록도이다.
도 3은 일 실시예에 따른 보안 유지 장치에서 상태 정보, 동작 상태 및 암/복호에 대한 용어를 정리한 표이다.
도4는 일 실시예에 따른 보안 유지 장치의 등록 과정을 설명하기 위한 흐름도이다.
도 5는 일 실시예에 따른 보안 유지 장치의 인증 과정을 설명하기 위한 흐름도이다.
이하, 실시예를 첨부한 도면을 참조하여 상세히 설명한다.
도 1은 일 실시예에 따른 보안 유지 방법을 개괄적으로 동작을 설명하기 위한 도면이다.
사용자 단말(110)은 PC(personal computer), 노트북 컴퓨터(laptop computer), 랩탑 컴퓨터(laptop computer), 스마트폰(smart phone), 태블릿(tablet) 또는 웨어러블 컴퓨터(wearable computer), TV 등과 같이 USB 플래시 드라이브가 삽입되는 디바이스를 포함할 수 있다.
이동식 저장 장치인 USB 플래시 드라이브(USB Flash Drive)는 호스트의 USB 포트에 삽입하여 사용하며, USB 메모리 또는 USB 디스크로 불린다. USB 플래시 드라이브는 빠른 전송 속도, 높은 휴대성, 자유로운 데이터 전송 및 삭제 등의 다양한 장점을 지니고 있지만, 다양한 보안위협으로 인하여 중요 데이터가 노출되는 문제점을 보완하고자 보안 USB 플래시 드라이브가 등장하였다. 보안 USB 플래시 드라이브는 하드웨어 또는 소프트웨어를 통하여 드라이브 내부에 저장된 데이터를 보호하는 USB 플래시 드라이브를 의미할 수 있다.
보안 USB 플래시 드라이브는 USB 플래시 드라이브와는 다르게 다양한 보안 기능을 제공하며, 이를 위하여 플래시 드라이브 내부 영역을 일반 영역 및 보안 영역으로 분리할 수 있다. 보안 USB 플래시 드라이브는 보안 영역에 저장된 정보를 기반으로 사용자의 데이터가 저장되는 일반 영역을 안전하게 보호할 수 있다.
이에 따라 실시예들에서는 보안 USB 플래시 드라이브가 내부에 저장된 데이터를 안전하게 보호하지 못하는 문제점을 해결하기 위하여 인증정보가 노출되지 않으면서도 보안 USB 플래시 드라이브가 가지는 취약점을 보완하는 방법을 제안하기로 한다. 이때, 보안 USB 플래시 드라이브를 예를 들어 설명하기로 하며, 보안 USB 플래시 드라이브뿐만 아니라 스토리지, 메모리에도 동일하게 적용될 수 있다. 또한, 보안 USB플래시 드라이브(100)에 관리 프로그램이 설치되어 예를 들면, 디스크 이미지 파일을 생성하여 생성된 이미지 파일을 디스크로 마운트하는 소프트웨어 방식 또는 하드웨어 자체 모듈로 제작되어 동작하는 하드웨어 방식 모두 적용하는 형태가 가능할 것이다. 아래의 설명에서는 디스크 이미지 파일을 생성하고, 생성된 이미지 파일을 디스크로 마운트하는 소프트웨어 방식을 예를 들어 상세히 설명하기로 한다.
인증정보가 노출되지 않으면서도 보안 USB 플래시 드라이브가 가지는 취약점을 보완하는 하기 위하여 등록 과정 및 인증 과정으로 구성될 수 있다.
등록 과정은 사용자를 등록하는 제1 과정 및 사용자의 등록을 완료함에 따라 등록한 사용자를 인증하는 제2 과정으로 구성될 수 있다. 제1 과정에서는 사용자가 입력한 인증 정보 및 디스크 정보를 기반으로 생성된 디스크 이미지 파일을 암호화할 수 있다. 이때, 제1 과정 및 제2 과정을 위하여 호스트에서는 관리 프로그램이 실행될 수 있으며, 관리 프로그램은 사용자로부터 수신한 인증 정보 및 디스크 이미지 파일 생성에 필요한 정보를 기반으로 보안 USB 플래시 드라이브에 디스크 이미지 파일을 생성할 수 있다.
사용자 인증에 활용하기 위한 정보인 인증 정보는 제1 식별 정보, 제2 식별 정보, ..., 제N 식별 정보(N은 자연수)와 같이 적어도 하나 이상의 식별정보가 사용될 수 있다. 예를 들면, 식별정보는 아이디 및 비밀번호 등이 포함될 수 있으며, 이에 한정되는 것은 아니다. 아래의 설명에서는 사용자로부터 입력된 아이디 및 비밀번호를 포함하는 인증 정보에 기초하여 수행되는 과정을 설명하기로 한다.
사용자 아이디는 생성된 이미지 파일 내 파일 시스템 헤더의 예약된 공간에 삽입하며, 사용자 비밀번호의 해시 값을 키로 활용하여 생성한 이미지 파일을 암호화함으로써 사용자 등록을 완료할 수 있다.
제2과정은 사용자가 입력한 인증 정보를 기반으로 암호화된 디스크 이미지 파일을 복호화하여 등록된 인증 정보와 비교함으로써 사용자를 인증할 수 있다. 이때, 등록 과정에서 파일 시스템 헤더에 삽입한 아이디와 인증 과정에서 수신한 아이디를 비교함으로써 사용자를 판단하게 된다. 인증 과정에서 수신한 비밀번호의 해시 값을 기반으로 암호화된 파일 시스템 헤더를 복호하며, 수신한 아이디와 복호된 아이디를 비교하여 결과가 같을 경우, 정상적인 사용자로 판단하여 최종적으로 사용자의 등록을 완료할 수 있다.
사용자의 등록을 완료함에 따라 정상적인 사용자만이 암호화된 디스크를 사용하도록 사용자 인증을 수행할 수 있다. 인증을 요청하는 사용자의 인증 정보인 아이디와 등록 과정에서 파일 시스템 헤더에 삽입한 아이디를 비교함으로써 사용자를 검증하는 과정으로서, 등록 과정에서 암호화된 파일 시스템 헤더를 인증 과정에서 사용자로부터 수신한 비밀 번호의 해시 값을 기반으로 복호한 후, 두 정보가 일치할 경우 정상적인 사용자로 판단하여 일반적인 디스크로 인식하도록 디스크 파일 전체를 복호할 수 있다.
도 2는 일 실시예에 따른 보안 유지 장치의 구성을 설명하기 위한 블록도이다.
보안 유지 장치(200)는 보안을 유지하기 위한 것으로, 등록부(210) 및 인증부(220)로 구성될 수 있다.
등록부(210)는 파일 시스템 헤더에 사용자로부터 입력된 인증 정보를 삽입하여 디스크 파일을 암호화하고, 인증 과정을 수행함으로써 사용자를 등록할 수 있다. 등록부(210)는 사용자로부터 입력된 인증 정보 및 디스크 정보를 기반으로 디스크 이미지 파일을 생성하고, 생성된 디스크 이미지 파일을 암호화함으로써 사용자를 등록할 수 있다. 등록부(210)는 사용자를 등록하는 사용자 등록부(211) 및 등록한 사용자를 인증하는 사용자 인증부(212)를 포함할 수 있다. 등록부(210)는 사용자 등록부(211)를 통하여 사용자를 등록하고 사용자 인증부(212)를 통하여 사용자를 인증함으로써 최종적으로 사용자를 등록하게 된다.
사용자 등록부(211)는 디스크로 활용하기 위한 이미지 파일의 생성을 요청함에 따라 사용자로부터 디스크 이미지 파일 및 디스크 이미지 파일과 관련된 정보가 입력되고, 디스크 이미지 파일 및 디스크 이미지 파일과 관련된 정보를 기반으로 보안 USB 플래시 드라이브의 내부에 디스크로 활용하기 위한 파일을 생성할 수 있다.
사용자 등록부(211)는 보안 USB 플래시 드라이브 내부에 디스크로 활용하기 위한 파일을 생성한 후, 디스크로 인식하기 위한 정보를 추가하기 위하여 포맷을 수행할 수 있다.
사용자 등록부(211)는 사용자로부터 입력된 인증 정보 중 아이디(ID)를 디스크 이미지 파일 내 파일 시스템 헤더의 기 설정된 공간에 삽입할 수 있다. 사용자 등록부(211)는 사용자로부터 입력된 인증 정보 중 비밀번호(PW)를 기반으로 해시 연산을 수행하고, 해시 연산을 수행함에 따른 해시 값을 키로 활용하여 보안 USB 플래시 드라이브의 내부에 생성된 디스크 이미지 파일의 암호화할 수 있다.
사용자 인증부(212)는 사용자의 인증 정보가 요청됨에 따라 사용자 단말을 통하여 사용자의 인증 정보가 재입력되고, 재입력된 인증 정보 중 아이디(ID') 및 디스크 이미지 파일 내 파일 시스템 헤더에 삽입한 아이디(ID)를 비교하여 암호화된 디스크 이미지 파일 내 파일 시스템 헤더에 삽입된 아이디(ID)를 복호화하고, 복호키를 생성하기 위하여 재입력된 인증 정보 중 비밀번호(PW')를 기반으로 해시 연산을 수행할 수 있다.
사용자 인증부(212)는 해시 연산을 수행함에 따른 해시 값을 키로 활용하여 암호화된 디스크 이미지 파일 내 파일 시스템 헤더의 복호를 요청하고, 암호화된 디스크 이미지 파일 내 파일 시스템 헤더를 재입력된 비밀번호(PW')를 기반으로 해시 값을 키로 활용하여 복호화를 수행할 수 있다.
사용자 인증부(212)는 암호화된 디스크 이미지 파일 내 파일 시스템 헤더의 복호가 완료됨에 따라, 복호된 헤더 내에 존재하는 아이디(ID)와 사용자로부터 재입력된 아이디(ID')를 비교하고, 복호된 헤더 내에 존재하는 아이디와 상기 사용자로부터 재입력된 아이디가 일치하는 경우, 사용자를 최종적으로 등록할 수 있다.
인증부(220)는 사용자의 등록이 완료됨에 따라 암호화된 파일 시스템 헤더를 복호함에 따른 인증 정보와 사용자로부터 재입력된 인증 정보를 비교하여 디스크 파일 전체를 복호할 수 있다.
인증부(220)는 암호화된 디스크 이미지 파일들 중 복호를 원하는 디스크 이미지 파일을 선택됨을 수신하고, 선택된 암호화된 디스크 이미지 파일을 복호하기 위하여 사용자에게 인증 정보를 재요청함에 따라 아이디(ID') 및 비밀번호(PW')를 포함하는 인증 정보를 수신할 수 있다.
인증부(220)는 비밀번호(PW')에 대하여 해시 연산을 수행함으로써 해시 값을 생성하고, 해시 연산을 수행함에 따른 해시 값을 키로 활용하여 암호화된 디스크 이미지 파일 내 파일 시스템 헤더의 복호를 요청할 수 있다.
인증부(220)는 암호화된 디스크 이미지 파일 내 파일 시스템 헤더를 상기 비밀번호(PW')를 기반으로 해시 값을 키로 활용하여 복호화가 수행되고, 디스크 이미지 파일 내 파일 시스템 헤더의 복호가 완료됨에 따라 디스크 이미지 파일 내 파일 시스템 헤더 내부에 삽입한 아이디(ID)와 사용자로부터 재입력된 아이디(ID')를 비교할 수 있다.
인증부(220)는 디스크 이미지 파일 내 파일 시스템 헤더 내부에 삽입한 아이디(ID)와 사용자로부터 재입력된 아이디(ID')가 일치할 경우, 사용자 검증이 완료될 수 있다. 인증부(220)는 디스크 이미지 파일 전체의 복호를 완료한 경우, 이미지 파일을 디스크로 인식하기 위하여 마운트를 수행할 수 있다.
도4는 일 실시예에 따른 보안 유지 장치의 등록 과정을 설명하기 위한 흐름도이다.
도 4에서는 보안 유지 장치(400), 사용자 단말(410) 및 USB 플래시 드라이브(420) 사이에서 이루어지는 등록 과정을 설명하기로 한다. 이때, USB 플래시 드라이브(420)는 보안 USB 플래시 드라이브일 수 있다.
도 3을 참고하면, 보안 유지 장치에서 상태 정보, 동작 상태 및 암/복호에 대한 용어를 정리한 표이다. 도 4 및 도 5의 과정을 통하여 디스크 관리 및 사용자 인증, 데이터 암/복호 기능을 제공함으로써 데이터의 안전성을 확보할 수 있다.
단계(431)에서 사용자는 보안 USB 플래시 드라이브를 처음 사용할 경우, 사용자 단말(410)을 통하여 관리 프로그램(400)에게 등록을 요청(RUR)할 수 있다. 관리 프로그램(400)은 사용자로부터의 등록 요청을 확인할 수 있다.
단계(432)에서 관리 프로그램(400)은 등록을 요청한 사용자에게 인증 정보를 요청할 수 있다(RAI). 이때, 인증 정보는 사용자를 식별하기 위한 정보로서, 예를 들면, 아이디(ID), 비밀번호(PW)등을 포함할 수 있다.
단계(433)에서 사용자는 관리 프로그램(400)으로부터 요청된 인증 정보를 입력하여 전달할 수 있다(TAI). 예를 들면, 사용자는 사용자 단말(410)을 통하여 아이디 및 비밀번호를 입력함에 따라 아이디 및 비밀번호를 포함하는 인증 정보가 관리 프로그램으로 전달될 수 있다.
단계(434)에서 관리 프로그램(400)은 사용자 단말(410)로부터 수신된 아이디가 관리 프로그램에서 관리하는 데이터베이스에 저장된 정보에 존재하는지 여부를 판단할 수 있다. 관리 프로그램(400)은 사용자의 아이디가 데이터베이스에 저장된 정보에 존재하지 않을 경우, 사용자의 등록을 허가할 수 있다(IU). 이때, 사용자로부터 전달받은 아이디가 데이터베이스에 존재할 경우, 단계(432)를 반복할 수 있다.
단계(435)에서 관리 프로그램(400)은 사용자의 등록을 허가함에 따라 사용자 단말(400)로 디스크로 활용하기 위한 이미지 파일의 생성을 요청(RGDIF)할 수 있고, 디스크 이미지 파일과 관련된 정보(예를 들면, 디스크의 이름, 디스크의 크기 등)를 요구할 수 있다.
단계(436)에서 사용자는 사용자 단말(410)을 통하여 관리 프로그램(400)으로부터 요청된 디스크 이미지 파일 및 디스크 이미지 파일과 관련된 정보를 입력하여 관리 프로그램(400)으로 전달할 수 있다(TDI).
단계(437)에서 관리 프로그램(400)은 사용자 단말(410)로부터 수신한 디스크 이미지 파일 및 디스크 이미지 파일과 관련된 정보를 기반으로 USB 플래시 드라이브의 내부에 디스크로 활용하기 위한 파일을 생성할 수 있다(GDIF).
단계(438)에서 USB 플래시 드라이브 내부에 디스크로 활용하기 위한 파일을 생성한 후, 디스크로 인식하기 위한 정보를 추가하기 위하여 포맷을 수행할 수 있다(F).
단계(439)에서 관리 프로그램(400)은 인증 정보를 노출하지 않기 위하여 인증을 위한 정보로 아이디(ID)를 활용하여, 이미지 파일 내 파일 시스템 헤더의 예약된 공간(예를 들면, 파일 시스템의 부트 레코드)에 사용자 단말(410)로부터 수신한 아이디를 삽입(IID)할 수 있다.
단계(440)에서 관리 프로그램(400)은 디스크로 활용할 이미지 파일을 암호화하는 키를 생성하기 위하여 사용자 단말(410)로부터 수신한 비밀번호에 대하여 해시 연산을 수행할 수 있다(H=h(PW)). 이때, 비밀번호가 유출되는 것을 방지하기 위하여 해시 연산을 수행할 수 있다. 예를 들면, 비밀번호를 직접 암호키 및/또는 복호키로 활용하는 경우, 암호화 및/또는 복호화를 수행하는 동안 외부에 노출되는 시간이 증가함에 따른 비밀번호 유출 가능성이 높아진다는 문제점을 해결하기 위하여 일방향 특성을 가진 해시 연산을 수행함으로써 제3자가 해시 값을 획득하더라도 역으로 비밀번호를 유출하는 것을 방지할 수 있다.
단계(441)에서 관리 프로그램(400)은 해시 연산을 수행함에 따른 해시 값(H)을 키로 활용하여 보안 USB 플래시 드라이브의 내부에 생성된 디스크 이미지 파일(DIF)의 암호화를 시작할 수 있다(ENDIF=EK(DIF)).
단계(442)에서 관리 프로그램(400)은 해시 연산을 수행함에 따른 해시 값을 키로 활용하여 보안 USB 플래시 드라이브 내부에 생성된 전체 디스크 이미지 파일(DIF)를 대상으로 암호화를 계속 수행할 수 있다(EDIF). 단계(430) 내지 단계(442)를 수행함으로써 등록 과정이 완료될 수 있다.
단계(443)에서 관리 프로그램(400)은 단계(430) 내지 단계(442)의 과정에 대한 수행 여부를 검증하기 위하여 사용자 인증 과정을 수행할 수 있다. 관리 프로그램(400)은 사용자 인증을 위하여 보안 USB 플래시 드라이브에게 디스크 이미지 파일의 복호를 요청할 수 있다(RDDIF).
단계(444)에서 보안 USB 플래시 드라이브가 디스크 이미지 파일을 복호화하기 위하여 사용자의 인증 정보가 필요하기 때문에, 관리 프로그램(400)은 사용자 단말(410)로 사용자의 인증 정보인 아이디(ID') 및 비밀번호(PW')를 재요청할 수 있다(RAI).
단계(445)에서 사용자는 사용자 단말(410)을 통하여 등록된 아이디(ID') 및 비밀번호(PW')를 전달할 수 있다(TAI).
단계(446)에서 관리 프로그램(400)은 사용자 단말로부터 수신한 아이디(ID')와 단계(439)에서 디스크 이미지 파일 내 파일 시스템 헤더에 삽입한 아이디(ID)를 비교할 수 있다. 이때, 관리 프로그램(400)은 디스크 이미지 파일 내 파일 시스템 헤더에 삽입한 아이디(ID)를 추출하기 위하여 암호화된 디스크 이미지 파일 내 파일 시스템 헤더에 삽입된 아이디(ID)를 복호화하고, 복호키를 생성하기 위하여 비밀번호(PW')를 기반으로 해시 연산을 수행할 수 있다(H'=h(PW')).
단계(447)에서 관리 프로그램은 해시 연산을 수행함에 따른 해시 값(H')을 키로 활용하여 디스크 이미지 파일 내 파일 시스템 헤더의 복호를 요청할 수 있다(RDFSH).
단계(448)에서 보안 USB 플래시 드라이브(420)는 암호화된 디스크 이미지 파일 내 파일 시스템 헤더를 사용자가 입력한 비밀번호(PW')를 기반으로 해시 값을 키로 활용하여 복호화를 수행할 수 있다(DFSH).
단계(449)에서 보안 USB 플래시 메모리 드라이브에서 암호화된 디스크 이미지 파일 내 파일 시스템 헤더의 복호가 완료됨에 따라, 복호된 헤더 내에 존재하는 아이디(ID)와 사용자로부터 수신한 아이디(ID')를 비교할 수 있다. 이때, 복호된 헤더 내에 존재하는 아이디(ID)와 사용자로부터 수신한 아이디(ID')가 일치할 경우에 정상적인 사용자로 인증(AU)하여 등록 과정을 최종적으로 완료할 수 있다(FR). 또한, 복호된 헤더 내에 존재하는 아이디(ID)와 사용자로부터 수신한 아이디(ID')가 일치하지 않을 경우, 잘못된 비밀번호를 입력한 것으로 판단하여 최종적으로 사용자 등록을 취소할 수 있다.
만약 사용자 인증에 실패하여 사용자 등록이 취소되는 경우, 악의적인 공격자가 인증의 우회를 시도하는 경우 및 정상적인 사용자가 실수하는 경우가 존재한다. 사용자의 실수로 인하여 사용자 등록이 취소되는 경우, 한번의 실패만으로 등록 과정의 단계(431)부터 다시 진행해야 하므로 매우 비효율적이다. 이에 따라 단계(444)에서 인증 정보를 재입력하도록 제공함으로써 실수에 의한 등록 취소의 비효율성을 보완한다. 이때, 인증 정보의 재입력 과정에 있어서 입력 횟수를 제한함으로써 전수공격에 취약했던 문제점을 해결하고 보안성을 향상시킬 수 있다. 예를 들면, 인증 정보 입력 횟수를 제한(예를 들면, 5회로 제한)할 수 있으며, 입력 횟수가 5회 이상일 경우, 정상적인 사용자가 아닌 악의적인 공격자로 판단하여 사용자 등록을 취소하고 모든 데이터를 삭제할 수 있다.
도 5는 일 실시예에 따른 보안 유지 장치의 인증 과정을 설명하기 위한 흐름도이다.
관리 프로그램(500), 사용자 단말(510) 및 USB 플래시 메모리(520) 사이에서 이루어지는 인증 과정을 설명하기로 한다.
단계(531)에서 사용자는 사용자 단말(510)을 통하여 USB 플래시 드라이브에 암호화된 디스크 이미지 파일들 중 복호를 원하는 디스크 이미지 파일(EDIF)을 선택할 수 있다(SDIF).
단계(532)에서 관리 프로그램(500)은 암호화된 디스크 이미지 파일(EDIF)를 복호하기 위하여 사용자에게 아이디(ID') 및 비밀번호(PW')를 포함하는 인증 정보를 요청할 수 있다.
단계(533)에서 사용자는 사용자 단말(510)을 통하여 아이디(ID') 및 비밀번호(PW')입력함으로써 관리 프로그램(500)으로 전달할 수 있다(TAI).
단계(534)에서 관리 프로그램은 암호화된 디스크 이미지 파일 내 파일 시스템 헤더를 복호화하기 위하여 사용자로부터 입력된 비밀번호(PW')에 대하여 해시 연산을 수행함으로써 해시 값(H')을 생성할 수 있다(H'=h(PW')).
단계(535)에서 관리 프로그램은 해시 연산을 수행함에 따른 해시 값(H')을 키로 활용하여 디스크 이미지 파일 내 파일 시스템 헤더의 복호를 요청할 수 있다(RDFSH).
단계(536)에서 암호화된 디스크 이미지 파일 내 파일 시스템 헤더를 사용자로부터 입력된 비밀번호(PW')를 기반으로 해시 값(H')을 키로 활용하여 복호화가 수행될 수 있다(DFSH).
디스크 이미지 파일 내 파일 시스템 헤더의 복호가 완료됨에 따라, 관리 프로그램(500)은 사용자 인증(IU)를 위하여 디스크 이미지 파일 내 파일 시스템 헤더 내부에 삽입한 아이디(ID)와 사용자로부터 입력된 아이디(ID')를 비교할 수 있다. 단계(537)에서 관리 프로그램(500)은 디스크 이미지 파일 내 파일 시스템 헤더 내부에 삽입한 아이디(ID)와 사용자로부터 입력된 아이디(ID')가 일치할 경우, 사용자 인증을 성공한 것으로 판단할 수 있다. 단계(538)에서 관리 프로그램(500)은 전체 디스크 이미지 파일의 복호를 요청할 수 있다. 단계(539)에서 전체 디스크 이미지 파일의 복호화가 수행될 수 있다. 만약, 이미지 파일의 복호를 수행하며(DDIF), 디스크 이미지 파일 내 파일 시스템 헤더 내부에 삽입한 아이디(ID)와 사용자로부터 입력된 아이디(ID')가 일치하지 않을 경우에는 사용자 인증에 실패한 것으로 판단하여 디스크 이미지 파일의 복호를 취소할 수 있다.
단계(540)에서 관리 프로그램(500)은 디스크 이미지 파일의 복호를 완료한 경우, 이미지 파일을 디스크로 인식하기 위하여 마운트를 수행할 수 있다. 마운트가 완료됨에 따라 이미지 파일을 일반 디스크처럼 사용이 가능해진다.
사용자가 더 이상 디스크를 사용하지 않을 경우, 인증 정보를 다시 요청하여 복호된 USB 플래시 드라이브를 다시 암호화하여 데이터를 안전하게 보호할 수 있다. 이때, 해시 값을 재활용하는 경우에, 암호키 및 복호키인 비밀번호의 해시 값이 디스크를 사용하는 동안 지속적으로 메모리에 로드되기 때문에 메모리 스캔 등의 공격으로 키가 탈취될 수 있다는 문제점을 해결하기 위하여, 도 5의 인증과정이 완료됨에 따라 메모리에 할당한 암호키 및 복호키를 삭제할 수 있다.
일 실시예에 따른 관리 프로그램은 인증이 완료되면 디스크 복호 및 인증 정보를 비교하기 위하여 사용자로부터 입력된 인증 정보 및 비밀번호의 해시 값을 관리 프로그램의 내부에 저장하지 않고 삭제하기 때문에 보유하는 정보가 없으므로 공격자에 의한 악용이 불가능해진다. 또한, USB 플래시 드라이브에 인증 과정을 진행하는 동안 및 인증 과정의 완료 후에 사용자의 비밀번호 및 암호키/복호키가 저장되지 않으므로 공격자에 의한 악용이 불가능하다.
또한, 본 발명은 등록 과정 및 인증 과정에 적용된 디스크 관리 및 사용자 인증, 데이터 보호 기능을 통하여 데이터 암/복호화, 사용자 인증 및 식별, 데이터 임의복제 방지, 분실시 데이터 보호를 위한 삭제 기술을 만족할 수 있다.
더욱 상세하게는, 본 발명은 사용자의 비밀번호의 해시 값을 기반으로 디스크로 활용하기 위한 파일 전체를 암호화하기 때문에 비밀번호를 알지 못하는 공격자는 내부에 저장된 데이터에 정상적으로 접근하는 것이 불가능하다.
또한, 본 발명은 사용자의 비밀번호의 해시 값을 기반으로 디스크로 활용하기 위한 파일 전체를 암호화하기 때문에 비밀번호를 알지 못하는 공격자는 데이터를 정상적으로 복호하지 못하므로 무결성을 보장할 수 있다.
또한, 본 발명은 아이디와 비밀번호를 기반으로 사용자를 인증하고, 아이디를 비밀번호 해시 값을 기반으로 암호화하기 때문에 공격자가 인증을 우회하기 위한 목적으로 임의의 아이디와 비밀번호를 입력할 경우에는 알지 못하는 정보로 복호될 수 있다. 만약, 공격자가 인증을 우회할 경우, 임의의 비밀번호 해시 값을 기반으로 디스크를 복호하기 때문에 정상적인 디스크 정보를 소유하지 못하므로 내부에 저장된 원본 데이터의 접근이 불가능하다.
또한, 본 발명은 사용자의 비밀번호의 해시 값을 키로 활용하여 디스크 전체를 암호화하므로 올바른 비밀번호 또는 비밀번호의 해시 값을 알지 못하는 공격자는 올바른 복호키를 획득할 수 없기 때문에 디스크를 복호화할 수 없다. 이러한 이유로 공격자는 암호화된 디스크를 복호하지 못하므로 내부에 저장된 원본 데이터에 접근이 불가능하다.
또한, 본 발명은 공격자로부터 암호화된 파일 헤더, 암호화된 디스크 전체가 획득되더라도 복호키가 사용자의 비밀번호를 기반으로 유도되기 때문에 비밀번호를 모르는 공격자는 디스크를 정상적으로 복호할 수 없으므로 위장 공격으로부터 안전할 수 있다.
또한, 본 발명은 공격자로부터 암호화된 파일 헤더, 암호화된 아이디 및 암호화된 디스크 파일이 획득되더라도 사용자의 비밀번호와 키로 활용하는 비밀번호의 해시 값이 USB 플래시 드라이브로 전달되지 않고 관리 프로그램에서 활용되기 때문에 공격자는 암호화된 데이터를 복호하기 위한 어떠한 정보도 가지지 못하므로 중간자 공격으로부터 안전할 수 있다.
또한, 본 발명은 호스트와 플래시 드라이브 간 전송되는 모든 데이터를 암호화하기 때문에 인증 정보 및 데이터의 암호키/복호키가 노출되지 않으므로 감청 공격으로부터 안전할 수 있다.
또한, 본 발명은 USB 플래시 드라이브에서 호스트로 암호화된 디스크 정보만이 전달되므로 공격자가 암호화된 디스크 정보를 획득하더라도 인증 우회 및 데이터의 접근이 불가능하므로 재전송 공격으로부터 안전할 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (14)

  1. 보안 유지 방법에 있어서,
    파일 시스템 헤더에 사용자로부터 입력된 인증 정보를 삽입하여 디스크 파일을 암호화하고, 인증 과정을 수행함으로써 상기 사용자를 등록하는 단계; 및
    상기 사용자의 등록이 완료됨에 따라 상기 암호화된 파일 시스템 헤더를 복호함에 따른 인증 정보와 상기 사용자로부터 재입력된 인증 정보를 비교하여 디스크 파일 전체를 복호하는 단계
    를 포함하고,
    상기 사용자를 등록하는 단계는,
    상기 사용자의 인증 정보가 요청됨에 따라 사용자 단말을 통하여 상기 사용자의 인증 정보가 재입력되고, 상기 재입력된 인증 정보 중 아이디(ID') 및 디스크 이미지 파일 내 파일 시스템 헤더에 삽입한 아이디(ID)를 비교하여 암호화된 디스크 이미지 파일 내 파일 시스템 헤더에 삽입된 아이디(ID)를 복호화하고, 복호키를 생성하기 위하여 상기 재입력된 인증 정보 중 비밀번호(PW')를 기반으로 해시 연산을 수행하는 단계
    를 포함하는 보안 유지 방법.
  2. 제1항에 있어서,
    상기 사용자를 등록하는 단계는,
    디스크로 활용하기 위한 이미지 파일의 생성을 요청함에 따라 상기 사용자로부터 디스크 이미지 파일 및 디스크 이미지 파일과 관련된 정보가 입력되고, 상기 디스크 이미지 파일 및 상기 디스크 이미지 파일과 관련된 정보를 기반으로 보안 USB 플래시 드라이브의 내부에 디스크로 활용하기 위한 파일을 생성하는 단계
    를 포함하는 보안 유지 방법.
  3. 제2항에 있어서,
    상기 사용자를 등록하는 단계는,
    상기 보안 USB 플래시 드라이브의 내부에 디스크로 활용하기 위한 파일을 생성한 후, 디스크로 인식하기 위한 정보를 추가하기 위하여 포맷을 수행하는 단계
    를 포함하는 보안 유지 방법.
  4. 제1항에 있어서,
    상기 사용자를 등록하는 단계는,
    상기 사용자로부터 입력된 인증 정보 중 아이디(ID)를 디스크 이미지 파일 내 파일 시스템 헤더의 기 설정된 공간에 삽입하는 단계
    를 포함하는 보안 유지 방법.
  5. 제4항에 있어서,
    상기 사용자를 등록하는 단계는,
    상기 사용자로부터 입력된 인증 정보 중 비밀번호(PW)를 기반으로 해시 연산을 수행하고, 상기 해시 연산을 수행함에 따른 해시 값을 키로 활용하여 보안 USB 플래시 드라이브의 내부에 생성된 상기 디스크 이미지 파일을 암호화하는 단계
    를 포함하는 보안 유지 방법.
  6. 삭제
  7. 제1항에 있어서,
    상기 사용자를 등록하는 단계는,
    상기 해시 연산을 수행함에 따른 해시 값을 키로 활용하여 상기 암호화된 디스크 이미지 파일 내 파일 시스템 헤더의 복호를 요청하고, 상기 암호화된 디스크 이미지 파일 내 파일 시스템 헤더를 상기 재입력된 비밀번호(PW')를 기반으로 해시 값을 키로 활용하여 복호화를 수행하는 단계
    를 포함하는 보안 유지 방법.
  8. 제7항에 있어서,
    상기 사용자를 등록하는 단계는,
    상기 암호화된 디스크 이미지 파일 내 파일 시스템 헤더의 복호가 완료됨에 따라, 상기 복호된 헤더 내에 존재하는 아이디(ID)와 사용자로부터 재입력된 아이디(ID')를 비교하고, 상기 복호된 헤더 내에 존재하는 아이디와 상기 사용자로부터 재입력된 아이디가 일치하는 경우, 상기 사용자를 등록하는 단계
    를 포함하는 보안 유지 방법.
  9. 제1항에 있어서,
    상기 암호화된 디스크 파일 전체를 복호하는 단계는,
    암호화된 디스크 이미지 파일들 중 복호를 원하는 디스크 이미지 파일이 선택됨을 수신하고, 상기 암호화된 디스크 이미지 파일을 복호하기 위하여 상기 사용자에게 상기 인증 정보를 재요청함에 따라 아이디(ID') 및 비밀번호(PW')를 포함하는 인증 정보를 수신하는 단계
    를 포함하는 보안 유지 방법.
  10. 제9항에 있어서,
    상기 암호화된 디스크 파일 전체를 복호하는 단계는,
    상기 비밀번호(PW')에 대하여 해시 연산을 수행함으로써 해시 값을 생성하고, 상기 해시 연산을 수행함에 따른 해시 값을 키로 활용하여 상기 암호화된 디스크 이미지 파일 내 파일 시스템 헤더의 복호를 요청하는 단계
    를 포함하는 보안 유지 방법.
  11. 보안 유지 방법에 있어서,
    파일 시스템 헤더에 사용자로부터 입력된 인증 정보를 삽입하여 디스크 파일을 암호화하고, 인증 과정을 수행함으로써 상기 사용자를 등록하는 단계; 및
    상기 사용자의 등록이 완료됨에 따라 상기 암호화된 파일 시스템 헤더를 복호함에 따른 인증 정보와 상기 사용자로부터 재입력된 인증 정보를 비교하여 디스크 파일 전체를 복호하는 단계
    를 포함하고,
    상기 암호화된 디스크 파일 전체를 복호하는 단계는,
    암호화된 디스크 이미지 파일들 중 복호를 원하는 디스크 이미지 파일이 선택됨을 수신하고, 상기 암호화된 디스크 이미지 파일을 복호하기 위하여 상기 사용자에게 상기 인증 정보를 재요청함에 따라 아이디(ID') 및 비밀번호(PW')를 포함하는 인증 정보를 수신하는 단계;
    상기 비밀번호(PW')에 대하여 해시 연산을 수행함으로써 해시 값을 생성하고, 상기 해시 연산을 수행함에 따른 해시 값을 키로 활용하여 상기 암호화된 디스크 이미지 파일 내 파일 시스템 헤더의 복호를 요청하는 단계; 및
    상기 암호화된 디스크 이미지 파일 내 파일 시스템 헤더를 상기 비밀번호(PW')를 기반으로 해시 값을 키로 활용하여 복호화가 수행되고, 상기 디스크 이미지 파일 내 파일 시스템 헤더의 복호가 완료됨에 따라 디스크 이미지 파일 내 파일 시스템 헤더 내부에 삽입한 아이디(ID)와 사용자로부터 재입력된 아이디(ID')를 비교하는 단계
    를 포함하는 보안 유지 방법.
  12. 제11항에 있어서,
    상기 암호화된 디스크 파일 전체를 복호하는 단계는,
    상기 디스크 이미지 파일 내 파일 시스템 헤더 내부에 삽입한 아이디(ID 와 상기 사용자로부터 재입력된 아이디(ID')가 일치할 경우, 상기 사용자의 검증이 완료되는 단계
    를 포함하는 보안 유지 방법.
  13. 제12항에 있어서,
    상기 암호화된 디스크 파일 전체를 복호하는 단계는,
    상기 디스크 이미지 파일 전체의 복호를 완료한 경우, 이미지 파일을 디스크로 인식하기 위하여 마운트를 수행하는 단계
    를 포함하는 보안 유지 방법.
  14. 보안 유지 장치에 있어서,
    파일 시스템 헤더에 사용자로부터 입력된 인증 정보를 삽입하여 디스크 파일을 암호화하고, 인증 과정을 수행함으로써 상기 사용자를 등록하는 등록부; 및
    상기 사용자의 등록이 완료됨에 따라 상기 암호화된 파일 시스템 헤더를 복호함에 따른 인증 정보와 상기 사용자로부터 재입력된 인증 정보를 비교하여 디스크 파일 전체를 복호하는 인증부
    를 포함하고,
    상기 등록부는,
    상기 사용자의 인증 정보가 요청됨에 따라 사용자 단말을 통하여 상기 사용자의 인증 정보가 재입력되고, 상기 재입력된 인증 정보 중 아이디(ID') 및 디스크 이미지 파일 내 파일 시스템 헤더에 삽입한 아이디(ID)를 비교하여 암호화된 디스크 이미지 파일 내 파일 시스템 헤더에 삽입된 아이디(ID)를 복호화하고, 복호키를 생성하기 위하여 상기 재입력된 인증 정보 중 비밀번호(PW')를 기반으로 해시 연산을 수행하는
    보안 유지 장치.
KR1020160119102A 2016-09-19 2016-09-19 인증정보가 노출되지 않는 안전한 보안 usb 시스템 및 방법 KR101839699B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160119102A KR101839699B1 (ko) 2016-09-19 2016-09-19 인증정보가 노출되지 않는 안전한 보안 usb 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160119102A KR101839699B1 (ko) 2016-09-19 2016-09-19 인증정보가 노출되지 않는 안전한 보안 usb 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR101839699B1 true KR101839699B1 (ko) 2018-03-16

Family

ID=61910411

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160119102A KR101839699B1 (ko) 2016-09-19 2016-09-19 인증정보가 노출되지 않는 안전한 보안 usb 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR101839699B1 (ko)

Similar Documents

Publication Publication Date Title
JP4615601B2 (ja) コンピュータセキュリティシステムおよびコンピュータセキュリティ方法
CN107438849B (zh) 用于验证电子设备的完整性的系统和方法
US20010056533A1 (en) Secure and open computer platform
US20150012748A1 (en) Method And System For Protecting Data
KR20100133953A (ko) 데이터를 안전하게 하는 시스템 및 방법
US9529733B1 (en) Systems and methods for securely accessing encrypted data stores
US20080040613A1 (en) Apparatus, system, and method for secure password reset
KR101817152B1 (ko) 신뢰된 권한 정보 제공 방법, 신뢰된 권한 정보를 포함하는 사용자 크리덴셜 발급 방법 및 사용자 크리덴셜 획득 방법
US11626976B2 (en) Information processing system, information processing device, information processing method and information processing program
US11288381B2 (en) Calculation device, calculation method, calculation program and calculation system
US20170201528A1 (en) Method for providing trusted service based on secure area and apparatus using the same
CN111401901A (zh) 生物支付设备的认证方法、装置、计算机设备和存储介质
KR20210021284A (ko) 보호된 컨테이너 간의 보안 통신 방법 및 그러한 시스템
KR20070059891A (ko) 어플리케이션 인증 보안 시스템 및 그 인증 보안 방법
US11921875B1 (en) Zero trust system and method for securing data
US20230409700A1 (en) Systems and methods for managing state
CN116842545A (zh) 一种基于文件加密的数据防勒索方法及系统
CN114553566B (zh) 数据加密方法、装置、设备及存储介质
KR101711024B1 (ko) 부정조작방지 장치 접근 방법 및 그 방법을 채용한 단말 장치
Vachon The identity in everyone's pocket
Kim et al. Security analysis and bypass user authentication bound to device of windows hello in the wild
KR101839699B1 (ko) 인증정보가 노출되지 않는 안전한 보안 usb 시스템 및 방법
Lee et al. A study on a secure USB mechanism that prevents the exposure of authentication information for smart human care services
CN114239000A (zh) 密码处理方法、装置、计算机设备和存储介质
CN113672973A (zh) 基于可信执行环境的risc-v架构的嵌入式设备的数据库系统

Legal Events

Date Code Title Description
GRNT Written decision to grant