KR101328012B1 - 애플리케이션 코드 난독화 장치 및 그 방법 - Google Patents
애플리케이션 코드 난독화 장치 및 그 방법 Download PDFInfo
- Publication number
- KR101328012B1 KR101328012B1 KR20130095155A KR20130095155A KR101328012B1 KR 101328012 B1 KR101328012 B1 KR 101328012B1 KR 20130095155 A KR20130095155 A KR 20130095155A KR 20130095155 A KR20130095155 A KR 20130095155A KR 101328012 B1 KR101328012 B1 KR 101328012B1
- Authority
- KR
- South Korea
- Prior art keywords
- code
- important
- calling
- codes
- application
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 239000013598 vector Substances 0.000 claims abstract description 109
- 238000006243 chemical reaction Methods 0.000 claims abstract description 12
- 238000000926 separation method Methods 0.000 claims description 6
- 238000004458 analytical method Methods 0.000 abstract description 8
- 238000007726 management method Methods 0.000 description 22
- 230000008569 process Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000003068 static effect Effects 0.000 description 4
- 230000000977 initiatory effect Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/14—Protecting executable software against software analysis or reverse engineering, e.g. by obfuscation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
- G06F21/125—Restricting unauthorised execution of programs by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Technology Law (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
- Stored Programmes (AREA)
Abstract
이와 같이 본 발명에 따르면, 애플리케이션을 구성하는 코드 중 중요 코드를 네이티브 코드로 변환하고, 변환된 중요 코드에 자가변환 기반의 코드 보호기법의 암호화를 적용하여 매니지드 코드에 존재하는 역공학 취약성을 보완하여 애플리케이션의 위조 내지 변조에 대한 보안성을 높일 수 있다.
또한, 동적 벡터를 통해 제어 흐름을 변환하고, 네이티브 코드로 변환된 중요 코드를 호출하는 호출 코드와 이를 연결하는 벡터 테이블을 따로 관리하여, 애플리케이션이 실행되는 경우 동적으로 로딩되게 함으로써 역공학 분석 저항성을 강화할 수 있다.
Description
도 2는 본 발명의 하나의 실시예에 따른 애플리케이션 난독화 방법의 순서도이다.
도 2는 본 발명의 하나의 실시예에 따른 애플리케이션 난독화 방법의 순서도이다.
도 3은 본 발명의 실시예에 따른 중요 코드의 파일 구조를 설명하기 위한 도면이다.
도 4는 본 발명의 실시예에 따른 클라이언트 단말이 애플리케이션을 실행시키는 과정을 설명하기 위한 순서도이다.
도 5는 클라이언트 단말이 관리 서버로부터 벡터 테이블과 호출 코드를 수신하는 과정을 설명하기 위한 도면이다.
도 6은 벡터 테이블을 설명하기 위한 도면이다.
120: 코드 분리부 130: 코드 변환부
140: 스크램블러 145: 암호화부
150: 제어부 160: 코드 결합부
170: 컴파일부 171: 제 1컴파일부
172: 제 2컴파일부 200: 관리 서버
210: 벡터 테이블 생성부, 220: 호출 코드 생성부
230: 데이터 베이스
Claims (10)
- 애플리케이션에 사용되는 코드를 입력받는 입력부;
상기 입력된 코드를 분석하여 애플리케이션 위조 내지 변조 공격으로부터 보호될 필요가 있는 중요 코드 및 상기 중요 코드를 호출하기 위한 호출 코드를 포함하는 일반 코드로 분리하는 코드 분리부;
상기 중요 코드를 네이티브 코드 형태로 변환하는 코드 변환부;
상기 변환된 중요 코드 및 일반 코드에 대해 식별자 변환(Scramble Identifier)의 난독화를 실행하는 스크램블러;
상기 중요 코드를 암호화하고, 상기 중요 코드 각각의 주소 정보를 저장하고 있는 중요 코드 연결부의 주소 정보를 삽입하는 암호화부;
상기 일반 코드로부터 상기 호출 코드를 분리하여 관리 서버에 등록하고, 상기 호출 코드를 요청하기 위한 호출 코드 로딩 루틴 및 상기 호출된 중요 코드의 벡터 정보가 포함된 벡터 테이블을 요청하기 위한 벡터 테이블 로딩 루틴을 추가하는 제어부; 및
상기 난독화된 일반 코드와 중요 코드를 결합하여 애플리케이션을 생성하는 코드 결합부를 포함하는 애플리케이션 난독화 장치. - 제 1항에 있어서,
상기 호출 코드 로딩 루틴 및 벡터 테이블 로딩 루틴이 추가된 중요 코드를 네이티브 환경에서 컴파일하는 제 1컴파일부; 및
상기 호출 코드가 분리된 일반 코드를 매니지드 환경에서 컴파일하여 실행 파일을 생성하는 제 2컴파일부를 더 포함하는 애플리케이션 난독화 장치. - 제 2항에 있어서,
상기 중요 코드 및 일반 코드에서 정의된 중요 식별자(sensitive identifier)를 의미 없는 문자 또는 문자열로 교체하여 스크램블하는 스크램블러를 더 포함하는 애플리케이션 난독화 장치. - 청구항 4은(는) 설정등록료 납부시 포기되었습니다.제 3항에 있어서,
상기 애플리케이션을 전송받은 클라이언트가 개시 루틴을 이용하여 상기 애플리케이션을 실행하는 경우,
상기 벡터 테이블 로딩 루틴 및 호출 코드 로딩 루틴이 실행되어 상기 클라이언트가 상기 관리 서버로 상기 벡터 테이블 및 상기 호출 코드를 요청하면,
상기 클라이언트는 상기 관리서버로부터 상기 중요 코드 각각에 대응하는 동적 벡터를 나타내는 벡터 테이블 및 상기 동적 벡터가 적용된 호출 코드를 전송받는 애플리케이션 난독화 장치. - 청구항 5은(는) 설정등록료 납부시 포기되었습니다.제 4항에 있어서,
상기 중요 코드 연결부는,
상기 관리 서버로부터 수신된 상기 벡터 테이블과 저장된 상기 중요 코드의 주소 정보를 이용하여, 상기 동적 벡터가 적용된 호출 코드에 대응되는 중요 코드를 호출하여 실행시키는 애플리케이션 난독화 장치. - 애플리케이션 난독화 장치를 이용한 애플리케이션 난독화 방법에 있어서,
애플리케이션에 사용되는 코드를 입력받는 단계;
상기 입력된 코드를 분석하여 애플리케이션 위조 내지 변조 공격으로부터 보호될 필요가 있는 중요 코드 및 상기 중요 코드를 호출하기 위한 호출 코드를 포함하는 일반 코드로 분리하는 단계;
상기 중요 코드를 네이티브 코드 형태로 변환하는 단계;
상기 변환된 중요 코드 및 일반 코드에 대해 식별자 변환(Scramble Identifier)의 난독화를 실행하는 단계;
상기 중요 코드를 암호화하고, 상기 중요 코드 각각의 주소 정보를 저장하고 있는 중요 코드 연결부의 주소 정보를 삽입하는 단계;
상기 일반 코드로부터 상기 호출 코드를 분리하여 관리 서버에 등록하고, 상기 호출 코드를 요청하기 위한 호출 코드 로딩 루틴 및 상기 호출된 중요 코드의 벡터 정보가 포함된 벡터 테이블을 요청하기 위한 벡터 테이블 로딩 루틴을 추가하는 단계; 및
상기 난독화된 일반 코드와 중요 코드를 결합하여 애플리케이션을 생성하는 단계를 포함하는 애플리케이션 난독화 방법. - 제 6항에 있어서,
상기 호출 코드 로딩 루틴 및 벡터 테이블 로딩 루틴이 추가된 중요 코드를 네이티브 환경에서 컴파일하는 단계; 및
상기 호출코드가 분리된 일반 코드를 매니지드 환경에서 컴파일하여 실행 파일을 생성하는 단계를 더 포함하는 애플리케이션 난독화 방법. - 제 7항에 있어서,
상기 중요 코드 및 일반 코드에서 정의된 중요 식별자(sensitive identifier)를 의미 없는 문자 또는 문자열로 교체하여 스크램블하는 단계를 더 포함하는 애플리케이션 난독화 방법. - 청구항 9은(는) 설정등록료 납부시 포기되었습니다.제 8항에 있어서,
상기 애플리케이션을 전송받은 클라이언트가 개시 루틴을 이용하여 상기 애플리케이션을 실행하는 경우,
상기 벡터 테이블 로딩 루틴 및 호출 코드 로딩 루틴이 실행되어 상기 클라이언트가 상기 관리 서버로 상기 벡터 테이블 및 상기 호출 코드를 요청하면, 상기 클라이언트는 상기 관리서버로부터 상기 중요 코드 각각에 대응하는 동적 벡터를 나타내는 벡터 테이블 및 상기 동적 벡터가 적용된 호출 코드를 전송받는 애플리케이션 난독화 방법. - 청구항 10은(는) 설정등록료 납부시 포기되었습니다.제 9항에 있어서,
상기 중요 코드 연결부는,
상기 관리 서버로부터 수신된 상기 벡터 테이블과 저장된 상기 중요 코드의 주소 정보를 이용하여, 상기 동적 벡터가 적용된 호출 코드에 대응되는 중요 코드를 호출하여 실행시키는 애플리케이션 난독화 방법.
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20130095155A KR101328012B1 (ko) | 2013-08-12 | 2013-08-12 | 애플리케이션 코드 난독화 장치 및 그 방법 |
PCT/KR2013/008748 WO2015023024A1 (ko) | 2013-08-12 | 2013-09-30 | 애플리케이션 코드 난독화 장치 및 그 방법 |
JP2015542938A JP5990654B2 (ja) | 2013-08-12 | 2013-09-30 | アプリケーションコード難読化装置及びその方法 |
US14/360,305 US9396313B2 (en) | 2013-08-12 | 2013-09-30 | Apparatus for tamper protection of application code and method thereof |
EP13891630.9A EP2897073B1 (en) | 2013-08-12 | 2013-09-30 | Device for obfuscating application code and method for same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20130095155A KR101328012B1 (ko) | 2013-08-12 | 2013-08-12 | 애플리케이션 코드 난독화 장치 및 그 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101328012B1 true KR101328012B1 (ko) | 2013-11-13 |
Family
ID=49857418
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR20130095155A Expired - Fee Related KR101328012B1 (ko) | 2013-08-12 | 2013-08-12 | 애플리케이션 코드 난독화 장치 및 그 방법 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9396313B2 (ko) |
EP (1) | EP2897073B1 (ko) |
JP (1) | JP5990654B2 (ko) |
KR (1) | KR101328012B1 (ko) |
WO (1) | WO2015023024A1 (ko) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015093671A1 (ko) * | 2013-12-16 | 2015-06-25 | 주식회사 에스이웍스 | Arm 프로세서 기반의 파일 난독화 방법 |
CN104866741A (zh) * | 2014-02-25 | 2015-08-26 | 北京娜迦信息科技发展有限公司 | 一种Android安装包文件的保护方法及装置 |
KR101566145B1 (ko) | 2014-10-23 | 2015-11-06 | 숭실대학교산학협력단 | 모바일 기기 및 상기 모바일 기기의 동작 방법 |
KR101619458B1 (ko) | 2016-03-02 | 2016-05-10 | (주)케이사인 | 애플리케이션 코드 난독화 장치 및 이를 이용한 애플리케이션 코드 난독화 방법 |
KR20160065261A (ko) * | 2014-11-28 | 2016-06-09 | 주식회사 티모넷 | 앱 위변조 방지시스템 및 그 방법 |
WO2016111413A1 (ko) | 2015-01-08 | 2016-07-14 | 숭실대학교 산학협력단 | 분간이 난해한 식별자 변환을 이용한 코드 난독화 장치 및 방법 |
KR101642252B1 (ko) * | 2016-06-15 | 2016-07-25 | 숭실대학교산학협력단 | 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치 및 그 방법 |
WO2016200058A1 (ko) * | 2015-06-11 | 2016-12-15 | 라인 가부시키가이샤 | 바이너리 병합 장치, 방법 및 컴퓨터 프로그램 |
KR101704703B1 (ko) * | 2016-06-08 | 2017-02-08 | (주)케이사인 | 더미 코드를 사용하는 애플리케이션 코드 은닉 장치 및 이를 이용한 애플리케이션 코드 은닉 방법 |
KR101753811B1 (ko) | 2016-12-14 | 2017-07-19 | 올댓소프트 코. | 동적 할당 메모리를 이용하는 애플리케이션 코드 자가 변환 장치 및 이를 이용한 애플리케이션 코드 자가 변환 방법 |
EP3067810A4 (en) * | 2014-10-21 | 2017-08-30 | Soongsil University Research Consortium Techno-Park | User terminal and method for protecting core code of application program using same |
KR101845155B1 (ko) * | 2016-06-30 | 2018-04-03 | 라인 가부시키가이샤 | 어플리케이션 패키지를 제공하는 방법 및 시스템, 그리고 어플리케이션을 실행하는 방법 및 시스템 |
KR20190074170A (ko) * | 2017-12-19 | 2019-06-27 | 유재욱 | 이중 패킹을 이용한 코드 난독화 |
KR20190122837A (ko) * | 2017-03-10 | 2019-10-30 | 지멘스 악티엔게젤샤프트 | 프로그램 코드의 컴퓨터-지원 난독화를 위한 방법 |
KR20230102835A (ko) | 2021-12-30 | 2023-07-07 | 주식회사 트루인테크 | 권리보호 기능을 적용하여 소스코드를 제공하는 시스템 및 방법 |
US11921874B2 (en) | 2020-06-11 | 2024-03-05 | LINE Plus Corporation | Method and system for protecting file using class distribution and sequential memory loading |
US12189761B2 (en) | 2020-05-26 | 2025-01-07 | LINE Plus Corporation | Method and system for detecting hooking using clustering API information |
WO2025009679A1 (ko) * | 2023-07-06 | 2025-01-09 | 숭실대학교 산학협력단 | 난독화 구현 방법, 이를 수행하는 기록 매체 및 장치 |
KR102827919B1 (ko) * | 2023-07-06 | 2025-07-01 | 숭실대학교 산학협력단 | 난독화 구현 방법, 이를 수행하는 기록 매체 및 장치 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9659156B1 (en) * | 2014-03-20 | 2017-05-23 | Symantec Corporation | Systems and methods for protecting virtual machine program code |
KR101832594B1 (ko) * | 2016-02-18 | 2018-02-26 | 라인 가부시키가이샤 | 중간 언어 파일의 로딩 속도 개선을 위한 방법 및 시스템 |
EP3264307A1 (en) * | 2016-06-29 | 2018-01-03 | Nagravision SA | On demand code decryption |
US11074339B2 (en) * | 2017-06-27 | 2021-07-27 | RAM Laboratories, Inc. | Software protection through code and control flow data hiding and obfuscation |
US11074324B2 (en) * | 2018-09-05 | 2021-07-27 | International Business Machines Corporation | Preventing software application tampering |
CN111783104B (zh) * | 2020-07-02 | 2021-04-06 | 北京自如信息科技有限公司 | 一种漏洞检查方法、持续集成代码的漏洞检查方法及装置 |
US20230195860A1 (en) * | 2021-12-20 | 2023-06-22 | International Business Machines Corporation | Selective on-demand execution encryption |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005202663A (ja) | 2004-01-15 | 2005-07-28 | Denso Wave Inc | 制御用プログラム,コンパイラおよび変換プログラム |
JP2006072584A (ja) | 2004-08-31 | 2006-03-16 | Fuji Xerox Co Ltd | 実行プログラム生成装置、実行プログラム生成方法、プログラム処理装置、プログラム処理方法及びプログラム |
JP2006164184A (ja) | 2004-12-10 | 2006-06-22 | Ntt Docomo Inc | プログラム分割装置、プログラム実行装置、プログラム分割方法及びプログラム実行方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0713871A (ja) * | 1993-06-23 | 1995-01-17 | Oki Electric Ind Co Ltd | Eepromのアドレス制御方法 |
CA2305078A1 (en) * | 2000-04-12 | 2001-10-12 | Cloakware Corporation | Tamper resistant software - mass data encoding |
GB0024918D0 (en) * | 2000-10-11 | 2000-11-22 | Sealedmedia Ltd | Method of providing java tamperproofing |
US7367045B2 (en) * | 2002-03-16 | 2008-04-29 | Trustedflow Systems, Inc. | Trusted communications system |
WO2004023313A1 (en) * | 2002-09-04 | 2004-03-18 | Fraunhofer Crcg, Inc. | Protecting mobile code against malicious hosts cross references to related applications |
US7148154B2 (en) | 2003-08-20 | 2006-12-12 | Asm Japan K.K. | Method of forming silicon-containing insulation film having low dielectric constant and low film stress |
JP2005135265A (ja) * | 2003-10-31 | 2005-05-26 | Fujitsu Ltd | 情報処理装置 |
JP2008164184A (ja) | 2006-12-27 | 2008-07-17 | Matsushita Electric Ind Co Ltd | 空気調和機能付換気装置 |
US8752032B2 (en) * | 2007-02-23 | 2014-06-10 | Irdeto Canada Corporation | System and method of interlocking to protect software-mediated program and device behaviours |
KR101234591B1 (ko) | 2011-05-13 | 2013-02-19 | 주식회사 인프라웨어테크놀러지 | Jni를 이용한 안드로이드 난독화 방법 |
KR101350390B1 (ko) * | 2013-08-14 | 2014-01-16 | 숭실대학교산학협력단 | 코드 난독화 장치 및 그 방법 |
KR101490047B1 (ko) * | 2013-09-27 | 2015-02-04 | 숭실대학교산학협력단 | 자가변환 기반 애플리케이션 코드 난독화 장치 및 그 방법 |
-
2013
- 2013-08-12 KR KR20130095155A patent/KR101328012B1/ko not_active Expired - Fee Related
- 2013-09-30 EP EP13891630.9A patent/EP2897073B1/en active Active
- 2013-09-30 WO PCT/KR2013/008748 patent/WO2015023024A1/ko active Application Filing
- 2013-09-30 US US14/360,305 patent/US9396313B2/en active Active
- 2013-09-30 JP JP2015542938A patent/JP5990654B2/ja not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005202663A (ja) | 2004-01-15 | 2005-07-28 | Denso Wave Inc | 制御用プログラム,コンパイラおよび変換プログラム |
JP2006072584A (ja) | 2004-08-31 | 2006-03-16 | Fuji Xerox Co Ltd | 実行プログラム生成装置、実行プログラム生成方法、プログラム処理装置、プログラム処理方法及びプログラム |
JP2006164184A (ja) | 2004-12-10 | 2006-06-22 | Ntt Docomo Inc | プログラム分割装置、プログラム実行装置、プログラム分割方法及びプログラム実行方法 |
Cited By (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015093671A1 (ko) * | 2013-12-16 | 2015-06-25 | 주식회사 에스이웍스 | Arm 프로세서 기반의 파일 난독화 방법 |
CN104866741A (zh) * | 2014-02-25 | 2015-08-26 | 北京娜迦信息科技发展有限公司 | 一种Android安装包文件的保护方法及装置 |
EP3067810A4 (en) * | 2014-10-21 | 2017-08-30 | Soongsil University Research Consortium Techno-Park | User terminal and method for protecting core code of application program using same |
KR101566145B1 (ko) | 2014-10-23 | 2015-11-06 | 숭실대학교산학협력단 | 모바일 기기 및 상기 모바일 기기의 동작 방법 |
JP2017501478A (ja) * | 2014-10-23 | 2017-01-12 | スンシル ユニバーシティー リサーチ コンソルティウム テクノ−パークSoongsil University Research Consortium Techno−Park | モバイル機器及び該モバイル機器の動作方法 |
KR20160065261A (ko) * | 2014-11-28 | 2016-06-09 | 주식회사 티모넷 | 앱 위변조 방지시스템 및 그 방법 |
KR101642267B1 (ko) | 2014-11-28 | 2016-08-01 | 주식회사 티모넷 | 앱 위변조 방지시스템 및 그 방법 |
WO2016111413A1 (ko) | 2015-01-08 | 2016-07-14 | 숭실대학교 산학협력단 | 분간이 난해한 식별자 변환을 이용한 코드 난독화 장치 및 방법 |
KR101757407B1 (ko) * | 2015-06-11 | 2017-07-12 | 라인 가부시키가이샤 | 바이너리 병합 장치, 방법 및 컴퓨터 프로그램 |
US10552132B2 (en) | 2015-06-11 | 2020-02-04 | Line Corporation | Binary merging device, method, and computer program |
WO2016200058A1 (ko) * | 2015-06-11 | 2016-12-15 | 라인 가부시키가이샤 | 바이너리 병합 장치, 방법 및 컴퓨터 프로그램 |
WO2017150769A1 (ko) * | 2016-03-02 | 2017-09-08 | (주)케이사인 | 애플리케이션 코드 난독화 장치 및 이를 이용한 애플리케이션 코드 난독화 방법 |
KR101619458B1 (ko) | 2016-03-02 | 2016-05-10 | (주)케이사인 | 애플리케이션 코드 난독화 장치 및 이를 이용한 애플리케이션 코드 난독화 방법 |
KR101704703B1 (ko) * | 2016-06-08 | 2017-02-08 | (주)케이사인 | 더미 코드를 사용하는 애플리케이션 코드 은닉 장치 및 이를 이용한 애플리케이션 코드 은닉 방법 |
WO2017213320A1 (ko) * | 2016-06-08 | 2017-12-14 | (주)케이사인 | 더미 코드를 사용하는 애플리케이션 코드 은닉 장치 및 이를 이용한 애플리케이션 코드 은닉 방법 |
KR101642252B1 (ko) * | 2016-06-15 | 2016-07-25 | 숭실대학교산학협력단 | 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치 및 그 방법 |
KR101845155B1 (ko) * | 2016-06-30 | 2018-04-03 | 라인 가부시키가이샤 | 어플리케이션 패키지를 제공하는 방법 및 시스템, 그리고 어플리케이션을 실행하는 방법 및 시스템 |
KR101753811B1 (ko) | 2016-12-14 | 2017-07-19 | 올댓소프트 코. | 동적 할당 메모리를 이용하는 애플리케이션 코드 자가 변환 장치 및 이를 이용한 애플리케이션 코드 자가 변환 방법 |
KR20190122837A (ko) * | 2017-03-10 | 2019-10-30 | 지멘스 악티엔게젤샤프트 | 프로그램 코드의 컴퓨터-지원 난독화를 위한 방법 |
KR102336521B1 (ko) | 2017-03-10 | 2021-12-06 | 지멘스 악티엔게젤샤프트 | 프로그램 코드의 컴퓨터-지원 난독화를 위한 방법 |
US11341216B2 (en) | 2017-03-10 | 2022-05-24 | Siemens Aktiengesellschaft | Method for the computer-aided obfuscation of program code |
KR20190074170A (ko) * | 2017-12-19 | 2019-06-27 | 유재욱 | 이중 패킹을 이용한 코드 난독화 |
KR102018960B1 (ko) | 2017-12-19 | 2019-09-05 | 유재욱 | 이중 패킹을 이용한 코드 난독화 |
US12189761B2 (en) | 2020-05-26 | 2025-01-07 | LINE Plus Corporation | Method and system for detecting hooking using clustering API information |
US11921874B2 (en) | 2020-06-11 | 2024-03-05 | LINE Plus Corporation | Method and system for protecting file using class distribution and sequential memory loading |
KR20230102835A (ko) | 2021-12-30 | 2023-07-07 | 주식회사 트루인테크 | 권리보호 기능을 적용하여 소스코드를 제공하는 시스템 및 방법 |
WO2025009679A1 (ko) * | 2023-07-06 | 2025-01-09 | 숭실대학교 산학협력단 | 난독화 구현 방법, 이를 수행하는 기록 매체 및 장치 |
KR102827919B1 (ko) * | 2023-07-06 | 2025-07-01 | 숭실대학교 산학협력단 | 난독화 구현 방법, 이를 수행하는 기록 매체 및 장치 |
Also Published As
Publication number | Publication date |
---|---|
EP2897073A1 (en) | 2015-07-22 |
US9396313B2 (en) | 2016-07-19 |
EP2897073B1 (en) | 2017-06-14 |
JP5990654B2 (ja) | 2016-09-14 |
WO2015023024A1 (ko) | 2015-02-19 |
JP2016503542A (ja) | 2016-02-04 |
EP2897073A4 (en) | 2016-08-03 |
US20160180065A1 (en) | 2016-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101328012B1 (ko) | 애플리케이션 코드 난독화 장치 및 그 방법 | |
KR101490047B1 (ko) | 자가변환 기반 애플리케이션 코드 난독화 장치 및 그 방법 | |
KR101471589B1 (ko) | 공통중간언어 기반 프로그램을 위한 보안 제공 방법 | |
KR101350390B1 (ko) | 코드 난독화 장치 및 그 방법 | |
RU2439669C2 (ru) | Способ предотвращения обратного инжиниринга программного обеспечения, неавторизованной модификации и перехвата данных во время выполнения | |
CN104321782B (zh) | web应用的安全执行 | |
KR101861341B1 (ko) | 애플리케이션 코드의 역난독화 장치 및 이를 이용한 애플리케이션 코드의 역난독화 방법 | |
KR102433011B1 (ko) | Apk 파일 보호 방법, 이를 수행하는 apk 파일 보호 시스템, 및 이를 저장하는 기록매체 | |
CN104268444A (zh) | 一种云OS Java源代码保护方法 | |
Piao et al. | Server‐based code obfuscation scheme for APK tamper detection | |
US10482221B2 (en) | Protecting a computer program against reverse engineering | |
CN104680039A (zh) | 一种应用程序安装包的数据保护方法及装置 | |
CN107273723A (zh) | 一种基于so文件加壳的Android平台应用软件保护方法 | |
KR20180028666A (ko) | 역공학 방지 방법 및 장치 | |
Sun et al. | Selwasm: A code protection mechanism for webassembly | |
CN114943062A (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
KR101667774B1 (ko) | 스크립트 프로그램을 위한 보안 제공 장치 및 방법 | |
CN108021790B (zh) | 文件保护方法、装置、计算设备及计算机存储介质 | |
CN111460464A (zh) | 数据加解密方法、装置、电子设备及计算机存储介质 | |
CN114039743A (zh) | 数据的加密方法、装置、存储介质以及终端 | |
CN114297589A (zh) | 应用程序的资源保护方法、资源读取方法及装置 | |
Haoliang et al. | The Design and Implementation on the Android Application Protection System | |
CN117828556A (zh) | 一种代码处理方法、装置、电子设备及可读存储介质 | |
Sonnleitner et al. | Indirect Data Representation Via Offset Vectoring: A Code-integrity-driven In-memory Data Regeneration Scheme. | |
CN116244671A (zh) | 认证方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20130812 |
|
PA0201 | Request for examination | ||
A302 | Request for accelerated examination | ||
PA0302 | Request for accelerated examination |
Patent event date: 20130814 Patent event code: PA03022R01D Comment text: Request for Accelerated Examination Patent event date: 20130812 Patent event code: PA03021R01I Comment text: Patent Application |
|
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20130905 Patent event code: PE09021S01D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20131104 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20131105 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20131106 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
FPAY | Annual fee payment |
Payment date: 20161024 Year of fee payment: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20161024 Start annual number: 4 End annual number: 4 |
|
FPAY | Annual fee payment |
Payment date: 20181022 Year of fee payment: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20181022 Start annual number: 6 End annual number: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20201102 Start annual number: 8 End annual number: 8 |
|
PR1001 | Payment of annual fee |
Payment date: 20211101 Start annual number: 9 End annual number: 9 |
|
PC1903 | Unpaid annual fee |
Termination category: Default of registration fee Termination date: 20230816 |