Hacking the Xbox
Hacking the Xbox
Hacking the Xbox
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
120<br />
<strong>Hacking</strong> <strong>the</strong> <strong>Xbox</strong>: An Introduction to Reverse Engineering<br />
Our next eavesdropping candidate, <strong>the</strong> main memory bus, is a 128-bit<br />
data bus plus address and control signals running at 200 MHz with<br />
double data rate (DDR) clocking. The memory bus uses a signaling<br />
convention known as SSTL-2. (The details of this bus can be inferred by<br />
reading <strong>the</strong> datasheet for <strong>the</strong> Samsung K4D263238M memory part,<br />
available at <strong>the</strong> Samsung Electronics website.) Despite its higher speeds,<br />
eavesdropping <strong>the</strong> main memory bus is probably easier than eavesdropping<br />
<strong>the</strong> processor FSB, because of <strong>the</strong> empty (spare) memory footprints<br />
designed into <strong>the</strong> <strong>Xbox</strong> mo<strong>the</strong>rboard.<br />
A relatively inexpensive, standard 100-pin TQFP adapter (Thin Quad Flat<br />
Pack, a rectangular chip package with 100 gull-wing shaped pins) could be<br />
soldered onto <strong>the</strong> empty memory footprints. These adapters would provide<br />
convenient probe points for connecting a logic analyzer. The problem with<br />
this approach is that you can only capture data that is written to main<br />
memory. Decryption keys are generally read-only data, and read-only<br />
More About High Speed<br />
Information Transmission<br />
Eavesdropping and modifying data on computer buses is<br />
a powerful technique that is difficult to counter. In order to<br />
understand how to eavesdrop, you will need a little bit of<br />
background on how digital information is transmitted inside<br />
a computer.<br />
There are two major categories of signaling standards: singleended<br />
and differential. The transmission of digital information<br />
over a wire requires a translation into physical quantities<br />
such as voltage and current. Classically, signals were<br />
defined in terms of voltages measured with respect to a<br />
common reference potential called <strong>the</strong> “ground.” This kind<br />
of signaling is known as single-ended or unbalanced signaling.<br />
Unfortunately, <strong>the</strong> idea of a ground reference point<br />
only works when signals change slowly with respect to <strong>the</strong>ir<br />
propagation time. In reality, every change in potential is<br />
accompanied by a flow of current. The laws of nature demand<br />
that current be conserved, i.e., for every flow of current<br />
in one direction, <strong>the</strong>re must be a flow of current in <strong>the</strong><br />
reverse direction. In single-ended signaling, <strong>the</strong> reverse current,<br />
also known as a return current, must find its way back<br />
through <strong>the</strong> “ground”. At very high speeds, <strong>the</strong> return paths<br />
for current do not necessarily follow <strong>the</strong> same path as <strong>the</strong><br />
signal current. This imbalance results in a distorted signal.<br />
Di ferential signaling combats this problem by using two wires<br />
to transmit a signal, with one wire used for <strong>the</strong> signal current<br />
and <strong>the</strong> o<strong>the</strong>r used for an explicit return current path. The<br />
differential approach allows <strong>the</strong> signal and return paths to<br />
be laid out so that <strong>the</strong>y track each o<strong>the</strong>r, ensuring that <strong>the</strong><br />
flow of current is balanced. The result is a more robust signal<br />
transmission system at <strong>the</strong> cost of twice <strong>the</strong> number of wires.<br />
(continued)