白雙元
(北京科藍軟件系統(tǒng)股份有限公司,太原 030000)
近年來,由于電信詐騙的頻發(fā),造成了惡劣的社會影響,對廣大民眾的財產(chǎn)安全造成威脅。2016年9月30日,中國人民銀行下發(fā)了《關于加強支付結算管理防范電信網(wǎng)絡新型違法犯罪有關事項的通知》(銀發(fā)〔2016〕261號)(簡稱261號文),從賬戶管理、銀行管理以及轉賬管理等多個方面來強化管控,加大對電信網(wǎng)絡詐騙的大計力度。而電信詐騙之所以猖獗很大程度上因為短信驗證碼驗證交易安全有很多漏斗。需要注意的是在261號文件的第二部分“加強轉賬管理”之中,明確了銀行非柜面轉賬的具體要求,“除向本人同行賬戶轉賬外,銀行為個人辦理非柜面轉賬業(yè)務,單日累計金額超過5萬元的,應當采用數(shù)字證書或者電子簽名等安全可靠的支付指令驗證方式。”數(shù)字簽名技術(又稱公鑰數(shù)字簽名、電子簽章)其所發(fā)揮的作用與紙上普通的物理簽名類似,但是其是利用公鑰加密技術領域之中的技術實現(xiàn)的。在一套完整的數(shù)字簽名之中定義了兩種互補的運算,其中一中運算用來簽名,另外一種運算用來驗證。數(shù)字簽名技術是國際上公認的一種安全驗證方式,這種驗證方式在網(wǎng)上銀行已經(jīng)應用多年,而中國金融認證中心(CFCA)“云證通”實現(xiàn)了數(shù)字簽名技術在手機銀行上的應用。
非對稱加密算法需要兩個密鑰來進行加密和解密,這兩個秘鑰是公開密鑰(public key,簡稱公鑰)和私有密鑰(private key,簡稱私鑰)。公鑰和私鑰是成對出現(xiàn)的,也就說,如果用私鑰加密,就用公鑰解密,如果用公鑰加密,就用私鑰解密。如圖1所示,B生成一對秘鑰給A,A的明文經(jīng)過B的公鑰加密形成密文發(fā)送給B,B收到A的密文,用B的私鑰加密得到A發(fā)給B的明文,如果傳輸過程中B的公鑰和密文被黑客得到也無妨,沒有B的私鑰,他們無法解析密文。

圖1 非對稱加密算法
報文摘要(MD)是一種用于檢查報文是否正確的方法。報文摘要指的是用單向哈希函數(shù)算法將任意長度的輸入報文處理,算出固定輸出。這個輸出便是報文摘要,由于使用了單向哈希函數(shù)算法,這個過程是不可逆的,也就是不能通過摘要反推出報文。消息摘要是用來保證數(shù)據(jù)完整性的。傳輸?shù)臄?shù)據(jù)一旦被修改那么計算出的摘要就不同,只要對比兩次摘要就可確定數(shù)據(jù)是否被修改過。
數(shù)字簽名驗簽技術是對非對稱加密技術以及報文摘要技術的綜合運用,利用發(fā)送者的私鑰將報文摘要信息進行加密,并與原文一起發(fā)送給接收者。接收者只可以采用發(fā)送者所提供的公鑰來對所加密的摘要信息進行解密,并利用HASH函數(shù)來講解密得到的摘要信息和所發(fā)送過來的原文摘要信息進行對比。如果對比的結果相同,那么就代表了所得到的信息是完整的,在傳輸?shù)倪^程之中沒有被修改過,否則就代表了信息是被修改過的,因此數(shù)字簽名可以對信息的完整性進行驗證。數(shù)字簽名是加密的過程,數(shù)字簽名驗簽是解密的過程。它可以保證傳輸信息的完整性,認證發(fā)送者的身份等。
數(shù)字證書是一個經(jīng)證書授權中心數(shù)字簽名的包含公開密鑰擁有者信息以及公開密鑰的文件。最簡單的證書包含一個公開密鑰、名稱以及證書授權中心的數(shù)字簽名。數(shù)字證書都有它的有效期。數(shù)字證書相當于數(shù)字身份證上的一個簽名,人們可以用它在網(wǎng)絡上識別身份。數(shù)字證書都是由證書授權(Certificate Authority)中心發(fā)行的。如果通訊的話,通信雙方必須信任對方證書,網(wǎng)銀的數(shù)字證書便儲存在Usbkey中。
擁有數(shù)字證書的數(shù)字簽名驗簽過程如圖2所示。

圖2 擁有數(shù)字證書的數(shù)字簽名驗簽過程
首先A與B都信任對方證書,A與B開始通信,A將明文進行摘要運算后得到摘要,再將摘要用A的私鑰加密,得到數(shù)字簽名,將密文和數(shù)字簽名一塊發(fā)給B。B收到A的消息后,先將密文用自己的私鑰解密,得到明文。將數(shù)字簽名用A的公鑰進行解密后,得到正確的摘要。對明文進行摘要運算,得到實際收到的摘要,將兩份摘要進行對比,如果一致,說明消息沒有被篡改。這也就是證書簽名驗簽的過程。
只要用戶在手機上安裝“云證通”APP或集成SDK到應用APP,“云證通”APP可以通過云證通平臺下發(fā)數(shù)字證書。數(shù)字證書儲存在客戶的手機中,互聯(lián)網(wǎng)應用接入云證通平臺,無需部署硬件設備。用戶使訪問互聯(lián)網(wǎng)服務,將手機作為安全認證載體,進行業(yè)務的認證與簽名。詳細如圖3所示。比如客戶做一筆轉賬交易,手機通過手機銀行APP將轉賬申請發(fā)送至手機銀行后臺服務,手機銀行后臺將這筆轉賬交易詳細的交易信息(這筆交易生成流水號等)發(fā)送給手機銀行,手機銀行將信息簽名后發(fā)送到云證書服務平臺進行驗簽,再將驗簽結果返回給手機銀行后臺和手機銀行APP,如果驗簽成功,說明交易的發(fā)起人和交易信息沒有被篡改過。確保了交易的安全。

圖3 CFCA基于手機端的簽名驗簽的應用