Detail publikace

Analýza a převod kódů do vyššího programovacího jazyka

KŘOUSTEK, J.

Originální název

Analýza a převod kódů do vyššího programovacího jazyka

Anglický název

Code Analysis and Transformation To a High-Level Language

Typ

článek ve sborníku mimo WoS a Scopus

Jazyk

čeština

Originální abstrakt

Práce popisuje metody a postupy používané k analýze a transformaci kódů. Obsahuje základní informace o vědním oboru reverzní inženýrství a jeho užití ve výpočetní technice i mimo ni. Hlavním cílem je vytvoření obecného zpětného překladače neboli dekompilátoru, tj. prostředku pro zpětný překlad z binární formy (případně jazyka symbolických instrukcí) do vyššího programovacího jazyka. Zmíněná činnost je silně závislá na konkrétní instrukční sadě a architektuře procesoru. Tento problém je řešen pomocí popisu sémantiky jednotlivých instrukcí jazykem navrženým pro tento účel. Výstupem je program napsaný ve vyšším programovacím jazyku, funkčně ekvivalentní vstupu. Program je tedy schopen pracovat s jakoukoliv instrukční sadou a kód v ní napsaný pak převést do zvoleného vyššího programovacího jazyku. Obecný dekompilátor je zcela nový pojem a pro jeho vytvoření byly autorem navrženy doposud nepublikované techniky z oblastí teorie překladačů a optimalizací.

Anglický abstrakt

Primary objective of this thesis is a construction of a generic decompiler, i.e. tool that can recompile from any binary form to a chosen high level language. Output must be function-ally equivalent to the input. Process of decompilation is highly dependent on the processor architecture. This problem is solved with description of semantic of each instruction by a special language designed for this use. This proposal is implemented in practice as a part of project Lissom. Generic decompiler is completely new idea. The thesis contains entirely new techniques from theory of compilers and optimizations made by the author.

Klíčová slova

Reverzní inženýrství, zpětný překlad, překladač, dekompilátor, disassembler, assembler, Lissom, ISAC, LLVM IR

Klíčová slova v angličtině

Reverse engineering, recompilation, compiler, decompiler, disassembler, assembler, Lissom, ISAC, LLVM IR

Autoři

KŘOUSTEK, J.

Rok RIV

2009

Vydáno

23. 4. 2009

Nakladatel

Vysoké učení technické v Brně

Místo

Brno

ISBN

978-80-214-3868-2

Kniha

Proceedings of the 15th Conference STUDENT EEICT 2009

Strany od

196

Strany do

198

Strany počet

3

BibTex

@inproceedings{BUT32565,
  author="Jakub {Křoustek}",
  title="Analýza a převod kódů do vyššího programovacího jazyka",
  booktitle="Proceedings of the 15th Conference STUDENT EEICT 2009",
  year="2009",
  pages="196--198",
  publisher="Vysoké učení technické v Brně",
  address="Brno",
  isbn="978-80-214-3868-2"
}