JP5133973B2 - 難読化支援装置、難読化支援方法、プログラムおよび集積回路 - Google Patents
難読化支援装置、難読化支援方法、プログラムおよび集積回路 Download PDFInfo
- Publication number
- JP5133973B2 JP5133973B2 JP2009502371A JP2009502371A JP5133973B2 JP 5133973 B2 JP5133973 B2 JP 5133973B2 JP 2009502371 A JP2009502371 A JP 2009502371A JP 2009502371 A JP2009502371 A JP 2009502371A JP 5133973 B2 JP5133973 B2 JP 5133973B2
- Authority
- JP
- Japan
- Prior art keywords
- code
- obfuscation
- source code
- display
- conversion
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 60
- 238000004458 analytical method Methods 0.000 claims description 51
- 238000012545 processing Methods 0.000 claims description 10
- 238000006243 chemical reaction Methods 0.000 description 175
- 238000010586 diagram Methods 0.000 description 24
- 230000006870 function Effects 0.000 description 19
- 238000012986 modification Methods 0.000 description 19
- 230000004048 modification Effects 0.000 description 19
- 230000008569 process Effects 0.000 description 17
- 230000001360 synchronised effect Effects 0.000 description 16
- 238000004364 calculation method Methods 0.000 description 15
- 238000004590 computer program Methods 0.000 description 15
- 230000009466 transformation Effects 0.000 description 15
- 230000008859 change Effects 0.000 description 12
- 230000033001 locomotion Effects 0.000 description 12
- 238000005457 optimization Methods 0.000 description 11
- 238000001514 detection method Methods 0.000 description 8
- 238000013507 mapping Methods 0.000 description 5
- 238000000844 transformation Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000010354 integration Effects 0.000 description 4
- 238000009877 rendering Methods 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 2
- 238000005206 flow analysis Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000010422 painting Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 238000012360 testing method Methods 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Document Processing Apparatus (AREA)
Description
2007年1月18日に出願された、明細書と図面と請求項とを含む日本国特許出願番号2007‐009622を本願に引用して援用する。
以降使用される用語は、以下の意味を有する。それ以外を意味する場合は、具体的に説明される。
質を高めるために、コード変換処理を評価しチューニングする新しい方法について説明する。
上記実施の形態では難読化支援装置11は、同期コード・データディスプレイ118およびパラメータウィンドウ500を出力装置1002に表示させたが、さらに、変換済コード104の難読化の程度または質を示す同期メトリクス表示ディスプレイを表示させてもよい。
上記のように、図10は、特に難読化変換の質の評価における補助を対象とする、多数のメトリクスを示す。
なお、本発明は以下の場合も本発明に含まれる。
Claims (5)
- プログラムの難読化を支援する難読化支援装置であって、
高級言語で記述されたプログラムであるソースコードと、前記ソースコードを難読化することにより生成される高級言語で記述された難読化コードとのそれぞれで対応している対象部分を特定する分析手段と、
前記ソースコードのうちの前記対象部分のみを難読化するために用いられた難読化パラメータを取得する取得手段と、
前記分析手段により特定された前記ソースコードおよび難読化コードのそれぞれの対象部分と、前記取得手段により取得された難読化パラメータとを関連付けて表示手段に表示させる表示制御手段と、
ユーザによる操作を受け付ける入力手段と、
前記入力手段により受け付けられた操作に応じて、前記表示手段に表示されている難読化パラメータを変更し、変更された難読化パラメータに従って前記ソースコードの対象部分をコンピュータに難読化させることにより、前記難読化コードの対象部分を更新させる難読化制御手段と
を備えることを特徴とする難読化支援装置。 - 前記取得手段は、さらに、前記変更された難読化パラメータを取得し、
前記表示制御手段は、さらに、前記ソースコードの対象部分と、更新された前記難読化コードの対象部分と、前記変更された難読化パラメータとを関連付けて前記表示手段に表示させる
ことを特徴とする請求項1記載の難読化支援装置。 - 難読化支援装置がプログラムの難読化を支援する難読化支援方法であって、
前記難読化支援装置は、分析手段と、取得手段と、表示制御手段と、入力手段と、難読化制御手段とを備え、
前記難読化支援方法は、
前記分析手段が、高級言語で記述されたプログラムであるソースコードと、前記ソースコードを難読化することにより生成される高級言語で記述された難読化コードとのそれぞれで対応している対象部分を特定する特定ステップと、
前記取得手段が、前記ソースコードのうちの前記対象部分のみを難読化するために用いられた難読化パラメータを取得する取得ステップと、
前記表示制御手段が、前記特定ステップで特定された前記ソースコードおよび難読化コードのそれぞれの対象部分と、前記取得手段により取得された難読化パラメータとを関連付けて表示手段に表示させる表示制御ステップと、
前記入力手段が、ユーザによる操作を受け付ける入力ステップと、
前記難読化制御手段が、前記入力ステップにより受け付けられた操作に応じて、前記表示手段に表示されている難読化パラメータを変更し、変更された難読化パラメータに従って前記ソースコードの対象部分をコンピュータに難読化させることにより、前記難読化コードの対象部分を更新させる難読化制御ステップと
を含むことを特徴とする難読化支援方法。 - 処理対象プログラムの難読化を支援するためのプログラムであって、
高級言語で記述された処理対象プログラムであるソースコードと、前記ソースコードを難読化することにより生成される高級言語で記述された難読化コードとのそれぞれで対応している対象部分を特定する特定ステップと、
前記ソースコードのうちの前記対象部分のみを難読化するために用いられた難読化パラメータを取得する取得ステップと、
前記特定ステップで特定された前記ソースコードおよび難読化コードのそれぞれの対象部分と、前記取得ステップで取得された難読化パラメータとを関連付けて表示手段に表示させる表示制御ステップと、
ユーザによる操作を受け付ける入力ステップと、
前記入力ステップにより受け付けられた操作に応じて、前記表示手段に表示されている難読化パラメータを変更し、変更された難読化パラメータに従って前記ソースコードの対象部分をコンピュータに難読化させることにより、前記難読化コードの対象部分を更新させる難読化制御ステップと
をコンピュータに実行させることを特徴とするプログラム。 - プログラムの難読化を支援する集積回路であって、
高級言語で記述されたプログラムであるソースコードと、前記ソースコードを難読化することにより生成される高級言語で記述された難読化コードとのそれぞれで対応している対象部分を特定する分析手段と、
前記ソースコードのうちの前記対象部分のみを難読化するために用いられた難読化パラメータを取得する取得手段と、
前記分析手段により特定された前記ソースコードおよび難読化コードのそれぞれの対象部分と、前記取得手段により取得された難読化パラメータとを関連付けて表示手段に表示させる表示制御手段と、
ユーザによる操作を受け付ける入力手段と、
前記入力手段により受け付けられた操作に応じて、前記表示手段に表示されている難読化パラメータを変更し、変更された難読化パラメータに従って前記ソースコードの対象部分をコンピュータに難読化させることにより、前記難読化コードの対象部分を更新させる難読化制御手段と
を備えることを特徴とする集積回路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009502371A JP5133973B2 (ja) | 2007-01-18 | 2008-01-17 | 難読化支援装置、難読化支援方法、プログラムおよび集積回路 |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007009622 | 2007-01-18 | ||
JP2007009622 | 2007-01-18 | ||
PCT/JP2008/050922 WO2008088073A1 (en) | 2007-01-18 | 2008-01-17 | Obfuscation assisting apparatus |
JP2009502371A JP5133973B2 (ja) | 2007-01-18 | 2008-01-17 | 難読化支援装置、難読化支援方法、プログラムおよび集積回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010517119A JP2010517119A (ja) | 2010-05-20 |
JP5133973B2 true JP5133973B2 (ja) | 2013-01-30 |
Family
ID=39272160
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009502371A Active JP5133973B2 (ja) | 2007-01-18 | 2008-01-17 | 難読化支援装置、難読化支援方法、プログラムおよび集積回路 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9589115B2 (ja) |
JP (1) | JP5133973B2 (ja) |
WO (1) | WO2008088073A1 (ja) |
Families Citing this family (62)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5277825B2 (ja) * | 2008-09-18 | 2013-08-28 | 富士ゼロックス株式会社 | プログラム難読化装置及び難読化プログラム |
WO2011116448A1 (en) * | 2010-03-25 | 2011-09-29 | Irdeto Canada Corporation | System and method for dynamic, variably-timed operation paths as a resistance to side channel and repeated invocation attacks |
EP2598987B1 (en) * | 2010-07-29 | 2019-03-06 | Irdeto B.V. | System and method for efficiently deploying massively diverse program instances to resist differential attacks |
US8683452B1 (en) * | 2010-12-21 | 2014-03-25 | Emc Corporation | Dynamically obfuscated javascript |
US9280377B2 (en) | 2013-03-29 | 2016-03-08 | Citrix Systems, Inc. | Application with multiple operation modes |
US9143530B2 (en) | 2011-10-11 | 2015-09-22 | Citrix Systems, Inc. | Secure container for protecting enterprise data on a mobile device |
US20140032733A1 (en) | 2011-10-11 | 2014-01-30 | Citrix Systems, Inc. | Policy-Based Application Management |
US9215225B2 (en) | 2013-03-29 | 2015-12-15 | Citrix Systems, Inc. | Mobile device locking with context |
US9774658B2 (en) | 2012-10-12 | 2017-09-26 | Citrix Systems, Inc. | Orchestration framework for connected devices |
US8613070B1 (en) | 2012-10-12 | 2013-12-17 | Citrix Systems, Inc. | Single sign-on access in an orchestration framework for connected devices |
US9516022B2 (en) | 2012-10-14 | 2016-12-06 | Getgo, Inc. | Automated meeting room |
US8910239B2 (en) | 2012-10-15 | 2014-12-09 | Citrix Systems, Inc. | Providing virtualized private network tunnels |
US20140109176A1 (en) | 2012-10-15 | 2014-04-17 | Citrix Systems, Inc. | Configuring and providing profiles that manage execution of mobile applications |
US9170800B2 (en) | 2012-10-16 | 2015-10-27 | Citrix Systems, Inc. | Application wrapping for application management framework |
US20140108793A1 (en) | 2012-10-16 | 2014-04-17 | Citrix Systems, Inc. | Controlling mobile device access to secure data |
US9971585B2 (en) | 2012-10-16 | 2018-05-15 | Citrix Systems, Inc. | Wrapping unmanaged applications on a mobile device |
US9606774B2 (en) | 2012-10-16 | 2017-03-28 | Citrix Systems, Inc. | Wrapping an application with field-programmable business logic |
US9021262B2 (en) * | 2013-01-25 | 2015-04-28 | Concurix Corporation | Obfuscating trace data |
US8954546B2 (en) | 2013-01-25 | 2015-02-10 | Concurix Corporation | Tracing with a workload distributor |
US9207969B2 (en) | 2013-01-25 | 2015-12-08 | Microsoft Technology Licensing, Llc | Parallel tracing for performance and detail |
US8997063B2 (en) | 2013-02-12 | 2015-03-31 | Concurix Corporation | Periodicity optimization in an automated tracing system |
US20130283281A1 (en) | 2013-02-12 | 2013-10-24 | Concurix Corporation | Deploying Trace Objectives using Cost Analyses |
US8924941B2 (en) | 2013-02-12 | 2014-12-30 | Concurix Corporation | Optimization analysis using similar frequencies |
US9116712B2 (en) * | 2013-02-28 | 2015-08-25 | Microsoft Technology Licensing, Llc | Compile based obfuscation |
US9225737B2 (en) | 2013-03-15 | 2015-12-29 | Shape Security, Inc. | Detecting the introduction of alien content |
US9665474B2 (en) | 2013-03-15 | 2017-05-30 | Microsoft Technology Licensing, Llc | Relationships derived from trace data |
US20140283038A1 (en) | 2013-03-15 | 2014-09-18 | Shape Security Inc. | Safe Intelligent Content Modification |
US9355223B2 (en) | 2013-03-29 | 2016-05-31 | Citrix Systems, Inc. | Providing a managed browser |
US9413736B2 (en) | 2013-03-29 | 2016-08-09 | Citrix Systems, Inc. | Providing an enterprise application store |
US9985850B2 (en) | 2013-03-29 | 2018-05-29 | Citrix Systems, Inc. | Providing mobile device management functionalities |
US9455886B2 (en) | 2013-03-29 | 2016-09-27 | Citrix Systems, Inc. | Providing mobile device management functionalities |
US10284627B2 (en) | 2013-03-29 | 2019-05-07 | Citrix Systems, Inc. | Data management for an application with multiple operation modes |
US9575874B2 (en) | 2013-04-20 | 2017-02-21 | Microsoft Technology Licensing, Llc | Error list and bug report analysis for configuring an application tracer |
US9292415B2 (en) | 2013-09-04 | 2016-03-22 | Microsoft Technology Licensing, Llc | Module specific tracing in a shared module environment |
US9772927B2 (en) | 2013-11-13 | 2017-09-26 | Microsoft Technology Licensing, Llc | User interface for selecting tracing origins for aggregating classes of trace data |
US9270647B2 (en) | 2013-12-06 | 2016-02-23 | Shape Security, Inc. | Client/server security by an intermediary rendering modified in-memory objects |
US8954583B1 (en) | 2014-01-20 | 2015-02-10 | Shape Security, Inc. | Intercepting and supervising calls to transformed operations and objects |
US9489526B1 (en) * | 2014-01-21 | 2016-11-08 | Shape Security, Inc. | Pre-analyzing served content |
US8893294B1 (en) | 2014-01-21 | 2014-11-18 | Shape Security, Inc. | Flexible caching |
US9477836B1 (en) | 2014-04-23 | 2016-10-25 | Shape Security, Inc. | Content modification in served code |
US9858440B1 (en) | 2014-05-23 | 2018-01-02 | Shape Security, Inc. | Encoding of sensitive data |
US10089216B2 (en) | 2014-06-30 | 2018-10-02 | Shape Security, Inc. | Automatically determining whether a page of a web site is broken despite elements on the page that may change |
US9075990B1 (en) | 2014-07-01 | 2015-07-07 | Shape Security, Inc. | Reliable selection of security countermeasures |
US9003511B1 (en) | 2014-07-22 | 2015-04-07 | Shape Security, Inc. | Polymorphic security policy action |
US9602543B2 (en) | 2014-09-09 | 2017-03-21 | Shape Security, Inc. | Client/server polymorphism using polymorphic hooks |
US9825995B1 (en) | 2015-01-14 | 2017-11-21 | Shape Security, Inc. | Coordinated application of security policies |
US9501301B2 (en) * | 2015-02-26 | 2016-11-22 | Nxp B.V. | Flexible instruction sets for obfuscated virtual machines |
EP3298533B1 (en) | 2015-05-19 | 2020-01-29 | Cryptomove, Inc. | Security via data concealment |
US10642786B2 (en) | 2015-05-19 | 2020-05-05 | Cryptomove, Inc. | Security via data concealment using integrated circuits |
US10664439B2 (en) | 2015-05-19 | 2020-05-26 | Cryptomove, Inc. | Security via dynamic data movement in a cloud-based environment |
US10230718B2 (en) | 2015-07-07 | 2019-03-12 | Shape Security, Inc. | Split serving of computer code |
US9807113B2 (en) | 2015-08-31 | 2017-10-31 | Shape Security, Inc. | Polymorphic obfuscation of executable code |
US10375026B2 (en) | 2015-10-28 | 2019-08-06 | Shape Security, Inc. | Web transaction status tracking |
US10394554B1 (en) * | 2016-09-09 | 2019-08-27 | Stripe, Inc. | Source code extraction via monitoring processing of obfuscated byte code |
JP6907847B2 (ja) * | 2017-09-14 | 2021-07-21 | 日本電気株式会社 | ソースプログラム保護システム及び方法 |
EP3467691B1 (en) * | 2017-10-05 | 2020-08-26 | Eshard | Method of selecting software files |
US20220179930A1 (en) * | 2019-04-18 | 2022-06-09 | RunSafe Security, Inc. | Source modification engine |
WO2020240246A1 (en) * | 2019-05-29 | 2020-12-03 | Commissariat A L 'energie Atomique Et Aux Energies Alternatives | A computer-implemented method for obfuscating a program code |
US11204985B2 (en) * | 2020-03-31 | 2021-12-21 | Irdeto Canada Corporation | Systems, methods, and storage media for creating secured computer code having entangled transformations |
WO2022140163A1 (en) * | 2020-12-21 | 2022-06-30 | Cryptography Research, Inc. | Protection of neural networks by obfuscation of neural network operations and architecture |
US11687440B2 (en) * | 2021-02-02 | 2023-06-27 | Thales Dis Cpl Usa, Inc. | Method and device of protecting a first software application to generate a protected software application |
CN113761486B (zh) * | 2021-09-10 | 2023-09-05 | 上海熙菱信息技术有限公司 | 一种基于语法糖解析的一键式代码混淆方法 |
Family Cites Families (56)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5410648A (en) * | 1991-08-30 | 1995-04-25 | International Business Machines Corporation | Debugging system wherein multiple code views are simultaneously managed |
US5371747A (en) | 1992-06-05 | 1994-12-06 | Convex Computer Corporation | Debugger program which includes correlation of computer program source code with optimized object code |
US6006328A (en) * | 1995-07-14 | 1999-12-21 | Christopher N. Drake | Computer software authentication, protection, and security system |
US5913052A (en) * | 1997-01-24 | 1999-06-15 | Lucent Technologies Inc. | System and method for debugging digital signal processor software with an architectural view and general purpose computer employing the same |
AU7957998A (en) * | 1997-06-09 | 1999-01-25 | Intertrust, Incorporated | Obfuscation techniques for enhancing software security |
US6643775B1 (en) * | 1997-12-05 | 2003-11-04 | Jamama, Llc | Use of code obfuscation to inhibit generation of non-use-restricted versions of copy protected software applications |
US6480959B1 (en) * | 1997-12-05 | 2002-11-12 | Jamama, Llc | Software system and associated methods for controlling the use of computer programs |
US6334189B1 (en) * | 1997-12-05 | 2001-12-25 | Jamama, Llc | Use of pseudocode to protect software from unauthorized use |
JPH11194957A (ja) | 1998-01-07 | 1999-07-21 | Matsushita Electric Ind Co Ltd | デバッグ支援装置、並列実行情報生成装置、及びこれらに適用されるプログラムを記録した記録媒体 |
US7809138B2 (en) * | 1999-03-16 | 2010-10-05 | Intertrust Technologies Corporation | Methods and apparatus for persistent control and protection of content |
US6249907B1 (en) * | 1998-03-24 | 2001-06-19 | International Business Machines Corporation | Method system and article of manufacture for debugging a computer program by encoding user specified breakpoint types at multiple locations in the computer program |
US6763370B1 (en) * | 1998-11-16 | 2004-07-13 | Softricity, Inc. | Method and apparatus for content protection in a secure content delivery system |
US7017188B1 (en) * | 1998-11-16 | 2006-03-21 | Softricity, Inc. | Method and apparatus for secure content delivery over broadband access networks |
US7421586B2 (en) * | 1999-05-12 | 2008-09-02 | Fraunhofer Gesselschaft | Protecting mobile code against malicious hosts |
US7263722B1 (en) * | 1999-05-12 | 2007-08-28 | Fraunhofer Crcg, Inc. | Obfuscation of executable code |
US7430670B1 (en) * | 1999-07-29 | 2008-09-30 | Intertrust Technologies Corp. | Software self-defense systems and methods |
US7287166B1 (en) * | 1999-09-03 | 2007-10-23 | Purdue Research Foundation | Guards for application in software tamperproofing |
US7080257B1 (en) * | 2000-03-27 | 2006-07-18 | Microsoft Corporation | Protecting digital goods using oblivious checking |
US7171693B2 (en) * | 2000-05-12 | 2007-01-30 | Xtreamlok Pty Ltd | Information security method and system |
CA2327911A1 (en) * | 2000-12-08 | 2002-06-08 | Cloakware Corporation | Obscuring functions in computer software |
CA2348355A1 (en) * | 2001-05-24 | 2002-11-24 | Cloakware Corporation | General scheme of using encodings in computations |
US7007025B1 (en) * | 2001-06-08 | 2006-02-28 | Xsides Corporation | Method and system for maintaining secure data input and output |
WO2003003169A2 (en) * | 2001-06-28 | 2003-01-09 | Cloakware Corporation | Secure method and system for biometric verification |
US7502940B2 (en) * | 2001-08-01 | 2009-03-10 | Sas Validy | Method to protect software against unwanted use with a “conditional branch” principle |
US7343494B2 (en) * | 2001-08-01 | 2008-03-11 | Sas Validy | Method to protect software against unwanted use with a “renaming” principle |
US7269740B2 (en) * | 2001-08-01 | 2007-09-11 | Sas Validy | Method to protect software against unwanted use with a “variable principle” |
US7434064B2 (en) * | 2001-08-01 | 2008-10-07 | Sas Validy | Method to protect software against unwanted use with a “elementary functions” principle |
US7434068B2 (en) * | 2001-10-19 | 2008-10-07 | Intel Corporation | Content protection in non-volatile storage devices |
US7243340B2 (en) * | 2001-11-15 | 2007-07-10 | Pace Anti-Piracy | Method and system for obfuscation of computer program execution flow to increase computer program security |
CA2363795A1 (en) * | 2001-11-26 | 2003-05-26 | Cloakware Corporation | Computer system protection by communication diversity |
US7308576B2 (en) * | 2001-12-31 | 2007-12-11 | Intel Corporation | Authenticated code module |
US7509687B2 (en) * | 2002-03-16 | 2009-03-24 | Trustedflow Systems, Inc. | Remotely authenticated operation method |
JP2003316605A (ja) * | 2002-04-26 | 2003-11-07 | Fujitsu Ltd | デバッガプログラム |
JP2003337629A (ja) | 2002-05-18 | 2003-11-28 | Mitsuko Miyaji | プログラム難読化方法及び装置 |
US7272725B2 (en) * | 2002-06-25 | 2007-09-18 | Sas Validy | Method to protect software against unwanted use with a “temporal dissociation” principle |
US7383443B2 (en) * | 2002-06-27 | 2008-06-03 | Microsoft Corporation | System and method for obfuscating code using instruction replacement scheme |
US7254586B2 (en) * | 2002-06-28 | 2007-08-07 | Microsoft Corporation | Secure and opaque type library providing secure data protection of variables |
JP2004272814A (ja) * | 2003-03-11 | 2004-09-30 | Matsushita Electric Ind Co Ltd | プログラム解析コスト計測装置およびその方法 |
KR100568228B1 (ko) * | 2003-05-20 | 2006-04-07 | 삼성전자주식회사 | 고유번호를 이용한 프로그램 탬퍼 방지 방법과 난독처리된 프로그램 업그레이드 방법, 상기 방법을 위한 장치 |
US7454323B1 (en) * | 2003-08-22 | 2008-11-18 | Altera Corporation | Method for creation of secure simulation models |
US7591021B2 (en) * | 2003-09-05 | 2009-09-15 | Microsoft Corporation | Object model document for obfuscating object model therein |
US7415618B2 (en) * | 2003-09-25 | 2008-08-19 | Sun Microsystems, Inc. | Permutation of opcode values for application program obfuscation |
US7424620B2 (en) * | 2003-09-25 | 2008-09-09 | Sun Microsystems, Inc. | Interleaved data and instruction streams for application program obfuscation |
US7363620B2 (en) * | 2003-09-25 | 2008-04-22 | Sun Microsystems, Inc. | Non-linear execution of application program instructions for application program obfuscation |
US7353499B2 (en) * | 2003-09-25 | 2008-04-01 | Sun Microsystems, Inc. | Multiple instruction dispatch tables for application program obfuscation |
JP4514473B2 (ja) * | 2004-02-23 | 2010-07-28 | 富士通株式会社 | コンピュータシステム、中央装置及びプログラム実行方法 |
CN100585670C (zh) * | 2004-03-31 | 2010-01-27 | 松下电器产业株式会社 | 一种将多个整数安全相加的计算机系统及方法 |
US7841009B1 (en) * | 2004-07-09 | 2010-11-23 | Angel Secure Networks | System and method for defending against reverse engineering of software, firmware and hardware |
US7689969B1 (en) * | 2005-01-18 | 2010-03-30 | The Mathworks, Inc. | Obfuscation of automatically generated code |
EP1850261A1 (en) * | 2005-02-10 | 2007-10-31 | Matsushita Electric Industrial Co., Ltd. | Program conversion device and program execution device |
JP4675642B2 (ja) * | 2005-02-22 | 2011-04-27 | Kddi株式会社 | プログラム難読化装置およびその方法ならびにプログラム |
JP4796050B2 (ja) * | 2005-02-25 | 2011-10-19 | パナソニック株式会社 | セキュア処理装置、及びセキュア処理システム |
US7587616B2 (en) * | 2005-02-25 | 2009-09-08 | Microsoft Corporation | System and method of iterative code obfuscation |
US20080168562A1 (en) | 2005-02-25 | 2008-07-10 | Tomoyuki Haga | Secure Processing Device and Secure Processing System |
JP4814319B2 (ja) * | 2006-04-24 | 2011-11-16 | パナソニック株式会社 | データ処理装置、方法、プログラム、集積回路、プログラム生成装置 |
US8176473B2 (en) * | 2007-05-14 | 2012-05-08 | Microsoft Corporation | Transformations for software obfuscation and individualization |
-
2008
- 2008-01-17 WO PCT/JP2008/050922 patent/WO2008088073A1/en active Application Filing
- 2008-01-17 JP JP2009502371A patent/JP5133973B2/ja active Active
- 2008-01-17 US US12/376,844 patent/US9589115B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20100180346A1 (en) | 2010-07-15 |
JP2010517119A (ja) | 2010-05-20 |
US9589115B2 (en) | 2017-03-07 |
WO2008088073A1 (en) | 2008-07-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5133973B2 (ja) | 難読化支援装置、難読化支援方法、プログラムおよび集積回路 | |
Fard et al. | Jsnose: Detecting javascript code smells | |
Marinescu et al. | KATCH: High-coverage testing of software patches | |
US20110314337A1 (en) | Method and Apparatus for Locating Input-Model Faults Using Dynamic Tainting | |
Zhang et al. | Alchemist: A transparent dependence distance profiling infrastructure | |
US8370810B2 (en) | Debugging device and debugging method | |
Meinicke et al. | An overview on analysis tools for software product lines | |
Nadi et al. | The Linux kernel: A case study of build system variability | |
Pereira et al. | SPELLing out energy leaks: Aiding developers locate energy inefficient code | |
Angerer et al. | Configuration-aware change impact analysis (t) | |
JP2003044275A (ja) | 変更危険度測定システム、変更危険度測定方法及び変更危険度測定プログラム | |
Wedyan et al. | A dataflow testing approach for aspect-oriented programs | |
Georgiou et al. | Lost in translation: Exposing hidden compiler optimization opportunities | |
Yang et al. | EdSynth: Synthesizing API sequences with conditionals and loops | |
Marcozzi et al. | Taming coverage criteria heterogeneity with LTest | |
Horn | The TTC 2013 flowgraphs case | |
US8756580B2 (en) | Instance-based field affinity optimization | |
Molitorisz et al. | Patty: A pattern-based parallelization tool for the multicore age | |
Cojocar et al. | Jtr: A binary solution for switch-case recovery | |
Nobre et al. | Nonio—modular automatic compiler phase selection and ordering specialization framework for modern compilers | |
JP5974444B2 (ja) | 情報処理システム、情報処理方法、情報処理プログラム、記録媒体 | |
Yang | Measuring indirect coupling | |
Vysocky et al. | Overview of application instrumentation for performance analysis and tuning | |
Fesefeldt et al. | Automated Checking and Completion of Backward Confluence for Hyperedge Replacement Grammars | |
Tang et al. | CLC: A cross-level program characterization method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20101124 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120424 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120613 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120710 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120831 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20121016 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121108 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151116 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 5133973 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |