<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          關(guān) 閉

          新聞中心

          EEPW首頁 > 安全與國防 > 設(shè)計應(yīng)用 > 由Mifare 1卡破解帶來的危險以及應(yīng)對方法

          由Mifare 1卡破解帶來的危險以及應(yīng)對方法

          作者: 時間:2009-09-02 來源:網(wǎng)絡(luò) 收藏

          在整個門禁管理系統(tǒng)中,門禁是安全管理的基礎(chǔ)核心。此次M1卡被破解,正是將門禁系統(tǒng)的最核心的安全控制打破,使門禁卡的復(fù)制偽造成為可能。要解決門禁系統(tǒng)的安全問題,需將M1卡替換為CPU卡。而整個系統(tǒng)中與卡片有直接交互的只有兩個地方:后臺系統(tǒng)中的發(fā)卡子系統(tǒng)和最前端的識別系統(tǒng),即門禁讀卡頭。對于絕大多數(shù)門禁系統(tǒng)而言,門禁讀卡頭只是將卡片卡號讀取出來通過控制器送到后臺系統(tǒng),系統(tǒng)通過卡號及后臺授權(quán)情況進(jìn)行控制。這樣我們在進(jìn)行系統(tǒng)升級改造時,只需要改造門禁讀卡頭和發(fā)卡子系統(tǒng),使之能夠識別讀寫CPU卡,并對CPU卡完成認(rèn)證,其他系統(tǒng)和軟件都無需改動,即可快速完成從M1卡到CPU卡的遷移。

          具體方案如下:

          1、更換門禁讀卡器,使用支持CPU卡的門禁讀卡器。由于門禁讀卡器與控制器之間的通訊接口有統(tǒng)一的規(guī)范,這種更換改造很容易實現(xiàn)。

          2、對原系統(tǒng)中的發(fā)卡子系統(tǒng)進(jìn)行改造,更換讀卡器,使之能夠發(fā)CPU卡。由于各個門禁廠商的軟件平臺都不同,因此這項改造需要原門禁系統(tǒng)廠商配合完成。

          3、如果直接改造發(fā)卡系統(tǒng)軟件有困難,可以開發(fā)新的CPU卡發(fā)卡子系統(tǒng),與原系統(tǒng)后臺數(shù)據(jù)庫對接,實現(xiàn)CPU卡發(fā)卡。此種方式實現(xiàn)相對簡單,但需要了解原系統(tǒng)的數(shù)據(jù)庫接口,仍需要原廠商的一些支持。不過,許多門禁管理軟件支持直接輸入卡號的發(fā)卡方式,這就為系統(tǒng)改造創(chuàng)造了非常便利的條件。

          與門禁系統(tǒng)相似,城市公交一卡通系統(tǒng)雖然更為復(fù)雜,但系統(tǒng)中的清分清算等主要部分都并不與直接關(guān)聯(lián)。如圖所示:

          在一卡通系統(tǒng)中,與卡直接相關(guān)的子系統(tǒng)包括:發(fā)卡子系統(tǒng)、消費(fèi)終端、卡務(wù)管理子系統(tǒng);對發(fā)卡子系統(tǒng)的改造主要是將初始化M1卡流程改造為初始化CPU卡;卡務(wù)管理子系統(tǒng)的改造也相對簡單,實現(xiàn)CPU卡讀寫操作即可;決定改造是否成功的關(guān)鍵是消費(fèi)終端的升級改造,不僅需要能夠讀寫CPU卡,而且要將M1卡的交易流程升級為CPU卡標(biāo)準(zhǔn)交易流程,對系統(tǒng)開發(fā)商而言需要有足夠的對CPU卡應(yīng)用的經(jīng)驗和理解。



          關(guān)鍵詞: NXP Mifare 同方 智能卡 IC卡

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();