現在停車卡多用M1卡,由於停車卡的密碼規則和控制位置的設計,停車卡可以在不完全加密的情況下破解。如何提供系統安全,防止停車卡破解造成的損失?
停車卡
1.停車卡的主要技術指標
容量為8K位EEPROM
分為16個扇區,每個扇區4塊,每塊16個字節,以塊為存取單位
每個扇區都有一組獨立的密碼和訪問控制
每張卡有一個唯一的序列號,32位
具有防沖突機制,支持多卡操作
無電源,自帶天線,包括加密控制邏輯和通信邏輯電路
數據保存期為10年,可重寫10萬次,讀無限次
工作溫度:-20℃~50℃
工作頻率:13.56MHZ
通信速率:106KBPS
讀寫距離:10mm內部(與讀寫器有關)
二、停車卡內部數據存儲結構及如何破解停車卡密碼
1、M1卡分為16個風扇區域,每個風扇區域由4塊(塊0、塊1、塊2、塊3)組成也按絕對地址將16個扇區的64塊編號為0~63,存儲結構如下圖所示:
塊0
數據塊0扇區0塊1
數據塊1
塊2
數據塊2
密碼A存取控制密碼B控制塊3
塊0
數據塊4扇區1塊1
數據塊5
塊2
數據塊6
密碼A存取控制密碼B控制塊7
∶∶∶
0
數據塊60扇區151
數據塊61
2
數據塊62
密碼A存取控制密碼B控制塊633
2.第0扇區塊0(即絕對地址0塊)用於存儲制造商代碼,已固化,無法更改。
3.每個扇區塊0、塊1、塊2為數據塊,可用於存儲數據。
數據塊可用於兩種應用:
★ 作為一般數據保存,可以讀寫。
★ 作為數據值,可進行初始化值、加值、減值、讀值操作。
4.每個扇區的塊3是控制塊,包括密碼A、訪問控制,密碼B。具體結構如下:
A0 A1 A2 A3 A4 A5 FF 07 80 69 B0 B1 B2 B3 B4 B5
密碼A(6字節) 存取控制(4字節) 密碼B(6字節)
5.每個風扇區域的密碼和訪問控制是獨立的,可根據實際需要設置自己的密碼和訪問控制。訪問控制為4個字節,共32個字節。風扇區域內每個塊(包括數據塊和控制塊)的訪問條件由密碼和訪問控制決定。訪問控制中每個塊有三個相應的控制位置,定義如下:
塊0: C10 C20 C30
塊1: C11 C21 C31
塊2: C12 C22 C32
塊3: C13 C23 C33
存取控制字節中以正反兩種形式存在三個控制位,決定瞭該塊的訪問權限(如
減值操作必須驗證KEY A,加值操作必須驗證KEY B,等等)
以塊0為例:
控制塊0:
bit 7 6 5 4 3 2 1 0
字節6C20_b
C10_b字節7
C10
C30_b字節8
C30
C20字節9
( 註: C10_b表示C10取反 )
訪問控制結構如下:
bit 7 6 5 4 3 2 1 0
字節6C23_bC22_bC21_bC20_bC13_bC12_bC11_bC10_b字節7C13C12C11C10C33_bC32_bC31_bC30_b字節8C33C32C31C30C23C22C21C20字節9( 註: _b表示取反 )
6.數據塊(塊0、塊1、塊2)的訪問控制如下:
控制位(X=0.1.2)訪問條件(數據塊0、1、2)C1XC2XC3XReadWriteIncrementDecrement,transfer,Restore000KeyABKeyABKeyABKeyAB010KeyABNeverNeverNever100KeyABKeyBNeverNever110KeyABKeyBKeyBKeyAB001KeyABNeverNeverKeyAB011KeyBKeyBNeverNever101KeyBNeverNeverNever111NeverNeverNeverNever(KeyAB 表示密碼A或密碼B,Never在任何條件下都不能實現)
例如,當塊0的訪問控制位C10 C20 C30= 0 0 1.驗證密碼A或密碼B正確後可讀;
驗證密碼B正確後可寫;不能進行加值或減值操作。
7.控制塊3的訪問控制不同於數據塊(塊0、1、2),其訪問控制如下:
密碼A訪問控制密碼BC13C23C33ReadWriteReadWriteReadWrite000NeverKeyABKeyABNeverKeyABKeyAB010NeverNeverKeyABNeverKeyABNever100NeverKeyBKeyABNeverNeverKeyB110NeverNeverKeyABNeverNeverNever001NeverKeyABKeyABKeyABKeyABKeyAB011NeverKeyBKeyABKeyBNeverKeyB101NeverNeverKeyABKeyBNeverNever111NeverNeverKeyABNeverNeverNever
例如,當塊3的訪問控制位C13 C23 C33= 0 0 1時,表示:
密碼A:不可讀,驗證KEYA或KEYB正確後,可以寫(更改)。
訪問控制:驗證KEYA或KEYB正確後,可讀可寫。
密碼B:驗證KEYA或KEYB正確後,可讀可寫。
新卡中的控制字(FF 07 80 69)密碼A可用,密碼B不可用;
推薦的控制字
方案一:7F 07 88 69
本控制字說明:
數據塊:使用密碼A或B都能讀寫;
控制塊:
密碼A:由密碼B寫,不可讀;
密碼B:由密碼B寫,不可讀;
控制字:使用密碼A或B可讀,由密碼B寫;
方案二:08 77 8F 69
本控制字說明:
數據塊:
用密碼A讀,用密碼B讀寫;
控制塊:
密碼A:由密碼B寫,不可讀;
密碼B:由密碼B寫,不可讀;
控制字:使用密碼A或B可讀,由密碼B寫;
三、停車卡工作原理
卡片的電氣部分隻有一個天線和AS滴膠卡組成。
天線:卡的天線隻有幾組繞線,非常適合包裝IS0卡片中。
AS滴膠卡:卡片的AS滴膠卡高速(106)KB波特率)的RF接口、控制單元和控制單元
8K位EEPROM組成。
四、停車卡內部數據塊的操作
讀 (Read):讀一個塊;
寫 (Write):寫一個塊;
加(Increment):加值數值塊;
減(Decrement):減值數值塊;
存儲(Restore):將塊中的內容存儲在數據寄存器中;
傳輸(Transfer):將數據寄存器中的內容寫入塊中;
中止(Halt):卡在暫停工作狀態;
對於計算機周圍的編程,停車卡破解主要有兩種想法(應該沒有第三種)。
一、利用windows系統本身dll庫。
二、使用硬件制造商提供的dll。
本篇對M使用上述第二種方法編程1卡。
M1卡最重要的優點是可讀、可寫、安全性高的多功能卡。這些優點離不開它們自身的結構。
停車卡結構:
M1卡分為16個扇區,每個扇區4塊(塊0~3),共64塊,按塊號編號0~63。第0扇區塊0(即絕對地址0塊)用於存儲制造商代碼,已固化,無法更改。塊0、塊1、塊2是存儲數據的數據塊;塊3是存儲密碼的控制塊A、訪問控制,密碼B。各扇區的密碼和存取控制是獨立的,可根據實際需要設置各自的密碼和存取控制。
停車卡操作機理:
連接讀寫器→尋卡→識別卡(獲取卡序列號)→從多卡中選擇一張卡→在卡中緩沖區裝載密碼→驗證密碼→進行讀寫→關閉連接
即(代碼說明)
Open_USB→rf_request→rf_ant滴膠卡oll→rf_select→rf_load_key→rf_authent滴膠卡ation→(/a_hex)→rf_read/rf_write→(hex_a)→Close_USB
綜上所述,主要有四個部分 開關連接,尋卡,驗證密碼,讀取。
(至於詳細的程序代碼,相信大傢都看過。dll說明文檔後,你會明白的,這裡就不寫瞭,因為內容多)
停車卡功能模式:
1.尋卡模式:
尋卡模式分為三種情況:IDLE模式、ALL指定卡模式(0,1,2 均是int類型,是方法參數,下同)。
0表示IDLE模式,一次隻操作一張卡;
1表示ALL多張卡操作多張卡的模式;
2-表示指定卡模式,隻對序列號等於snr卡操作(隻有高級函數才【不常用】
也就是說,我們也可以同時操作多張卡。
對於多卡操作,實際操作是一張卡。讀寫器可以識別多張卡的序列號(但請註意,識別的順序是不確定的,最多可以識別4張卡,因為堆疊的厚度太厚,會超出讀寫器的識別范圍),並逐一操作。
因此,可以看出,多卡操作意義不大。但我建議你把它設置為1(不要說原因,你自己的感受並不重要)。
2.密碼驗證模式:
0KEYSET0的KEYA
4KEYSET0的KEYB
M1卡在驗證密碼時可以選擇密碼類型(A/B)。【其實M1卡有3套密碼(KEYSET0、KEYSET1、KEYSET2)共6個密碼(0~2,4~6表示這六個密碼),目的是適應不同的讀寫器。我們在這裡使用的是KEYSET0的2個密碼】
停車卡密碼機制及如何破解停車卡:
這可以說是M一卡的精髓,也是M1卡最復雜的地方,希望大傢耐心看完。
(請先看清楚M1卡結構)如上所述,每個塊在存取控制中都有三個相應的控制位,其定義如下:
塊0: C10 C20 C30
塊1: C11 C21 C31
塊2: C12 C22 C32
塊3: C13 C23 C33
我們可以利用密碼機制分別控制一個扇區的三個數據塊。數據塊(塊0、塊1、塊2)的訪問控制如下:
例如,當塊0的訪問控制位C10 C20 C30=100時,驗證密碼A或密碼B正確後可讀;驗證密碼B正確後可寫;不能加值或減值。
那麼M1卡修改密碼的方法是rf_changeb3
參數:
滴膠卡dev:通信設備標識符
_SecNr:扇區號(0~15)
KeyA:密碼A
_B0:塊0控制字,低3位(D2D1D0)對應C10、C20、C30
_B1:塊1控制字,低3位(D2D1D0)對應C11、C21、C31
_B2:塊2控制字,低3位(D2D1D0)對應C12、C22、C32
_B3:塊3控制字,低3位(D2D1D0)對應C13、C23、C33
_Bk:保留參數,取值為0
_KeyB:密碼B
從上面我們可以看出_B0、_B1、_B2、_B分別控制塊0、塊1、塊2、塊3。
我們可以從圖中看到_B0、_B1、_B2的可取值為 0、10、100、110、11、11、101、11111。
這裡一定要註意一點:
密碼到不能裝載M1卡在某個區域後更改該區域的密碼(最好在連接讀寫器後直接更改密碼),否則更改密碼將失敗並凍結風扇區域。如果你不小心這樣做瞭,解決辦法是完成讀寫操作,然後更改密碼。
與數據塊(塊0、1、2)不同,其存取控制如下:
_B3的取值與_B0相同。
正東智能卡公司是一傢專業的停車卡制造商
深圳正東智能卡技術有限公司是一傢專註於智能卡生產13年的大型智能卡制造商,現有生產面積6000平方米,生產線300多人,擁有多條智能卡生產線,主要產品有鑰匙卡、磁條卡、條形碼卡、醫院卡、校園卡滴膠卡、公交滴膠卡、社區門禁卡、停車卡、超會員卡等智能卡。
對於需要破解停車卡的客戶
1.合法使用
能證明自己的停車場使用情況。
3.如果系統由於系統集成商聯系不上等法律原因無法繼續使用,我們可以提供停車卡破解服務,所有非法原因不提供此服務。