Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

Slide attack

From Wikipedia, the free encyclopedia
Form of cryptanalysis
This article includes alist of references,related reading, orexternal links,but its sources remain unclear because it lacksinline citations. Please helpimprove this article byintroducing more precise citations.(March 2009) (Learn how and when to remove this message)

Theslide attack is a form ofcryptanalysis designed to deal with the prevailing idea that even weakciphers can become very strong by increasing the number ofrounds, which can ward off adifferential attack. The slide attack works in such a way as to make the number of rounds in a cipher irrelevant. Rather than looking at the data-randomizing aspects of the block cipher, the slide attack works by analyzing thekey schedule and exploiting weaknesses in it to break the cipher. The most common one is the keys repeating in a cyclic manner.

The attack was first described byDavid Wagner andAlex Biryukov.Bruce Schneier first suggested the termslide attack to them, and they used it in their 1999 paper describing the attack.

The only requirements for a slide attack to work on a cipher is that it can be broken down into multiple rounds of an identicalF function. This probably means that it has a cyclic key schedule. TheF function must be vulnerable to aknown-plaintext attack. The slide attack is closely related to therelated-key attack.

The idea of the slide attack has roots in a paper published byEdna Grossman andBryant Tuckerman in an IBM Technical Report in 1977.[1] Grossman and Tuckerman demonstrated the attack on a weakblock cipher namedNew Data Seal (NDS). The attack relied on the fact that the cipher has identical subkeys in each round, so the cipher had a cyclic key schedule with a cycle of only one key, which makes it an early version of the slide attack. A summary of the report, including a description of the NDS block cipher and the attack, is given inCipher Systems (Beker & Piper, 1982).

The actual attack

[edit]

First, to introduce some notation. In this section assume the cipher takesn bit blocks and has a key-schedule usingK1Km{\displaystyle K_{1}\cdots K_{m}} as keys of any length.

The slide attack works by breaking the cipher up into identical permutationfunctions,F. ThisF function may consist of more than one roundof the cipher; it is defined by the key-schedule. For example, if a cipher uses an alternating key schedule where it switches between aK1{\displaystyle K_{1}} andK2{\displaystyle K_{2}} for each round, theF function would consist of two rounds. Each of theKi{\displaystyle K_{i}} willappear at least once inF.

The next step is to collect2n/2{\displaystyle 2^{n/2}} plaintext-ciphertext pairs. Depending onthe characteristics of the cipher fewer may suffice, but by thebirthday problem no more than2n/2{\displaystyle 2^{n/2}} should be needed. These pairs, which denoted as(P,C){\displaystyle (P,C)} are then used to find aslid pair which is denoted(P0,C0)(P1,C1){\displaystyle (P_{0},C_{0})(P_{1},C_{1})}. A slid pair has the property thatP0=F(P1){\displaystyle P_{0}=F(P_{1})} and thatC0=F(C1){\displaystyle C_{0}=F(C_{1})}. Once a slid pair is identified, the cipher is broken because of the vulnerability to known-plaintext attacks. The key can easily be extracted from this pairing.The slid pair can be thought to be what happens to a message after one application of the functionF. It is ’slid’ over one encryption round and this is where the attack gets itsname.

The process of finding a slid pair is somewhat different for each cipherbut follows the same basic scheme. One uses the fact that it is relativelyeasy to extract the key from just one iteration ofF. Choose any pair ofplaintext-ciphertext pairs,(P0,C0)(P1,C1){\displaystyle (P_{0},C_{0})(P_{1},C_{1})} and check to see what the keys corresponding toP0=F(P1){\displaystyle P_{0}=F(P_{1})} andC0=F(C1){\displaystyle C_{0}=F(C_{1})} are. If these keys match, this is a slid pair; otherwise move on to the next pair.

With2n/2{\displaystyle 2^{n/2}} plaintext-ciphertext pairs one slid pair is expected, along with a small number of false-positives depending on the structure of the cipher. The false positivescan be eliminated by using the keys on a different message-ciphertext pair to see if the encryption is correct. The probability that the wrong key will correctly encipher two or more messages is very low for a good cipher.

Sometimes the structure of the cipher greatly reduces the number ofplaintext-ciphertext pairs needed, and thus also a large amount of the work.The clearest of these examples is theFeistel cipher using a cyclic key schedule.The reason for this is given aP=(L0,R0){\displaystyle P=(L_{0},R_{0})} the search is for aP0=(R0,L0F(R0,K)){\displaystyle P_{0}=(R_{0},L_{0}\bigoplus F(R_{0},K))}. This reduces the possible paired messages from2n{\displaystyle 2^{n}}down to2n/2{\displaystyle 2^{n/2}} (since half the message is fixed) and so at most2n/4{\displaystyle 2^{n/4}} plaintext-ciphertext pairs are needed in order to find a slid pair.

References

[edit]
  1. ^E. K. Grossman; B. Tuckerman (1977).Analysis of a Feistel-like cipher weakened by having no rotating key (Technical report). IBM Thomas J. Watson Research Center. RC 6375.
Common
algorithms
Less common
algorithms
Other
algorithms
Design
Attack
(cryptanalysis)
Standardization
Utilization
General
Mathematics
Retrieved from "https://en.wikipedia.org/w/index.php?title=Slide_attack&oldid=1247441649"
Category:
Hidden categories:

[8]ページ先頭

©2009-2026 Movatter.jp