English
Related papers

Related papers: Obfuscating Java Programs by Translating Selected …

200 papers

We present an efficient and expressive tool for the instrumentation of Java programs at the bytecode-level. BISM (Bytecode-Level Instrumentation for Software Monitoring) is a light-weight Java bytecode instrumentation tool that features an…

Programming Languages · Computer Science 2021-06-04 Chukri Soueidi , Marius Monnier , Ali Kassem , Yliès Falcone

Software debloating techniques are applied to craft a specialized version of the program based on the user's requirements and remove irrelevant code accordingly. The debloated programs presumably maintain better performance and reduce the…

Cryptography and Security · Computer Science 2023-09-18 Do-Men Su , Mohannad Alhanahnah

Esoteric programming languages are challenging to learn, but their unusual features and constraints may serve to improve programming ability. From languages designed to be intentionally obtuse (e.g. INTERCAL) to others targeting artistic…

Programming Languages · Computer Science 2025-09-03 Jeremy Singer , Steve Draper

Obfuscation is a technique for protecting hardware intellectual property (IP) blocks against reverse engineering, piracy, and malicious modifications. Current obfuscation efforts mainly focus on functional locking of a design to prevent…

Cryptography and Security · Computer Science 2018-10-01 Prabuddha Chakraborty , Jonathan Cruz , Swarup Bhunia

Memory corruption vulnerabilities often enable attackers to take control of a target system by overwriting control-flow relevant data (such as return addresses and function pointers), which are potentially stored in close proximity of…

Cryptography and Security · Computer Science 2019-09-10 Marie-Therese Walter , David Pfaff , Stefan Nürnberger , Michael Backes

The implementations of most hardened cryptographic libraries use defensive programming techniques for side-channel resistance. These techniques are usually specified as guidelines to developers on specific code patterns to use or avoid.…

Cryptography and Security · Computer Science 2025-09-03 Moritz Schneider , Daniele Lain , Ivan Puddu , Nicolas Dutly , Srdjan Capkun

Recently Java programming environment has become so popular. Java programming language is a language that is designed to be portable enough to be executed in wide range of computers ranging from cell phones to supercomputers. Computer…

Software Engineering · Computer Science 2011-10-18 Rahul Saha , Dr. G. Geetha

Language models (LMs) have become a staple of the code-writing toolbox. Their pre-training recipe has, however, remained stagnant over recent years, barring the occasional changes in data sourcing and filtering strategies. In particular,…

Computation and Language · Computer Science 2025-04-02 Indraneil Paul , Haoyi Yang , Goran Glavaš , Kristian Kersting , Iryna Gurevych

Error-correcting codes and related combinatorial constructs play an important role in several recent (and old) results in computational complexity theory. In this paper we survey results on locally-testable and locally-decodable…

Computational Complexity · Computer Science 2007-07-13 Luca Trevisan

Software protection aims at safeguarding assets embedded in software by preventing and delaying reverse engineering and tampering attacks. This paper presents an architecture and supporting tool flow to renew parts of native applications…

Cryptography and Security · Computer Science 2020-06-25 Bert Abrath , Bart Coppens , Jens Van den Broeck , Brecht Wyseur , Alessandro Cabutto , Paolo Falcarin , Bjorn De Sutter

Work on hate speech has made the consideration of rude and harmful examples in scientific publications inevitable. This raises various problems, such as whether or not to obscure profanities. While science must accurately disclose what it…

Computation and Language · Computer Science 2022-10-17 Debora Nozza , Dirk Hovy

Storage systems have a strong need for substantially improving their error correction capabilities, especially for long-term storage where the accumulating errors can exceed the decoding threshold of error-correcting codes (ECCs). In this…

Information Theory · Computer Science 2018-11-12 Pulakesh Upadhyaya , Anxiao , Jiang

When digital data are transmitted over a noisy channel, it is important to have a mechanism allowing recovery against a limited number of errors. Normally, a user string of 0's and 1's, called bits, is encoded by adding a number of…

Information Theory · Computer Science 2019-08-28 Mario Blaum

Side-channel attacks, which are capable of breaking secrecy via side-channel information, pose a growing threat to the implementation of cryptographic algorithms. Masking is an effective countermeasure against side-channel attacks by…

Cryptography and Security · Computer Science 2020-06-17 Pengfei Gao , Hongyi Xie , Fu Song , Taolue Chen

One of the most significant challenges in the field of software code auditing is the presence of vulnerabilities in software source code. Every year, more and more software flaws are discovered, either internally in proprietary code or…

Cryptography and Security · Computer Science 2023-06-16 Mst Shapna Akter , Hossain Shahriar , Juan Rodriguez Cardenas , Sheikh Iqbal Ahamed , Alfredo Cuzzocrea

Caching is popular technique in content delivery networks that allows for reductions in transmission rates from the content-hosting server to the end users. Coded caching is a generalization of conventional caching that considers the…

Information Theory · Computer Science 2016-07-28 Li Tang , Aditya Ramamoorthy

Binary code similarity detection is a core task in reverse engineering. It supports malware analysis and vulnerability discovery by identifying semantically similar code in different contexts. Modern methods have progressed from manually…

Artificial Intelligence · Computer Science 2025-09-30 Charles E. Gagnon , Steven H. H. Ding , Philippe Charland , Benjamin C. M. Fung

This paper first describes an `obfuscating' compiler technology developed for encrypted computing, then examines if the trivial case without encryption produces much-sought indistinguishability obfuscation.

Cryptography and Security · Computer Science 2018-11-30 Peter T. Breuer , Jonathan P. Bowen

Modern programming languages (e.g., Java and C#) provide features to separate error-handling code from regular code, seeking to enhance software comprehensibility and maintainability. Nevertheless, the way exception handling (EH) code is…

Software Engineering · Computer Science 2021-05-04 Luan P. Lima , Lincoln S. Rocha , Carla I. M. Bezerra , Matheus Paixao

Probabilistic programming languages are valuable because they allow domain experts to express probabilistic models and inference algorithms without worrying about irrelevant details. However, for decades there remained an important and…

Programming Languages · Computer Science 2019-07-03 Rajan Walia , Praveen Narayanan , Jacques Carette , Sam Tobin-Hochstadt , Chung-chieh Shan