KR101629929B1 - 프레임워크 기반 어플리케이션을 위한 보안 제공 방법 - Google Patents

프레임워크 기반 어플리케이션을 위한 보안 제공 방법 Download PDF

Info

Publication number
KR101629929B1
KR101629929B1 KR1020150081294A KR20150081294A KR101629929B1 KR 101629929 B1 KR101629929 B1 KR 101629929B1 KR 1020150081294 A KR1020150081294 A KR 1020150081294A KR 20150081294 A KR20150081294 A KR 20150081294A KR 101629929 B1 KR101629929 B1 KR 101629929B1
Authority
KR
South Korea
Prior art keywords
data
function
file
encrypted
application
Prior art date
Application number
KR1020150081294A
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 KR1020150081294A priority Critical patent/KR101629929B1/ko
Application granted granted Critical
Publication of KR101629929B1 publication Critical patent/KR101629929B1/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/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 프레임워크 기반 어플리케이션을 위한 보안 제공 방법에 관한 것으로서, 보다 구체적으로는, (1) 어플리케이션 내에서, 데이터 파일에 접근하도록 호출되는 함수를 후킹하는 단계(S110); (2) 상기 호출된 함수가 요청하는 데이터 영역을 독출하는 단계(S120); (3) 상기 독출된 데이터 영역의 데이터가 암호화된 데이터인지 판단하는 단계(S130); 및 (4) 상기 독출된 데이터 영역의 데이터가 암호화된 데이터인 경우, 상기 암호화된 데이터를 복호화하여 상기 함수에 전달하는 단계(S140)를 포함하는 것을 그 구성상의 특징으로 한다.
본 발명에서 제안하고 있는 프레임워크 기반 어플리케이션을 위한 보안 제공 방법에 따르면, 프레임워크에서 사용되는 데이터 파일을 암호화시켜 배포 설치한 후 호출되는 과정에서 임시 파일을 생성하지 않고, 어플리케이션 내에서, 데이터 파일에 접근하도록 호출되는 함수를 후킹하고, 호출된 함수가 요청하는 데이터 영역을 독출하며, 독출된 데이터 영역의 데이터가 암호화된 데이터인지 판단하여, 독출된 데이터 영역의 데이터가 암호화된 데이터인 경우, 암호화된 데이터를 복호화하여 함수에 전달함으로써, 별도의 플러그인을 설치하지 않아도 소스 코드의 유출을 방지할 수 있고, 데이터 파일의 로드 시간을 감소시킬 수 있다.

Description

