Applying Formal Methods to an Information Security Device: An Experience Report

Abstract

SCR (Software Cost Reduction) is a formal method for specifying and analyzing system requirements that has previously been applied to control systems. This paper describes a case study in which the SCR method was used to specify and analyze a different class of system, a cryptographic system called CD, which must satisfy a large set of security properties. The paper describes how a suite of tools supporting SCR a consistency checker, simulator, model checker, invariant generator, theorem prover, and validity checker were used to detect errors in the SCR specification of CD and to verify that the specification satisfies seven security properties. The paper also describes issues of concern to software developers about formal methods e.g., ease of use, cost-effectiveness, scalability, how to translate a prose specification into a formal notation, and what process to follow in applying a formal method|and discusses these issues based on our experience with CD. Also described are some unexpected results of our case study.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Nov 01, 1999
Accession Number
ADA465158

Entities

People

  • Constance Heitmeyer
  • James Kirby Jr.
  • Myla M. Archer

Organizations

  • United States Naval Research Laboratory

Tags

Communities of Interest

  • Biomedical
  • Cyber
  • Energy and Power Technologies
  • Ground and Sea Platforms
  • Materials and Manufacturing Processes
  • Weapons Technologies

DTIC Thesaurus Topics

  • Abstracts
  • Algorithms
  • Automata
  • Automatic
  • Case Studies
  • Collision Avoidance
  • Collision Avoidance Systems
  • Computer Programs
  • Control Systems
  • Information Security
  • Military Research
  • Security
  • Simulations
  • Simulators
  • Software Development
  • Software Testing
  • Test Methods

Fields of Study

  • Computer science

Readers

  • Mathematical Modeling and Probability Theory.
  • Parallel and Distributed Computing.
  • Systems Analysis and Design