179 lines
10 KiB
Plaintext
179 lines
10 KiB
Plaintext
Magnetic Stripes
|
||
|
||
Translated from Hack-Tik, #8, #9/10, available at PO Bos 22953,1100
|
||
DL Amsterdam, The Netherlands
|
||
|
||
Translation by Dr. Abuse
|
||
|
||
Text/Schematics _copied_ from 2600 Magazine, Summer 1991 by:
|
||
|
||
|
||
* ..oooOO Count Zero OOooo.. *
|
||
* *
|
||
* -=Restricted -=Data -=Transmissions *
|
||
* *
|
||
* "Truth is cheap, but Information COSTS!" *
|
||
|
||
(Read _my_ article on Magstripe Technology in Phrack #37 if you want
|
||
_detailed_ descriptions of encoding tech, specification, etc. -c0 )
|
||
|
||
People KEEP ASKING me about this article that appeared in 2600,
|
||
and many people wanted the schematics. I figured I might as well
|
||
type it up in order to help spread the info around as efficiently as
|
||
possible. I hand-drew the schematics in 320x200 .GIF format.
|
||
Enjoy, and remember to always SHARE the knowledge...
|
||
|
||
(The following is a VERBATIM copy of Dr. Abuse's translation.
|
||
Thanks Doc!)
|
||
|
||
"Cash is out. Plastic is in. In the nineties, the question is:
|
||
who has the best hand of cards? We will help you play the big
|
||
magnetic card game.
|
||
Everybody has looked at those credit cards and wondered what
|
||
exactly was on them. Whoever dared to even ask about magnetic
|
||
readers/writers was shocked after hearing the price and they went
|
||
back to their daily living. And this while you would be very
|
||
anxious to know what the bits and bytes mean.
|
||
We now give you the opportunity to build your own credit card
|
||
reader/writer. For the cost of playing around with electronics plus
|
||
a few dollars, you can build your own magnetic card copier. This
|
||
device reads from one magnetic card and puts the data out onto the
|
||
other card. For the advanced electronic hobbyist, there is the
|
||
magnetic card reader and writer. Everybody who knows ehat a TTL is
|
||
and can squeeze something out of his computer and/or hold a
|
||
soldering iron will be able to make this credit card reader/writer
|
||
together with the schematics.
|
||
Far more interesting than all of the electronic mumbo-jumbo is to
|
||
first see what's really on the magnetic stripe. For that we give
|
||
you the first bit of information in this article.
|
||
The information on most credit cards is stored in binary form.
|
||
These ones and zeros are stored by changing the magnetic field of
|
||
the magnetic head by 180 degrees. To see what's really on the card,
|
||
you put some iron filings on the magnetic strip and tap the card
|
||
gently onto the edge of the table (keep paper underneath it because
|
||
it probably would have cost you lots of effort to make the iron
|
||
filings) and behold! Here's your magnetic information, plainly
|
||
cidible to the eye. Some cards have such big bits that you
|
||
theoretically should be able to change the information on it with a
|
||
magnetized razor blade (Paris Metro cards are a good example). On
|
||
other cards, the bits are so close to each other that you will only
|
||
see a magnetized solid bar.
|
||
To store away the information on magnetic cards, some
|
||
international standars were developed by ISO - the International
|
||
Standards Organization. To name one: the magnetic stripe is divided
|
||
up into three tracks. A lot of manufatcurers use other coding
|
||
methods to write the cards with and only the iron filing method will
|
||
give you insight as to what's on the card in these instances.
|
||
The first project as amntioned before is to copy the information
|
||
from magnetic card to another. This means that it doesn't matter
|
||
whether the information is encoded or not since you are just
|
||
copying. The only thing you need to know is the exact location and
|
||
height of the track with the information that you want to copy. As
|
||
long as the write head of your copier is bigger than the mangnetic
|
||
strip, you are safe. See the schematic on this page. (Schematic #1)
|
||
|
||
The Credit Card Copier
|
||
|
||
At the left of schematic #1 you will see the read head. For this
|
||
(as well as the write head) you cannot use any cassette player head
|
||
which happens to be lying around. You will need to use a data head
|
||
or a card reader head (you can obtain them from Michigan Magnetics
|
||
among others). If the head is bigger than the track you are reading
|
||
from, you will pick up extra noise but if the head is too small, the
|
||
signal might become too weak. Experimenting with the gain is
|
||
essential. The write head should be as big as possible unless you
|
||
want to write more than two narrow tracks next to each other.
|
||
Between points A and B you can jput a pair of headphones (which you
|
||
have put in series). If you pass the read head along the stripe,
|
||
you will hear a sound that might be familiar to you hobbyists who
|
||
used to once work with data cassettes. Now you will need to find a
|
||
way to make the read and write head go simultaneously along both
|
||
cards. The trick for this is to take a piece of wood and mount both
|
||
heads on both ends of it. Attach the cards (with scotch tape) to a
|
||
solid surface and gently slide the heads along both cards (making
|
||
sure that the heads go in parallel with the magnetic stripe).
|
||
There are, however, cards on which the infomation is not put on
|
||
the stripe at a nintey degree angle. If you see something like that
|
||
(using the iron filing method) you will have to adjust the position
|
||
on which the heads are mounted. A little trick to adjust the heads
|
||
is to replace the 220 ohms resister in front of the headphones by a
|
||
100 nF capacitor and then listening until you find the angle that
|
||
gives you the highest pitch sound.
|
||
You can only write to a card which you have erase previously by,
|
||
for instance, a demagnetizer. To doublecheck if your copy is good,
|
||
you can listen to it by passing the read head over it and checking
|
||
to see if the sound of the original and the copy are the same. We
|
||
found ou that the human ear is a very accurate meter to indicate the
|
||
accuracy of the copy. One last word about the dual opamp - pins 4
|
||
and 8 of that chip are used to supply positive and negative voltage
|
||
(see schematic #3).
|
||
|
||
The Reader/Writer
|
||
|
||
This schematic reads and writes to the same head. If you want to
|
||
write something with this schematic, you will have to come up with a
|
||
device which has a very accurate constant speed, like a modified
|
||
printer. The most suitable device, though, would be a real
|
||
reader/writer mechanism.
|
||
Most opamps want to have a positive as well as a negative
|
||
voltage. But by means of an active voltage divider (see schematics)
|
||
we can supply the whole card reader from one 12 volt power supply.
|
||
The active voltage dicider is used twice in the reader/writer.
|
||
First of all to divide the 12 volt down to 6 volts (in order to do
|
||
this you put a 5.8 kohm resistor where the asterisks are in the
|
||
schematic). The second voltage divider you make by putting a 3.3
|
||
kohm at that spot. This is done to divide the 5 volts out of your
|
||
computer into 2.5 volts. The best thing to do is to plave a relay
|
||
on the write line going to the head. This is so as not to introduce
|
||
noise while reading form the card.
|
||
Now all you need is an interface that can control the motor fo
|
||
your read/write unit and which can exchange the bits with the
|
||
circuitry described above. What you can do then is make binary
|
||
copies of your card. The credit card reader/writer can only be used
|
||
on cards which store their information in binary form, so go and
|
||
check first with iron filings.
|
||
In this section, we will describe several data formats which are
|
||
used in credit cards. We will only describe the three tracks as
|
||
they were described by ISO. On the third track a large quantity of
|
||
formats are used. Only two of them are published here. The real
|
||
formats as they are used by banks tend to differ from the original
|
||
ISO standards but a little bit of research can do miracles on these
|
||
occasions. You might wonder how the bits as described later are
|
||
encoded onto the card because the schematic as we described above is
|
||
only capable of putting 180 degree magnetic field changes onto the
|
||
card. To explain that we use track 2 because the bits are
|
||
physically the largest and this ought to work with homemade
|
||
electronics.
|
||
|
||
Track 2
|
||
|
||
The bits are encoded as follows: they are separated by reversing
|
||
the magnetic field. These reversals make the output of your reader
|
||
go from one to zero or vice versa. Beware: the fact of whether or
|
||
not it's a one or zero is not important, but the change in polarity
|
||
is important. And now, to make it even more complicated, not only
|
||
is there a magnetic reversal between tow bits but also in the middle
|
||
of a binary one is a reversal. So if you have a constant moving
|
||
head over your card, software should be able to determine whether
|
||
they are reading a zero or a one. In fact, nobody is capable of
|
||
speeding up the speed of his reading head twice within the time
|
||
period of one bit. THerefore, even a constant speed is not
|
||
required. SO you will get away with cheap, lousy equipment.
|
||
Now you have a whole lot of ones and zeroes inside your computer
|
||
and you still don't know anything. The important thing here is to
|
||
know the bit stream starts at the left side of the card so the strip
|
||
is being read from right ot left and after a couple of zeroes the
|
||
data will start in the following format: P1248P1248 etc.
|
||
The P stands for parity bit and the 1,2,4,8 stand for the
|
||
decimal values that they represent (0001 0010 0100 1000). If you
|
||
decode this, there is your data, which is similar to Track 2
|
||
specifications (ABA). How the LRC character work (a checksum) we
|
||
don't know yet. BUt our mailbox is open to any suggestions."
|
||
|
||
|
||
---Well, there is it. Pretty damn good. If you want greater
|
||
detail, be sure to check out my article in Phrack #37. Happy
|
||
hunting!
|
||
|
||
..oooOO Count Zero OOooo.. *cDc* -=RDT
|
||
|