PBOC/EMV之靜態(tài)數(shù)據(jù)認(rèn)證(SDA)與動(dòng)態(tài)數(shù)據(jù)認(rèn)證(DDA)
文章出處:http://56733.cn 作者:小馬 人氣: 發(fā)表時(shí)間:2011年10月09日
PBOC/EMV里有兩個(gè)非常重要的概念,SDA(staticdataauthentication)和DDA(dynamicdataauthentication),分別叫做靜態(tài)數(shù)據(jù)認(rèn)證和動(dòng)態(tài)數(shù)據(jù)認(rèn)證。這兩個(gè)認(rèn)證都是脫機(jī)下(off-line)的認(rèn)證。業(yè)內(nèi)人都知道磁卡和IC卡遷移的一個(gè)很重要的原因就是安全問題。
舉兩個(gè)磁卡犯罪的例子:
1磁卡本身的構(gòu)造原理使得它的數(shù)據(jù)非常容易被非法修改,你肯定不愿意有人非法修改你卡上的數(shù)據(jù),當(dāng)然如果是在你的余額后面加幾個(gè)0就另當(dāng)別論了。
2相信下面要舉的這個(gè)例子,很多人都聽過:犯罪分子要用兩個(gè)設(shè)備,讀卡器和針孔攝像機(jī)。他們把讀卡器與銀行原來的讀卡器固定一起,插卡口對(duì)齊,當(dāng)我們?nèi)″X時(shí)把卡插進(jìn)去時(shí),我們的卡上的信息就被他們的讀卡器讀出,然后他們用一張空白的卡就可以把我們的卡復(fù)制出來。針孔攝影機(jī)的作用就是當(dāng)我們?nèi)″X時(shí)竊取我們的密碼??ㄓ辛?,密碼也有了,剩下的步驟就是取錢了。
SDA可以解決上述第一個(gè)問題,它實(shí)現(xiàn)的原理是數(shù)字簽名。簡單的說,過程如下:IC卡的里的數(shù)據(jù)先簽個(gè)名,怎么簽名呢?當(dāng)然不是用筆直接上面寫個(gè)名字。它的做法是用Hash為這些數(shù)據(jù)生成一個(gè)簡短表示做為該數(shù)據(jù)的摘要,然后,把這個(gè)摘要加密,得到一個(gè)簽名;。再把數(shù)據(jù)和加密后的簽名發(fā)給終端。終端在這一頭先把收到的數(shù)據(jù)Hash,得到一個(gè)簽名,然后再把收到的加密簽名解密,又得到一個(gè)簽名,比較兩個(gè)簽名,就可以知道數(shù)據(jù)有沒有被修改過,如果數(shù)據(jù)被修改過,兩個(gè)簽名是不同的。驗(yàn)證不會(huì)通過。
DDA除了具有SDA的功能外,它最強(qiáng)大的地方就是解決上述第二種犯罪。它實(shí)現(xiàn)的原理如下:與SDA相比,它的簽名是動(dòng)態(tài)的。SDA的簽名在卡發(fā)行時(shí)就定好的,它加密所用的私鑰是發(fā)卡行的私鑰(如果你不理解私鑰和公鑰的概念,建議先看一下密碼學(xué)的相關(guān)知識(shí))。而DDA每次用來的簽名的數(shù)據(jù)是當(dāng)前交易中的一些動(dòng)態(tài)數(shù)據(jù),簽名加密所用的私鑰是IC卡私鑰,這個(gè)私鑰貯存在IC卡的一個(gè)安全區(qū)域里(這個(gè)很重要)。終端這一頭有與之相對(duì)應(yīng)的用來解密的公鑰。那么怎么實(shí)現(xiàn)防復(fù)制呢?
舉個(gè)例子說,張三的卡被李四復(fù)制了一張,李四拿著這張卡去取錢。在交易時(shí),IC卡會(huì)生成一個(gè)動(dòng)態(tài)的簽名給終端確認(rèn),關(guān)鍵的地方就在這里,這個(gè)動(dòng)態(tài)的簽名需要一個(gè)私鑰來加密,而這個(gè)IC卡私鑰貯存在IC卡里的安全區(qū)域里,李四不可能知道,李四隨便選一個(gè)私鑰來加密簽名,所以在終端這一頭的驗(yàn)證肯定是通不過的,因?yàn)楣€和私鑰已經(jīng)不對(duì)應(yīng)了。那么交易肯定會(huì)被強(qiáng)制中止,張三卡里的錢也就不會(huì)被李四取走。
DDA實(shí)在是太強(qiáng)大了,可以想像如果以后我們用的銀行卡全部都是有DDA功能的IC卡,將極大減少金融犯罪。Visa和master公司已經(jīng)宣布2011年之后,歐洲所有銀行發(fā)行的具有脫機(jī)功能的IC卡都要使用。