I was wondering about the feasibility and difficulty of building a device that could read the information the magnetic stripe on a credit card. I think I understand the basic principles, but I'm not clear on how the audio signal is transformed My understanding of the basic functionality of something like the card reader manufactured by Square:
My understanding of it is this:
The magnetic strip of a credit card is passed through a Tape Head, like those used on a tape deck.
This produces and audible signal, depending on the shape/encoded bits on the strip. There is a specific name for this effect, and I had a wikipedia page on it, but I've lost track of it (If anyone knows who discovered this, or what this is called, I would appreciate it. I think there was also a patent on it)
In the case of Square, the part of the peripheral which connects into the Headphone audio jack has a microphone that picks up the sound? Or is it the microphone on the mobile device? Either way, this signal is picked up, and somehow decrypted back into whatever raw data it encodes (Cardholder name, card #, expiration date, etc,etc)
This data goes into some software/API.
I've seen a few scattered resources on youtube/blogs, but nothing really comprehensive about building this from scratch. Is it even possible? I'm a hobbyist without too much knowledge of EE, so please tell me if I'm horribly wrong about anything I've said so far.
My main questions are this:
- How do the magnetic grooves within the Mag Strip get converted to an audible signal - is there a name for this effect?
- Where would someone source a Tape Head such as the ones used by Square in the first version of their Card-Reader? Anywhere that they can be purchased online, or do I have to pull apart old Tape Decks?
- How is the auditory signal transformed from a card swipe to digits? Is there a formula that is applied to parts of the waveform? Is there any software available? (I can't imagine there would be any legitimate third-party non-enterprise entities fofering this functionality...)
Would all of this be easier to do by just buying a generic Credit Card reader from Ebay? Does every card-read manufacturer have their own card-audio-signal transformation software bundled into their device somewhere?