English
Related papers

Related papers: An Obfuscating C Compiler for Encrypted Computing

200 papers

Encrypted computing is an emerging technology based on a processor that `works encrypted', taking encrypted inputs to encrypted outputs while data remains in encrypted form throughout. It aims to secure user data against possible insider…

Cryptography and Security · Computer Science 2019-02-19 Peter T. Breuer

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

An `obfuscation' for encrypted computing is quantified exactly here, leading to an argument that security against polynomial-time attacks has been achieved for user data via the deliberately `chaotic' compilation required for security…

Cryptography and Security · Computer Science 2019-04-30 Peter T. Breuer

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

Protecting source code against reverse engineering and theft is an important problem. The goal is to carry out computations using confidential algorithms on an untrusted party while ensuring confidentiality of algorithms. This problem has…

Cryptography and Security · Computer Science 2016-12-13 Johannes Schneider , Thomas Locher

Code obfuscation is a popular approach to turn program comprehension and analysis harder, with the aim of mitigating threats related to malicious reverse engineering and code tampering. However, programming languages that compile to high…

Software Engineering · Computer Science 2019-01-16 Davide Pizzolotto , Mariano Ceccato

Hardware aliasing occurs when the same logical address sporadically accesses different physical memory locations and is a problem encountered by systems programmers (the opposite, software aliasing, when different addresses access the same…

Cryptography and Security · Computer Science 2019-01-31 Peter T. Breuer

Obfuscating compilers protect a software by obscuring its meaning and impeding the reconstruction of its original source code. The typical concern when defining such compilers is their robustness against reverse engineering and the…

Programming Languages · Computer Science 2020-03-13 Matteo Busi , Pierpaolo Degano , Letterio Galletta

This paper proposes an idea of data computing in the covert domain (DCCD). We show that with information hiding some data computing tasks can be executed beneath the covers like images, audios, random data, etc. In the proposed framework, a…

Cryptography and Security · Computer Science 2020-02-18 Zhenxing Qian , Zichi Wang , Xinpeng Zhang

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

We introduce a new approach to computation on encrypted data -- Encrypted Operator Computing (EOC) -- as an alternative to Fully Homomorphic Encryption (FHE). Given a plaintext vector $|{x}\rangle$, $x\in \{0,1\}^n$, and a function $F(x)$…

Cryptography and Security · Computer Science 2022-11-14 Claudio Chamon , Jonathan Jakes-Schauer , Eduardo R. Mucciolo , Andrei E. Ruckenstein

In this paper, we introduce Continuation Passing C (CPC), a programming language for concurrent systems in which native and cooperative threads are unified and presented to the programmer as a single abstraction. The CPC compiler uses a…

Programming Languages · Computer Science 2012-11-15 Gabriel Kerneis , Juliusz Chroboczek

Computation offloading (often to external computing resources over a network) has become a necessity for modern applications. At the same time, the proliferation of machine learning techniques has empowered malicious actors to use such…

Cryptography and Security · Computer Science 2023-05-16 Md Washik Al Azad , Shifat Sarwar , Sifat Ut Taki , Spyridon Mastorakis

Following a sequence of hardware designs for a fully homomorphic crypto-processor - a general purpose processor that natively runs encrypted machine code on encrypted data in registers and memory, resulting in encrypted machine states -…

Cryptography and Security · Computer Science 2018-09-06 Peter Breuer , Jonathan Bowen

In cryptography, encryption is the process of obscuring information to make it unreadable without special knowledge. This is usually done for secrecy, and typically for confidential communications. Encryption can also be used for…

Category Theory · Mathematics 2024-04-15 Kostas Zotos , Andreas Litke

Compilers are used to run programs that are written in a range of designs from text to executable formats. With the advent of the internet, studies related to the development of cloud based compilers are being carried out. There is a…

Programming Languages · Computer Science 2016-05-09 Ramkumar Lakshminarayanan , Balaji Dhanasekaran , Ben George Ephre

This paper describes a C code generator for ACL2 that recognizes ACL2 representations of C constructs, according to a shallow embedding of C in ACL2, and translates those representations to the represented C constructs. The code generator…

Logic in Computer Science · Computer Science 2022-05-25 Alessandro Coglio

Undefined behavior in C often causes devastating security vulnerabilities. One practical mitigation is compartmentalization, which allows developers to structure large programs into mutually distrustful compartments with clearly specified…

We ask whether two or more images of arithmetic may inhabit the same space via different encodings. The answers have significance for a class of processor design that does all its computation in an encrypted form, without ever performing…

Cryptography and Security · Computer Science 2013-06-04 Peter T. Breuer , Jonathan P. Bowen

In software reverse engineering, decompilation is the process of recovering source code from binary files. Decompilers are used when it is necessary to understand or analyze software for which the source code is not available. Although…

Software Engineering · Computer Science 2021-02-25 Javier Escalada , Ted Scully , Francisco Ortin
‹ Prev 1 2 3 10 Next ›