  A block cipher is intended to be computationally indistinguishable from a
random permutation of appropriate domain and range. But what are the properties
of a random permutation? By the aid of exponential and ordinary generating
functions, we derive a series of collolaries of interest to the cryptographic
community. These follow from the Strong Cycle Structure Theorem of
permutations, and are useful in rendering rigorous two attacks on Keeloq, a
block cipher in wide-spread use. These attacks formerly had heuristic
approximations of their probability of success. Moreover, we delineate an
attack against the (roughly) millionth-fold iteration of a random permutation.
In particular, we create a distinguishing attack, whereby the iteration of a
cipher a number of times equal to a particularly chosen highly-composite number
is breakable, but merely one fewer round is considerably more secure. We then
extend this to a key-recovery attack in a "Triple-DES" style construction, but
using AES-256 and iterating the middle cipher (roughly) a million-fold. It is
hoped that these results will showcase the utility of exponential and ordinary
generating functions and will encourage their use in cryptanalytic research.
