arrow
返回

Java decompiler diversity and its application to meta-decompilation

delete2020-10-01
delete9
delete
OA
AI
N
Nicolas Harrand *
C
César Soto-Valero
M
Martin Monperrus
B
Benoît Baudry
DOI:10.1016/j.jss.2020.110645delete
delete原文链接
delete分享
delete收藏
查看原文
摘要

摘要

En 中文
During compilation from Java source code to bytecode, some information is irreversibly lost. In other words, compilation and decompilation of Java code is not symmetric. Consequently, decompilation, which aims at producing source code from bytecode, relies on strategies to reconstruct the information that has been lost. Different Java decompilers use distinct strategies to achieve proper decompilation. In this work, we hypothesize that the diverse ways in which bytecode can be decompiled has a direct impact on the quality of the source code produced by decompilers. In this paper, we assess the strategies of eight Java decompilers with respect to three quality indicators: syntactic correctness, syntactic distortion and semantic equivalence modulo inputs. Our results show that no single modern decompiler is able to correctly handle the variety of bytecode structures coming from real-world programs. The highest ranking decompiler in this study produces syntactically correct, and semantically equivalent code output for 84%, respectively 78%, of the classes in our dataset. Our results demonstrate that each decompiler correctly handles a different set of bytecode classes. We propose a new decompiler called Arlecchino that leverages the diversity of existing decompilers. To do so, we merge partial decompilation into a new one based on compilation errors. Arlecchino handles 37.6% of bytecode classes that were previously handled by no decompiler. We publish the sources of this new bytecode decompiler. (C) 2020 Published by Elsevier Inc.
Keyword:
Java bytecode
Decompilation
Reverse engineering
Source code analysis
AI总结

AI总结

对已上传原文的论文进行重点信息的提取,主要内容包括:简要概述、研究摘要、背景介绍、关键亮点、图文解析、展望与总结。

期刊

Journal of Systems and Software 封面图
Journal of Systems and Software
IF:
4.1
论文数:
5.5K
被引数:
8.4K

机构

R
Royal Institute of Technology
学者数:
1.8W
论文数: 1.8W
被引数: 25
引用论文

引用论文

Genomic structure and sequence of a human homologue (NTHL1/NTH1) of Escherichia coli endonuclease III with those of the adjacent parts of TSC2 and SLC9A3R2 genes
errGene
IF0
err1998-11-01
err0
PREAI
errKotoe Imai; Altaf H Sarker; Kosuke Akiyama; Shogo Ikeda; Ming Yao; Ken Tsutsui; Toshikiyo Shohmori; Shuji Seki
err分享
err收藏