A Tamper-Resistant Programming Language System

Abstract

An important and recurring security scenario involves the need to carry out trusted computations in the context of untrusted environments. It is shown how a tamper-resistant interpreter for a programming language -- currently Lisp 1.5 -- combined with the use of a secure co-processor can address this problem. This solution executes the interpreter on the secure co-processor while the code and data of the program reside in the larger memory of an associated untrusted host. This allows the co-processor to utilize the host's memory without fear of tampering even by a hostile host. This approach has several advantages, including ease of use, and the ability to provide tamper-resistance for any program that can be constructed using the language. The language approach enabled the development of two novel mechanisms for implementing tamper-resistance. These mechanisms provide alternatives to pure Merkle hash trees. Simulated relative performance of the various mechanisms is provided and shows the relative merits of each mechanism.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Jun 02, 2006
Accession Number
ADA449363

Entities

People

  • Dennis M. Heimbigner

Organizations

  • University of Colorado Boulder

Tags

Communities of Interest

  • Cyber

DTIC Thesaurus Topics

  • Accumulators
  • Algorithms
  • Cell Size
  • Colorado
  • Computations
  • Computer Languages
  • Computer Programming
  • Computer Science
  • Computers
  • Cryptography
  • Denial Of Service Attack
  • Detection
  • Information Operations
  • Language
  • Optimization
  • Programming Languages
  • Standards

Fields of Study

  • Computer science

Readers

  • Computational Linguistics
  • Cybersecurity.
  • Parallel and Distributed Computing.