信用卡的磁條,都是使用IEC-7811標準,總共有三條磁軌。第一條在卡片最底端,有持卡人姓名、帳號、CVC;第二條有卡號、到期日;第三條通常沒有資料。
Square最初期的讀卡機,只會讀信用卡磁條中的一條磁軌(第二條),會讀出:持卡人姓名、卡片到期日和其他資訊(依卡片種類而定)。把卡片刷過讀卡機後,磁條會使讀卡機中的線圈產生感應電流、產生音源波形,輸出一個電壓到手機的耳機孔輸入端。
然後,在手機App裡面做訊號處理,經由分析波形來讀出代表1和0的數值(參考這篇文章),在一個固定時間之內,訊號兩次從正轉負或是從負轉正代表一個0,三次則代表一個1。接著,再由這些0和1解碼轉換成英文和數字資訊,也就是信用卡磁條中的資訊。
2012年5月新推出的Square讀卡機,已經支援硬體加密。並且多加入了一顆電池。在把信用卡資料轉成音源訊號之後做加密,然後才傳進手機裡面。
參考資料:cosmodro.me
圖片來源:Apple App Store