1 |
1
어플리케이션을 획득하는 단계;상기 어플리케이션이 실행되는 디바이스의 환경 정보 및 상기 어플리케이션의 구성 요소들의 동작에 대한 실행 정보 중 적어도 하나를 획득하는 단계;상기 환경 정보 및 상기 실행 정보 중 적어도 하나에 기초하여 상기 어플리케이션으로부터 분석할 코드 데이터를 획득하는 단계;함수 정보를 획득하는 단계;상기 함수 정보에 기초하여, 상기 코드 데이터를 분석하는 단계를 포함하는 것을 특징으로 하는 디바이스의 어플리케이션 분석 방법
|
2 |
2
제 1 항에 있어서, 상기 방법은상기 획득한 코드 데이터를 중간 언어 코드로 변환하는 단계를 더 포함하고,상기 분석하는 단계는,상기 함수 정보에 기초하여, 상기 변환된 중간 언어 코드를 분석하는 단계를 포함하는 것을 특징으로 하는 방법
|
3 |
3
제 2 항에 있어서,상기 어플리케이션의 코드 데이터는 제 1 언어로 구성된 코드 데이터 및 제 2 언어로 구성된 코드 데이터를 포함하고, 상기 중간 언어 코드로 변환하는 단계는,상기 실행 정보에 기초하여, 상기 제 1 언어로 구성된 코드 데이터 중 및 제 2 언어로 구성된 코드 데이터를 각각 중간 언어 코드로 변환하는 단계를 포함하고,상기 분석하는 단계는,상기 함수 정보에 기초하여 상기 변환된 제 1 언어로 구성된 코드 및 상기 변환된 제 2 언어로 구성된 코드 각각을 분석하는 단계를 포함하는 것을 특징으로 하는 방법
|
4 |
4
제 3 항에 있어서,상기 변환된 제 1 언어로 구성된 코드 데이터를 분석하는 단계는상기 변환된 제 2 언어로 구성된 코드 데이터의 분석 정보를 획득하는 단계;상기 함수 정보 및 상기 획득한 제 2 언어로 구성된 코드 데이터의 분석 정보에 기초하여, 상기 변환된 제 1 언어로 구성된 코드 데이터를 분석하는 단계를 포함하는 것을 특징으로 하는 방법
|
5 |
5
제 2 항에 있어서,상기 코드 데이터를 중간 언어 코드로 변환하는 단계는,상기 실행정보에 기초하여 실행되지 않는 구성 요소를 추출하는 단계;상기 추출된 구성요소를 제외한 나머지 구성요소에 대응하는 코드 데이터를 중간 언어 코드로 변환하는 단계를 포함하는 것을 특징으로 하는 방법
|
6 |
6
제 2 항에 있어서, 상기 변환하는 단계는, 상기 코드 데이터 내에 포함된 하나 이상의 함수를 소정의 기준에 따라 하나의 그룹으로 맵핑하고, 상기 그룹에 포함된 하나 이상의 함수를 하나의 중간 언어 코드로 변환하는 단계를 포함하는 것을 특징으로 하는 방법
|
7 |
7
제 2 항에 있어서,상기 변환하는 단계는,상기 코드 데이터 내에 포함된 하나의 함수를 소정의 기준에 따라 하나 이상의 중간 언어 코드의 조합으로 변환하는 단계를 포함하는 것을 특징으로 하는 방법
|
8 |
8
제 1 항에 있어서,상기 분석 결과에 기초하여, 상기 어플리케이션이 디바이스의 정보자원을 외부 디바이스로 전송하는지 여부를 판단하는 단계를 더 포함하는 것을 특징으로 하는 방법
|
9 |
9
제 1 항에 있어서, 상기 방법은상기 어플리케이션의 코드 데이터와 관련된 외부 참조에 대한 정보를 획득하는 단계를 더 포함하고,상기 분석하는 단계는, 상기 함수 정보 및 상기 외부 참조에 대한 정보에 기초하여, 상기 중간 언어 코드를 분석하는 단계를 포함하는 것을 특징으로 하는 방법
|
10 |
10
제 1 항에 있어서,상기 분석하는 단계는,상기 함수 정보에 기초하여, 상기 어플리케이션이 수행하는 태스크를 추적하는 단계를 포함하는 것을 특징으로 하는 방법
|
11 |
11
제 1 항에 있어서,상기 함수 정보는, API 동작 정보, API 파라미터 정보, 함수 동작 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 방법
|
12 |
12
제 1 항에 있어서,상기 디바이스의 환경 정보는, 디바이스의 OS 정보 및 플랫폼 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 방법
|
13 |
13
제 1 항에 있어서,상기 실행정보는, 어플리케이션을 구성하는 구성 요소의 라이프 사이클에 대한 정보를 포함하는 것을 특징으로 하는 방법
|
14 |
14
어플리케이션이 실행되는 디바이스의 환경 정보 및 상기 어플리케이션의 구성 요소들의 동작에 대한 실행 정보 중 적어도 하나를 획득하는 특성 정보 획득부;상기 어플리케이션을 획득하고, 상기 환경 정보 및 상기 실행 정보 중 적어도 하나에 기초하여 상기 어플리케이션으로부터 분석할 코드 데이터를 획득하는 어플리케이션 획득부;함수 정보를 획득하는 함수 정보 획득부;상기 함수 정보에 기초하여, 상기 코드 데이터를 분석하는 어플리케이션 분석부를 포함하는 것을 특징으로 하는 디바이스
|
15 |
15
제 14 항에 있어서, 상기 디바이스는상기 획득한 코드 데이터를 중간 언어 코드로 변환하는 중간 언어 변환부를 더 포함하고,상기 분석부는,상기 함수 정보에 기초하여, 상기 변환된 중간 언어 코드를 분석하는 것을 포함하는 것을 특징으로 하는 디바이스
|
16 |
16
제 15 항에 있어서,상기 어플리케이션의 코드 데이터는 제 1 언어로 구성된 코드 데이터 및 제 2 언어로 구성된 코드 데이터를 포함하고, 상기 중간 언어 변환부는,상기 실행 정보에 기초하여, 상기 제 1 언어로 구성된 코드 데이터 중 및 제 2 언어로 구성된 코드 데이터를 각각 중간 언어 코드로 변환하고,상기 분석부는,상기 함수 정보에 기초하여 상기 변환된 제 1 언어로 구성된 코드 및 상기 변환된 제 2 언어로 구성된 코드 각각을 분석하는 것을 특징으로 하는 디바이스
|
17 |
17
제 16 항에 있어서,상기 디바이스는, 상기 변환된 제 2 언어로 구성된 코드 데이터의 분석 정보를 획득하는 분석 정보 제공부를 더 포함하고,상기 분석부는,상기 획득한 제 2 언어로 구성된 코드 데이터의 분석 정보 및 함수 정보에 기초하여, 상기 변환된 제 1 언어로 구성된 코드 데이터를 분석하는 것을 특징으로 하는 디바이스
|
18 |
18
제 15 항에 있어서,상기 변환부는,상기 실행정보에 기초하여 실행되지 않는 구성 요소를 추출하고, 상기 추출된 구성요소를 제외한 나머지 구성요소에 대응하는 코드 데이터를 중간 언어 코드로 변환하는 것을 특징으로 하는 디바이스
|
19 |
19
제 15 항에 있어서, 상기 변환부는,상기 코드 데이터 내에 포함된 하나 이상의 함수를 소정의 기준에 따라 하나의 그룹으로 맵핑하고, 상기 그룹에 포함된 하나 이상의 함수를 하나의 중간 언어 코드로 변환하는 것을 특징으로 하는 디바이스
|
20 |
20
제 15 항에 있어서,상기 변환부는,상기 코드 데이터 내에 포함된 하나의 함수를 소정의 기준에 따라 하나 이상의 중간 언어 코드의 조합으로 변환하는 것을 특징으로 하는 디바이스
|
21 |
21
제 14 항에 있어서,상기 디바이스는,상기 분석 결과에 기초하여, 상기 어플리케이션이 디바이스의 정보자원을 외부 디바이스로 전송하는지 여부를 판단부를 더 포함하는 것을 특징으로 하는 디바이스
|
22 |
22
제 14 항에 있어서,상기 디바이스는상기 어플리케이션의 코드 데이터와 관련된 외부 참조에 대한 정보를 획득하는 외부 참조 정보 획득부를 더 포함하고,상기 분석부는,상기 함수 정보 및 상기 외부 참조에 대한 정보에 기초하여, 상기 중간 언어 코드를 분석하는 것을 특징으로 하는 디바이스
|
23 |
23
제 14 항에 있어서,상기 분석부는,상기 함수 정보에 기초하여, 상기 어플리케이션이 수행하는 태스크를 추적하는 것을 특징으로 하는 디바이스
|
24 |
24
제 14 항에 있어서,상기 함수 정보는, API 동작 정보, API 파라미터 정보, 함수 동작 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 디바이스
|
25 |
25
제 14 항에 있어서,상기 디바이스의 환경 정보는, 디바이스의 OS 정보 및 플랫폼 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 디바이스
|
26 |
26
제 14 항에 있어서,상기 실행정보는, 어플리케이션을 구성하는 구성 요소의 라이프 사이클에 대한 정보를 포함하는 것을 특징으로 하는 디바이스
|
27 |
27
제 1 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체
|