Paper 2016/468

Chaos Machine: Different Approach to the Application and Significance of Numbers

Maciej A. Czyzewski

Abstract

In this paper we describe a theoretical model of \underline{chaos machine}, which combines the benefits of hash function and pseudo-random function, forming flexible \textit{one-way} \underline{push-pull interface}. It presents the idea to create a universal tool (design pattern) with modular design and customizable parameters, that can be applied where \textit{randomness} and \textit{sensitiveness} is needed (random oracle), and where appropriate construction determines case of application and selection of parameters provides preferred properties and security level. Machine can be used to implement many cryptographic primitives, including cryptographic hashes, message authentication codes and pseudo-random number generators. Additionally, document includes sample implementation of chaos machine named Naive Czyzewski Generator, abbreviated NCG, that passes all the Dieharder, NIST and TestU01 test sets. Algorithm was designed and evaluated to be a cryptographically strong, inasmuch as indistinguishable from a uniform random function. The generator was developed to work as cryptographically secure pseudo-random number generator, collision resistance hash function or a cryptographic module. One can target a given period length by choosing the appropriate space parameter, i.e., for a given parameter $m$, algorithm is claimed to have period between $2^{8m}$ to $2^{16m}$.

Metadata
Available format(s)
PDF
Publication info
Preprint. MINOR revision.
Keywords
number theorypseudo-randomnessone-way functionshash functions
Contact author(s)
mail @ maciejczyzewski me
History
2016-05-17: received
Short URL
https://ia.cr/2016/468
License
Creative Commons Attribution
CC BY

BibTeX

@misc{cryptoeprint:2016/468,
      author = {Maciej A.  Czyzewski},
      title = {Chaos Machine: Different Approach to the Application and Significance of Numbers},
      howpublished = {Cryptology ePrint Archive, Paper 2016/468},
      year = {2016},
      note = {\url{https://eprint.iacr.org/2016/468}},
      url = {https://eprint.iacr.org/2016/468}
}
Note: In order to protect the privacy of readers, eprint.iacr.org does not use cookies or embedded third party content.