最近跟财務同事聊到了銀行經常用的“數字簽名”技術,也在思考,“數字簽名”能否在集團内部使用?當然,這是後話的事,其實在前面《數據庫數據防篡改加密之我見》一文中,也提到了數字簽名的相關技術内容和應用構想。今天本文的主題是了解“數字簽名”,隻有對它非常了解,才能對它應用自如,其實“數字簽名”沒有那麼神秘。
“數字簽名”有什麼用?在當下互聯網時代,網絡數據傳輸安全是非常重要的安全領域,而“數字簽名”技術就是保障網絡數據安全的一種加密技術手段,保證網絡傳輸數據的真實性、完整性、機密性、不可否認性,即簡單理解就是解決僞造、抵賴、冒充、篡改等安全問題。我個人理解,數字簽名就是解決不可否認性,即唯一性。
目前數字簽名應用非常廣泛,如在商業、金融、教育、醫療、政府等各領域都在應用,以電子合同舉例,當我們與銀行、證券金融機構有資金使用需求時,通常要簽訂網絡合同,在相關平台完成電子合同、身份識别驗證、數字簽名等過程,過程完成及确認後,合同即簽署生效,那你在平台上的簽名就屬于“數字簽名”。
需要了解的對稱加密、非對稱加密加密技術有兩種模式:對稱加密和非對稱加密。數字簽名屬于非對稱加密技術範疇。
對稱加密就是加密與解密過程都用同樣的密鑰。優點是簡單、快速、效率高,缺點是秘鑰的安全性問題,與算法無關,如果秘鑰管理和分配工作沒有到位,造成秘鑰洩露,安全性為零。
非對稱加密就是解決對稱加密的秘鑰管理安全性問題,一次産生一對秘鑰:公鑰、私鑰。公鑰公開發給需要的相關人員,私鑰由發送者安全保管。公鑰、私鑰都可以進行加密,即如果公鑰加密,則需要私鑰解密,反之亦然。比如你與銀行溝通信息,銀行提供給你公鑰,你用公鑰加密信息數據發送給銀行,銀行則用私鑰解密你發送的信息數據,這樣安全性大大提高,同時也方便快捷。
“數字簽名”是非對稱加密技術的一種應用非對稱加密有兩種加密過程:用公鑰加密,用私鑰加密。數字簽名就是私鑰加密過程。
大緻過程是:發送者用私鑰對數據進行加密,形成數字簽名和數據合在一起的發送包,利用網絡發送傳輸給接收者,接收者收到後用公鑰進行解密并核對信息摘要是否一緻,判斷數據的有效性。
詳細過程見下圖:
常見的PKI非對稱加密技術有哪些?
數字簽名是PKI的核心,常用于證書領域,如SSL、TLS、S/MIME等。
我們常見的PKI非對稱加密應用有:web安全(https)、VPN(IPsec等)、電子郵件SSL等。
數字簽名與數字加密有什麼區别?數字簽名也是一種加密過程,屬于PKI非對稱加密範疇,秘鑰是采用私鑰加密,有公鑰的人員就可以解密,并驗證數字簽名的正确性。
數字加密可以是對稱加密技術,如winrar、7-zip等軟件就是采用對稱加解密技術。也可以是非對稱加密技術,常用的是采用公鑰對數據進行加密,此時隻有唯一擁有私鑰的人員才能對數據解密。
數字加密還可以同時采用對稱加密和非對稱加密相結合的方法。如https應用,對稱加密用于數據實際傳輸過程,非對稱加密用于SSL握手時驗證公鑰/私鑰的所有權。
電子簽名與數字簽名是一個東西嗎?電子簽名我認為是一種泛概念,相對于紙質文件等線下手動簽名的一種對應線上簽名的概念,即“簽名”電子化。由于“簽名”電子化、線上化,需要許多技術措施保障,比如保障簽名的有效性、唯一性、真實性等,即防僞防篡改等,于是産生了“數字簽名”加密技術。
由于大家平常使用中不是專業人員,也沒有過于深入理解區别,加上“數字簽名”被廣泛應用,見得多了,于是大家都認為“電子簽名”就是“數字簽名”,逐漸形成了一個誤區。
,