RFID 卡片防復(fù)制
RFID 卡片防復(fù)制
這里的卡指的 MIFARE Classic 系列 或 NTAG 系列的卡。其它的卡沒接觸過,不了解。
防偽有兩層意義:
- 卡片防復(fù)制。比如小區(qū)卡被復(fù)制,使得出入小區(qū)的人員管理更困難了。這是需要防范的事情
- 卡片數(shù)據(jù)被破解。比如公交卡或食堂飯卡,如果破解了其中的數(shù)據(jù),就可以篡改金額。
復(fù)制會產(chǎn)生盜刷問題,需要在第一層解決。而卡內(nèi)數(shù)據(jù)加密是應(yīng)用層的工作,方式方法多種多樣。
這里討論卡片防復(fù)制,以小區(qū)卡為場景。
只使用卡UID系統(tǒng)
這種就是沒有加密了。把卡當(dāng)作 ID 卡來用。
復(fù)制方法:
讀出原卡 UID。 找一張可以擦寫 UID 的特殊卡,寫入 UID。
一般從廠商出來的卡片第0扇區(qū)第0塊不可寫,在這塊中存儲UID和廠商信息。但是塊0可重復(fù)擦寫的卡也可以找到,只是對于普通人稍微有點難度而已。
對于小區(qū)卡來,被復(fù)制會帶來隱患,比如:
用戶可以隨意復(fù)制卡,卡片最后流通就不一定是小區(qū)的住戶了。
如果被小區(qū)以外的人有一張復(fù)制卡,則可隨意進出小區(qū),帶來安全隱患
使用卡中的數(shù)據(jù),且數(shù)據(jù)被加密,加密使用 UID 作因子
因為不再只使用 UID,這樣系統(tǒng)設(shè)計時可以把用戶權(quán)限寫在卡里,從而不需要向門禁設(shè)備里同步了。
用法稍微高級一點。卡中的數(shù)據(jù)別人看不懂,但并沒有加大卡片被復(fù)制的難度。
復(fù)制方法同上:
讀出原卡所有數(shù)據(jù)。 找一張可以擦寫 UID 的特殊卡,寫入包括 UID 在內(nèi)的所有數(shù)據(jù)。
別人無法破解卡中的數(shù)據(jù),但還是有方法復(fù)制一張卡
在上一步基礎(chǔ)上,使用卡片本身的加密方法
- MIFARE CLASSIC 系統(tǒng)的卡,每個扇區(qū)都是獨立加密的。需要 KEYA, KEYB 校驗正確才能讀
- NTAG 系列的卡,有一個 32 bits 的 password 功能。可以配置成通過密碼驗證之后才允許讀
以 NTAG 為例。
每張卡有 32 bits 的密碼,只可校驗,讀出只能得到 0。
在發(fā)卡時,以 UID 再組合特定的密鑰因子,為這張卡生成 32 bits 的 password。
每張卡的密碼不同,密碼不能復(fù)制,密碼校驗不通過就不能讀卡。
在這種機制下,想復(fù)制一張卡的難度就進一步加大了。
結(jié)論
- 結(jié)合卡 UID 對數(shù)據(jù)加密,提高復(fù)制成本
- 使用卡片的加密功能,防復(fù)制

浙公網(wǎng)安備 33010602011771號