CA2293650A1 - Obfuscation techniques for enhancing software security - Google Patents
Obfuscation techniques for enhancing software security Download PDFInfo
- Publication number
- CA2293650A1 CA2293650A1 CA002293650A CA2293650A CA2293650A1 CA 2293650 A1 CA2293650 A1 CA 2293650A1 CA 002293650 A CA002293650 A CA 002293650A CA 2293650 A CA2293650 A CA 2293650A CA 2293650 A1 CA2293650 A1 CA 2293650A1
- Authority
- CA
- Canada
- Prior art keywords
- code
- application
- obfuscating
- logic
- transformation
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract 14
- 230000002708 enhancing effect Effects 0.000 title abstract 3
- 230000009466 transformation Effects 0.000 claims abstract 20
- 238000004590 computer program Methods 0.000 claims 6
- 238000000844 transformation Methods 0.000 claims 6
- 238000011156 evaluation Methods 0.000 claims 3
- 238000007619 statistical method Methods 0.000 claims 3
- 230000003449 preventive effect Effects 0.000 claims 1
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
Abstract
The present invention provides obfuscation techniques for enhancing software security. In one embodiment, a method for obfuscation techniques for enhancing software security includes selecting a subset of code (e.g., compiled source code of an application) to obfuscate, and obfuscating the selected subset of the code. The obfuscating includes applying an obfuscating transformation to the selected subset of the code. The transformed code can be weakly equivalent to the untransformed code. The applied transformation can be selected based on a desired level of security (e.g., resistance to reverse engineering). The applied transformation can include a control transformation that can be creating using opaque constructs, which can be constructed using aliasing and concurrency techniques. Accordingly, the code can be obfuscated for enhanced software security based on a desired level of obfuscation (e.g., based on a desired potency, resilience, and cost).
Claims (20)
1. A computer implemented method for obfuscating code, comprising:
selecting a subset of the code to obfuscate;
selecting an obfuscating transform to apply;
and applying the transformation, wherein the transformed code provides weak equivalence to the untransformed code.
selecting a subset of the code to obfuscate;
selecting an obfuscating transform to apply;
and applying the transformation, wherein the transformed code provides weak equivalence to the untransformed code.
2. The computer implemented method of Claim 1, further comprising:
identifying one or more source code input files corresponding to source code for the code of an application to be processed;
selecting a required level of obfuscation (the potency);
selecting a maximum execution time or space penalty (the cost);
reading and parsing the input files;
providing information identifying data types, data structures, and control structures used by the application to be processed;
selecting and applying obfuscating transformations to source code objects until the required potency has been achieved or the maximum cost has been exceeded; and outputting the transformed code of the application.
identifying one or more source code input files corresponding to source code for the code of an application to be processed;
selecting a required level of obfuscation (the potency);
selecting a maximum execution time or space penalty (the cost);
reading and parsing the input files;
providing information identifying data types, data structures, and control structures used by the application to be processed;
selecting and applying obfuscating transformations to source code objects until the required potency has been achieved or the maximum cost has been exceeded; and outputting the transformed code of the application.
3. The method of Claim 1, wherein the transformation comprises an opaque construct, the opaque construct being constructed using aliasing and concurrency techniques.
4. The method of Claim 1, further comprising:
outputting information about obfuscating transformations applied to the obfuscated code and information relating obfuscated code of a transformed application to source code of the application.
outputting information about obfuscating transformations applied to the obfuscated code and information relating obfuscated code of a transformed application to source code of the application.
5. The method of Claim 1, wherein the transformation is selected to preserve the observable behavior of the code of an application.
6. The method of Claim 1, further comprising:
deobfuscating the code, the deobfuscating the code comprising removing any obfuscations from the obfuscated code of an application by use of slicing, partial evaluation, dataflow analysis, or statistical analysis.
deobfuscating the code, the deobfuscating the code comprising removing any obfuscations from the obfuscated code of an application by use of slicing, partial evaluation, dataflow analysis, or statistical analysis.
7. A computer program embodied on a computer-readable medium for obfuscating code, comprising:
logic that selects a subset of the code to obfuscate;
logic that selects an obfuscating transform to apply; and logic that applies the transformation, wherein the transformed code provides weak equivalence to the untransformed code.
logic that selects a subset of the code to obfuscate;
logic that selects an obfuscating transform to apply; and logic that applies the transformation, wherein the transformed code provides weak equivalence to the untransformed code.
8. The computer program of Claim 7, further comprising:
logic that identifies one or more source code input files corresponding to source code for the code of an application to be processed;
logic that selects a required level of obfuscation (the potency);
logic that selects a maximum execution time or space penalty (the cost);
logic that reads and parses the input files;
logic that provides information identifying data types, data structures, and control structures used by the application to be processed;
logic that selects and applies obfuscating transformations to source code objects until the required potency has been achieved or the maximum cost has been exceeded; and logic that outputs the transformed code of the application.
logic that identifies one or more source code input files corresponding to source code for the code of an application to be processed;
logic that selects a required level of obfuscation (the potency);
logic that selects a maximum execution time or space penalty (the cost);
logic that reads and parses the input files;
logic that provides information identifying data types, data structures, and control structures used by the application to be processed;
logic that selects and applies obfuscating transformations to source code objects until the required potency has been achieved or the maximum cost has been exceeded; and logic that outputs the transformed code of the application.
9. The computer program of Claim 7, wherein the transformation comprises an opaque construct, the opaque construct being constructed using aliasing and concurrency techniques.
10. The computer program of Claim 7, further comprising:
logic that outputs information about obfuscating transformations applied to the obfuscated code and information relating obfuscated code of a transformed application to source code of the application.
logic that outputs information about obfuscating transformations applied to the obfuscated code and information relating obfuscated code of a transformed application to source code of the application.
11. The computer program of Claim 7, wherein the transformation is selected to preserve the observable behavior of the code of an application.
12. The computer program of Claim 7, further comprising:
logic that deobfuscates the code, the deobfuscating the code comprising removing any obfuscations from the obfuscated code of an application by use of slicing, partial evaluation, dataflow analysis, or statistical analysis.
logic that deobfuscates the code, the deobfuscating the code comprising removing any obfuscations from the obfuscated code of an application by use of slicing, partial evaluation, dataflow analysis, or statistical analysis.
13. An apparatus for obfuscating code, comprising:
means for selecting a subset of the code to obfuscate;
means for selecting an obfuscating transform to apply; and means for applying the transformation, wherein the transformed code provides weak equivalence to the untransformed code.
means for selecting a subset of the code to obfuscate;
means for selecting an obfuscating transform to apply; and means for applying the transformation, wherein the transformed code provides weak equivalence to the untransformed code.
14. The apparatus of Claim 13, further comprising:
means for identifying one or more source code input files corresponding to source code for the code of an application to be processed;
means for selecting a required level of obfuscation (the potency);
means for selecting a maximum execution time or space penalty (the cost);
means for reading and parsing the input files;
means for providing information identifying data types, data structures, and control structures used by the application to be processed;
means for selecting and applying obfuscating transformations to source code objects until the required potency has been achieved or the maximum cost has been exceeded; and means for outputting the transformed code of the application.
means for identifying one or more source code input files corresponding to source code for the code of an application to be processed;
means for selecting a required level of obfuscation (the potency);
means for selecting a maximum execution time or space penalty (the cost);
means for reading and parsing the input files;
means for providing information identifying data types, data structures, and control structures used by the application to be processed;
means for selecting and applying obfuscating transformations to source code objects until the required potency has been achieved or the maximum cost has been exceeded; and means for outputting the transformed code of the application.
15. The apparatus of Claim 13, wherein the transformation comprises an opaque construct, the opaque construct being constructed using aliasing and concurrency techniques.
16. The apparatus of Claim 13, further comprising:
means for outputting information about obfuscating transformations applied to the obfuscated code and information relating obfuscated code of a transformed application to source code of the application.
means for outputting information about obfuscating transformations applied to the obfuscated code and information relating obfuscated code of a transformed application to source code of the application.
17. The apparatus of Claim 13, wherein the transformation is selected to preserve the observable behavior of the code of an application.
18. The apparatus of Claim 13, further comprising:
means for deobfuscating the code, the deobfuscating the code comprising removing any obfuscations from the obfuscated code of an application by use of slicing, partial evaluation, dataflow analysis, or statistical analysis.
means for deobfuscating the code, the deobfuscating the code comprising removing any obfuscations from the obfuscated code of an application by use of slicing, partial evaluation, dataflow analysis, or statistical analysis.
19. The apparatus of Claim 13, wherein the code comprises Java TM bytecode.
20. The apparatus of Claim 13, wherein the transformation provides a data obfuscation, a control obfuscation, or a preventive obfuscation.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NZ328057 | 1997-06-09 | ||
NZ32805797 | 1997-06-09 | ||
PCT/US1998/012017 WO1999001815A1 (en) | 1997-06-09 | 1998-06-09 | Obfuscation techniques for enhancing software security |
Publications (2)
Publication Number | Publication Date |
---|---|
CA2293650A1 true CA2293650A1 (en) | 1999-01-14 |
CA2293650C CA2293650C (en) | 2012-09-25 |
Family
ID=19926287
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA2293650A Expired - Lifetime CA2293650C (en) | 1997-06-09 | 1998-06-09 | Obfuscation techniques for enhancing software security |
Country Status (7)
Country | Link |
---|---|
US (1) | US6668325B1 (en) |
EP (1) | EP0988591A1 (en) |
JP (1) | JP4739465B2 (en) |
CN (1) | CN1260055A (en) |
AU (1) | AU7957998A (en) |
CA (1) | CA2293650C (en) |
WO (1) | WO1999001815A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8055668B2 (en) | 2008-02-13 | 2011-11-08 | Camouflage Software, Inc. | Method and system for masking data in a consistent manner across multiple data sources |
Families Citing this family (474)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7362775B1 (en) | 1996-07-02 | 2008-04-22 | Wistaria Trading, Inc. | Exchange mechanisms for digital information packages with bandwidth securitization, multichannel digital watermarks, and key management |
US5943422A (en) | 1996-08-12 | 1999-08-24 | Intertrust Technologies Corp. | Steganographic techniques for securely delivering electronic digital rights management control information over insecure communication channels |
US5892900A (en) | 1996-08-30 | 1999-04-06 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
US6157721A (en) | 1996-08-12 | 2000-12-05 | Intertrust Technologies Corp. | Systems and methods using cryptography to protect secure computing environments |
CA2683230C (en) | 1995-02-13 | 2013-08-27 | Intertrust Technologies Corporation | Systems and methods for secure transaction management and electronic rights protection |
US7133846B1 (en) | 1995-02-13 | 2006-11-07 | Intertrust Technologies Corp. | Digital certificate support system, methods and techniques for secure electronic commerce transaction and rights management |
US6658568B1 (en) | 1995-02-13 | 2003-12-02 | Intertrust Technologies Corporation | Trusted infrastructure support system, methods and techniques for secure electronic commerce transaction and rights management |
US6948070B1 (en) | 1995-02-13 | 2005-09-20 | Intertrust Technologies Corporation | Systems and methods for secure transaction management and electronic rights protection |
US5613004A (en) | 1995-06-07 | 1997-03-18 | The Dice Company | Steganographic method and device |
US6205249B1 (en) | 1998-04-02 | 2001-03-20 | Scott A. Moskowitz | Multiple transform utilization and applications for secure digital watermarking |
US7664263B2 (en) | 1998-03-24 | 2010-02-16 | Moskowitz Scott A | Method for combining transfer functions with predetermined key creation |
US7457962B2 (en) | 1996-07-02 | 2008-11-25 | Wistaria Trading, Inc | Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data |
US7095874B2 (en) | 1996-07-02 | 2006-08-22 | Wistaria Trading, Inc. | Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data |
US7159116B2 (en) | 1999-12-07 | 2007-01-02 | Blue Spike, Inc. | Systems, methods and devices for trusted transactions |
US5889868A (en) | 1996-07-02 | 1999-03-30 | The Dice Company | Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data |
US7177429B2 (en) | 2000-12-07 | 2007-02-13 | Blue Spike, Inc. | System and methods for permitting open access to data objects and for securing data within the data objects |
US7346472B1 (en) | 2000-09-07 | 2008-03-18 | Blue Spike, Inc. | Method and device for monitoring and analyzing signals |
US6052780A (en) * | 1996-09-12 | 2000-04-18 | Open Security Solutions, Llc | Computer system and process for accessing an encrypted and self-decrypting digital information product while restricting access to decrypted digital information |
US8079086B1 (en) | 1997-11-06 | 2011-12-13 | Finjan, Inc. | Malicious mobile code runtime monitoring system and methods |
US9219755B2 (en) | 1996-11-08 | 2015-12-22 | Finjan, Inc. | Malicious mobile code runtime monitoring system and methods |
US7058822B2 (en) | 2000-03-30 | 2006-06-06 | Finjan Software, Ltd. | Malicious mobile code runtime monitoring system and methods |
US7730317B2 (en) | 1996-12-20 | 2010-06-01 | Wistaria Trading, Inc. | Linear predictive coding implementation of digital watermarks |
US6092147A (en) * | 1997-04-15 | 2000-07-18 | Sun Microsystems, Inc. | Virtual machine with securely distributed bytecode verification |
US6480959B1 (en) | 1997-12-05 | 2002-11-12 | Jamama, Llc | Software system and associated methods for controlling the use of computer programs |
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 |
US7809138B2 (en) * | 1999-03-16 | 2010-10-05 | Intertrust Technologies Corporation | Methods and apparatus for persistent control and protection of content |
US6957341B2 (en) * | 1998-05-14 | 2005-10-18 | Purdue Research Foundation | Method and system for secure computational outsourcing and disguise |
WO1999064973A1 (en) * | 1998-06-10 | 1999-12-16 | Auckland Uniservices Limited | Software watermarking techniques |
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 |
US7653870B1 (en) * | 1998-12-08 | 2010-01-26 | Idearc Media Corp. | System and method of dynamically generating index information |
US7526468B2 (en) * | 1999-01-08 | 2009-04-28 | Computer Associates Think, Inc. | System and method for recursive path analysis of DBMS procedures |
FR2790844B1 (en) * | 1999-03-09 | 2001-05-25 | Gemplus Card Int | METHOD AND DEVICE FOR MONITORING THE PROGRESS OF A PROGRAM, PROGRAM DEVICE FOR MONITORING ITS PROGRAM |
US7664264B2 (en) | 1999-03-24 | 2010-02-16 | Blue Spike, Inc. | Utilizing data reduction in steganographic and cryptographic systems |
US7730169B1 (en) | 1999-04-12 | 2010-06-01 | Softricity, Inc. | Business method and system for serving third party software applications |
US7370071B2 (en) | 2000-03-17 | 2008-05-06 | Microsoft Corporation | Method for serving third party software applications from servers to client computers |
US8099758B2 (en) | 1999-05-12 | 2012-01-17 | Microsoft Corporation | Policy based composite file system and method |
US7263722B1 (en) * | 1999-05-12 | 2007-08-28 | Fraunhofer Crcg, Inc. | Obfuscation of executable code |
US7421586B2 (en) * | 1999-05-12 | 2008-09-02 | Fraunhofer Gesselschaft | Protecting mobile code against malicious hosts |
WO2000072112A2 (en) * | 1999-05-12 | 2000-11-30 | Fraunhofer Crcg, Inc. | Obfuscation of executable code |
US6959384B1 (en) | 1999-12-14 | 2005-10-25 | Intertrust Technologies Corporation | Systems and methods for authenticating and protecting the integrity of data streams and other data |
US6594761B1 (en) | 1999-06-09 | 2003-07-15 | Cloakware Corporation | Tamper resistant software encoding |
WO2000077596A1 (en) * | 1999-06-09 | 2000-12-21 | Cloakware Corporation | Tamper resistant software encoding |
US7152165B1 (en) | 1999-07-16 | 2006-12-19 | Intertrust Technologies Corp. | Trusted storage systems and methods |
AU6104800A (en) | 1999-07-16 | 2001-02-05 | Intertrust Technologies Corp. | Trusted storage systems and methods |
US7430670B1 (en) * | 1999-07-29 | 2008-09-30 | Intertrust Technologies Corp. | Software self-defense systems and methods |
US7243236B1 (en) | 1999-07-29 | 2007-07-10 | Intertrust Technologies Corp. | Systems and methods for using cryptography to protect secure and insecure computing environments |
US7770016B2 (en) | 1999-07-29 | 2010-08-03 | Intertrust Technologies Corporation | Systems and methods for watermarking software and other media |
ATE306098T1 (en) * | 1999-07-30 | 2005-10-15 | Intertrust Tech Corp | METHODS AND SYSTEMS FOR TRANSACTION RECORD TRANSMISSION USING THRESHOLD AND A MULTI-LEVEL PROTOCOL |
US7475246B1 (en) | 1999-08-04 | 2009-01-06 | Blue Spike, Inc. | Secure personal content server |
US6779114B1 (en) | 1999-08-19 | 2004-08-17 | Cloakware Corporation | Tamper resistant software-control flow encoding |
US7406603B1 (en) | 1999-08-31 | 2008-07-29 | Intertrust Technologies Corp. | Data protection systems and methods |
US7757097B2 (en) | 1999-09-03 | 2010-07-13 | Purdue Research Foundation | Method and system for tamperproofing software |
US7287166B1 (en) * | 1999-09-03 | 2007-10-23 | Purdue Research Foundation | Guards for application in software tamperproofing |
US6985885B1 (en) | 1999-09-21 | 2006-01-10 | Intertrust Technologies Corp. | Systems and methods for pricing and selling digital goods |
US8055894B2 (en) | 1999-11-09 | 2011-11-08 | Google Inc. | Process and streaming server for encrypting a data stream with bandwidth based variation |
US6449719B1 (en) * | 1999-11-09 | 2002-09-10 | Widevine Technologies, Inc. | Process and streaming server for encrypting a data stream |
US6970849B1 (en) | 1999-12-17 | 2005-11-29 | Microsoft Corporation | Inter-server communication using request with encrypted parameter |
US7047411B1 (en) | 1999-12-17 | 2006-05-16 | Microsoft Corporation | Server for an electronic distribution system and method of operating same |
US6996720B1 (en) | 1999-12-17 | 2006-02-07 | Microsoft Corporation | System and method for accessing protected content in a rights-management architecture |
US6832316B1 (en) * | 1999-12-22 | 2004-12-14 | Intertrust Technologies, Corp. | Systems and methods for protecting data secrecy and integrity |
AUPQ486599A0 (en) * | 1999-12-23 | 2000-02-03 | Zentronix Pty Ltd | A method of storing and retrieving miniaturised data |
WO2001053909A2 (en) * | 2000-01-18 | 2001-07-26 | Telcordia Technologies, Inc. | Method and systems for data security |
JP3888823B2 (en) * | 2000-02-14 | 2007-03-07 | 松下電器産業株式会社 | Semiconductor integrated circuit |
US6829710B1 (en) * | 2000-03-14 | 2004-12-07 | Microsoft Corporation | Technique for producing, through watermarking, highly tamper-resistant executable code and resulting “watermarked” code so formed |
US7080257B1 (en) * | 2000-03-27 | 2006-07-18 | Microsoft Corporation | Protecting digital goods using oblivious checking |
US7054443B1 (en) * | 2000-03-27 | 2006-05-30 | Microsoft Corporation | System and method for protecting digital goods using random and automatic code obfuscation |
US7085839B1 (en) | 2000-04-07 | 2006-08-01 | Intertrust Technologies Corporation | Network content management |
US7266681B1 (en) | 2000-04-07 | 2007-09-04 | Intertrust Technologies Corp. | Network communications security agent |
CA2305078A1 (en) * | 2000-04-12 | 2001-10-12 | Cloakware Corporation | Tamper resistant software - mass data encoding |
US7000119B1 (en) | 2000-04-20 | 2006-02-14 | Realnetworks, Inc. | Instruction/data protection employing derived obscuring instruction/data |
CA2447451C (en) * | 2000-05-12 | 2013-02-12 | Xtreamlok Pty. Ltd. | Information security method and system |
US7313692B2 (en) * | 2000-05-19 | 2007-12-25 | Intertrust Technologies Corp. | Trust management systems and methods |
US7107448B1 (en) | 2000-06-04 | 2006-09-12 | Intertrust Technologies Corporation | Systems and methods for governing content rendering, protection, and management applications |
US7213266B1 (en) | 2000-06-09 | 2007-05-01 | Intertrust Technologies Corp. | Systems and methods for managing and protecting electronic content and applications |
US7050586B1 (en) | 2000-06-19 | 2006-05-23 | Intertrust Technologies Corporation | Systems and methods for retrofitting electronic appliances to accept different content formats |
US7065652B1 (en) * | 2000-06-21 | 2006-06-20 | Aladdin Knowledge Systems, Ltd. | System for obfuscating computer code upon disassembly |
US7158953B1 (en) | 2000-06-27 | 2007-01-02 | Microsoft Corporation | Method and system for limiting the use of user-specific software features |
US6981262B1 (en) | 2000-06-27 | 2005-12-27 | Microsoft Corporation | System and method for client interaction in a multi-level rights-management architecture |
WO2002001333A2 (en) * | 2000-06-27 | 2002-01-03 | Microsoft Corporation | System and method for providing an individualized secure repository |
US7017189B1 (en) | 2000-06-27 | 2006-03-21 | Microsoft Corporation | System and method for activating a rendering device in a multi-level rights-management architecture |
US7539875B1 (en) | 2000-06-27 | 2009-05-26 | Microsoft Corporation | Secure repository with layers of tamper resistance and system and method for providing same |
US7171692B1 (en) | 2000-06-27 | 2007-01-30 | Microsoft Corporation | Asynchronous communication within a server arrangement |
US7051200B1 (en) | 2000-06-27 | 2006-05-23 | Microsoft Corporation | System and method for interfacing a software process to secure repositories |
US6891953B1 (en) | 2000-06-27 | 2005-05-10 | Microsoft Corporation | Method and system for binding enhanced software features to a persona |
AU2001271704A1 (en) * | 2000-06-29 | 2002-01-14 | Cachestream Corporation | Digital rights management |
US7225159B2 (en) | 2000-06-30 | 2007-05-29 | Microsoft Corporation | Method for authenticating and securing integrated bookstore entries |
US6938170B1 (en) * | 2000-07-17 | 2005-08-30 | International Business Machines Corporation | System and method for preventing automated crawler access to web-based data sources using a dynamic data transcoding scheme |
WO2002019097A1 (en) * | 2000-09-01 | 2002-03-07 | International Interactive Commerce, Ltd. | System and method for collaboration using web browsers |
US7165175B1 (en) * | 2000-09-06 | 2007-01-16 | Widevine Technologies, Inc. | Apparatus, system and method for selectively encrypting different portions of data sent over a network |
US7127615B2 (en) | 2000-09-20 | 2006-10-24 | Blue Spike, Inc. | Security based on subliminal and supraliminal channels for data objects |
US7043473B1 (en) | 2000-11-22 | 2006-05-09 | Widevine Technologies, Inc. | Media tracking system and method |
CA2327911A1 (en) * | 2000-12-08 | 2002-06-08 | Cloakware Corporation | Obscuring functions in computer software |
US7150045B2 (en) | 2000-12-14 | 2006-12-12 | Widevine Technologies, Inc. | Method and apparatus for protection of electronic media |
FR2818772A1 (en) * | 2000-12-21 | 2002-06-28 | Bull Cp8 | METHOD OF SECURING A LOGIC OR MATHEMATICAL OPERATOR IMPLANTED IN A MICROPROCESSOR ELECTRONIC MODULE, AND THE ASSOCIATED ELECTRONIC MODULE AND THE ON-LINE SYSTEM |
JP4252229B2 (en) | 2001-03-28 | 2009-04-08 | ユミルリンク株式会社 | Information exchange system, information communication terminal, information exchange method, program, and recording medium |
US7580988B2 (en) * | 2001-04-05 | 2009-08-25 | Intertrust Technologies Corporation | System and methods for managing the distribution of electronic content |
US7136840B2 (en) | 2001-04-20 | 2006-11-14 | Intertrust Technologies Corp. | Systems and methods for conducting transactions and communications using a trusted third party |
US7188342B2 (en) | 2001-04-20 | 2007-03-06 | Microsoft Corporation | Server controlled branding of client software deployed over computer networks |
FR2824402A1 (en) | 2001-05-04 | 2002-11-08 | Thales Sa | DEVICE AND METHOD FOR SIGNATURE, MARKING AND AUTHENTICIFICATION OF COMPUTER PROGRAMS |
FR2824401A1 (en) * | 2001-05-04 | 2002-11-08 | Thomson Csf | Generation of signature and marking of program and subsequent user authentication, uses selection of a number of program instructions to be transcoded by one secret algorithm selected from several, with recognition and reverse transcoding |
CA2348355A1 (en) * | 2001-05-24 | 2002-11-24 | Cloakware Corporation | General scheme of using encodings in computations |
US7581103B2 (en) | 2001-06-13 | 2009-08-25 | Intertrust Technologies Corporation | Software self-checking systems and methods |
WO2003003169A2 (en) * | 2001-06-28 | 2003-01-09 | Cloakware Corporation | Secure method and system for biometric verification |
US7313824B1 (en) * | 2001-07-13 | 2007-12-25 | Liquid Machines, Inc. | Method for protecting digital content from unauthorized use by automatically and dynamically integrating a content-protection agent |
US7111285B2 (en) * | 2001-07-17 | 2006-09-19 | Liquid Machines, Inc. | Method and system for protecting software applications against static and dynamic software piracy techniques |
US6694435B2 (en) | 2001-07-25 | 2004-02-17 | Apple Computer, Inc. | Method of obfuscating computer instruction streams |
EP1280148A3 (en) * | 2001-07-26 | 2003-09-17 | Irdeto Access B.V. | Compilation technique and data distribution system using the same |
FR2828300B1 (en) * | 2001-07-31 | 2010-09-03 | Validy | METHOD FOR PROTECTING SOFTWARE USING A PRINCIPLE OF "ELEMENTARY FUNCTIONS" AGAINST ITS UNAUTHORIZED USE |
FR2828305B1 (en) * | 2001-07-31 | 2010-09-03 | Validy | METHOD FOR PROTECTING SOFTWARE USING A PRINCIPLE SAID "VARIABLE" AGAINST ITS UNAUTHORIZED USE |
FR2828302B1 (en) * | 2001-07-31 | 2010-09-03 | Validy | METHOD FOR PROTECTING SOFTWARE USING A PRINCIPLE SAID "CONDITIONAL CONNECTION" AGAINST ITS UNAUTHORIZED USE |
FR2828303B1 (en) * | 2001-07-31 | 2010-09-03 | Validy | METHOD FOR PROTECTING SOFTWARE USING A PRINCIPLE OF "RENAMING" AGAINST ITS UNAUTHORIZED USE |
FR2828304B1 (en) * | 2001-07-31 | 2010-09-03 | Validy | METHOD FOR PROTECTING SOFTWARE USING A PRINCIPLE OF "TIME DISSOCIATION" AGAINST ITS UNAUTHORIZED USE |
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 |
US7343494B2 (en) | 2001-08-01 | 2008-03-11 | Sas Validy | Method to protect software against unwanted use with a “renaming” principle |
US7502940B2 (en) | 2001-08-01 | 2009-03-10 | Sas Validy | Method to protect software against unwanted use with a “conditional branch” principle |
GB0121064D0 (en) * | 2001-08-31 | 2001-10-24 | Transitive Technologies Ltd | Obtaining translation of generic code representation |
US20070277037A1 (en) * | 2001-09-06 | 2007-11-29 | Randy Langer | Software component authentication via encrypted embedded self-signatures |
US7210134B1 (en) * | 2001-09-06 | 2007-04-24 | Sonic Solutions | Deterring reverse-engineering of software systems by randomizing the siting of stack-based data |
EP1308838A3 (en) * | 2001-10-31 | 2007-12-19 | Aplix Corporation | Intermediate code preprocessing apparatus, intermediate code execution apparatus, intermediate code execution system, and computer program product for preprocessing or executing intermediate code |
EP1313011B1 (en) * | 2001-10-31 | 2007-12-12 | Aplix Corporation | Intermediate code execution system, intermediate code execution method, and computer program product for executing intermediate code |
CA2363795A1 (en) * | 2001-11-26 | 2003-05-26 | Cloakware Corporation | Computer system protection by communication diversity |
US7328345B2 (en) | 2002-01-29 | 2008-02-05 | Widevine Technologies, Inc. | Method and system for end to end securing of content for video on demand |
CA2369304A1 (en) * | 2002-01-30 | 2003-07-30 | Cloakware Corporation | A protocol to hide cryptographic private keys |
WO2003077083A2 (en) * | 2002-03-13 | 2003-09-18 | Matsushita Electric Industrial Co., Ltd. | Secure device for preventing unauthorised use of distributed content |
JP2003280754A (en) * | 2002-03-25 | 2003-10-02 | Nec Corp | Hidden source program, source program converting method and device and source converting program |
JP2003280755A (en) * | 2002-03-25 | 2003-10-02 | Nec Corp | Self-restorable program, program forming method and device, information processor and program |
US7299292B2 (en) * | 2002-03-29 | 2007-11-20 | Widevine Technologies, Inc. | Process and streaming server for encrypting a data stream to a virtual smart card client system |
US7287275B2 (en) | 2002-04-17 | 2007-10-23 | Moskowitz Scott A | Methods, systems and devices for packet watermarking and efficient provisioning of bandwidth |
US20030200449A1 (en) * | 2002-04-17 | 2003-10-23 | International Business Machines Corporation | Method of accessing a shared subroutine of computer system |
US7149899B2 (en) | 2002-04-25 | 2006-12-12 | Intertrust Technologies Corp. | Establishing a secure channel with a human user |
US7383570B2 (en) | 2002-04-25 | 2008-06-03 | Intertrust Technologies, Corp. | Secure authentication systems and methods |
US20030217280A1 (en) * | 2002-05-17 | 2003-11-20 | Keaton Thomas S. | Software watermarking for anti-tamper protection |
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 |
US7877613B2 (en) * | 2002-09-04 | 2011-01-25 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Protecting mobile code against malicious hosts |
US7594271B2 (en) * | 2002-09-20 | 2009-09-22 | Widevine Technologies, Inc. | Method and system for real-time tamper evidence gathering for software |
US7603662B2 (en) * | 2002-10-09 | 2009-10-13 | Microsoft Corporation | System and method for sensing types of local variables |
JP2004362532A (en) * | 2002-10-25 | 2004-12-24 | Matsushita Electric Ind Co Ltd | Watermark insertion device and watermark extraction device |
US20040083177A1 (en) * | 2002-10-29 | 2004-04-29 | General Instrument Corporation | Method and apparatus for pre-encrypting VOD material with a changing cryptographic key |
US7150003B2 (en) * | 2002-11-25 | 2006-12-12 | Matsushita Electric Industrial Co., Ltd. | Class coalescence for obfuscation of object-oriented software |
US7051322B2 (en) * | 2002-12-06 | 2006-05-23 | @Stake, Inc. | Software analysis framework |
US7149900B2 (en) | 2002-12-12 | 2006-12-12 | Intel Corporation | Method of defending software from debugger attacks |
US7412532B2 (en) | 2002-12-13 | 2008-08-12 | Aol Llc, A Deleware Limited Liability Company | Multimedia scheduler |
US7797064B2 (en) | 2002-12-13 | 2010-09-14 | Stephen Loomis | Apparatus and method for skipping songs without delay |
US7912920B2 (en) | 2002-12-13 | 2011-03-22 | Stephen Loomis | Stream sourcing content delivery system |
FR2849232B1 (en) * | 2002-12-24 | 2005-02-25 | Trusted Logic | METHOD FOR SECURING COMPUTER SYSTEMS INCORPORATING A CODE INTERPRETATION MODULE |
US7584354B2 (en) * | 2003-01-31 | 2009-09-01 | Intel Corporation | Implementing portable content protection to secure secrets |
US9818136B1 (en) | 2003-02-05 | 2017-11-14 | Steven M. Hoffberg | System and method for determining contingent relevance |
US20060130016A1 (en) * | 2003-03-17 | 2006-06-15 | Wagner John R | Method of kernal-mode instruction interception and apparatus therefor |
US7007170B2 (en) | 2003-03-18 | 2006-02-28 | Widevine Technologies, Inc. | System, method, and apparatus for securely providing content viewable on a secure device |
US7356143B2 (en) | 2003-03-18 | 2008-04-08 | Widevine Technologies, Inc | System, method, and apparatus for securely providing content viewable on a secure device |
US8510571B1 (en) | 2003-03-24 | 2013-08-13 | Hoi Chang | System and method for inserting security mechanisms into a software program |
US20040199771A1 (en) * | 2003-04-04 | 2004-10-07 | Widevine Technologies, Inc. | Method for tracing a security breach in highly distributed content |
DE10319435B4 (en) * | 2003-04-25 | 2018-07-26 | Whitecryption Corporation | Method of processing data to protect a software program from being reconstructed |
KR100568228B1 (en) * | 2003-05-20 | 2006-04-07 | 삼성전자주식회사 | Method for resisting program tampering using serial number and for upgrading obfuscated program, and apparatus for the same |
EP1629382A4 (en) | 2003-06-02 | 2011-12-21 | Liquid Machines Inc | Managing data objects in dynamic, distributed and collaborative contexts |
EA015549B1 (en) | 2003-06-05 | 2011-08-30 | Интертраст Текнолоджис Корпорейшн | Interoperable systems and methods for peer-to-peer service orchestration |
US20050108562A1 (en) * | 2003-06-18 | 2005-05-19 | Khazan Roger I. | Technique for detecting executable malicious code using a combination of static and dynamic analyses |
US7519668B2 (en) * | 2003-06-20 | 2009-04-14 | Microsoft Corporation | Obfuscation of spam filter |
US20050021756A1 (en) * | 2003-07-26 | 2005-01-27 | Grant Bruce K. | Method of developing, delivering and rendering network applications |
US20050028010A1 (en) * | 2003-07-29 | 2005-02-03 | International Business Machines Corporation | System and method for addressing denial of service virus attacks |
GB2405958A (en) | 2003-08-20 | 2005-03-16 | Macrovision Europ Ltd | Code obfuscation and controlling a processor by emulation |
US7454323B1 (en) * | 2003-08-22 | 2008-11-18 | Altera Corporation | Method for creation of secure simulation models |
US7340734B1 (en) * | 2003-08-27 | 2008-03-04 | Nvidia Corporation | Method and apparatus to make code more difficult to reverse engineer |
US7591021B2 (en) * | 2003-09-05 | 2009-09-15 | Microsoft Corporation | Object model document for obfuscating object model therein |
JP4568489B2 (en) * | 2003-09-11 | 2010-10-27 | 富士通株式会社 | Program protection method, program protection program, and program protection apparatus |
US7363620B2 (en) * | 2003-09-25 | 2008-04-22 | Sun Microsystems, Inc. | Non-linear execution of application program instructions for application program obfuscation |
US8220058B2 (en) * | 2003-09-25 | 2012-07-10 | Oracle America, Inc. | Rendering and encryption engine for application program obfuscation |
US7415618B2 (en) * | 2003-09-25 | 2008-08-19 | Sun Microsystems, Inc. | Permutation of opcode values for application program obfuscation |
US20050071656A1 (en) * | 2003-09-25 | 2005-03-31 | Klein Dean A. | Secure processor-based system and method |
US7353499B2 (en) * | 2003-09-25 | 2008-04-01 | Sun Microsystems, Inc. | Multiple instruction dispatch tables for application program obfuscation |
US20050069138A1 (en) * | 2003-09-25 | 2005-03-31 | Sun Microsystems, Inc., A Delaware Corporation | Application program obfuscation |
US7424620B2 (en) * | 2003-09-25 | 2008-09-09 | Sun Microsystems, Inc. | Interleaved data and instruction streams for application program obfuscation |
JP3873047B2 (en) * | 2003-09-30 | 2007-01-24 | 株式会社東芝 | Identification information embedding device, identification information analysis device, identification information embedding method, identification information analysis method, and program |
US7979911B2 (en) * | 2003-10-08 | 2011-07-12 | Microsoft Corporation | First computer process and second computer process proxy-executing code from third computer process on behalf of first process |
US8103592B2 (en) * | 2003-10-08 | 2012-01-24 | Microsoft Corporation | First computer process and second computer process proxy-executing code on behalf of first process |
US7788496B2 (en) | 2003-10-08 | 2010-08-31 | Microsoft Corporation | First computer process and second computer process proxy-executing code on behalf thereof |
US7631292B2 (en) * | 2003-11-05 | 2009-12-08 | Microsoft Corporation | Code individualism and execution protection |
WO2005060147A1 (en) * | 2003-12-11 | 2005-06-30 | Koninklijke Philips Electronics N.V. | Block ciphering system, using permutations to hide the core ciphering function of each encryption round |
US7966499B2 (en) * | 2004-01-28 | 2011-06-21 | Irdeto Canada Corporation | System and method for obscuring bit-wise and two's complement integer computations in software |
FR2866451B1 (en) * | 2004-02-18 | 2008-02-29 | Cit Alcatel | METHOD AND DEVICE FOR TRANSFORMING AN OPERATING SYSTEM FOR THE PROTECTION OF A COMPUTER PROGRAM AGAINST EXTERNAL INTRUSIONS |
JP4514473B2 (en) * | 2004-02-23 | 2010-07-28 | 富士通株式会社 | Computer system, central apparatus, and program execution method |
US7383583B2 (en) * | 2004-03-05 | 2008-06-03 | Microsoft Corporation | Static and run-time anti-disassembly and anti-debugging |
DE602005025615D1 (en) * | 2004-03-31 | 2011-02-10 | Panasonic Corp | COMPUTER SYSTEM, COMPUTER PROGRAM AND METHOD OF ADDITION |
US8694802B2 (en) * | 2004-04-30 | 2014-04-08 | Apple Inc. | System and method for creating tamper-resistant code |
NZ533028A (en) * | 2004-05-19 | 2005-09-30 | Auckland Uniservices Ltd | Method of introducing digital signature into software |
FR2871255B1 (en) * | 2004-06-04 | 2006-08-04 | Gemplus Sa | ASSOCIATED COMPILING CODE, TERMINAL AND SOFTWARE OBFUSCATION METHOD |
US7631360B2 (en) | 2004-06-12 | 2009-12-08 | Microsoft Corporation | Hardware protection |
US7721340B2 (en) | 2004-06-12 | 2010-05-18 | Microsoft Corporation | Registry protection |
US20050289037A1 (en) * | 2004-06-15 | 2005-12-29 | Smith Joseph B | Financial asset product and method for implementing same |
CN1977531A (en) * | 2004-06-28 | 2007-06-06 | 松下电器产业株式会社 | Program creation device, program test device, program execution device, information processing system |
US7694121B2 (en) * | 2004-06-30 | 2010-04-06 | Microsoft Corporation | System and method for protected operating system boot using state validation |
US7841009B1 (en) * | 2004-07-09 | 2010-11-23 | Angel Secure Networks | System and method for defending against reverse engineering of software, firmware and hardware |
JPWO2006009081A1 (en) * | 2004-07-16 | 2008-05-01 | 松下電器産業株式会社 | Application execution apparatus and application execution method of application execution apparatus |
US8631077B2 (en) | 2004-07-22 | 2014-01-14 | International Business Machines Corporation | Duplicate e-mail content detection and automatic doclink conversion |
US20060037005A1 (en) * | 2004-08-15 | 2006-02-16 | Russell Paul F | Method and apparatus for increasing computer security |
US20060041625A1 (en) | 2004-08-19 | 2006-02-23 | International Business Machines Corporation | System and method for sectional e-mail transmission |
US7890593B2 (en) * | 2008-07-17 | 2011-02-15 | International Business Machines Corporation | Sectional E-mail Transmission |
US20060041940A1 (en) * | 2004-08-21 | 2006-02-23 | Ko-Cheng Fang | Computer data protecting method |
US7590589B2 (en) | 2004-09-10 | 2009-09-15 | Hoffberg Steven M | Game theoretic prioritization scheme for mobile ad hoc networks permitting hierarchal deference |
US9609279B2 (en) | 2004-09-24 | 2017-03-28 | Google Inc. | Method and system for providing secure CODECS |
WO2006046187A1 (en) * | 2004-10-28 | 2006-05-04 | Koninklijke Philips Electronics N.V. | Method and system for obfuscating a cryptographic function |
EP1815380A1 (en) * | 2004-11-09 | 2007-08-08 | Koninklijke Philips Electronics N.V. | Protecting a dsp algorithm |
DE102004058882A1 (en) | 2004-12-06 | 2006-06-08 | Giesecke & Devrient Gmbh | Generating program code in a load format and providing executable program code |
EP1675031B1 (en) * | 2004-12-22 | 2010-01-06 | Telefonaktiebolaget L M Ericsson (Publ) | Watermarking computer program code by equivalent mathematical expressions |
EP1674966B1 (en) * | 2004-12-22 | 2009-03-11 | Telefonaktiebolaget L M Ericsson (Publ) | Watermarking computer program code |
US20060168044A1 (en) * | 2005-01-11 | 2006-07-27 | Yen-Fu Chen | System and method for display of chained messages in a single email in different orders |
US7689969B1 (en) * | 2005-01-18 | 2010-03-30 | The Mathworks, Inc. | Obfuscation of automatically generated code |
US20080015999A1 (en) * | 2005-02-04 | 2008-01-17 | Widevine Technologies, Inc. | Securely ingesting encrypted content into content servers |
EP1850261A1 (en) | 2005-02-10 | 2007-10-31 | Matsushita Electric Industrial Co., Ltd. | Program conversion device and program execution device |
JP4675642B2 (en) * | 2005-02-22 | 2011-04-27 | Kddi株式会社 | Program obfuscation apparatus, method and program |
US8020152B2 (en) * | 2005-02-24 | 2011-09-13 | Microsoft Corporation | Code morphing |
US7587616B2 (en) * | 2005-02-25 | 2009-09-08 | Microsoft Corporation | System and method of iterative code obfuscation |
US7370190B2 (en) * | 2005-03-03 | 2008-05-06 | Digimarc Corporation | Data processing systems and methods with enhanced bios functionality |
US7810142B2 (en) * | 2005-03-21 | 2010-10-05 | International Business Machines Corporation | Auditing compliance with a hippocratic database |
CN100555300C (en) * | 2005-03-25 | 2009-10-28 | 松下电器产业株式会社 | Program conversion apparatus, secure processing device, computer program and recording medium |
US7624385B2 (en) * | 2005-03-30 | 2009-11-24 | Alcatel-Lucent Usa Inc. | Method for handling preprocessing in source code transformation |
US8719786B2 (en) * | 2005-03-30 | 2014-05-06 | Alcatel Lucent | Method for performing conditionalized N-way merging of source code |
US7805714B2 (en) * | 2005-03-30 | 2010-09-28 | Alcatel-Lucent Usa Inc. | Technique for constructing syntax-directed search and modifications in program transformation systems |
WO2006115217A1 (en) * | 2005-04-21 | 2006-11-02 | Matsushita Electric Industrial Co., Ltd. | Program conversion device, and secret keeping program |
CN101203859B (en) * | 2005-04-21 | 2013-08-14 | 松下电器产业株式会社 | Program illegiblizing device and method |
US20060259900A1 (en) * | 2005-05-12 | 2006-11-16 | Xerox Corporation | Method for creating unique identification for copies of executable code and management thereof |
US20060259903A1 (en) * | 2005-05-12 | 2006-11-16 | Xerox Corporation | Method for creating unique identification for copies of executable code and management thereof |
WO2007055729A2 (en) * | 2005-05-19 | 2007-05-18 | Reifer Consultants, Inc. | Protecting applications software against unauthorized access, reverse engineering or tampering |
US20070266434A1 (en) * | 2006-05-11 | 2007-11-15 | Reifer Consultants, Inc. | Protecting Applications Software Against Unauthorized Access, Reverse Engineering or Tampering |
JP4669934B2 (en) * | 2005-06-10 | 2011-04-13 | 国立大学法人 奈良先端科学技術大学院大学 | Program conversion apparatus, execution support apparatus, method thereof, and computer program thereof |
US8838974B2 (en) * | 2005-07-15 | 2014-09-16 | The Mathworks, Inc. | System and method for verifying the integrity of read-only components in deployed mixed-mode applications |
US7620987B2 (en) * | 2005-08-12 | 2009-11-17 | Microsoft Corporation | Obfuscating computer code to prevent an attack |
US20070078775A1 (en) * | 2005-09-14 | 2007-04-05 | Huapaya Luis M | System and method for preventing unauthorized use of digital works |
US8719716B2 (en) | 2005-09-15 | 2014-05-06 | The Mathworks, Inc. | Locked element for use in a graphical modeling environment |
JP2007086845A (en) * | 2005-09-20 | 2007-04-05 | Kddi Corp | Client server system, method for providing server side program for the system, its server device, and server side program |
US7817608B2 (en) * | 2005-09-23 | 2010-10-19 | Widevine Technologies, Inc. | Transitioning to secure IP communications for encoding, encapsulating, and encrypting data |
WO2007038245A2 (en) | 2005-09-23 | 2007-04-05 | Widevine Technologies, Inc. | Method for evolving detectors to detect malign behavior in an artificial immune system |
US8065733B2 (en) | 2005-09-23 | 2011-11-22 | Google, Inc. | Method for evolving detectors to detect malign behavior in an artificial immune system |
DE102005045852A1 (en) * | 2005-09-26 | 2007-04-05 | Siemens Ag | Method and system for protecting source code |
US8874477B2 (en) | 2005-10-04 | 2014-10-28 | Steven Mark Hoffberg | Multifactorial optimization system and method |
US9626667B2 (en) | 2005-10-18 | 2017-04-18 | Intertrust Technologies Corporation | Digital rights management engine systems and methods |
EP1943603A2 (en) | 2005-10-18 | 2008-07-16 | Intertrust Technologies Corporation | Methods for digital rights management |
JP4918544B2 (en) * | 2005-10-28 | 2012-04-18 | パナソニック株式会社 | Obfuscation evaluation method, obfuscation evaluation apparatus, obfuscation evaluation program, storage medium, and integrated circuit |
WO2007052491A1 (en) * | 2005-10-31 | 2007-05-10 | Matsushita Electric Industrial Co., Ltd. | Secure processing device, secure processing method, encrypted confidential information embedding method, program, storage medium, and integrated circuit |
US8463612B1 (en) | 2005-11-08 | 2013-06-11 | Raytheon Company | Monitoring and collection of audio events |
US8141149B1 (en) * | 2005-11-08 | 2012-03-20 | Raytheon Oakley Systems, Inc. | Keyword obfuscation |
US8122122B1 (en) | 2005-11-08 | 2012-02-21 | Raytheon Oakley Systems, Inc. | Event monitoring and collection |
JP4770425B2 (en) | 2005-11-24 | 2011-09-14 | 富士ゼロックス株式会社 | Program, method and apparatus for creating protected execution program |
US8689016B2 (en) | 2005-12-02 | 2014-04-01 | Google Inc. | Tamper prevention and detection for video provided over a network to a client |
JP2007183931A (en) * | 2005-12-07 | 2007-07-19 | Matsushita Electric Ind Co Ltd | Secure device, information processing terminal, server, and authentication method |
NL1030639C2 (en) * | 2005-12-09 | 2007-06-12 | Antonius Theodorus Ceci Hauzer | Ventilation system for tunnel route or covered road. |
US8701091B1 (en) | 2005-12-15 | 2014-04-15 | Nvidia Corporation | Method and system for providing a generic console interface for a graphics application |
US20070156420A1 (en) * | 2005-12-29 | 2007-07-05 | Microsoft Corporation | Performance modeling and the application life cycle |
US20070157311A1 (en) * | 2005-12-29 | 2007-07-05 | Microsoft Corporation | Security modeling and the application life cycle |
US20070192344A1 (en) * | 2005-12-29 | 2007-08-16 | Microsoft Corporation | Threats and countermeasures schema |
US7890315B2 (en) | 2005-12-29 | 2011-02-15 | Microsoft Corporation | Performance engineering and the application life cycle |
US20070162890A1 (en) * | 2005-12-29 | 2007-07-12 | Microsoft Corporation | Security engineering and the application life cycle |
US8526612B2 (en) * | 2006-01-06 | 2013-09-03 | Google Inc. | Selective and persistent application level encryption for video provided to a client |
US20070180231A1 (en) * | 2006-01-31 | 2007-08-02 | Widevine Technologies, Inc. | Preventing entitlement management message (EMM) filter attacks |
JP4971200B2 (en) * | 2006-02-06 | 2012-07-11 | パナソニック株式会社 | Program obfuscation device |
US7818788B2 (en) * | 2006-02-14 | 2010-10-19 | Microsoft Corporation | Web application security frame |
US7712137B2 (en) | 2006-02-27 | 2010-05-04 | Microsoft Corporation | Configuring and organizing server security information |
US7891012B1 (en) | 2006-03-01 | 2011-02-15 | Nvidia Corporation | Method and computer-usable medium for determining the authorization status of software |
US8452981B1 (en) | 2006-03-01 | 2013-05-28 | Nvidia Corporation | Method for author verification and software authorization |
US7987514B2 (en) | 2006-04-04 | 2011-07-26 | Intertrust Technologies Corp. | Systems and methods for retrofitting electronic appliances to accept different content formats |
US8458673B2 (en) | 2006-04-26 | 2013-06-04 | Flexera Software Llc | Computer-implemented method and system for binding digital rights management executable code to a software application |
EP1850260A1 (en) * | 2006-04-26 | 2007-10-31 | Macrovision Corporation | A computer-implemented method and system for binding digital rights management executable code to a software application |
US20070261124A1 (en) * | 2006-05-03 | 2007-11-08 | International Business Machines Corporation | Method and system for run-time dynamic and interactive identification of software authorization requirements and privileged code locations, and for validation of other software program analysis results |
FR2903508B1 (en) | 2006-07-10 | 2008-10-17 | Sagem Defense Securite | PROTECTION OF A PROGRAM INTERPRETED BY A VIRTUAL MACHINE |
CN101491001B (en) * | 2006-07-12 | 2012-03-14 | 耶德托公司 | Tamper resistance of a digital data processing unit |
US7778800B2 (en) * | 2006-08-01 | 2010-08-17 | Nvidia Corporation | Method and system for calculating performance parameters for a processor |
US8436864B2 (en) * | 2006-08-01 | 2013-05-07 | Nvidia Corporation | Method and user interface for enhanced graphical operation organization |
US8607151B2 (en) * | 2006-08-01 | 2013-12-10 | Nvidia Corporation | Method and system for debugging a graphics pipeline subunit |
US8963932B1 (en) | 2006-08-01 | 2015-02-24 | Nvidia Corporation | Method and apparatus for visualizing component workloads in a unified shader GPU architecture |
US8436870B1 (en) | 2006-08-01 | 2013-05-07 | Nvidia Corporation | User interface and method for graphical processing analysis |
US8301890B2 (en) | 2006-08-10 | 2012-10-30 | Inside Secure | Software execution randomization |
US7613907B2 (en) | 2006-08-11 | 2009-11-03 | Atmel Corporation | Embedded software camouflage against code reverse engineering |
US8191131B2 (en) * | 2006-08-23 | 2012-05-29 | International Business Machines Corporation | Obscuring authentication data of remote user |
US20080271001A1 (en) * | 2006-09-11 | 2008-10-30 | Yo Nonomura | Method of generating program, information processing device and microcomputer |
US7554865B2 (en) | 2006-09-21 | 2009-06-30 | Atmel Corporation | Randomizing current consumption in memory devices |
WO2008034900A1 (en) * | 2006-09-21 | 2008-03-27 | Boesgaard Soerensen Hans Marti | Fabrication of computer executable program files from source code |
US20090249492A1 (en) * | 2006-09-21 | 2009-10-01 | Hans Martin Boesgaard Sorensen | Fabrication of computer executable program files from source code |
US8001607B2 (en) * | 2006-09-27 | 2011-08-16 | Direct Computer Resources, Inc. | System and method for obfuscation of data across an enterprise |
JP4917860B2 (en) * | 2006-10-03 | 2012-04-18 | Kddi株式会社 | Program obfuscation method and program |
JP4917861B2 (en) * | 2006-10-17 | 2012-04-18 | Kddi株式会社 | Program analysis method and program |
US8689193B2 (en) * | 2006-11-01 | 2014-04-01 | At&T Intellectual Property Ii, L.P. | Method and apparatus for protecting a software application against a virus |
FR2909467A1 (en) * | 2006-12-05 | 2008-06-06 | Logiways France Sa | Information processing system's data and program protecting method for digital set top box, involves executing security process on part of space during licit operation of processing system, to make space inaccessible to external processes |
US8468351B2 (en) | 2006-12-15 | 2013-06-18 | Codesealer Aps | Digital data authentication |
EP2107489A3 (en) | 2006-12-21 | 2009-11-04 | Telefonaktiebolaget L M Ericsson (PUBL) | Obfuscating computer program code |
ATE432507T1 (en) * | 2006-12-21 | 2009-06-15 | Ericsson Telefon Ab L M | OCCASIONING COMPUTER PROGRAM CODES |
US8146102B2 (en) * | 2006-12-22 | 2012-03-27 | Sap Ag | Development environment for groupware integration with enterprise applications |
CN101578813A (en) * | 2007-01-11 | 2009-11-11 | 皇家飞利浦电子股份有限公司 | Tracing copies of an implementation |
JP5133973B2 (en) * | 2007-01-18 | 2013-01-30 | パナソニック株式会社 | Obfuscation support device, obfuscation support method, program, and integrated circuit |
US8613080B2 (en) | 2007-02-16 | 2013-12-17 | Veracode, Inc. | Assessment and analysis of software security flaws in virtual machines |
US20080209401A1 (en) * | 2007-02-22 | 2008-08-28 | Microsoft Corporation | Techniques for integrating debugging with decompilation |
US8752032B2 (en) | 2007-02-23 | 2014-06-10 | Irdeto Canada Corporation | System and method of interlocking to protect software-mediated program and device behaviours |
WO2008101340A1 (en) * | 2007-02-23 | 2008-08-28 | Cloakware Corporation | System and method for interlocking to protect software-mediated program and device behaviours |
US8370606B2 (en) | 2007-03-16 | 2013-02-05 | Atmel Corporation | Switching data pointers based on context |
US20080229115A1 (en) * | 2007-03-16 | 2008-09-18 | Microsoft Corporation | Provision of functionality via obfuscated software |
US7797516B2 (en) | 2007-03-16 | 2010-09-14 | Atmel Corporation | Microcontroller with low-cost digital signal processing extensions |
US8837721B2 (en) * | 2007-03-22 | 2014-09-16 | Microsoft Corporation | Optical DNA based on non-deterministic errors |
US8788848B2 (en) * | 2007-03-22 | 2014-07-22 | Microsoft Corporation | Optical DNA |
US7987380B2 (en) | 2007-03-27 | 2011-07-26 | Atmel Rousset S.A.S. | Methods and apparatus to detect voltage class of a circuit |
US8181039B2 (en) * | 2007-04-13 | 2012-05-15 | Microsoft Corporation | Disc drive counterfeiting countermeasure |
JP4924177B2 (en) * | 2007-04-23 | 2012-04-25 | 富士ゼロックス株式会社 | Program obfuscation device and program |
US7912894B2 (en) * | 2007-05-15 | 2011-03-22 | Adams Phillip M | Computerized, copy-detection and discrimination apparatus and method |
US8621093B2 (en) | 2007-05-21 | 2013-12-31 | Google Inc. | Non-blocking of head end initiated revocation and delivery of entitlements non-addressable digital media network |
US7984288B2 (en) | 2007-05-21 | 2011-07-19 | Sercomm Corporation | Software protection apparatus and protection method thereof |
EP1998267A1 (en) * | 2007-05-29 | 2008-12-03 | Sercomm Corporation | Software protection apparatus and protection method thereof |
ATE456837T1 (en) * | 2007-06-29 | 2010-02-15 | Ericsson Telefon Ab L M | OCCASIONING TRACES OF EXECUTION OF A COMPUTER PROGRAM CODE |
US8243924B2 (en) | 2007-06-29 | 2012-08-14 | Google Inc. | Progressive download or streaming of digital media securely through a localized container and communication protocol proxy |
US8130956B2 (en) * | 2007-08-02 | 2012-03-06 | International Business Machines Corporation | Efficient and low power encrypting and decrypting of data |
US8026930B2 (en) * | 2007-08-06 | 2011-09-27 | International Business Machines Corporation | Preventing viewing by bystanders of information on a display screen |
KR101497742B1 (en) * | 2007-08-06 | 2015-03-03 | 몬세이그낫 베르나르드 드 | System and method for authentication, data transfer, and protection against phising |
US8296738B1 (en) | 2007-08-13 | 2012-10-23 | Nvidia Corporation | Methods and systems for in-place shader debugging and performance tuning |
US20090049425A1 (en) * | 2007-08-14 | 2009-02-19 | Aladdin Knowledge Systems Ltd. | Code Obfuscation By Reference Linking |
US9035957B1 (en) | 2007-08-15 | 2015-05-19 | Nvidia Corporation | Pipeline debug statistics system and method |
US8112636B1 (en) * | 2007-11-06 | 2012-02-07 | Lockheed Martin Corporation | Protection of code or data from exposure by use of code injection service |
US7765500B2 (en) * | 2007-11-08 | 2010-07-27 | Nvidia Corporation | Automated generation of theoretical performance analysis based upon workload and design configuration |
CN100474253C (en) * | 2007-11-22 | 2009-04-01 | 北京飞天诚信科技有限公司 | .Net program protection method and device |
EP2071483A1 (en) * | 2007-12-07 | 2009-06-17 | Gemplus | Method of securing the execution of a code by iterative masking |
WO2009108245A2 (en) | 2007-12-21 | 2009-09-03 | University Of Virginia Patent Foundation | System, method and computer program product for protecting software via continuous anti-t ampering and obfuscation transforms |
US8868464B2 (en) | 2008-02-07 | 2014-10-21 | Google Inc. | Preventing unauthorized modification or skipping of viewing of advertisements within content |
US8176337B2 (en) * | 2008-03-12 | 2012-05-08 | Apple Inc. | Computer object code obfuscation using boot installation |
GB0806284D0 (en) * | 2008-04-07 | 2008-05-14 | Metaforic Ltd | Profile-guided tamper-proofing |
US8448002B2 (en) * | 2008-04-10 | 2013-05-21 | Nvidia Corporation | Clock-gated series-coupled data processing modules |
WO2009139650A1 (en) * | 2008-05-12 | 2009-11-19 | Business Intelligence Solutions Safe B.V. | A data obfuscation system, method, and computer implementation of data obfuscation for secret databases |
US8800048B2 (en) * | 2008-05-20 | 2014-08-05 | Microsoft Corporation | Software protection through interdependent parameter cloud constrained software execution |
US8434061B2 (en) * | 2008-06-06 | 2013-04-30 | Apple Inc. | System and method for array obfuscation |
US8429637B2 (en) * | 2008-09-02 | 2013-04-23 | Apple Inc. | System and method for conditional expansion obfuscation |
US8522015B2 (en) * | 2008-06-27 | 2013-08-27 | Microsoft Corporation | Authentication of binaries in memory with proxy code execution |
US8069053B2 (en) * | 2008-08-13 | 2011-11-29 | Hartford Fire Insurance Company | Systems and methods for de-identification of personal data |
US8589372B2 (en) | 2008-12-16 | 2013-11-19 | Clinton A. Krislov | Method and system for automated document registration with cloud computing |
US8341141B2 (en) | 2008-12-16 | 2012-12-25 | Krislov Clinton A | Method and system for automated document registration |
US8914351B2 (en) | 2008-12-16 | 2014-12-16 | Clinton A. Krislov | Method and system for secure automated document registration from social media networks |
US20100214894A1 (en) * | 2009-02-20 | 2010-08-26 | Microsoft Corporation | Optical Medium with Added Descriptor to Reduce Counterfeiting |
US9135948B2 (en) * | 2009-07-03 | 2015-09-15 | Microsoft Technology Licensing, Llc | Optical medium with added descriptor to reduce counterfeiting |
JP4905480B2 (en) * | 2009-02-20 | 2012-03-28 | 富士ゼロックス株式会社 | Program obfuscation program and program obfuscation device |
FR2942558B1 (en) | 2009-02-24 | 2014-05-30 | Eads Europ Aeronautic Defence | METHOD OF OBSCURING A COMPUTER PROGRAM. |
FR2942559B1 (en) * | 2009-02-24 | 2016-05-20 | European Aeronautic Defence And Space Company - Eads France | METHOD FOR PROTECTING THE SOURCE CODE OF A COMPUTER PROGRAM. |
EP2234031A1 (en) * | 2009-03-24 | 2010-09-29 | SafeNet, Inc. | Obfuscation |
US8929303B2 (en) * | 2009-04-06 | 2015-01-06 | Samsung Electronics Co., Ltd. | Control and data channels for advanced relay operation |
CN101859330B (en) * | 2009-04-09 | 2012-11-21 | 辉达公司 | Method for verifying integrated circuit effectiveness models |
CN102483790B (en) | 2009-05-06 | 2016-01-20 | 爱迪德技术有限公司 | Utilize the cryptological interlocking scale-of-two protection of white box |
US8914903B1 (en) | 2009-06-03 | 2014-12-16 | Amdocs Software System Limited | System, method, and computer program for validating receipt of digital content by a client device |
US9027143B1 (en) | 2009-08-26 | 2015-05-05 | Adobe Systems Incorporated | System and method for multipronged authentication |
US9524345B1 (en) | 2009-08-31 | 2016-12-20 | Richard VanderDrift | Enhancing content using linked context |
CA2774728C (en) * | 2009-11-13 | 2019-02-12 | Irdeto Canada Corporation | System and method to protect java bytecode code against static and dynamic attacks within hostile execution environments |
EP2343663A1 (en) * | 2009-12-17 | 2011-07-13 | Gemalto SA | Method for multiform protection of an executable code |
US8645930B2 (en) * | 2010-01-04 | 2014-02-04 | Apple Inc. | System and method for obfuscation by common function and common function prototype |
US9639707B1 (en) | 2010-01-14 | 2017-05-02 | Richard W. VanderDrift | Secure data storage and communication for network computing |
US8887140B2 (en) * | 2010-01-15 | 2014-11-11 | Apple Inc. | System and method for annotation-driven function inlining |
JP2011150560A (en) * | 2010-01-22 | 2011-08-04 | Kddi Corp | System and method for protecting software, software conversion method and program |
US11301592B2 (en) * | 2010-01-28 | 2022-04-12 | Pure Storage, Inc. | Distributed storage with data obfuscation and method for use therewith |
WO2011116446A1 (en) * | 2010-03-24 | 2011-09-29 | Irdeto Canada Corporation | System and method for random algorithm selection to dynamically conceal the operation of software |
JP5643894B2 (en) * | 2010-03-25 | 2014-12-17 | イルデト カナダ コーポレーション | System and method for dynamically variable timing arithmetic path to withstand side channel attacks and repetitive activation attacks |
JP2011209801A (en) * | 2010-03-29 | 2011-10-20 | Kddi Corp | Apparatus and method for obfuscating software, and program |
US9009481B2 (en) | 2010-03-31 | 2015-04-14 | Irdeto Canada Corporation | System and method for protecting cryptographic assets from a white-box attack |
US9152411B2 (en) * | 2010-05-12 | 2015-10-06 | Microsoft Technology Licensing, Llc | Edge computing platform for delivery of rich internet applications |
EP2402880A1 (en) * | 2010-07-01 | 2012-01-04 | Aladdin Europe GmbH | Method and device for selectively protecting one of a plurality of methods of a class of an application written in an object-orientated language |
WO2012027701A2 (en) * | 2010-08-26 | 2012-03-01 | Massively Parallel Technologies, Inc. | Parallel processing development environment and associated methods |
KR101216995B1 (en) * | 2010-12-03 | 2012-12-31 | 충남대학교산학협력단 | A code encryption and decryption device against reverse engineering based on indexed table and the method thereof |
JP5627444B2 (en) * | 2010-12-24 | 2014-11-19 | Kddi株式会社 | Software obfuscation device, software obfuscation method and program |
US9195810B2 (en) | 2010-12-28 | 2015-11-24 | Microsoft Technology Licensing, Llc | Identifying factorable code |
EP2482184A1 (en) * | 2011-02-01 | 2012-08-01 | Irdeto B.V. | Adaptive obfuscated virtual machine |
US8707053B2 (en) * | 2011-02-09 | 2014-04-22 | Apple Inc. | Performing boolean logic operations using arithmetic operations by code obfuscation |
US9058482B2 (en) | 2011-03-01 | 2015-06-16 | Angel Secure Networks, Inc. | Controlling user access to electronic resources without password |
US8930717B2 (en) | 2011-03-01 | 2015-01-06 | Angel Secure Networks, Inc. | Secure processing module and method for making the same |
CA2830761C (en) | 2011-03-24 | 2019-01-15 | Irdeto B.V. | System and method providing dependency networks throughout applications for attack resistance |
CA2832752A1 (en) | 2011-04-11 | 2012-10-18 | Intertrust Technologies Corporation | Information security systems and methods |
US20120266249A1 (en) * | 2011-04-13 | 2012-10-18 | Safenet, Inc. | Automatic Selection of Routines for Protection |
FR2974207B1 (en) * | 2011-04-14 | 2013-05-24 | In Webo Technologies | METHOD AND SYSTEM FOR SECURING A SOFTWARE |
US8621237B1 (en) * | 2011-06-30 | 2013-12-31 | Emc Corporation | Protecting against cryptographic key exposure in source code |
US20130014267A1 (en) * | 2011-07-07 | 2013-01-10 | Farrugia Augustin J | Computer protocol generation and obfuscation |
US20130097431A1 (en) * | 2011-10-18 | 2013-04-18 | Paul Marion Hriljac | Systems and methods of source software code modification |
US9116765B2 (en) | 2011-10-20 | 2015-08-25 | Apple Inc. | System and method for obfuscating data using instructions as a source of pseudorandom values |
EP2795829B1 (en) * | 2011-11-16 | 2020-05-20 | V-Key Inc | Cryptographic system and methodology for securing software cryptography |
US8751800B1 (en) | 2011-12-12 | 2014-06-10 | Google Inc. | DRM provider interoperability |
WO2013091709A1 (en) * | 2011-12-22 | 2013-06-27 | Fundació Privada Barcelona Digital Centre Tecnologic | Method and apparatus for real-time dynamic transformation of the code of a web document |
US8539601B2 (en) | 2012-01-17 | 2013-09-17 | Lockheed Martin Corporation | Secure data storage and retrieval |
WO2013116916A1 (en) * | 2012-02-09 | 2013-08-15 | Irdeto Canada Corporation | System and method for generating and protecting cryptographic keys |
US9286063B2 (en) | 2012-02-22 | 2016-03-15 | Veracode, Inc. | Methods and systems for providing feedback and suggested programming methods |
US8661549B2 (en) * | 2012-03-02 | 2014-02-25 | Apple Inc. | Method and apparatus for obfuscating program source codes |
JP2013186647A (en) * | 2012-03-07 | 2013-09-19 | Yokohama National Univ | Obfuscation device, obfuscation method, obfuscation program, and obfuscated source code |
EP2828782A1 (en) * | 2012-03-23 | 2015-01-28 | Irdeto B.V. | Software fingerprinting |
EP2831797B1 (en) | 2012-03-30 | 2018-05-02 | Irdeto B.V. | Securing accessible systems using dynamic data mangling |
WO2013184108A1 (en) * | 2012-06-06 | 2013-12-12 | Empire Technology Development Llc | Software protection mechanism |
EP2682865B1 (en) * | 2012-07-05 | 2018-05-30 | Vector Informatik GmbH | Method for communicating with a control programme of a control device and application modules for same |
DE102012015899A1 (en) * | 2012-08-10 | 2014-02-13 | Giesecke & Devrient Gmbh | Method for generating executable program code |
US9323315B2 (en) | 2012-08-15 | 2016-04-26 | Nvidia Corporation | Method and system for automatic clock-gating of a clock grid at a clock source |
US8850371B2 (en) | 2012-09-14 | 2014-09-30 | Nvidia Corporation | Enhanced clock gating in retimed modules |
US9270660B2 (en) | 2012-11-25 | 2016-02-23 | Angel Secure Networks, Inc. | System and method for using a separate device to facilitate authentication |
US8918768B2 (en) * | 2012-12-06 | 2014-12-23 | Apple Inc. | Methods and apparatus for correlation protected processing of data operations |
KR101429229B1 (en) * | 2012-12-27 | 2014-08-12 | 한라대학교산학협력단 | Method for Java Obfuscation Using Statements Merging |
US9519568B2 (en) | 2012-12-31 | 2016-12-13 | Nvidia Corporation | System and method for debugging an executing general-purpose computing on graphics processing units (GPGPU) application |
US10152591B2 (en) * | 2013-02-10 | 2018-12-11 | Paypal, Inc. | Protecting against malware variants using reconstructed code of malware |
IL224743A0 (en) * | 2013-02-14 | 2013-06-27 | Harel Cain | Automatic computer program obfuscation system |
US9116712B2 (en) | 2013-02-28 | 2015-08-25 | Microsoft Technology Licensing, Llc | Compile based obfuscation |
US9411708B2 (en) | 2013-04-12 | 2016-08-09 | Wipro Limited | Systems and methods for log generation and log obfuscation using SDKs |
US9430534B2 (en) | 2013-05-09 | 2016-08-30 | Wipro Limited | Systems and methods for improved security and precision in executing analytics using SDKS |
US9471456B2 (en) | 2013-05-15 | 2016-10-18 | Nvidia Corporation | Interleaved instruction debugger |
CN104166822B (en) * | 2013-05-20 | 2017-10-13 | 阿里巴巴集团控股有限公司 | A kind of method and apparatus of data protection |
EP3005207B1 (en) * | 2013-05-30 | 2020-09-30 | JScrambler S.A. | Digital content execution control mechanism |
WO2014191968A1 (en) | 2013-05-30 | 2014-12-04 | Auditmark S.A. | Web application protection |
US8738931B1 (en) * | 2013-10-21 | 2014-05-27 | Conley Jack Funk | Method for determining and protecting proprietary source code using mnemonic identifiers |
WO2015088525A1 (en) * | 2013-12-12 | 2015-06-18 | Empire Technology Development, Llc | Randomization of processor subunit timing to enhance security |
US8954583B1 (en) | 2014-01-20 | 2015-02-10 | Shape Security, Inc. | Intercepting and supervising calls to transformed operations and objects |
TW201530344A (en) * | 2014-01-21 | 2015-08-01 | hong-jian Zhou | Application program access protection method and application program access protection device |
EP2913772A1 (en) * | 2014-02-28 | 2015-09-02 | Wibu-Systems AG | Method and computer system for protecting a computer program against influence |
US9459861B1 (en) | 2014-03-31 | 2016-10-04 | Terbium Labs, Inc. | Systems and methods for detecting copied computer code using fingerprints |
US9497252B2 (en) | 2014-03-31 | 2016-11-15 | International Business Machines Corporation | On-demand code version switching |
GB201405754D0 (en) * | 2014-03-31 | 2014-05-14 | Irdeto Bv | Protecting an item of software comprising conditional code |
US8997256B1 (en) | 2014-03-31 | 2015-03-31 | Terbium Labs LLC | Systems and methods for detecting copied computer code using fingerprints |
CN106415566A (en) * | 2014-03-31 | 2017-02-15 | 爱迪德技术有限公司 | Protecting an item of software |
US9378001B2 (en) | 2014-05-02 | 2016-06-28 | Microsoft Technology Licensing, Llc | Matching program sections through feature extraction |
US9411597B2 (en) * | 2014-05-06 | 2016-08-09 | Nxp B.V. | Return-oriented programming as an obfuscation technique |
US9858440B1 (en) * | 2014-05-23 | 2018-01-02 | Shape Security, Inc. | Encoding of sensitive data |
US9003511B1 (en) | 2014-07-22 | 2015-04-07 | Shape Security, Inc. | Polymorphic security policy action |
CN105404794B (en) * | 2014-09-04 | 2019-09-20 | 腾讯科技(深圳)有限公司 | The guard method of Java application software and device |
US9602543B2 (en) | 2014-09-09 | 2017-03-21 | Shape Security, Inc. | Client/server polymorphism using polymorphic hooks |
US10657262B1 (en) | 2014-09-28 | 2020-05-19 | Red Balloon Security, Inc. | Method and apparatus for securing embedded device firmware |
CN104318134B (en) * | 2014-11-05 | 2017-06-06 | 北京深思数盾科技股份有限公司 | A kind of data guard method |
US20160132317A1 (en) * | 2014-11-06 | 2016-05-12 | Intertrust Technologies Corporation | Secure Application Distribution Systems and Methods |
CN107580765B (en) * | 2015-01-27 | 2021-10-26 | 艾锐势有限责任公司 | For protecting confusion of streaming media and other data streams |
CA2975528C (en) | 2015-02-09 | 2024-01-30 | T0.Com, Inc. | Crypto integration platform |
US9779239B2 (en) * | 2015-03-15 | 2017-10-03 | Fujitsu Limited | Detection of malicious software behavior using signature-based static analysis |
CN104766166B (en) * | 2015-03-27 | 2018-06-19 | 杭州安恒信息技术有限公司 | A kind of information system security compliance inspection method towards hierarchical protection |
US9805203B2 (en) * | 2015-04-21 | 2017-10-31 | Sap Se | Cooperative static and dynamic analysis of web application code for finding security vulnerabilities |
US11704733B2 (en) | 2015-05-01 | 2023-07-18 | Tzero Ip, Llc | Crypto multiple security asset creation and redemption platform |
US20160328539A1 (en) * | 2015-05-05 | 2016-11-10 | Nxp B.V. | Obscuring Software Code With Split Variables |
US10068070B2 (en) * | 2015-05-05 | 2018-09-04 | Nxp B.V. | White-box elliptic curve point multiplication |
AU2016307202A1 (en) * | 2015-05-26 | 2017-12-07 | Tzero Ip, Llc | Obfuscation of intent in transactions using cryptographic techniques |
US10230718B2 (en) | 2015-07-07 | 2019-03-12 | Shape Security, Inc. | Split serving of computer code |
US9471285B1 (en) * | 2015-07-09 | 2016-10-18 | Synopsys, Inc. | Identifying software components in a software codebase |
CN106407754B (en) * | 2015-07-30 | 2021-06-18 | 中兴通讯股份有限公司 | Method and device for generating random layout program |
US9946853B1 (en) * | 2015-09-17 | 2018-04-17 | Symantec Corporation | Techniques for application code obfuscation |
US10509918B1 (en) * | 2015-09-18 | 2019-12-17 | Hrl Laboratories, Llc | One-time obfuscation for polynomial-size ordered binary decision diagrams (POBDDs) |
US10594705B2 (en) * | 2015-10-06 | 2020-03-17 | Shouhuai Xu | Systems and methods for instructions-based detection of sophisticated obfuscation and packing |
US9703537B2 (en) * | 2015-11-02 | 2017-07-11 | International Business Machines Corporation | Method for defining alias sets |
WO2017115379A1 (en) * | 2015-12-31 | 2017-07-06 | Cyber 2.0 (2015) Ltd. | Incrementally polymorphing code for enhanced resistance to reverse engineering |
EP3208789B1 (en) * | 2016-02-22 | 2020-08-05 | Eshard | Method of protecting a circuit against a side-channel analysis |
US10171493B2 (en) | 2016-03-05 | 2019-01-01 | Sears Brands, L.L.C. | Method and system to dynamically obfuscate a web services interface |
EP3440542B1 (en) | 2016-03-09 | 2021-04-28 | Shape Security, Inc. | Applying bytecode obfuscation techniques to programs written in an interpreted language |
US10216488B1 (en) | 2016-03-14 | 2019-02-26 | Shape Security, Inc. | Intercepting and injecting calls into operations and objects |
JP6730587B2 (en) * | 2016-06-13 | 2020-07-29 | 富士通株式会社 | Cache miss estimation program, cache miss estimation method, and information processing apparatus |
US10574632B2 (en) * | 2016-06-30 | 2020-02-25 | Hcl Technologies Limited | System and method for secure sharing of a source code |
US10243937B2 (en) * | 2016-07-08 | 2019-03-26 | Nxp B.V. | Equality check implemented with secret sharing |
US10078505B2 (en) * | 2016-07-20 | 2018-09-18 | International Business Machines Corporation | Partial connection of iterations during loop unrolling |
US10394554B1 (en) * | 2016-09-09 | 2019-08-27 | Stripe, Inc. | Source code extraction via monitoring processing of obfuscated byte code |
US11349816B2 (en) | 2016-12-02 | 2022-05-31 | F5, Inc. | Obfuscating source code sent, from a server computer, to a browser on a client computer |
US10382450B2 (en) * | 2017-02-21 | 2019-08-13 | Sanctum Solutions Inc. | Network data obfuscation |
JP7131946B2 (en) | 2017-04-20 | 2022-09-06 | Line株式会社 | Method and system for assessing application security |
WO2018194198A1 (en) * | 2017-04-20 | 2018-10-25 | 라인 가부시키가이샤 | Method and system for detecting application of obfuscation to and evaluating security of pe file |
WO2018194196A1 (en) * | 2017-04-20 | 2018-10-25 | 라인 가부시키가이샤 | Method and system for detecting application of obfuscation to and evaluating security of elf file |
US10521612B2 (en) * | 2017-06-21 | 2019-12-31 | Ca, Inc. | Hybrid on-premises/software-as-service applications |
CN107506651B (en) * | 2017-07-04 | 2021-10-22 | 环玺信息科技(上海)有限公司 | Code encryption method and system |
US10331839B2 (en) * | 2017-08-18 | 2019-06-25 | Honeywell Federal Manufacturing & Technologies, Llc | System and method for obfuscation of electronic circuits |
EP3467691B1 (en) | 2017-10-05 | 2020-08-26 | Eshard | Method of selecting software files |
US10121022B1 (en) | 2017-10-09 | 2018-11-06 | Jason McNutt | Methods and systems for encrypting data using object-based screens |
CN110659200B (en) * | 2018-06-29 | 2023-05-02 | 中国航发商用航空发动机有限责任公司 | Method and system for comparing and analyzing source code and target code of aviation onboard software |
US11307962B2 (en) | 2018-07-09 | 2022-04-19 | United States Of America As Represented By The Secretary Of The Navy | Method for semantic preserving transform mutation discovery and vetting |
US10521613B1 (en) * | 2018-08-08 | 2019-12-31 | Carlos Manuel Gonzalez | Adaptive standalone secure software |
US10620946B1 (en) * | 2018-10-23 | 2020-04-14 | Oracle International Corporation | Dynamic modeling for opaque code during static analysis |
KR20200047187A (en) * | 2018-10-26 | 2020-05-07 | 삼성전자주식회사 | Server and controlling method thereof |
DE102019004398A1 (en) * | 2019-06-21 | 2020-12-24 | Giesecke+Devrient Mobile Security Gmbh | Obfuscation of a software application |
US20210004485A1 (en) * | 2019-07-01 | 2021-01-07 | International Business Machines Corporation | Cognitive Iterative Minimization of Personally Identifiable Information in Electronic Documents |
US11741197B1 (en) | 2019-10-15 | 2023-08-29 | Shape Security, Inc. | Obfuscating programs using different instruction set architectures |
US11431688B2 (en) | 2019-12-13 | 2022-08-30 | TripleBlind, Inc. | Systems and methods for providing a modified loss function in federated-split learning |
US11599671B1 (en) | 2019-12-13 | 2023-03-07 | TripleBlind, Inc. | Systems and methods for finding a value in a combined list of private values |
CN111190601A (en) * | 2019-12-25 | 2020-05-22 | 航天信息股份有限公司 | Android application program-oriented progressive control flow confusion method and electronic device |
US11204985B2 (en) * | 2020-03-31 | 2021-12-21 | Irdeto Canada Corporation | Systems, methods, and storage media for creating secured computer code having entangled transformations |
US11354218B2 (en) * | 2020-05-06 | 2022-06-07 | Sap Se | Generation of optimal program variation |
CN113158147B (en) * | 2021-03-24 | 2022-12-09 | 中国人民解放军战略支援部队信息工程大学 | Code obfuscation method based on parent fusion |
US11792646B2 (en) | 2021-07-27 | 2023-10-17 | TripleBlind, Inc. | Systems and methods for providing a multi-party computation system for neural networks |
US20230289449A1 (en) * | 2022-03-11 | 2023-09-14 | Bank Of America Corporation | Apparatus and methods for leveraging machine learning to programmatically identify and detect obfuscation |
Family Cites Families (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4644493A (en) | 1984-09-14 | 1987-02-17 | International Business Machines Corporation | Implementing a shared higher level of privilege on personal computers for copy protection of software |
US4827508A (en) | 1986-10-14 | 1989-05-02 | Personal Library Software, Inc. | Database usage metering and protection system and method |
US5224160A (en) | 1987-02-23 | 1993-06-29 | Siemens Nixdorf Informationssysteme Ag | Process for securing and for checking the integrity of the secured programs |
US4965724A (en) | 1987-03-05 | 1990-10-23 | Oki Electric Industry Co., Ltd. | Compiler system using reordering of microoperations to eliminate interlocked instructions for pipelined processing of assembler source program |
US4866769A (en) | 1987-08-05 | 1989-09-12 | Ibm Corporation | Hardware assist for protecting PC software |
CA2010056C (en) | 1990-02-14 | 1998-05-12 | Charles Brian Hall | Method for improving the efficiency of arithmetic code generation in an optimizing compiler using machine independent update instruction generation |
EP0459046A1 (en) | 1990-05-31 | 1991-12-04 | International Business Machines Corporation | Computer software protection |
US5481708A (en) | 1992-06-05 | 1996-01-02 | Borland International, Inc. | System and methods for optimizing object-oriented compilations |
US5287408A (en) | 1992-08-31 | 1994-02-15 | Autodesk, Inc. | Apparatus and method for serializing and validating copies of computer software |
US5367685A (en) | 1992-12-22 | 1994-11-22 | Firstperson, Inc. | Method and apparatus for resolving data references in generated code |
JP3280449B2 (en) | 1993-03-01 | 2002-05-13 | 富士通株式会社 | Compiling device |
JPH07114473A (en) | 1993-10-19 | 1995-05-02 | Fujitsu Ltd | Instruction series optimizing method for compiler |
US5579520A (en) | 1994-05-13 | 1996-11-26 | Borland International, Inc. | System and methods for optimizing compiled code according to code object participation in program activities |
US5950505A (en) | 1994-05-24 | 1999-09-14 | Locher; Beat | Process for stripping an insulated wire or cable having a cross-section which may be non-circular and stripping device for carrying out the process |
US5724425A (en) | 1994-06-10 | 1998-03-03 | Sun Microsystems, Inc. | Method and apparatus for enhancing software security and distributing software |
US5559884A (en) | 1994-06-30 | 1996-09-24 | Microsoft Corporation | Method and system for generating and auditing a signature for a computer program |
FR2721984B1 (en) | 1994-06-30 | 1996-09-06 | Valeo | SHOCK ABSORBER, AND CLUTCH IN PARTICULAR FOR A MOTOR VEHICLE EQUIPPED WITH SUCH A STEERING WHEEL |
US5664191A (en) | 1994-06-30 | 1997-09-02 | Microsoft Corporation | Method and system for improving the locality of memory references during execution of a computer program |
US5646997A (en) | 1994-12-14 | 1997-07-08 | Barton; James M. | Method and apparatus for embedding authentication information within digital data |
US5745569A (en) | 1996-01-17 | 1998-04-28 | The Dice Company | Method for stega-cipher protection of computer code |
CA2683230C (en) | 1995-02-13 | 2013-08-27 | Intertrust Technologies Corporation | Systems and methods for secure transaction management and electronic rights protection |
US5892900A (en) | 1996-08-30 | 1999-04-06 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
US6157721A (en) | 1996-08-12 | 2000-12-05 | Intertrust Technologies Corp. | Systems and methods using cryptography to protect secure computing environments |
US5943422A (en) | 1996-08-12 | 1999-08-24 | Intertrust Technologies Corp. | Steganographic techniques for securely delivering electronic digital rights management control information over insecure communication channels |
US5499333A (en) | 1995-04-20 | 1996-03-12 | International Business Machines Corporation | Method and apparatus for at least partially instantiating an object in a compound document using the object's parent class configuration data when the object's configuration data is unavailable |
US5592549A (en) | 1995-06-15 | 1997-01-07 | Infosafe Systems, Inc. | Method and apparatus for retrieving selected information from a secure information source |
US6006328A (en) | 1995-07-14 | 1999-12-21 | Christopher N. Drake | Computer software authentication, protection, and security system |
WO1997004394A1 (en) * | 1995-07-14 | 1997-02-06 | Christopher Nathan Drake | Computer software authentication, protection, and security system |
JP4518574B2 (en) | 1995-08-11 | 2010-08-04 | ソニー株式会社 | Recording method and apparatus, recording medium, and reproducing method and apparatus |
US5835776A (en) | 1995-11-17 | 1998-11-10 | Sun Microsystems, Inc. | Method and apparatus for instruction scheduling in an optimizing compiler for minimizing overhead instructions |
US6088452A (en) | 1996-03-07 | 2000-07-11 | Northern Telecom Limited | Encoding technique for software and hardware |
AU3205797A (en) | 1996-05-15 | 1997-12-05 | Intertrust Technologies Corp. | Cryptographic methods, apparatus and systems for storage media electronic rights management in closed and connected appliances |
US5805895A (en) | 1996-06-09 | 1998-09-08 | Motorola, Inc. | Method and apparatus for code translation optimization |
US5892899A (en) * | 1996-06-13 | 1999-04-06 | Intel Corporation | Tamper resistant methods and apparatus |
AU739693B2 (en) | 1996-08-12 | 2001-10-18 | Intertrust Technologies Corp. | Trusted and secure techniques for item delivery and execution |
US5966537A (en) * | 1997-05-28 | 1999-10-12 | Sun Microsystems, Inc. | Method and apparatus for dynamically optimizing an executable computer program using input data |
US6102966A (en) | 1998-03-20 | 2000-08-15 | Preemptive Solutions, Inc. | Method for renaming identifiers of a computer program |
-
1998
- 1998-06-09 WO PCT/US1998/012017 patent/WO1999001815A1/en not_active Application Discontinuation
- 1998-06-09 AU AU79579/98A patent/AU7957998A/en not_active Abandoned
- 1998-06-09 EP EP98930114A patent/EP0988591A1/en not_active Withdrawn
- 1998-06-09 JP JP50866099A patent/JP4739465B2/en not_active Expired - Lifetime
- 1998-06-09 CA CA2293650A patent/CA2293650C/en not_active Expired - Lifetime
- 1998-06-09 US US09/095,346 patent/US6668325B1/en not_active Expired - Lifetime
- 1998-06-09 CN CN98806038.8A patent/CN1260055A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8055668B2 (en) | 2008-02-13 | 2011-11-08 | Camouflage Software, Inc. | Method and system for masking data in a consistent manner across multiple data sources |
Also Published As
Publication number | Publication date |
---|---|
JP2002514333A (en) | 2002-05-14 |
US6668325B1 (en) | 2003-12-23 |
WO1999001815A1 (en) | 1999-01-14 |
JP4739465B2 (en) | 2011-08-03 |
EP0988591A1 (en) | 2000-03-29 |
AU7957998A (en) | 1999-01-25 |
CA2293650C (en) | 2012-09-25 |
CN1260055A (en) | 2000-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2293650A1 (en) | Obfuscation techniques for enhancing software security | |
CN103544414B (en) | A kind of degree of depth Code obfuscation method of android system application | |
RU2439669C2 (en) | Method to prevent reverse engineering of software, unauthorised modification and data capture during performance | |
US9535942B2 (en) | Apparatus and method for managing APK file in an android platform | |
DE19983632B4 (en) | Emulation of an instruction set in an instruction set architecture transition | |
WO1996010224A3 (en) | Mechanism for linking together the files of emulated and host system for access by emulated system users | |
KR101521765B1 (en) | Apparatus For Code Obfuscation Using Indistinguishable Identifier Conversion and Method Thereof | |
US20020038428A1 (en) | Digital data protection arrangement | |
DE69903919T2 (en) | SYSTEM FOR STORING THE VISUAL FORM OF INFORMATION FROM AN APPLICATION IN A DATABASE AND FOR RETURNING IT | |
CN108537012B (en) | Source code obfuscation method and device based on variables and code execution sequence | |
CN101216775A (en) | Software program protection method, device and system | |
CN105074712A (en) | Code processing device and program | |
CN108133147B (en) | Method and device for protecting executable code and readable storage medium | |
Cheng et al. | DynOpVm: VM-based software obfuscation with dynamic opcode mapping | |
CN112115427A (en) | Code obfuscation method, device, electronic device and storage medium | |
EP1349035B1 (en) | Self-restoration type program, program producing method and apparatus, information processing apparatus and program | |
US7000119B1 (en) | Instruction/data protection employing derived obscuring instruction/data | |
CN100470473C (en) | Computer software installation | |
CN111190604B (en) | Android application memory confusion method and device, electronic equipment and medium | |
EP3574425B1 (en) | Method to secure a software code | |
US20100095376A1 (en) | Software watermarking | |
WO2001050332A3 (en) | A method and system for processing complex numbers | |
SE9701894D0 (en) | Method and devics for computer systems | |
CN105095698A (en) | Program code obfuscation based upon recently executed program code | |
DE60211900D1 (en) | METHOD AND DEVICE FOR STORING SAFE DATA ENTRY AND DATA OUTPUT |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
MKEX | Expiry |
Effective date: 20180611 |