프레임워크 기반 어플리케이션을 위한 보안 제공 방법{SECURITY PROVIDING METHOD FOR FRAMEWORK BASED APPLICATION}
본 발명은 소스 코드 보안 제공 방법에 관한 것으로서, 보다 구체적으로는 프레임워크 기반 어플리케이션을 위한 보안 제공 방법에 관한 것이다.
컴퓨터 기술의 발달로 다양한 하드웨어 및 운영체제에 맞는 어플리케이션들이 개발되어 왔다. 이러한 어플리케이션들은 동일한 기능을 수행하더라도, 하드웨어 및 운영체제의 특징에 따라 서로 다른 환경에서 적용될 수 있도록 작성되어야 한다. 예를 들어, 데스크톱 컴퓨터가 가진 하드웨어 사양 및 운영체제와, 스마트폰이 가진 하드웨어 사양 및 운영체제 간의 차이로 인해, 동일한 어플리케이션이라도 개별적으로 개발 및 유지 보수되어야 한다.
한편, 어플리케이션 개발을 위한 프로그램 언어로는, C, C++, C#, JAVA, PYTHON 등과 같은 다양한 언어들이 있다. 이 가운데, C#, JAVA 등과 같은 객체 지향 언어는 컴파일러 인터프리터 방식이 결합된 하이브리드 방식에 의해 기계어 변환이 수행될 수 있다. 구체적으로, JAVA 등과 같은 언어는 원시 코드가 중간 코드로 컴파일 된 후 JVM 등의 환경에서 기계어 변환이 수행된다.
이와 관련하여, 대한민국 등록특허 제10-1471589호(2014.12.10.)에서는, 공통 중간 언어 코드로 구성되는 어플리케이션과 네이티브 코드(native code)로 된 플러그인을 지원하는 플랫폼에 사용되는 사용자 DLL(dynamic link library)에 보안을 제공하는 방법을 개시하고 있다. 이에 따르면, 프레임워크에서 사용하는 데이터(DLL)가 암호화된 후, 특정한 파일이 호출되면, 보안 모듈 플러그인을 통해 암호화된 파일을 복호화시킨 파일이 생성되고 해당 함수에 전달되도록 구성된다.
그러나 이러한 기술은 암호화 DLL을 복호화하여 새로운 DLL을 생성하기 때문에, 임시 생성된 파일이 로드될 때 탈취될 수 있는 위험이 존재하고, 복호화된 새로운 DLL을 생성하는 데에 시간이 더 소요되는 문제가 있다.
본 발명은 기존에 제안된 방법들의 상기와 같은 문제점들을 해결하기 위해 제안된 것으로서, 프레임워크에서 사용되는 데이터 파일을 암호화시켜 배포 설치한 후 호출되는 과정에서 임시 파일을 생성하지 않고, 어플리케이션 내에서, 데이터 파일에 접근하도록 호출되는 함수를 후킹하고, 호출된 함수가 요청하는 데이터 영역을 독출하며, 독출된 데이터 영역의 데이터가 암호화된 데이터인지 판단하여, 독출된 데이터 영역의 데이터가 암호화된 데이터인 경우, 암호화된 데이터를 복호화하여 함수에 전달함으로써, 별도의 플러그인을 설치하지 않아도 소스 코드의 유출을 방지할 수 있고, 데이터 파일의 로드 시간을 감소시킬 수 있는, 프레임워크 기반 어플리케이션을 위한 보안 제공 방법을 제공하는 것을 그 목적으로 한다.
상기한 목적들을 달성하기 위한 본 발명의 특징에 따른 프레임워크 기반 어플리케이션을 위한 보안 제공 방법은,
(1) 어플리케이션 내에서, 데이터 파일에 접근하도록 호출되는 함수를 후킹하는 단계;
(2) 상기 호출된 함수가 요청하는 데이터 영역을 독출하는 단계;
(3) 상기 독출된 데이터 영역의 데이터가 암호화된 데이터인지 판단하는 단계; 및
(4) 상기 독출된 데이터 영역의 데이터가 암호화된 데이터인 경우, 상기 암호화된 데이터를 복호화하여 상기 함수에 전달하는 단계를 포함하는 것을 그 구성상의 특징으로 한다.
바람직하게는, 상기 단계 (3)은,
상기 암호화된 데이터를 메모리 상에서 복호화하도록 구성될 수 있다.
바람직하게는,
상기 데이터 파일은 DLL(dynamic link library) 포맷의 파일을 포함하도록 구성될 수 있다.
바람직하게는,
(0) 상기 데이터 파일을 포함하는 패키지 파일이, 모바일 운영체제 상에서 설치되는 단계를 더 포함하고,
상기 데이터 파일은 상기 설치 단계에서, 암호화된 상태로 설치되도록 구성될 수 있다.
바람직하게는, 상기 함수는,
리눅스 운영체제의 네이티브 함수를 포함하도록 구성될 수 있다.
더욱 바람직하게는, 상기 함수는,
dlopen 함수, fopen 함수 및 fread 함수를 포함하는 군에서 선택된 적어도 하나의 함수를 포함하도록 구성될 수 있다.
바람직하게는,
상기 어플리케이션은 안드로이드 운영체제에서 실행되는 어플리케이션을 포함하고,
상기 단계 (4)는,
상기 어플리케이션의 실행 파일이 로드되기 전에 수행되도록 구성될 수 있다.
바람직하게는,
(5) 상기 독출된 데이터 영역의 데이터가 암호화되지 않은 데이터인 경우, 상기 데이터를 상기 함수에 전달하는 단계를 더 포함하도록 구성될 수 있다.
본 발명에서 제안하고 있는 프레임워크 기반 어플리케이션을 위한 보안 제공 방법에 따르면, 프레임워크에서 사용되는 데이터 파일을 암호화시켜 배포 설치한 후 호출되는 과정에서 임시 파일을 생성하지 않고, 어플리케이션 내에서, 데이터 파일에 접근하도록 호출되는 함수를 후킹하고, 호출된 함수가 요청하는 데이터 영역을 독출하며, 독출된 데이터 영역의 데이터가 암호화된 데이터인지 판단하여, 독출된 데이터 영역의 데이터가 암호화된 데이터인 경우, 암호화된 데이터를 복호화하여 함수에 전달함으로써, 별도의 플러그인을 설치하지 않아도 소스 코드의 유출을 방지할 수 있고, 데이터 파일의 로드 시간을 감소시킬 수 있다.
도 1은 본 발명의 일실시예에 따른 프레임워크 기반 어플리케이션을 위한 보안 제공 방법의 흐름을 도시한 도면.
도 2는 본 발명의 일실시예에 따른 프레임워크 기반 어플리케이션을 위한 보안 제공 방법의 단계 S100이 구현된 모습을 도시한 도면.
도 3은 본 발명의 일실시예에 따른 프레임워크 기반 어플리케이션을 위한 보안 제공 방법의 단계 S100에서 사용되는 데이터 파일이 암호화되기 전의 상태를 도시한 도면.
도 4는 본 발명의 일실시예에 따른 프레임워크 기반 어플리케이션을 위한 보안 제공 방법의 단계 S100에서 사용되는 데이터 파일이 암호화된 후의 상태를 도시한 도면.
도 5는 본 발명의 일실시예에 따른 프레임워크 기반 어플리케이션을 위한 보안 제공 방법의 단계 S140에서 사용될 수 있는 복호화 프로그램의 의사 코드를 도시한 도면.
이하에서는 첨부된 도면을 참조하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 바람직한 실시예를 상세히 설명한다. 다만, 본 발명의 바람직한 실시예를 상세하게 설명함에 있어, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다. 또한, 유사한 기능 및 작용을 하는 부분에 대해서는 도면 전체에 걸쳐 동일 또는 유사한 부호를 사용한다.
덧붙여, 명세서 전체에서, 어떤 부분이 다른 부분과 ‘연결’되어 있다고 할 때, 이는 ‘직접적으로 연결’되어 있는 경우뿐만 아니라, 그 중간에 다른 소자를 사이에 두고 ‘간접적으로 연결’되어 있는 경우도 포함한다. 또한, 어떤 구성요소를 ‘포함’한다는 것은, 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다.
도 1은 본 발명의 일실시예에 따른 프레임워크 기반 어플리케이션을 위한 보안 제공 방법의 흐름을 도시한 도면이다. 도 1에 도시된 바와 같이, 본 발명의 일실시예에 따른 프레임워크 기반 어플리케이션을 위한 보안 제공 방법은, 어플리케이션 내에서, 데이터 파일에 접근하도록 호출되는 함수를 후킹하는 단계(S110), 호출된 함수가 요청하는 데이터 영역을 독출하는 단계(S120), 독출된 데이터 영역의 데이터가 암호화된 데이터인지 판단하는 단계(S130), 독출된 데이터 영역의 데이터가 암호화된 데이터인 경우, 암호화된 데이터를 복호화하여 함수에 전달하는 단계(S140)를 포함하여 구성될 수 있으며, 실시예에 따라, 데이터 파일을 포함하는 패키지 파일이, 모바일 운영체제 상에서 설치되는 단계(S100), 독출된 데이터 영역의 데이터가 암호화되지 않은 데이터인 경우, 데이터를 함수에 전달하는 단계(S150) 등을 더 포함하여 구성될 수 있다. 이하에서는, 첨부된 도면을 참조하여 본 발명의 일실시예에 따른 프레임워크 기반 어플리케이션을 위한 보안 제공 방법의 각각의 단계에 대해 보다 상세히 설명하도록 한다.
단계 S100에서는, 데이터 파일을 포함하는 패키지 파일이, 모바일 운영체제 상에서 설치될 수 있다. 즉, 본 단계에서는, 프레임워크에 사용되는 데이터 파일이 암호화된 채로 사용자의 모바일 단말기에 배포 및 설치될 수 있다. 이때, 데이터 파일은 예를 들어, DLL(dynamic link library) 포맷의 파일을 포함하여 구성될 수 있다. 사용자의 모바일 단말기의 시스템 소프트웨어인 운영체제는, 리눅스 기반의 모바일 운영체제를 포함할 수 있다. 예를 들어, 모바일 운영체제는 안드로이드 운영체제를 포함할 수 있다.
도 2는 본 발명의 일실시예에 따른 프레임워크 기반 어플리케이션을 위한 보안 제공 방법의 단계 S100이 구현된 모습을 도시한 도면이고, 도 3은 본 발명의 일실시예에 따른 프레임워크 기반 어플리케이션을 위한 보안 제공 방법의 단계 S100에서 사용되는 데이터 파일이 암호화되기 전의 상태를 도시한 도면이며, 도 4는 본 발명의 일실시예에 따른 프레임워크 기반 어플리케이션을 위한 보안 제공 방법의 단계 S100에서 사용되는 데이터 파일이 암호화된 후의 상태를 도시한 도면이다. 도 2에 도시된 바와 같이, 사용자의 모바일 단말기에 배포되는 패키지 파일에 포함된 데이터 파일은, 예를 들어, 암호화된 상태의 dll 포맷의 파일(200)을 포함할 수 있다. 도 3은 암호화되기 전의 데이터 파일(dll)을 예시적으로 도시한 것으로서, 데이터 파일이 암호화되지 않음으로 인해, 데이터 파일(210)이 포함하는 의미(예를 들어, “This program cannot be run in DOS mode”)가 유출될 수 있는 보안 위험성을 가질 수 있다. 이에 반해, 사용자의 모바일 운영체제 상에 설치되는 패키지 파일의 데이터 파일(dll)(230)이 암호화된 상태인 경우, 파일 내부의 값 자체만으로는 어떤 데이터가 포함되어 있는지 확인하기 어려워, 보안성이 향상될 수 있다.
단계 S110에서는, 어플리케이션 내에서, 데이터 파일에 접근하도록 호출되는 함수를 후킹할 수 있다. 후킹(hooking)이란, 운영체제나 응용 소프트웨어 등 각종 컴퓨터 프로그램에서 소프트웨어의 구성 요소들 간에 발생하는 함수 호출, 메시지, 이벤트 등을 중간에서 바꾸거나 가로채는 기술로서, 이때 간섭되는 함수 호출, 이벤트, 메시지 등을 처리하는 코드를 후크라고 한다.
즉, 본 단계에서는, 예를 들어, 안드로이드 운영체제에서 실행되는 어플리케이션 내에서, 데이터 파일에 접근하는 함수 호출이 포함되는 경우, 어플리케이션이 실행되어 classes.dex와 같은 실행 파일이 로드되기 전에, 미리 설정된 네이티브 함수들을 후킹할 수 있다. 이러한 함수에는, 리눅스 운영체제의 네이티브 함수들이 포함될 수 있다. 예를 들어, 후킹되는 함수는, dlopen 함수, fopen 함수 및 fread 함수를 포함하는 군에서 선택된 적어도 하나의 함수를 포함할 수 있다.
단계 S120에서는, 호출된 함수가 요청하는 데이터 영역을 독출할 수 있다. 본 단계에서는, 이어지는 암호화 판단이 가능하도록, 후킹된 함수가 요청하는 데이터 영역을 미리 독출하도록 구성될 수 있다.
단계 S130에서는, 독출된 데이터 영역의 데이터가 암호화된 데이터인지 판단할 수 있다. 예를 들어, 단계 S100에서, 모바일 운영체제 상에 배포 및 설치되는 패키지 파일의 데이터 파일이, 도 4에 도시된 바와 같이 암호화된 상태의 파일인지 또는, 도 3에 도시된 바와 같이 암호화되지 않은 상태의 파일인지 판단할 수 있다.
단계 S140에서는, 독출된 데이터 영역의 데이터가 암호화된 데이터인 경우, 암호화된 데이터를 복호화하여 함수에 전달할 수 있다. 이때, 암호화된 데이터의 복호화는 메모리 상에서 구현될 수 있다. 이러한 데이터 파일의 복호화는 어플리케이션의 실행 파일이 로드되기 전에 수행될 수 있다.
이와 같이, 별도의 플러그인을 설치하지 않더라도, 암호화된 데이터 파일에 접근하는 함수를 후킹하여 암호화된 데이터를 메모리 상에서 복호화한 다음, 복호화된 데이터를 함수에 전달함으로써, 데이터 파일의 보안성을 향상시킴과 동시에, 별도의 플러그인 실행으로 인한 데이터 로드 시간을 감소시킬 수 있다.
도 5는 본 발명의 일실시예에 따른 프레임워크 기반 어플리케이션을 위한 보안 제공 방법의 단계 S140에서 사용될 수 있는 복호화 프로그램의 의사 코드를 도시한 도면이다. 도 5에 도시된 바와 같이, 암호화된 데이터 파일을 필요로 하는 함수(dlopen, fopen, fread)를 후킹 하여, fread 함수에 암호화된 파일의 호출이 발생하면, 호출되는 데이터를 먼저 읽어, 암호화된 데이터를 복호화 시킨 다음 호출자의 함수에 전달할 수 있다.
단계 S150에서는, 독출된 데이터 영역의 데이터가 암호화되지 않은 데이터인 경우, 데이터를 함수에 전달할 수 있다. 즉, 본 단계에서는, 단계 S130에서 독출되는 데이터 영역의 데이터가 암호화되지 않은 데이터로 판단된 경우, 메모리 상의 복호화 작업 없이, 데이터를 호출 함수에 전달할 수 있다. 다만, 본 단계는 암호화된 데이터 파일의 복호화를 위한 알고리즘의 부가적인 구성으로서, 전술한 바와 같이, 데이터 보안성을 향상시키기 위해서는, 패키지 파일에 포함된 데이터 파일이 이미 암호화된 상태로 배포 및 설치되도록 하는 것이 바람직하다.
이상 설명한 본 발명은 본 발명이 속한 기술분야에서 통상의 지식을 가진 자에 의하여 다양한 변형이나 응용이 가능하며, 본 발명에 따른 기술적 사상의 범위는 아래의 특허청구범위에 의하여 정해져야 할 것이다.
S100: 데이터 파일을 포함하는 패키지 파일이, 모바일 운영체제 상에서 설치되는 단계
S110: 어플리케이션 내에서, 데이터 파일에 접근하도록 호출되는 함수를 후킹하는 단계
S120: 호출된 함수가 요청하는 데이터 영역을 독출하는 단계
S130: 독출된 데이터 영역의 데이터가 암호화된 데이터인지 판단하는 단계
S140: 독출된 데이터 영역의 데이터가 암호화된 데이터인 경우, 암호화된 데이터를 복호화하여 함수에 전달하는 단계
S150: 독출된 데이터 영역의 데이터가 암호화되지 않은 데이터인 경우, 데이터를 함수에 전달하는 단계

Claims (8)

  1. 프로세서가,
    (1) 어플리케이션 내에서, 데이터 파일에 접근하도록 호출되는 함수를 후킹하는 단계(S110);
    (2) 상기 호출된 함수가 요청하는 데이터 영역을 독출하는 단계(S120);
    (3) 상기 독출된 데이터 영역의 데이터가 암호화된 데이터인지 판단하는 단계(S130); 및
    (4) 상기 독출된 데이터 영역의 데이터가 암호화된 데이터인 경우, 상기 암호화된 데이터를 복호화하여 상기 함수에 전달하는 단계(S140)를 포함하되,
    (0) 상기 데이터 파일을 포함하는 패키지 파일을, 모바일 운영체제 상에서 설치하는 단계(S100)를 더 포함하고,
    상기 데이터 파일은 상기 단계 (0)에서, 암호화된 상태로 설치되며,
    상기 단계 (4)는, 상기 암호화된 데이터를 메모리 상에서 복호화하는 것을 특징으로 하는, 프레임워크 기반 어플리케이션을 위한 보안 제공 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 데이터 파일은 DLL(dynamic link library) 포맷의 파일을 포함하는 것을 특징으로 하는, 프레임워크 기반 어플리케이션을 위한 보안 제공 방법.
  4. 삭제
  5. 제1항에 있어서, 상기 함수는,
    리눅스 운영체제의 네이티브 함수를 포함하는 것을 특징으로 하는, 프레임워크 기반 어플리케이션을 위한 보안 제공 방법.
  6. 제5항에 있어서, 상기 함수는,
    dlopen 함수, fopen 함수 및 fread 함수를 포함하는 군에서 선택된 적어도 하나의 함수를 포함하는 것을 특징으로 하는, 프레임워크 기반 어플리케이션을 위한 보안 제공 방법.
  7. 제1항에 있어서,
    상기 어플리케이션은 안드로이드 운영체제에서 실행되는 어플리케이션을 포함하고,
    상기 단계 (4)는,
    상기 어플리케이션의 실행 파일이 로드되기 전에 수행되는 것을 특징으로 하는, 프레임워크 기반 어플리케이션을 위한 보안 제공 방법.
  8. 제1항에 있어서,
    (5) 상기 독출된 데이터 영역의 데이터가 암호화되지 않은 데이터인 경우, 상기 데이터를 상기 함수에 전달하는 단계(S150)를 더 포함하는 것을 특징으로 하는, 프레임워크 기반 어플리케이션을 위한 보안 제공 방법.
