Hardware Reverse Engineering
At the most basic level, hardware reverse engineering is performing a product teardown to see how it works. The teardown can start with the dismantling the product into its individual components. Bill of material (BOM) can be generated based on the result. If the sough-after information is embedded in a PCB board, investigation of the board-level circuitry may be necessary. If design of interest is embedded inside an IC (Integrated Circuti) chip or an ASIC (Application Specific IC), then the task is much more complicated and requires chip-level investigations. GHB Intellect maintains the sought-after ability to investigate ICs (analog, digital, mixed signal) as well as their packaging. This is done in order to extract and analyze the embedded circuitry, or to gain insight on their manufacturing techniques. It typically involves decapping, cross-sectioning and high resolution SEM/TEM photography of the chip. If need be, it could also involve circuit extraction in all layers. All of the connections between the layers (vias) must be accounted for in order to build an accurate layout. The result of this work is compiled into a detailed circuit diagram.
After completion of the circuit diagram, our experts review the extracted circuits for quality assurance. All corrections and revisions are then made as necessary. Our experts then analyze the circuit and provide the required output in the context of the project at hand (IP infringement detection, design recovery, second sourcing, etc.)
We can also produce 3-D X-ray of manufactured parts or integrated circuit components. In these cases, we utilize a coordinate measuring machine (CMM) to measure the part. This produces a 3-D wire frame image that can be dimensioned for further inspection of intellectual property use.
We have extensive experience in determining how to cost-consciously approach specific engineering problems. This enhances our ability to keep the cost of such reverse engineering to a minimum while continuing to provide the utmost reliability to our clients.
In most cases, hardware reverse engineering requires an incredible amount of expertise and therefore must be performed by experts who have experience in efficiently performing the analyses. Otherwise, it can be quite expensive and the results may be unreliable. Read on about hardware reverse engineering examples.
Software & Firmware Reverse Engineering
Software and firmware source code reverse engineering is another area in which GHB Intellect specializes. Software typically refers to higher-layer program typically run in microprocessors and CPUs. Firmware is a form of software that is inside an embedded and specialized processor that controls a system. Nearly every embedded electronic system includes some type of firmware code that is responsible for its control.
Software and firmware reverse engineering can refer to two main tasks, depending on the requirements of the project. First, access to the software/firmware code may need to be obtained, when the code is not readily available. This is commonly referred to as Code Extraction. Second, once the code is extracted, it needs to be interpreted to determine the underlying algorithms, formulas, protocols, etc. This sometimes is referred to as Code Review.
Sometimes, only the binary/machine code is accessible/available for a product. In such cases, the binary code needs to be disassembled to recover the original firmware or software. To disassemble a program, a software reverse engineer must choose the right tools for the desired outcome. The hexadecimal dumper is commonly used to display the embedded firmware in hexadecimal format. The disassembler is another tool that reads the binary code and presents the instructions in text form. However, a debugger is usually needed to compliment the disassembler because of its inability to separate instructions from data.
Our capabilities include accessing the software code at any layer, disassembling it, and then analyzing it as needed. This allows GHB Intellect to quickly and successfully detect any usage of specified intellectual property, which may be useful in an infringement litigation, But it is also helpful in non-litigation settings, for example:
- To recover lost or outdated source code.
- To understand, debug, and/or improve the functionality of an embedded program when original design documents are lost.
- To determine if unauthorized content is included in a program.
- To be able to port a program from one microprocessor to another when the original source code is lost.
Most software licenses specifically prohibit reverse engineering for the purpose of duplicating programs. These legal details are important in determining if undertaking the reverse engineering process is prudent.
Process Reverse Engineering
Systems, Networks & Protocol Reverse Engineering
Reverse Engineering Requires Overlapping Skill-sets
As mentioned above, there are many reasons to reverse engineer a product and many ways to do so. Hardware, software, process, system/network reverse engineering is an increasingly valuable area of expertise due to the intellectual property evidence that can be obtained in the process.
In a time of increasing capabilities and affordability, design engineers are able to create new products more quickly than ever before. It is important for reverse engineers to understand the complexities surrounding design engineering as well as reverse engineering.
Reverse engineering expertise in both software and hardware domains is especially necessary when the intellectual property of interest overlaps both areas, as is often the case with high-tech systems. Having highly experienced experts in both areas allows us to tackle such cases proficiently. Moreover, the project manager for the case makes sure that the various experts working on a project are well-coordinated and the final results and reports meet our stringent quality and consistency requirements. Our catalog of expert profiles is continuously expanding, and you can view some of their expertise areas in our expert profiles page.
GHB Intellect is a full-service intellectual property consulting and engineering services firm. With a growing cadre of hundreds of industry-seasoned experts & professionals, as well as access to full suites of design and testing equipment, we specialize in high-tech, science, and innovation.