English
Related papers

Related papers: When Coding Style Survives Compilation: De-anonymi…

200 papers

A common tool used by security professionals for reverse-engineering binaries found in the wild is the decompiler. A decompiler attempts to reverse compilation, transforming a binary to a higher-level language such as C. High-level…

Software Engineering · Computer Science 2021-08-17 Qibin Chen , Jeremy Lacomis , Edward J. Schwartz , Claire Le Goues , Graham Neubig , Bogdan Vasilescu

When implementing secure software, developers must ensure certain requirements, such as the erasure of secret data after its use and execution in real time. Such requirements are not explicitly captured by the C language and could…

Cryptography and Security · Computer Science 2019-07-08 A. P. Shivarpatna Venkatesh , A. Bhat Handadi , M. Mory

The binary executable format is the standard method for distributing and executing software. Yet, it is also as opaque a representation of software as can be. If the binary format were augmented with metadata that provides security-relevant…

Cryptography and Security · Computer Science 2026-04-22 Daniel Engel , Freek Verbeek , Pranav Kumar , Binoy Ravindran

Source code authorship attribution is important in software forensics, plagiarism detection, and protecting software patch integrity. Existing techniques often rely on supervised machine learning, which struggles with generalization across…

Software Engineering · Computer Science 2025-01-15 Soohyeon Choi , Yong Kiam Tan , Mark Huasong Meng , Mohamed Ragab , Soumik Mondal , David Mohaisen , Khin Mi Mi Aung

In software development, the identification of source code file experts is an important task. Identifying these experts helps to improve software maintenance and evolution activities, such as developing new features, code reviews, and bug…

Software Engineering · Computer Science 2022-08-17 Otávio Cury , Guilherme Avelino , Pedro Santos Neto , Ricardo Britto , Marco Túlio Valente

Obfuscation is the action of making something unintelligible. In software development, this action can be applied to source code or binary applications. The aim of this dissertation was to implement a tool for the obfuscation of C and C++…

Programming Languages · Computer Science 2020-03-10 Dominik Picheta

Recently, a diverse set of decoding and reranking procedures have been shown effective for LLM-based code generation. However, a comprehensive framework that links and experimentally compares these methods is missing. We address this by…

Computation and Language · Computer Science 2024-10-17 Haau-Sing Li , Patrick Fernandes , Iryna Gurevych , André F. T. Martins

WebAssembly is a low-level bytecode language designed for client-side execution in web browsers. The need for decompilation techniques that recover high-level source code from WASM binaries has grown as WASM continues to gain widespread…

Software Engineering · Computer Science 2024-11-05 Wei-Cheng Wu , Yutian Yan , Hallgrimur David Egilsson , David Park , Steven Chan , Christophe Hauser , Weihang Wang

Verifying that a compiled binary originates from its claimed source code is a fundamental security requirement, called source code provenance. Achieving verifiable source code provenance in practice remains challenging. The most popular…

Software Engineering · Computer Science 2026-02-13 Javier Ron , Martin Monperrus

Components of machine learning systems are not (yet) perceived as security hotspots. Secure coding practices, such as ensuring that no execution paths depend on confidential inputs, have not yet been adopted by ML developers. We initiate…

Cryptography and Security · Computer Science 2020-11-04 Zhen Sun , Roei Schuster , Vitaly Shmatikov

Decompilation is the procedure of transforming binary programs into a high-level representation, such as source code, for human analysts to examine. While modern decompilers can reconstruct and recover much information that is discarded…

Machine Learning · Computer Science 2021-03-25 Pratyay Banerjee , Kuntal Kumar Pal , Fish Wang , Chitta Baral

Data sharing between different organizations is an essential process in today's connected world. However, recently there were many concerns about data sharing as sharing sensitive information can jeopardize users' privacy. To preserve the…

Computer Science and Game Theory · Computer Science 2021-02-01 Abdelrahman Eldosouky , Tapadhir Das , Anuraag Kotra , Shamik Sengupta

We address the problem of automatic decompilation, converting a program in low-level representation back to a higher-level human-readable programming language. The problem of decompilation is extremely important for security researchers.…

Programming Languages · Computer Science 2019-05-22 Omer Katz , Yuval Olshaker , Yoav Goldberg , Eran Yahav

Recovering class inheritance from C++ binaries has several security benefits including problems such as decompilation and program hardening. Thanks to the optimization guidelines prescribed by the C++ standard, commercial C++ binaries tend…

Cryptography and Security · Computer Science 2019-02-19 Rukayat Ayomide Erinfolami , Aravind Prakash

Data anonymization is an approach to privacy-preserving data release aimed at preventing participants reidentification, and it is an important alternative to differential privacy in applications that cannot tolerate noisy data. Existing…

Data Structures and Algorithms · Computer Science 2022-01-31 Gecia Bravo-Hermsdorff , Robert Busa-Fekete , Lee M. Gunderson , Andrés Munõz Medina , Umar Syed

Security experts reverse engineer (decompile) binary code to identify critical security vulnerabilities. The limited access to source code in vital systems - such as firmware, drivers, and proprietary software used in Critical…

Cryptography and Security · Computer Science 2024-11-08 Dylan Manuel , Nafis Tanveer Islam , Joseph Khoury , Ana Nunez , Elias Bou-Harb , Peyman Najafirad

Binary similarity analysis determines if two binary executables are from the same source program. Existing techniques leverage static and dynamic program features and may utilize advanced Deep Learning techniques. Although they have…

Software Engineering · Computer Science 2023-08-31 Xiangzhe Xu , Zhou Xuan , Shiwei Feng , Siyuan Cheng , Yapeng Ye , Qingkai Shi , Guanhong Tao , Le Yu , Zhuo Zhang , Xiangyu Zhang

Motivated by the amount of code that goes unidentified on the web, we introduce a practical method for algorithmically identifying the programming language of source code. Our work is based on supervised learning and intelligent statistical…

Machine Learning · Computer Science 2011-11-10 David Klein , Kyle Murray , Simon Weber

Attribute-based methods, such as attribute-based access control and attribute-based encryption, make decisions based on attributes possessed by a subject rather than the subject's identity. While this allows for anonymous authorization --…

Cryptography and Security · Computer Science 2023-10-10 Erin Lanus , Charles J. Colbourn , Gail-Joon Ahn

Reverse engineering binaries is required to understand and analyse programs for which the source code is unavailable. Decompilers can transform the largely unreadable binaries into a more readable source code-like representation. However,…

Cryptography and Security · Computer Science 2023-01-16 Ali Al-Kaswan , Toufique Ahmed , Maliheh Izadi , Anand Ashok Sawant , Premkumar Devanbu , Arie van Deursen