KR1020150081294A 2015-06-09 2015-06-09 프레임워크 기반 어플리케이션을 위한 보안 제공 방법 KR101629929B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150081294A KR101629929B1 (ko) 2015-06-09 2015-06-09 프레임워크 기반 어플리케이션을 위한 보안 제공 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150081294A KR101629929B1 (ko) 2015-06-09 2015-06-09 프레임워크 기반 어플리케이션을 위한 보안 제공 방법

Publications (1)

Publication Number Publication Date
KR101629929B1 true KR101629929B1 (ko) 2016-06-13

Family

ID=56191478

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150081294A KR101629929B1 (ko) 2015-06-09 2015-06-09 프레임워크 기반 어플리케이션을 위한 보안 제공 방법

Country Status (1)

Country Link
KR (1) KR101629929B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101857001B1 (ko) * 2017-03-03 2018-05-14 숭실대학교산학협력단 안드로이드 동적 로딩 파일 추출 방법, 이를 수행하기 위한 기록 매체 및 시스템

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090084529A (ko) * 2008-02-01 2009-08-05 주식회사 안철수연구소 악성 스크립트 코드 복호화 방법 및 시스템

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090084529A (ko) * 2008-02-01 2009-08-05 주식회사 안철수연구소 악성 스크립트 코드 복호화 방법 및 시스템

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101857001B1 (ko) * 2017-03-03 2018-05-14 숭실대학교산학협력단 안드로이드 동적 로딩 파일 추출 방법, 이를 수행하기 위한 기록 매체 및 시스템
US10372444B2 (en) 2017-03-03 2019-08-06 Foundation Of Soongsil University-Industry Cooperation Android dynamic loading file extraction method, recording medium and system for performing the method

