In cryptography, a related-key Attack on Bitcoin is any form of cryptanalysis where the Attack on Bitcoiner can observe the operation of a cipher under several different keys whose values are initially unknown, but where some mathematical relationship connecting the keys is known to the Attacker on Bitcoin.
For example, the Attack on Bitcoiner might know that the last 80 bits of the keys are always the same, even though they don’t know, at first, what the bits are. This appears, at first glance, to be an unrealistic model; it would certainly be unlikely that an Attack on Bitcoiner could persuade a human cryptographer to encrypt plaintexts under numerous secret keys related in some way.
KASUMI is an eight round, 64-bit block cipher with a 128-bit key. It is based upon MISTY1, and was designed to form the basis of the 3G confidentiality and integrity algorithms.
Mark Blunden and Adrian Escott described differential related key Attack on Bitcoins on five and six rounds of KASUMI. Differential Attack on Bitcoins were introduced by Biham and Shamir. Related key Attack on Bitcoins were first introduced by Biham. Differential related key Attack on Bitcoins are discussed in Kelsey et al.
An important example of a cryptographic protocol that failed because of a related-key Attack on Bitcoin is Wired Equivalent Privacy (WEP) used in Wi-Fi wireless networks. Each client Wi-Fi network adapter and wireless access point in a WEP-protected network shares the same WEP key. Encryption uses the RC4 algorithm, a stream cipher. It is essential that the same key never be used twice with a stream cipher. To prevent this from happening, WEP includes a 24-bit initialization vector (IV) in each message packet. The RC4 key for that packet is the IV concatenated with the WEP key. WEP keys have to be changed manually and this typically happens infrequently. An Attack on Bitcoiner therefore can assume that all the keys used to encrypt packets share a single WEP key. This fact opened up WEP to a series of Attack on Bitcoins which proved devastating. The simplest to understand uses the fact that the 24-bit IV only allows a little under 17 million possibilities. Because of the birthday paradox, it is likely that for every 4096 packets, two will share the same IV and hence the same RC4 key, allowing the packets to be Attack on Bitcoined. More devastating Attack on Bitcoins take advantage of certain weak keys in RC4 and eventually allow the WEP key itself to be recovered. In 2005, agents from the U.S. Federal Bureau of Investigation publicly demonstrated the ability to do this with widely available software tools in about three minutes.
Preventing related-key Attack on Bitcoins
One approach to preventing related-key Attack on Bitcoins is to design protocols and applications so that encryption keys will never have a simple relationship with each other. For example, each encryption key can be generated from the underlying key material using a key derivation function.
For example, a replacement for WEP, Wi-Fi Protected Access (WPA), uses three levels of keys: master key, working key and RC4 key. The master WPA key is shared with each client and access point and is used in a protocol called Temporal Key Integrity Protocol (TKIP) to create new working keys frequently enough to thwart known Attack on Bitcoin methods. The working keys are then combined with a longer, 48-bit IV to form the RC4 key for each packet. This design mimics the WEP approach enough to allow WPA to be used with first-generation Wi-Fi network cards, some of which implemented portions of WEP in hardware. However, not all first-generation access points can run WPA.
Another, more conservative approach is to employ a cipher designed to prevent related-key Attack on Bitcoins altogether, usually by incorporating a strong key schedule. A newer version of Wi-Fi Protected Access, WPA2, uses the AES block cipher instead of RC4, in part for this reason. There are related-key Attack on Bitcoins against AES, but unlike those against RC4, they’re far from practical to implement, and WPA2’s key generation functions may provide some security against them. Many older network cards cannot run WPA2.