1 |
1
개발자 단말 또는 배포서버에서 수행되는 안드로이드 어플리케이션의 역공학 방지 방법에 있어서,안드로이드 어플리케이션의 실행 파일을 추출하여 암호화하는 단계; 및상기 암호화된 실행 파일과 상기 암호화된 실행 파일을 복호화하는 스텁(stub) 파일이 포함되도록 상기 안드로이드 어플리케이션을 패키징하는 단계를 포함하되, 상기 스텁 파일은, 진입점(entry point) 변환 기법에 기반하여 상기 암호화된 실행 파일이 복호화되어 실행되도록 제어하는 것을 특징으로 하는, 안드로이드 어플리케이션의 역공학 방지 방법
|
2 |
2
삭제
|
3 |
3
청구항 1에 있어서, 상기 스텁 파일은, 상기 안드로이드 어플리케이션에 대한 실행 시에 가장 먼저 실행되도록 설정된 것을 특징으로 하는, 안드로이드 어플리케이션의 역공학 방지 방법
|
4 |
4
청구항 3에 있어서, 상기 스텁 파일은, 액티비티(Activity), 서비스(Service), 컨텐츠 프로바이더(Content Provider) 및 브로드캐스트 리시버(Broadcast Receiver) 중 어떤 컴포넌트가 실행되더라도 가장 먼저 실행되는 것을 특징으로 하는, 안드로이드 어플리케이션의 역공학 방지 방법
|
5 |
5
청구항 3에 있어서, 상기 스텁 파일은, 안드로이드 매니페스트(Android Manifest) 파일의 설정에 따라 가장 먼저 실행되는 것을 특징으로 하는, 안드로이드 어플리케이션의 역공학 방지 방법
|
6 |
6
청구항 1에 있어서, 상기 스텁 파일은, 상기 암호화된 실행 파일이 복호화되어 생성된 원본 실행 파일을 위한 진입점 변환에 따른 실행 흐름 변경이 수행되도록 설정하는 것을 특징으로 하는, 안드로이드 어플리케이션의 역공학 방지 방법
|
7 |
7
청구항 6에 있어서, 상기 실행 흐름 변경은, 상기 스텁 파일의 설정에 따라 안드로이드 런타임(Android Runtime)에서 수행되는 것을 특징으로 하는, 안드로이드 어플리케이션의 역공학 방지 방법
|
8 |
8
청구항 7에 있어서, 상기 실행 흐름 변경은, 상기 안드로이드 런타임에서 사용할 상기 원본 실행 파일의 진입점 컴포넌트를 초기화함으로써 수행되는 것을 특징으로 하는, 안드로이드 어플리케이션의 역공학 방지 방법
|
9 |
9
청구항 1에 있어서, 상기 실행 파일은, Classes
|
10 |
10
사용자 단말에서 수행되는 안드로이드 어플리케이션의 역공한 방지 방법에 있어서,암호화된 실행 파일과 상기 암호화된 실행 파일을 복호화하는 스텁(stub) 파일이 포함되도록 패키징된 안드로이드 어플리케이션을 수신하는 단계; 및패키징된 상기 안드로이드 어플리케이션에 포함된 상기 스텁 파일을 이용하여 상기 암호화된 실행 파일을 복호화하는 단계를 포함하되, 상기 스텁 파일은, 진입점(entry point) 변환 기법에 기반하여 상기 암호화된 실행 파일이 복호화되어 실행되도록 제어하는 것을 특징으로 하는, 안드로이드 어플리케이션의 역공학 방지 방법
|
11 |
11
삭제
|
12 |
12
청구항 10에 있어서, 상기 스텁 파일은, 상기 안드로이드 어플리케이션에 대한 실행 시에 가장 먼저 실행되도록 설정된 것을 특징으로 하는, 안드로이드 어플리케이션의 역공학 방지 방법
|
13 |
13
청구항 12에 있어서, 상기 스텁 파일은, 액티비티(Activity), 서비스(Service), 컨텐츠 프로바이더(Content Provider) 및 브로드캐스트 리시버(Broadcast Receiver) 중 어떤 컴포넌트가 실행되더라도 가장 먼저 실행되는 것을 특징으로 하는, 안드로이드 어플리케이션의 역공학 방지 방법
|
14 |
14
청구항 12에 있어서, 상기 스텁 파일은, 안드로이드 매니페스트(Android Manifest) 파일의 설정에 따라 가장 먼저 실행되는 것을 특징으로 하는, 안드로이드 어플리케이션의 역공학 방지 방법
|
15 |
15
청구항 10에 있어서, 상기 스텁 파일은, 상기 암호화된 실행 파일이 복호화되어 생성된 원본 실행 파일을 위한 진입점 변환에 따른 실행 흐름 변경이 수행되도록 설정하는 것을 특징으로 하는, 안드로이드 어플리케이션의 역공학 방지 방법
|
16 |
16
청구항 15에 있어서, 상기 실행 흐름 변경은, 상기 스텁 파일의 설정에 따라 안드로이드 런타임(Android Runtime)에서 수행되는 것을 특징으로 하는, 안드로이드 어플리케이션의 역공학 방지 방법
|
17 |
17
청구항 16에 있어서, 상기 실행 흐름 변경은, 상기 안드로이드 런타임에서 사용할 상기 원본 실행 파일의 진입점 컴포넌트를 초기화함으로써 수행되는 것을 특징으로 하는, 안드로이드 어플리케이션의 역공학 방지 방법
|
18 |
18
안드로이드 어플리케이션의 실행 파일을 추출하여 암호화하고, 상기 암호화된 실행 파일과 상기 암호화된 실행 파일을 복호화하는 스텁(stub) 파일이 포함되도록 상기 안드로이드 어플리케이션을 패키징하되, 상기 스텁 파일은, 진입점(entry point) 변환 기법에 기반하여 상기 암호화된 실행 파일이 복호화되어 실행되도록 제어하는 것을 특징으로 하는, 안드로이드 어플리케이션의 역공학 방지를 수행하는 장치
|
19 |
19
암호화된 실행 파일과 상기 암호화된 실행 파일을 복호화하는 스텁(stub) 파일이 포함되도록 패키징된 안드로이드 어플리케이션을 수신하고, 패키징된 상기 안드로이드 어플리케이션에 포함된 상기 스텁 파일을 이용하여 상기 암호화된 실행 파일을 복호화하되, 상기 스텁 파일은, 진입점(entry point) 변환 기법에 기반하여 상기 암호화된 실행 파일이 복호화되어 실행되도록 제어하는 것을 특징으로 하는, 안드로이드 어플리케이션의 역공학 방지를 수행하는 장치
|
20 |
20
컴퓨터에서 수행될 때, 청구항 1 및 3내지 9에 따른 방법 중 어느 하나를 수행하는 컴퓨터 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체
|