1 |
1
뱅킹 어플리케이션 무결성 검증 시스템에 있어서, 자바클래스를 DEX 파일로 변환하여 저장하며, 뱅킹 어플리케이션의 요청에 의해 상기 DEX 파일을 뱅킹 어플리케이션에 전송하는 서버; 및상기 DEX 파일을 기반으로 제1해시값을 계산하고, APK 파일 경로를 동적으로 받아 무결성 검증용 제2해시값을 생성하는 뱅킹 어플리케이션을 포함하고,상기 서버는 상기 제1해시값과 상기 제2해시값을 기반으로 무결성을 검증하며,상기 서버는 상기 DEX 파일을 세션키 K로 암호화한 제1암호값을 난수 R과 함께 상기 뱅킹 어플리케이션으로 전송하고,상기 뱅킹 어플리케이션은, 상기 제1암호값과 난수 R을 서버로부터 전송받는 달빅가상머신과, 상기 제1암호값과 난수 R을 달빅가상머신으로부터 전송받아 복호화하여 상기 제1해시값을 계산하고 상기 달빅가상머신을 로드하는 네이티브 라이브러리를 포함하며,상기 달빅가상머신은, 상기 네이티브 라이브러리로부터의 요청에 의해, 원본 APK 경로를 동적으로 상기 네이티브 라이브러리로 전송하는 동적로드모듈을 포함하고,상기 네이티브 라이브러리는 상기 제1해시값과 상기 제2해시값을 암호화한 제2암호값을 생성하고, 상기 달빅가상머신은 상기 제2암호값을 상기 서버로 전송하며,상기 서버는 상기 제2암호값을 기반으로, 뱅킹 어플리케이션 및 DEX 파일의 무결성을 검증하고,상기 서버는 검증결과 데이터를 상기 뱅킹 어플리케이션에 전송하는 것을 특징으로 하는 APK 파일 동적로딩 기법을 이용한 뱅킹 어플리케이션 무결성 검증 시스템
|
8 |
8
제 1항에 따른 무결성 검증 시스템을 이용한 뱅킹 어플리케이션 무결성 검증방법에 있어서, 자바클래스를 DEX파일로 변환하여 저장하는 서버가, 뱅킹어플리케이션의 요청에 의해 상기 DEX파일을 상기 뱅킹 어플리케이션에 전송하는 단계; 상기 뱅킹 어플리케이션이 상기 DEX 파일을 기반으로 제1해시값을 계산하고, APK 파일 경로를 동적으로 받아 무결성 검증용 제2해시값을 생성하는 단계; 상기 서버가 상기 제1해시값과 상기 제2해시값을 전송받아, 상기 제1해시값과 상기 제2해시값을 기반으로 무결성을 검증하는 단계; 및상기 서버가 검증결과데이터를 상기 뱅킹 어플리케이션에 전송하는 단계를 포함하고,상기 DEX파일을 상기 뱅킹 어플리케이션에 전송하는 단계에서, 상기 서버가 상기 DEX 파일을 세션키 K로 암호화한 제1암호값을 난수 R과 함께 상기 뱅킹 어플리케이션으로 전송하며, 상기 뱅킹 어플리케이션은 달빅가상머신과, 네이티브 라이브러리를 포함하고, 상기 달빅가상머신은, 상기 제1암호값과 난수 R을 서버로부터 전송받고, 상기 네이티브 라이브러리는, 상기 제1암호값과 난수 R을 달빅가상머신으로부터 전송받아 복호화하여 상기 제1해시값을 계산하고 상기 달빅가상머신을 로드하며,상기 제2해시값을 생성하는 단계는, 상기 달빅가상머신에 포함된 동적로드모듈이, 상기 네이티브 라이브러리로부터의 요청에 의해, 원본 APK 경로를 동적으로 상기 네이티브 라이브러리로 전송하는 단계를 포함하고,상기 제2해시값을 생성하는 단계에서,상기 네이티브 라이브러리는 상기 제1해시값과 상기 제2해시값을 암호화한 제2암호값을 생성하고, 상기 달빅가상머신은 상기 제2암호값을 상기 서버로 전송하고,상기 무결성을 검증하는 단계에서,상기 서버는 상기 제2암호값을 기반으로, 뱅킹 어플리케이션 및 DEX 파일의 무결성을 검증하는 것을 특징으로 하는 APK 파일 동적로딩 기법을 이용한 뱅킹 어플리케이션 무결성 검증 방법
|