Affordable Access

Access to the full text

PudgyTurtle: Using Keystream to Encode and Encrypt

Authors
  • August, David A.1
  • Smith, Anne C.2
  • 1 MGH-DACCPM / GRJ 444, 55 Fruit St., Boston, MA, 02114, USA , Boston (United States)
  • 2 University of Arizona, Tucson, AZ, 85724, USA , Tucson (United States)
Type
Published Article
Journal
SN Computer Science
Publisher
Springer Singapore
Publication Date
Jul 04, 2020
Volume
1
Issue
4
Identifiers
DOI: 10.1007/s42979-020-00221-z
Source
Springer Nature
Keywords
License
Green

Abstract

Stream cipher encryption works by modulo-2 adding plaintext bits to keystream bits, which are in turn produced by successively updating a finite-state machine initialized to a secret starting state. PudgyTurtle is a way to encode the plaintext in a keystream-dependent manner before encryption. Since it can use keystream from any stream cipher, PudgyTurtle functions somewhat like an encryption mode. The process begins by generating successive 4-bit groups of keystream (‘nibbles’) until one of them matches the current plaintext nibble to within one bit. The number of keystream nibbles required, as well as the nearness of this match, is then encoded into a variable-length codeword. Finally, this codeword is encrypted by modulo-2 addition to an equal amount of keystream. Compared to normal binary-additive stream ciphers, this process is less efficient (i.e., more time is required to generate extra keystream nibbles, and more space is needed for the codewords than for the plaintext). However, with this cost comes a benefit: PudgyTurtle resists time-memory tradeoff attacks better than standard stream encryption.

Report this publication

Statistics

Seen <100 times