Timing Attacks
Computers are fast, and they
work far faster than humans can follow. But, as we all know, the time it takes
a computer to perform a task depends on the size of the task: Creating 20
database records takes approximately twice as long as creating 10. So, in
theory at least, if we could measure computer time precisely, and we could
control other things being done in the computer, we could infer the size of the
computer's input. In most situations size is relatively uninteresting to the
attacker. But in cryptography, even the smallest bit of information can be
significant.
Brumley and Boneh investigated a program that does RSA
encryption for web sites. The authors try to derive the key by successive
guesses of increasing value as possibilities for the key. Although the details
of the attack are beyond the scope of this book, the idea is to use a trick in
the optimization of RSA encryption. Grossly oversimplified, encryption with
numbers less than the key take successively longer amounts of time as the
numbers get closer to the key, but then the time to encrypt drops sharply once
the key value is passed. Brute force guessing is prohibitive in time. But the
authors show that you don't have to try all values. You infer the key a few
bits at a time from the left (most significant bit). So you might try 00xxx,
01xxx, 10xxx, and 11xxx, noticing that the time to compute rises from 00xxx to
01xxx, rises from 01xxx to 10xxx, and falls between 10xxx and 11xxx. This tells
you the key value is between 10xxx and 11xxx. The attack works with much longer
keys (on the order of 1000 bits) and the authors use about a million
possibilities for the xxx portion. Still, this technique allows the authors to
infer the key a bit at a time, all based on the amount of time the encryption
takes. The authors performed their experiments on a network, not with precise
local timing instruments, and still they were able to deduce keys.
Cryptography is the primary area in which speed
and size are information that should not be revealed. But you should be aware
that malicious code can perform similar attacks undetected.
Related Topics
Privacy Policy, Terms and Conditions, DMCA Policy and Compliant
Copyright © 2018-2026 BrainKart.com; All Rights Reserved. Developed by Therithal info, Chennai.