home *** CD-ROM | disk | FTP | other *** search
-
- [ Permission to make this document available was obtained
- directly from Dorothy Denning. -- MODERATOR ]
-
-
- Skipjack Review
-
- Interim Report
-
- The SKIPJACK Algorithm
-
-
- Ernest F. Brickell, Sandia National Laboratories
- Dorothy E. Denning, Georgetown University
- Stephen T. Kent, BBN Communications Corporation
- David P. Maher, AT&T
- Walter Tuchman, Amperif Corporation
-
- July 28, 1993
-
- (copyright 1993)
-
-
- Executive Summary
-
- The objective of the SKIPJACK review was to provide a mechanism whereby
- persons outside the government could evaluate the strength of the
- classified encryption algorithm used in the escrowed encryption devices
- and publicly report their findings. Because SKIPJACK is but one
- component of a large, complex system, and because the security of
- communications encrypted with SKIPJACK depends on the security of the
- system as a whole, the review was extended to encompass other
- components of the system. The purpose of this Interim Report is to
- report on our evaluation of the SKIPJACK algorithm. A later Final
- Report will address the broader system issues.
-
- The results of our evaluation of the SKIPJACK algorithm are as
- follows:
-
- 1. Under an assumption that the cost of processing power is halved
- every eighteen months, it will be 36 years before the cost of
- breaking SKIPJACK by exhaustive search will be equal to the cost
- of breaking DES today. Thus, there is no significant risk that
- SKIPJACK will be broken by exhaustive search in the next 30-40
- years.
-
- 2. There is no significant risk that SKIPJACK can be broken through a
- shortcut method of attack.
-
- 3. While the internal structure of SKIPJACK must be classified in
- order to protect law enforcement and national security objectives,
- the strength of SKIPJACK against a cryptanalytic attack does not
- depend on the secrecy of the algorithm.
-
-
-
- 1. Background
-
- On April 16, the President announced a new technology initiative aimed
- at providing a high level of security for sensitive, unclassified
- communications, while enabling lawfully authorized intercepts of
- telecommunications by law enforcement officials for criminal
- investigations. The initiative includes several components:
-
- A classified encryption/decryption algorithm called "SKIPJACK."
-
- Tamper-resistant cryptographic devices (e.g., electronic chips),
- each of which contains SKIPJACK, classified control software, a
- device identification number, a family key used by law enforcement,
- and a device unique key that unlocks the session key used to
- encrypt a particular communication.
-
- A secure facility for generating device unique keys and programming
- the devices with the classified algorithms, identifiers, and keys.
-
- Two escrow agents that each hold a component of every device unique
- key. When combined, those two components form the device unique
- key.
-
- A law enforcement access field (LEAF), which enables an authorized
- law enforcement official to recover the session key. The LEAF is
- created by a device at the start of an encrypted communication and
- contains the session key encrypted under the device unique key
- together with the device identifier, all encrypted under the family
- key.
-
- LEAF decoders that allow an authorized law enforcement official to
- extract the device identifier and encrypted session key from an
- intercepted LEAF. The identifier is then sent to the escrow
- agents, who return the components of the corresponding device
- unique key. Once obtained, the components are used to reconstruct
- the device unique key, which is then used to decrypt the session
- key.
-
- This report reviews the security provided by the first component,
- namely the SKIPJACK algorithm. The review was performed pursuant to
- the President's direction that "respected experts from outside the
- government will be offered access to the confidential details of the
- algorithm to assess its capabilities and publicly report their
- finding." The Acting Director of the National Institute of Standards
- and Technology (NIST) sent letters of invitation to potential
- reviewers. The authors of this report accepted that invitation.
-
- We attended an initial meeting at the Institute for Defense Analyses
- Supercomputing Research Center (SRC) from June 21-23. At that meeting,
- the designer of SKIPJACK provided a complete, detailed description of
- the algorithm, the rationale for each feature, and the history of the
- design. The head of the NSA evaluation team described the evaluation
- process and its results. Other NSA staff briefed us on the LEAF
- structure and protocols for use, generation of device keys, protection
- of the devices against reverse engineering, and NSA's history in the
- design and evaluation of encryption methods contained in SKIPJACK.
- Additional NSA and NIST staff were present at the meeting to answer our
- questions and provide assistance. All staff members were forthcoming
- in providing us with requested information.
-
- At the June meeting, we agreed to integrate our individual evaluations
- into this joint report. We also agreed to reconvene at SRC from July
- 19-21 for further discussions and to complete a draft of the report.
- In the interim, we undertook independent tasks according to our
- individual interests and availability. Ernest Brickell specified a
- suite of tests for evaluating SKIPJACK. Dorothy Denning worked at NSA
- on the refinement and execution of these and other tests that took into
- account suggestions solicited from Professor Martin Hellman at Stanford
- University. NSA staff assisted with the programming and execution of
- these tests. Denning also analyzed the structure of SKIPJACK and its
- susceptibility to differential cryptanalysis. Stephen Kent visited NSA
- to explore in more detail how SKIPJACK compared with NSA encryption
- algorithms that he already knew and that were used to protect
- classified data. David Maher developed a risk assessment approach
- while continuing his ongoing work on the use of the encryption chip in
- the AT&T Telephone Security Device. Walter Tuchman investigated the
- anti-reverse engineering properties of the chips.
-
- We investigated more than just SKIPJACK because the security of
- communications encrypted with the escrowed encryption technology
- depends on the security provided by all the components of the
- initiative, including protection of the keys stored on the devices,
- protection of the key components stored with the escrow agents, the
- security provided by the LEAF and LEAF decoder, protection of keys
- after they have been transmitted to law enforcement under court order,
- and the resistance of the devices to reverse engineering. In addition,
- the success of the technology initiative depends on factors besides
- security, for example, performance of the chips. Because some
- components of the escrowed encryption system, particularly the key
- escrow system, are still under design, we decided to issue this Interim
- Report on the security of the SKIPJACK algorithm and to defer our Final
- Report until we could complete our evaluation of the system as a
- whole.
-
-
- 2. Overview of the SKIPJACK Algorithm
-
- SKIPJACK is a 64-bit "electronic codebook" algorithm that transforms a
- 64-bit input block into a 64-bit output block. The transformation is
- parameterized by an 80-bit key, and involves performing 32 steps or
- iterations of a complex, nonlinear function. The algorithm can be used
- in any one of the four operating modes defined in FIPS 81 for use with
- the Data Encryption Standard (DES).
-
- The SKIPJACK algorithm was developed by NSA and is classified SECRET.
- It is representative of a family of encryption algorithms developed in
- 1980 as part of the NSA suite of "Type I" algorithms, suitable for
- protecting all levels of classified data. The specific algorithm,
- SKIPJACK, is intended to be used with sensitive but unclassified
- information.
-
- The strength of any encryption algorithm depends on its ability to
- withstand an attack aimed at determining either the key or the
- unencrypted ("plaintext") communications. There are basically two
- types of attack, brute-force and shortcut.
-
-
- 3. Susceptibility to Brute Force Attack by Exhaustive Search
-
- In a brute-force attack (also called "exhaustive search"), the
- adversary essentially tries all possible keys until one is found that
- decrypts the intercepted communications into a known or meaningful
- plaintext message. The resources required to perform an exhaustive
- search depend on the length of the keys, since the number of possible
- keys is directly related to key length. In particular, a key of length
- N bits has 2^N possibilities. SKIPJACK uses 80-bit keys, which means
- there are 2^80 (approximately 10^24) or more than 1 trillion trillion
- possible keys.
-
- An implementation of SKIPJACK optimized for a single processor on the
- 8-processor Cray YMP performs about 89,000 encryptions per second. At
- that rate, it would take more than 400 billion years to try all keys.
- Assuming the use of all 8 processors and aggressive vectorization, the
- time would be reduced to about a billion years.
-
- A more speculative attack using a future, hypothetical, massively
- parallel machine with 100,000 RISC processors, each of which was
- capable of 100,000 encryptions per second, would still take about 4
- million years. The cost of such a machine might be on the order of $50
- million. In an even more speculative attack, a special purpose machine
- might be built using 1.2 billion $1 chips with a 1 GHz clock. If the
- algorithm could be pipelined so that one encryption step were performed
- per clock cycle, then the $1.2 billion machine could exhaust the key
- space in 1 year.
-
- Another way of looking at the problem is by comparing a brute force
- attack on SKIPJACK with one on DES, which uses 56-bit keys. Given that
- no one has demonstrated a capability for breaking DES, DES offers a
- reasonable benchmark. Since SKIPJACK keys are 24 bits longer than DES
- keys, there are 2^24 times more possibilities. Assuming that the cost
- of processing power is halved every eighteen months, then it will not
- be for another 24 * 1.5 = 36 years before the cost of breaking
- SKIPJACK is equal to the cost of breaking DES today. Given the lack of
- demonstrated capability for breaking DES, and the expectation that the
- situation will continue for at least several more years, one can
- reasonably expect that SKIPJACK will not be broken within the next
- 30-40 years.
-
- Conclusion 1: Under an assumption that the cost of processing power
- is halved every eighteen months, it will be 36 years before the cost of
- breaking SKIPJACK by exhaustive search will be equal to the cost of
- breaking DES today. Thus, there is no significant risk that SKIPJACK
- will be broken by exhaustive search in the next 30-40 years.
-
- 4. Susceptibility to Shortcut Attacks
-
- In a shortcut attack, the adversary exploits some property of the
- encryption algorithm that enables the key or plaintext to be determined
- in much less time than by exhaustive search. For example, the RSA
- public-key encryption method is attacked by factoring a public value
- that is the product of two secret primes into its primes.
-
- Most shortcut attacks use probabilistic or statistical methods that
- exploit a structural weakness, unintentional or intentional (i.e., a
- "trapdoor"), in the encryption algorithm. In order to determine
- whether such attacks are possible, it is necessary to thoroughly
- examine the structure of the algorithm and its statistical properties.
- In the time available for this review, it was not feasible to conduct
- an evaluation on the scale that NSA has conducted or that has been
- conducted on the DES. Such review would require many man-years of
- effort over a considerable time interval. Instead, we concentrated on
- reviewing NSA's design and evaluation process. In addition, we
- conducted several of our own tests.
-
- 4.1 NSA's Design and Evaluation Process
-
- SKIPJACK was designed using building blocks and techniques that date
- back more than forty years. Many of the techniques are related to work
- that was evaluated by some of the world's most accomplished and famous
- experts in combinatorics and abstract algebra. SKIPJACK's more
- immediate heritage dates to around 1980, and its initial design to
- 1987.
-
- SKIPJACK was designed to be evaluatable, and the design and evaluation
- approach was the same used with algorithms that protect the country's
- most sensitive classified information. The specific structures
- included in SKIPJACK have a long evaluation history, and the
- cryptographic properties of those structures had many prior years of
- intense study before the formal process began in 1987. Thus, an
- arsenal of tools and data was available. This arsenal was used by
- dozens of adversarial evaluators whose job was to break SKIPJACK. Many
- spent at least a full year working on the algorithm. Besides highly
- experienced evaluators, SKIPJACK was subjected to cryptanalysis by less
- experienced evaluators who were untainted by past approaches. All
- known methods of attacks were explored, including differential
- cryptanalysis. The goal was a design that did not allow a shortcut
- attack.
-
- The design underwent a sequence of iterations based on feedback from
- the evaluation process. These iterations eliminated properties which,
- even though they might not allow successful attack, were related to
- properties that could be indicative of vulnerabilities. The head of
- the NSA evaluation team confidently concluded "I believe that SKIPJACK
- can only be broken by brute force there is no better way."
-
- In summary, SKIPJACK is based on some of NSA's best technology.
- Considerable care went into its design and evaluation in accordance
- with the care given to algorithms that protect classified data.
-
- 4.2 Independent Analysis and Testing
-
- Our own analysis and testing increased our confidence in the strength
- of SKIPJACK and its resistance to attack.
-
- 4.2.1 Randomness and Correlation Tests
-
- A strong encryption algorithm will behave like a random function of the
- key and plaintext so that it is impossible to determine any of the key
- bits or plaintext bits from the ciphertext bits (except by exhaustive
- search). We ran two sets of tests aimed at determining whether
- SKIPJACK is a good pseudo random number generator. These tests were
- run on a Cray YMP at NSA. The results showed that SKIPJACK behaves
- like a random function and that ciphertext bits are not correlated with
- either key bits or plaintext bits. Appendix A gives more details.
-
- 4.2.2 Differential Cryptanalysis
-
- Differential cryptanalysis is a powerful method of attack that exploits
- structural properties in an encryption algorithm. The method involves
- analyzing the structure of the algorithm in order to determine the
- effect of particular differences in plaintext pairs on the differences
- of their corresponding ciphertext pairs, where the differences are
- represented by the exclusive-or of the pair. If it is possible to
- exploit these differential effects in order to determine a key in less
- time than with exhaustive search, an encryption algorithm is said to be
- susceptible to differential cryptanalysis. However, an actual attack
- using differential cryptanalysis may require substantially more chosen
- plaintext than can be practically acquired.
-
- We examined the internal structure of SKIPJACK to determine its
- susceptibility to differential cryptanalysis. We concluded it was not
- possible to perform an attack based on differential cryptanalysis in
- less time than with exhaustive search.
-
- 4.2.3 Weak Key Test
-
- Some algorithms have "weak keys" that might permit a shortcut
- solution. DES has a few weak keys, which follow from a pattern of
- symmetry in the algorithm. We saw no pattern of symmetry in the
- SKIPJACK algorithm which could lead to weak keys. We also
- experimentally tested the all "0" key (all 80 bits are "0") and the all
- "1" key to see if they were weak and found they were not.
-
- 4.2.4 Symmetry Under Complementation Test
-
- The DES satisfies the property that for a given plaintext-ciphertext
- pair and associated key, encryption of the one's complement of the
- plaintext with the one's complement of the key yields the one's
- complement of the ciphertext. This "complementation property" shortens
- an attack by exhaustive search by a factor of two since half the keys
- can be tested by computing complements in lieu of performing a more
- costly encryption. We tested SKIPJACK for this property and found that
- it did not hold.
-
- 4.2.5 Comparison with Classified Algorithms
-
- We compared the structure of SKIPJACK to that of NSA Type I algorithms
- used in current and near-future devices designed to protect classified
- data. This analysis was conducted with the close assistance of the
- cryptographer who developed SKIPJACK and included an in-depth
- discussion of design rationale for all of the algorithms involved.
- Based on this comparative, structural analysis of SKIPJACK against
- these other algorithms, and a detailed discussion of the similarities
- and differences between these algorithms, our confidence in the basic
- soundness of SKIPJACK was further increased.
-
- Conclusion 2: There is no significant risk that SKIPJACK can be broken
- through a shortcut method of attack.
-
-
- 5. Secrecy of the Algorithm
-
- The SKIPJACK algorithm is sensitive for several reasons. Disclosure of
- the algorithm would permit the construction of devices that fail to
- properly implement the LEAF, while still interoperating with legitimate
- SKIPJACK devices. Such devices would provide high quality
- cryptographic security without preserving the law enforcement access
- capability that distinguishes this cryptographic initiative.
- Additionally, the SKIPJACK algorithm is classified SECRET NOT
- RELEASABLE TO FOREIGN NATIONALS. This classification reflects the high
- quality of the algorithm, i.e., it incorporates design techniques that
- are representative of algorithms used to protect classified
- information. Disclosure of the algorithm would permit analysis that
- could result in discovery of these classified design techniques, and
- this would be detrimental to national security.
-
- However, while full exposure of the internal details of SKIPJACK would
- jeopardize law enforcement and national security objectives, it would
- not jeopardize the security of encrypted communications. This is
- because a shortcut attack is not feasible even with full knowledge of
- the algorithm. Indeed, our analysis of the susceptibility of SKIPJACK
- to a brute force or shortcut attack was based on the assumption that
- the algorithm was known.
-
- Conclusion 3: While the internal structure of SKIPJACK must be
- classified in order to protect law enforcement and national security
- objectives, the strength of SKIPJACK against a cryptanalytic attack
- does not depend on the secrecy of the algorithm.
-
- --------------------------------------------------------------------------
- LaTeX Appendix
- --------------
- \documentstyle{article}
- \textheight 8.25in
- \topmargin -.25in
- \textwidth 6.5in
- \oddsidemargin 0in
- \begin{document}
- \parskip .25in
- \large
- \raggedright
- \setcounter{page}{8}
- \centerline{\bf Appendix A}
-
- {\bf A.1 Cycle Structure Tests}
-
- The first set of tests examined the cycle structure of SKIPJACK. Fix
- a set of keys, $\cal K$, a plaintext, $m$, and a function $h\; : \;
- {\cal M} \longrightarrow {\cal K}$, where ${\cal M}$ is the set of all
- 64 bit messages. Let $f \; : \; {\cal K} \longrightarrow {\cal K}$ be
- defined as $f(k) = h ( SJ(k,m))$ (where $SJ(k,m)$ denotes the SKIPJACK
- encryption of plaintext $m$ with key $k$). Let $N = |\cal K|$. The
- expected cycle length of $f$ is $\sqrt{\pi N /8}$. We chose sets of
- $\cal K$ with $N \; = \; 2^{10}, 2^{16}, 2^{24}, 2^{32},
- 2^{40}, 2^{48}, 2^{56}$. For all of these $N$, the mean of the cycle
- lengths computed across all experiments was close to an expected
- relative error of
- $(1/\sqrt{j}$ for $j$ experiments) of the expected cycle length.
- We did not do this test with larger sets of keys because of the time
- constraints.
-
- \begin{center}
- \begin{tabular}{lrrrrr}
- $N$ & \# of exps & Mean cycle len & Expec cycle len &
- Rel Err & Expec rel err \\
- \hline
- $2^{10}$ & 5000 & 20.4 & 20.1 & .019 & .014 \\
- $2^{16}$ & 3000 & 164.7 & 160.4 & .027 & .018 \\
- $2^{24}$ & 2000 & 2576.6 & 2566.8 & .004 & .022 \\
- $2^{32}$ & 2000 & 40343.2 & 41068.6 & .018 & .022 \\
- $2^{40}$ & 1000 & 646604.9 & 657097.6 & .016 & .032 \\
- $2^{48}$ & 10 & 8,980,043 & 10,513,561 & .145 & .316 \\
- $2^{56}$ & 1 & 28,767,197 & 168,216,976 & .829 & 1 \\
- \end{tabular}
- \end{center}
-
- {\bf A.2 Statistical Randomness and Correlation Tests}
-
- The second set of tests examined whether there were any correlations
- between the input and output of SKIPJACK, or between a key and the
- output. We also looked for nonrandomness in functions of the form
- $SJ(k,m) \oplus SJ(k,m \oplus h)$ and functions of the form $SJ(k,m) \oplus
- SJ(k \oplus h , m)$ for all $h$ of Hamming weight 1 and 2 and for some
- randomly chosen $h$. All results were consistent with these functions
- behaving like random functions.
-
- Given a set of $N$ numbers of $k$-bits each, a chi-square test will
- test the hypothesis that this set of numbers was drawn (with
- replacement) from a uniform distribution on all of the $2^k$, $k$-bit
- numbers. We ran the tests using a 99\% confidence level. A truly
- random function would pass the test approximately 99\% of the time.
- The test is not appropriate when $N/2^k$ is too small, say $\leq 5$.
- Since it was infeasible to run the test for $k = 64$, we would pick 8
- bit positions, and generate a set of $N= 10,000$ numbers, and run the
- test on the $N$ numbers restricted to those 8 bit positions (thus
- $k=8$). In some of the tests, we selected the 8 bits from the output
- of the function we were testing, and in others, we selected 4 bits
- from the input and 4 from the output.
-
- Some of the tests were run on both the encryption and decryption
- functions of SKIPJACK. The notation $SJ^{-1}(k,m)$ will be used to
- denote the decryption function of SKIPJACK with key $k$ on message
- $m$.
-
- {\bf Test 1: Randomness test on output. } In a single test: Fix $k$,
- fix mask of 8 output bits, select 10,000 random messages, run
- chi-square on the 10,000 outputs restricted to the mask of 8 output
- bits. Repeat this single test for 200 different values of $k$ and 50
- different masks, for a total of 10,000 chi-square tests. We found
- that .87\% of the tests failed the 99\% confidence level chi-square
- test. This is within a reasonable experimental error of the expected
- value of 1\%. On the decryption function, there were only .64\% of
- the tests that failed. This was on a much smaller test set.
-
- \begin{center}
- \begin{tabular}{|c|c|c|c|c|}
- \hline
- \# $k$ & \# masks & function, $f(m)$ & mask & \% failed \\
- \hline
- 200 & 50 & $SJ(k,m)$ & 8 of $f(m)$ & .87 \\
- \hline
- 25 & 50 & $SJ^{-1}(k,m)$ & 8 of $f(m)$ & .64 \\
- \hline
- \end{tabular}
- \end{center}
-
- {\bf Test 2: Correlation test between messages and output.}
- Single test: Fix $k$, fix mask of 4 message bits and 4 output bits,
- select 10,000 random messages, run chi-square.
-
- \begin{center}
- \begin{tabular}{|c|c|c|c|c|}
- \hline
- \# $k$ & \# masks & function, $f(m)$ & mask & \% failed \\
- \hline
- 200 & 1000 & $SJ(k,m)$ & 4 of $m$, 4 of $f(m)$ & 1.06 \\
- \hline
- 25 & 1000 & $SJ^{-1}(k,m)$ & 4 of $m$, 4 of $f(m)$ & 1.01 \\
- \hline
- \end{tabular}
- \end{center}
-
- {\bf Test 3: Randomness test on the xor of outputs, given a fixed xor of
- inputs. }
- Single test: Fix $k$, fix mask of 8 output bits, select 10,000 random
- messages.
- Let $\cal H$ be the union of all 64 bit words of Hamming
- weight 1 (64 of these), all 64 bit words of Hamming weight 2 (2016 of
- these), and some randomly chosen 64 bit words (920 of these).
- Repeat this single test for all $h \in \cal H$, 50 different masks,
- and 4 different values
- of $k$.
-
- \begin{center}
- \begin{tabular}{|c|c|c|c|c|c|}
- \hline
- \# $k$ & \# masks & \# $h$ & function, $f(m)$ & mask & \% failed \\
- \hline
- 4 & 50 & 3000 & $SJ(k,m) \oplus SJ(k,m \oplus h)$ & 8 of $f(m)$ & .99 \\
- \hline
- \end{tabular}
- \end{center}
-
-
- {\bf Test 4: Correlation test between message xors and output xors. }
- Single test: Fix $k$, fix mask of 4 bits of $h$ and 4 bits of output,
- select 10,000 random $(m,h)$ pairs.
-
- \begin{center}
- \begin{tabular}{|c|c|c|c|c|}
- \hline
- \# $k$ & \# masks & function, $f(m,h)$ & mask & \% failed \\
- \hline
- 200 & 1000 & $SJ(k,m) \oplus SJ(k,m \oplus h)$ & 4 of $h$, 4 of $f(m,h)$
- & .99 \\
- \hline
- 25 & 1000 & $SJ^{-1}(k,m) \oplus SJ^{-1}(k,m \oplus h)$ & 4 of $h$, 4 of
- $f(m,h)$ & 1.02 \\
- \hline
- \end{tabular}
- \end{center}
-
- {\bf Test 5: Correlation test between messages and output xors.}
- Single test: Fix $k$, fix mask of 4 bits of $m$ and 4 bits of output
- xor, select 10,000 random messages. Let $\cal H$ be the union of all
- 64 bit words of Hamming weight 1 (64 of these), some of the 64 bit
- words of Hamming weight 2 (100 of these), and some randomly chosen 64
- bit words (100 of these).
-
- \begin{center}
- \begin{tabular}{|c|c|c|c|c|c|}
- \hline
- \# $k$ & \# masks & \# $h$& function, $f(m)$ & mask & \% failed \\
- \hline
- 2 & 1000 & 264 & $SJ(k,m) \oplus SJ(k,m \oplus h)$ & 4 of $m$, 4 of $f(m)$
- & .99 \\
- \hline
- \end{tabular}
- \end{center}
-
- {\bf Test 6: Correlation test between keys and output.}
- Single test: Fix $m$, fix mask of 4 key bits and 4 output bits,
- select 10,000 random keys.
-
- \begin{center}
- \begin{tabular}{|c|c|c|c|c|}
- \hline
- \# $m$ & \# masks & function, $f(k)$ & mask & \% failed \\
- \hline
- 200 & 1000 & $SJ(k,m)$ & 4 of $k$, 4 of $f(k)$ & 1.00 \\
- \hline
- 25 & 1000 & $SJ^{-1}(k,m)$ & 4 of $k$, 4 of $f(k)$ & 1.02 \\
- \hline
- \end{tabular}
- \end{center}
-
- {\bf Test 7: Randomness test on the xor of outputs, given a fixed xor of
- keys. }
- Single test: Fix $m$, fix mask of 8 output bits, select 10,000 random
- keys.
- Let $\cal H$ be the union of all 80 bit words of Hamming
- weight 1 (80 of these), all 80 bit words of Hamming weight 2 (3160 of
- these), and some randomly chosen 80 bit words (760 of these).
- Repeat this single test for all $h \in \cal H$, 50 different masks,
- and 2 different values
- of $m$.
-
- \begin{center}
- \begin{tabular}{|c|c|c|c|c|c|}
- \hline
- \# $m$ & \# masks & \# $h$ & function, $f(k)$ & mask & \% failed \\
- \hline
- 2 & 50 & 4000 & $SJ(k,m) \oplus SJ(k\oplus h,m )$ & 8 of $f(k)$ & .99 \\
- \hline
- \end{tabular}
- \end{center}
-
-
- {\bf Test 8: Correlation test between key xors and output xors. }
- Single test: Fix $m$, fix mask of 4 bits of $h$ and 4 bits of output,
- select 10,000 random $(k,h)$ pairs.
-
- \begin{center}
- \begin{tabular}{|c|c|c|c|c|}
- \hline
- \# $m$ & \# masks & function, $f(k,h)$ & mask & \% failed \\
- \hline
- 200 & 1000 & $SJ(k,m) \oplus SJ(k\oplus h,m )$ & 4 of $h$, 4 of $f(k,h)$
- & 1.02 \\
- \hline
- 25 & 1000 & $SJ^{-1}(k,m) \oplus SJ^{-1}(k\oplus h,m )$ & 4 of $h$, 4
- of $f(k,h)$ & 1.1 \\
- \hline
- \end{tabular}
- \end{center}
- \end{document}
-