Similar Documents

Publication Publication Date Title
US11263311B2 (en) Securing virtual-machine software applications
US8892876B1 (en) Secured application package files for mobile computing devices
EP2549380B1 (en) Information processing device, virtual machine generation method, and application software distribution system
EP2854070A1 (en) Method and apparatus of creating application package, method and apparatus of executing application package, and recording medium storing application package
WO2015058620A1 (en) Method and apparatus for generating installation package corresponding to an application and executing application
US20080270806A1 (en) Execution Device
US20180129794A1 (en) Method for Protecting Dex File from Decompilation in Android System
US9594915B2 (en) Information processing apparatus
KR20140077188A (ko) 어플리케이션을 보안하기 위한 어플리케이션 실행 환경의 동적 생성 방법 및 관련 컴퓨터 프로그램 제품 및 컴퓨팅 장치
CN107273142B (zh) 程序更新方法、程序运行方法及装置
US20180067777A1 (en) Application protection method, server, and terminal
EP2341457B1 (en) System and method for loading application classes
US20140281499A1 (en) Method and system for enabling communications between unrelated applications
US9256756B2 (en) Method of encryption and decryption for shared library in open operating system
CN113761482A (zh) 一种程序代码保护方法和装置
WO2019062015A1 (zh) 源代码保护方法、应用服务器及计算机可读存储介质
KR20160112904A (ko) 안드로이드 어플리케이션의 역공학 방지 방법 및 이를 수행하는 장치
KR101629929B1 (ko) 프레임워크 기반 어플리케이션을 위한 보안 제공 방법
CN106295327B (zh) 可执行文件的加固方法和装置
JP2008040853A (ja) アプリケーション実行方法およびアプリケーション実行装置
CN106648770B (zh) 一种应用程序安装包的生成方法、加载方法及装置
US11550883B2 (en) Code protection
KR101532763B1 (ko) 어플리케이션 불법복제 방지 시스템 및 방법
CN111460464B (zh) 数据加解密方法、装置、电子设备及计算机存储介质
CN107392589B (zh) Android系统智能POS系统、安全验证方法、存储介质

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190502

Year of fee payment: 4