Looking for breakthrough ideas for innovation challenges? Try Patsnap Eureka!

Obfuscating computer program code

A computer program and computer technology, applied in the field of tampering protection of computer program code, can solve problems such as complex tasks, program code confusion, and difficulty in analyzing programs, and achieve the effects of improving complexity, efficient methods, and promoting recovery.

Active Publication Date: 2009-10-28
TELEFON AB LM ERICSSON (PUBL)
View PDF0 Cites 18 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

Therefore, it does not significantly complicate the task of determining the overall program structure and building the call graph
[0016] Therefore, there remains the general problem of providing an efficient method of obfuscating program code to make it more difficult to analyze the program's call graph (e.g., to identify the overall program structure)

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Obfuscating computer program code
  • Obfuscating computer program code
  • Obfuscating computer program code

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0075] figure 1 A schematic block diagram showing an example of a process for tampering protection of program code. In particular, figure 1 Illustrates the workflow when building software components.

[0076] The process receives source code 101. Typically, the source code 101 uses a computer program in which a programmer has already written, usually in the form of a formal programming language such as C, C++, Java, etc. The source code can be automatically compiled by a compiler into object code or machine code or executed by an interpreter. The source code 101 may be represented as one or more text documents, or as any other suitable digital representation. Alternatively, the tamper protection process may receive different types of input representations in which function calls can be recognized, such as object codes.

[0077] The source code 101 is fed into the parser module 103. The parser module parses the source code and identifies one or more function calls in the source ...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

PUM

No PUM Login to View More

Abstract

A computer-implemented method of tamper-protecting a computer program, the method comprising: processing an input representation of the computer program to identify a function call for causing a data processing system to continue execution of the computer program at a predetermined entry point memory address when said computer program is executed by a data processing system; replacing the identified function call with a modified function call, wherein the modified function call includes an algebraic expression for causing the data processing system to compute the entry point memory address when said computer program is executed by the data processing system.

Description

Technical field [0001] The present invention relates to tamper-protection of computer program code (for example, source code or object code). More specifically, the present invention relates to tamper protection by obfuscation of computer program code, especially by obfuscation of the call graph of computer program code. Background technique [0002] Software tampering is an attack with the following purpose: to change the operation of a piece of software in order to bring illegal benefits to the attacker. The purpose of tampering can be to avoid copyright protection or security mechanisms, extract secret or copyrighted materials, introduce malicious code such as computer viruses, and so on. [0003] In many cases, the illegal benefits will cause considerable economic problems for software manufacturers. Therefore, it can be expected that attackers and software vendors will make great efforts to break and improve the protection mechanism against software tampering. In the context...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

Application Information

Patent Timeline
no application Login to View More
IPC IPC(8): G06F21/22G06F21/14
CPCG06F21/14
Inventor J·埃克B·约翰逊C·冯普拉滕
Owner TELEFON AB LM ERICSSON (PUBL)
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Patsnap Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Patsnap Eureka Blog
Learn More
PatSnap group products