본문 바로가기

전체 글

(13)
보안 측면에서의 Android 지문인증 (3) 이전 글에서 TEE의 지문인증모듈과 TEE의 Keymaster모듈이 지문인증의 결과를 주고 받음으로서 지문인증의 결과를 더욱 신뢰할 수 있다고 하였습니다. 이번 글에서는 TEE의 두 모듈이 어떻게 지문인증 결과를 주고 받는지에 대해 이야기해보겠습니다. 이에 대한 개략적인 내용은 source.android.com/security/authentication 에 설명되어 있습니다. 앱에서 지문인증을 요청합니다. REE의 fingerprint 데몬이 TEE의 지문인증모듈에 지문인증을 수행하도록 합니다. 지문이 인증된 경우 TEE의 지문인증모듈은 AuthToken이라는 것을 생성하고, AuthToken HMAC키를 이용하여 일종의 전자서명이 됩니다. 전자서명된(HMAC 값) AuthToken이 keystore로 ..
보안 측면에서의 Android 지문인증 (2) 이전 글에서 지문인증이 REE보다 더 안전한 TEE에서 이루어진다는 것을 확인하였고, 더 나아가 지문인증의 결과를 전달받는 Android Framework이나 Android App이 동작하는 REE 환경로 지문인증 결과가 전달된다면 굳이 TEE에서의 지문인증이 과연 더 안전할까라는 의문이 생겼습니다. 비밀은 같은 TEE에서 동작하는 Keymaster에 있습니다. TEE에서 지문인증이 이루어지면 그 결과가 같은 TEE에 있는 Keymaster로 전달되도록 되어 있습니다. 이를 이용해 여러 보안 시나리오 설계가 가능합니다. 예를 들어, 지문인증 후 이미지나 동영상같은 파일을 암호화/복호화하는 경우를 생각해봅시다. 1. App은 Android KeyStore에 암호화/복호화를 위한 Key 생성을 요청합니다. ..
보안 측면에서의 Android 지문인증 (1) 지문인증 동작 자체가 위 빨간 박스로 표시한 TEE(Trusted Execution Environment)에서 이루어집니다. TEE는 일반 Android 실행환경(App, Framework, Kernel)과 독립되어 보안적으로 상대적으로 더 안전한 실행환경(TEE OS, TEE library, TEE App)입니다. TEE는 더 안전하기는 하지만, 극히 제한적인 리소스만이 제공되는 환경입니다. TEE 이외 부분을 REE(Rich Execution Environment)라고 합니다. TEE 를 Secure World, REE 를 Normal World라고도 합니다. 위 그림에서 Fingerprint Hardware로 표현된 지문센서가 TEE의 FP vendor library에서만 접근되는 것이 첫 번째 보..
Android 소스 검색 방법 Android Code Search cs.android.com/android/platform/superproject 최초 상태는 아직 Android 정식버전으로 릴리즈되지는 않았지만 현재 최신 상태의 소스 버전을 보여주는 master branch 상태입니다. 항상 최신 상태의 소스 버전을 보여주므로 어제의 master branch 소스 상태와 오늘의 master branch 소스 상태는 다를 수 있습니다. 만약, 예전 릴리즈된 버전의 Android 소스 상태를 확인하고 싶다면 위 빨간 동그라미 부분을 클릭하여 원하는 버전을 선택하면 됩니다. 이 경우는 릴리즈된 상태가 고정이므로 항상 해당 버전의 동일한 소스 상태를 보여줍니다. Android Cross Refernce aosp.opersys.com/ Op..
AES GCM Authenticated Encryption 방식 중의 하나입니다. Authenticated Encryption은 데이타를 암호화하면서 암호문에 대한 무결성을 제공해줍니다. ( 암호문이 중간에 바뀌었는지 그대로인지 확인할 수 있도록 해줍니다. ) en.wikipedia.org/wiki/Authenticated_encryption Authenticated encryption - Wikipedia From Wikipedia, the free encyclopedia Jump to navigation Jump to search Authenticated encryption (AE) and authenticated encryption with associated data (AEAD) are forms of encr..