M1卡破解密碼控制位及控制規(guī)則_第1頁
M1卡破解密碼控制位及控制規(guī)則_第2頁
M1卡破解密碼控制位及控制規(guī)則_第3頁
M1卡破解密碼控制位及控制規(guī)則_第4頁
M1卡破解密碼控制位及控制規(guī)則_第5頁
已閱讀5頁,還剩7頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、實用文案一、主要指標(biāo)l容量為 8K位EEPROMl分為16個扇區(qū),每個扇區(qū)為 4塊,每塊16個字節(jié),以塊為存取單位l每個扇區(qū)有獨(dú)立的一組密碼及訪問控制l每張卡有唯一序列號,為32位l具有防沖突機(jī)制,支持多卡操作l無電源,自帶天線,內(nèi)含加密控制邏輯和通訊邏輯電路l數(shù)據(jù)保存期為10年,可改寫10萬次,讀無限次l工作溫度:-20 °C50 °Cl工作頻率:13.56MHZl通信速率:106KBPSl讀寫距離:10mm 以內(nèi)(與讀寫器有關(guān))二、存儲結(jié)構(gòu)1、M1卡分為16個扇區(qū),每個扇區(qū)由 4塊(塊0、塊1、塊2、塊3)組成,(我們也將 16個扇區(qū)的64個塊按絕對 地址編號為063,

2、存貯結(jié)構(gòu)如下圖所示:塊0數(shù)據(jù)塊0扇區(qū)0塊1數(shù)據(jù)塊1塊2數(shù)據(jù)塊2塊3密碼A存取控制密碼B控制塊3塊0數(shù)據(jù)塊4扇區(qū)1塊1數(shù)據(jù)塊5塊2數(shù)據(jù)塊6塊3密碼A存取控制密碼B控制塊70數(shù)據(jù)塊60扇區(qū)151數(shù)據(jù)塊612數(shù)據(jù)塊623密碼A存取控制密碼B控制塊632、 第0扇區(qū)的塊0 (即絕對地址 0塊),它用于存放廠商代碼,已經(jīng)固化,不可更改。3、每個扇區(qū)的塊 0、塊1、塊2為數(shù)據(jù)塊,可用于存貯數(shù)據(jù)。數(shù)據(jù)塊可作兩種應(yīng)用:用作一般的數(shù)據(jù)保存,可以進(jìn)行讀、寫操作。用作數(shù)據(jù)值,可以進(jìn)行 初始化值、加值、減值、讀值操作。4、 每個扇區(qū)的塊 3為控制塊,包括了密碼 A、存取控制、密碼 B。具體結(jié)構(gòu)如下:A0 A1 A2

3、A3 A4 A5 FF 07 80 69 B0 B1 B2 B3 B4 B5密碼A( 6字節(jié)) 存取控制(4字節(jié)) 密碼B( 6字節(jié))5、 每個扇區(qū)的密碼和存取控制都是獨(dú)立的,可以根據(jù)實際需要設(shè)定各自的密碼及存取控制。存取控制為4個字節(jié),共32位,扇區(qū)中的每個塊(包括數(shù)據(jù)塊和控制塊)的存取條件是由密碼和存取控制共同決定的,在存取控制中每個塊都有相應(yīng)的三個控制位,定義如下:塊 0 :C10 C20 C30塊 1 :C11 C21 C31塊 2 :C12 C22 C32塊 3 :C13 C23 C33二個控制位以正和反兩種形式存在于存取控制字節(jié)中,決定了該塊的訪冋權(quán)限(如進(jìn)行減值操作必須驗證KEY

4、 A,進(jìn)行加值操作必須驗證KEY B,等等)。三個控制位在存取控制字節(jié)中的位置,以塊0為例:對塊0的控制:bit 7 6 5 4 3 2 1 0字節(jié)6C20_bC10_b字節(jié)7C10C30_b字節(jié)8C30C20字節(jié)9(注:C10_b表示C10取反)存取控制(4字節(jié),其中字節(jié) 9為備用字節(jié))結(jié)構(gòu)如下所示:bit 7 6 5 4 3 2 1 0字節(jié)6C23_bC22_bC21_bC20_bC13_bC12_bC11_bC10_b字節(jié)7C13C12C11C10C33_bC32_bC31_bC30_b字節(jié)8C33C32C31C30C23C22C21C20字節(jié)9(注:_b表示取反)6、數(shù)據(jù)塊(塊0、塊1

5、、塊2)的存取控制如下:控制位(X=0.1.2 )訪問條件(對數(shù)據(jù)塊0、1、2)C1XC2XC3XReadWriteIncrementDecrement, transfer,Restore000KeyA|BKeyA|BKeyA|BKeyA|B010KeyA|BNeverNeverNever100KeyA|BKeyBNeverNever110KeyA|BKeyBKeyBKeyA|B001KeyA|BNeverNeverKeyA|B011KeyBKeyBNeverNever101KeyBNeverNeverNever111NeverNeverNeverNever(KeyA|B表示密碼A或密碼B,

6、Never表示任何條件下不能實現(xiàn))例如:當(dāng)塊0的存取控制位 C10 C20 C30= 0 0 1 時,驗證密碼 A或密碼B正確后可讀; 驗證密碼B正確后可寫;不能進(jìn)行加值、減值操作。7、控制塊塊3的存取控制與 數(shù)據(jù)塊(塊0、1、2 )不同,它的存取控制如下:密碼A存取控制密碼BC13C23C33ReadWriteReadWriteReadWrite000NeverKeyA|BKeyA|BNeverKeyA|BKeyA|B010NeverNeverKeyA|BNeverKeyA|BNever100NeverKeyBKeyA|BNeverNeverKeyB110NeverNeverKeyA|BNe

7、verNeverNever001NeverKeyA|BKeyA|BKeyA|BKeyA|BKeyA|B011NeverKeyBKeyA|BKeyBNeverKeyB101NeverNeverKeyA|BKeyBNeverNever111NeverNeverKeyA|BNeverNeverNever例如:當(dāng)塊 3的存取控制位 C13 C23 C33= 0 0 1 時,表示:密碼A :不可讀,驗證 KEYA或KEYB正確后,可寫(更改)存取控制:驗證KEYA或KEYB正確后,可讀、可寫。密碼B :驗證KEYA或KEYB正確后,可讀、可寫。新卡片中的控制字(FF 07 80 69 )密碼A可用,密碼

8、B不可用; 推薦的控制字方案一:7F 07 88 69此控制字說明:數(shù)據(jù)塊:用密碼A或B都可以讀寫;控制塊:密碼A :由密碼B來寫,不可讀;密碼B :由密碼B來寫,不可讀;控制字:用密碼A或B都可讀,由密碼 B寫;方案二:08 77 8F 69此控制字說明:數(shù)據(jù)塊:用密碼A讀,由密碼B讀寫;控制塊:密碼A :由密碼B來寫,不可讀;密碼B :由密碼B來寫,不可讀;控制字:用密碼A或B都可讀,由密碼 B寫;三、卡片卡片的電氣部分只由一個天線和ASIC組成天線:卡片的天線是只有幾組繞線的線圈,很適于封裝到ISO卡片中。ASIC :卡片的ASIC由一個高速(106KB波特率)的 RF接口,一個控制單元

9、和一個8K位EEPROM 組成。四、對數(shù)據(jù)塊的操作讀(Read):讀一個塊;寫(Write ):寫一個塊;加(In creme nt ):對數(shù)值塊進(jìn)行加值;減(Decreme nt ):對數(shù)值塊進(jìn)行減值;存儲(Restore ):將塊中的內(nèi)容存到數(shù)據(jù)寄存器中;傳輸(Transfer ):將數(shù)據(jù)寄存器中的內(nèi)容寫入塊中;中止(Halt ):將卡置于暫停工作狀態(tài);對于電腦周邊編程,主要有兩種思路(應(yīng)該沒有第三種了)?!驹敿?xì)說明見我博文永和豆?jié){管理系統(tǒng)基礎(chǔ)工作總結(jié)】、利用 windows 系統(tǒng)本身dll庫。、利用硬件產(chǎn)家提供的dll。本篇對M1卡的編程是利用上述第二種方法。M1卡最為重要的優(yōu)點(diǎn)是可讀可

10、寫并且安全性高的多功能卡。這些優(yōu)點(diǎn)與其自身的結(jié)構(gòu)密不可分。M1結(jié)構(gòu):M1卡分為16個扇區(qū),每個扇區(qū)4塊(塊03),共64塊,按塊號編址為 063。第0扇區(qū)的塊0 (即 絕對地址 0 塊)用于存放廠商代碼,已經(jīng)固化,不可更改。其他各扇區(qū)的塊0、塊 1 、塊 2 為數(shù)據(jù)塊 ,用于存貯數(shù)據(jù);塊3為控制塊,存放密碼A、存取控制、密碼 B。每個扇區(qū)的密碼和存取控制都是獨(dú)立的,可以根據(jù)實際 需要設(shè)定各自的密碼及存取控制。M1 卡運(yùn)作機(jī)理:連接讀寫器t尋卡t識別卡(獲取卡序列號從多卡中選一張卡t向卡中緩沖區(qū)裝載密碼t驗證密碼t進(jìn) 行讀寫t關(guān)閉連接即(代碼說明)Open_USB t rf_request t

11、rf_anticoll t rf_select t rf_load_key t rf_authentication t (/a_hex) t rf_read/rf_write t (hex_a) t Close_USB如果概括來說的話,主要也就四部分 開關(guān)連接、尋卡、驗證密碼、讀取 。(至于詳細(xì)程序代碼,相信大家自己看過 dll 說明文檔后,自己會明白的,這里就不寫了,因為內(nèi)容多)M1 卡功能模式:1.尋卡模式:尋卡模式分三種情況: IDLE 模式、 ALL 模式及指定卡模式( 0, 1 , 2 均是 int 類型,是方法參數(shù),下同)。0 表示 IDLE 模式,一次只對一張卡操作;1 表示 A

12、LL 模式,一次可對多張卡操作;2 表示指定卡模式,只對序列號等于 snr 的卡操作(高級函數(shù)才有)【不常用】 也就是說,我們一次也可以同時操作多張卡。對于多卡操作,其實際真正執(zhí)行操作的還是一張卡。讀寫器能識別多張卡的序列號(但注意識別出的順序是不定的,并且最多也就能識別 4 張卡,因為卡疊放的厚度太厚,會超出讀寫器的識別范圍),并一一進(jìn)行操作。 所以由此看出,多卡操作的意義并不大。但我建議大家還是設(shè)置為 1 好了(原因不說了,自己感受吧,其實 無所謂)。2.密碼驗證模式:0 KEYSET0 的 KEYA4 KEYSET0 的 KEYBM1 卡可以在驗證密碼時選擇密碼類型( A/B )?!酒鋵?/p>

13、 M1 卡有 3 套密碼( KEYSET0、 KEYSET1、KEYSET2),共6個密碼(用02、46來表示這六個密碼),目的是為了適應(yīng)不同讀寫器。而這里我們用的是 KEYSET0 的 2 個密碼】M1 卡密碼機(jī)制:這可以說是 M1 卡的精髓了,也是 M1 卡最為復(fù)雜的地方,希望大家耐心看完。(請先看明白M1卡結(jié)構(gòu))如上所說,在 存取控制中每個塊都有相應(yīng)的三個 控制位,它們的定義如下:塊0 :C10 C20 C30塊1 :C11 C21 C31塊2 :C12 C22 C32塊3 :C13 C23 C33一個扇區(qū)的三個數(shù)據(jù)塊,我們可以利用密碼機(jī)制對它們分別進(jìn)行權(quán)限控制。數(shù)據(jù)塊(塊0、塊1、塊2

14、)的存 取控制如下:控制植a=o. 2)訪冋條件(對塊叭1> 2)C1XC3XKeadIncxenentDecrement tiansfer restore000KeyA|BKejrAlERsy£|B10KeyA|BKeverMuir 肛100KeyA|3KeyENeTfiTNetez110XeyA|BKeyBKeyBffey£|E001KeyA|BNeverNeveiKeyAjB011KeyBWeveiNever101KeyBNeverNeve i111KeverIlererNerar表示密咼威密碼巧Newark示任何條件下不能實現(xiàn)例如:當(dāng)塊0的存取控制位 C10

15、C20 C30=100時,驗證密碼 A或密碼B正確后可讀;驗證密碼 B正確后可寫;不能進(jìn)行加值、減值操作。那么M1卡修改密碼的方法是 rf_changeb3參數(shù):icdev :通訊設(shè)備標(biāo)識符_SecNr :扇區(qū)號(015 )KeyA :密碼 AB0:塊 0 控制字,低3 位( D2D1D0對應(yīng)C10 、C20 、C30B1 :塊 1 控制字,低3 位( D2D1D0對應(yīng)C11 、C21 、C31B2:塊 2 控制字,低3 位( D2D1D0對應(yīng)C12 、C22、C32B3:塊 3 控制字,低3 位( D2D1D0對應(yīng)C13 、C23、C33保留參數(shù),取值為_KeyB :密碼 B由上我們看出 _

16、B0、B1 、 _B2、B3 分別控制塊 0、塊 1、塊 2、塊 3 。由圖我們可知 _B0、B1 、B2 的可取值為 0、10、100、110、1、11、101、111。這里大家一定要注意點(diǎn):八、,否則更改密不能裝載密碼到 M1 卡某一扇區(qū)后再更改那扇區(qū)的密碼(最好連接完讀寫器后直接更改密碼) 碼會失敗而凍結(jié)扇區(qū)。如果不慎這樣了,解決的辦法是完成一次讀寫操作,再更改密碼。控制塊(塊3)的存取控制與數(shù)據(jù)塊(塊0、1、2)不同,它的存取控制如下:密碼A存取捽制C13C23C33ReadVri teReadWriteReadVxite000NeverKeyA|ENeverKeyA|EKeyA|B01 0JJevexNeverKe/A|BNeverKeyA|BNever100MeireTKeyBKeyA|BNeverNeverKeyB110NeveiNeverKeyA|BNeverNeirerNever001NeverXeyA|BKeyA|BReyAjBReyA | EKeyk|B011NeverKe

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論