Přístupnostní navigace
E-application
Search Search Close
Publication detail
KŘOUSTEK, J.
Original Title
Analýza a převod kódů do vyššího programovacího jazyka
English Title
Code Analysis and Transformation To a High-Level Language
Type
article in a collection out of WoS and Scopus
Language
Czech
Original Abstract
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í.
English abstract
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.
Keywords
Reverzní inženýrství, zpětný překlad, překladač, dekompilátor, disassembler, assembler, Lissom, ISAC, LLVM IR
Key words in English
Reverse engineering, recompilation, compiler, decompiler, disassembler, assembler, Lissom, ISAC, LLVM IR
Authors
RIV year
2009
Released
23. 4. 2009
Publisher
Vysoké učení technické v Brně
Location
Brno
ISBN
978-80-214-3868-2
Book
Proceedings of the 15th Conference STUDENT EEICT 2009
Pages from
196
Pages to
198
Pages count
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" }