Attacks and Defenses for Single-Stage Residue Number System PRNGs

Abstract

This paper explores the security of a single-stage residue number system (RNS) pseudorandom number generator (PRNG), which has previously been shown to provide extremely high-quality outputs when evaluated through available RNG statistical test suites or in using Shannon and single-stage Kolmogorov entropy metrics. In contrast, rather than blindly performing statistical analyses on the outputs of the single-stage RNS PRNG, this paper provides both white box and black box analyses that facilitate reverse engineering of the underlying RNS number generation algorithm to obtain the residues, or equivalently key, of the RNS algorithm. We develop and demonstrate a conditional entropy analysis that permits extraction of the key given a priori knowledge of state transitions as well as reverse engineering of the RNS PRNG algorithm and parameters (but not the key) in problems where the multiplicative RNS characteristic is too large to obtain a priori state transitions. We then discuss multiple defenses and perturbations for the RNS system that fool the original attack algorithm, including deliberate noise injection and code hopping. We present a modification to the algorithm that accounts for deliberate noise, but rapidly increases the search space and complexity. Lastly, we discuss memory requirements and time required for the attacker and defender to maintain these defenses.

Document Details

Document Type
Pub Defense Publication
Publication Date
Jun 25, 2021
Source ID
10.3390/iot2030020

Entities

People

  • Alan J. Michaels
  • Amy Vennos
  • Kiernan George

Organizations

  • Office of Naval Research

Tags

Fields of Study

  • Computer science

Readers

  • Computer Programming and Software Development.
  • Computer Vision.

Technology Areas

  • Space