伴隨著工業(yè)自動(dòng)化以及產(chǎn)能的進(jìn)一步升級(jí),大型工廠也將向高度集成化方向轉(zhuǎn)變。與之相關(guān),電子行業(yè)的轉(zhuǎn)變則主要集中在供電方案,IOT控制,與信息安全層面。
本文則主要討論在工業(yè)4.0發(fā)展進(jìn)程下,工業(yè)領(lǐng)域的信息安全,以及與之相關(guān)的電子方案對(duì)比:
大型工業(yè)網(wǎng)絡(luò)正由單純的OT向OT+IT的整合形式改變,行業(yè)領(lǐng)先的服務(wù)商已經(jīng)開始綜合布局相關(guān)產(chǎn)業(yè)。大型工業(yè)包含大量小型連接傳感器,都可能成為系統(tǒng)的潛在入口點(diǎn),受感染的個(gè)人電腦也可能對(duì)合并OT和IT流量的工廠造成問(wèn)題。因此不論是物聯(lián)網(wǎng),亦或是集成化工業(yè),面對(duì)產(chǎn)業(yè)升級(jí),勢(shì)必增強(qiáng)整體集成商安全防護(hù),進(jìn)而帶動(dòng)新的市場(chǎng)需求。
信息安全,主要針對(duì)的是Cyber Attack,對(duì)象是通過(guò)連接互聯(lián)網(wǎng)的設(shè)備和系統(tǒng)訪問(wèn)系統(tǒng),例如傳感器、可編程邏輯控制器(plc)、分布式控制系統(tǒng)(dcs)以及IIoT(工業(yè)物聯(lián)網(wǎng))設(shè)備中的其他傳感器,例如智能報(bào)警器、智能斷路器等。這些工業(yè)自動(dòng)化和控制系統(tǒng)(IACS)容易受到惡意軟件、數(shù)據(jù)泄露和泄露的攻擊。隨著工業(yè)物聯(lián)網(wǎng)設(shè)備在傳統(tǒng)系統(tǒng)和解決方案中的集成不斷增加,關(guān)鍵基礎(chǔ)設(shè)施和其他工業(yè)控制系統(tǒng)網(wǎng)絡(luò)越來(lái)越容易受到網(wǎng)絡(luò)攻擊。
對(duì)抗這種日益增長(zhǎng)的威脅的最佳方法是在產(chǎn)品或系統(tǒng)級(jí)別建立保護(hù)。從本質(zhì)上講,使用設(shè)計(jì)安全的理念、標(biāo)準(zhǔn)和對(duì)策,可以在網(wǎng)絡(luò)攻擊開始之前就阻止它。這里就引入了信息安全的概念以及行業(yè)標(biāo)準(zhǔn)。
信息安全概念解讀:
其實(shí),信息安全本身就是一個(gè)很寬泛的概念。早在這個(gè)概念被引入工業(yè)領(lǐng)域之前,工業(yè)領(lǐng)域,本身就根據(jù)應(yīng)用存在安全標(biāo)準(zhǔn)。筆者從比較容易理解和區(qū)分的角度切入——信息安全概念的產(chǎn)生,主要因?yàn)楫a(chǎn)品設(shè)備開始聯(lián)網(wǎng)之后,網(wǎng)絡(luò)攻擊成為一種真正的風(fēng)險(xiǎn),因此引入信息安全的概念,并制定相關(guān)標(biāo)準(zhǔn),指導(dǎo)企業(yè)生產(chǎn)設(shè)計(jì),提高工業(yè)系統(tǒng)之間的互連和兼容性,規(guī)范標(biāo)標(biāo)準(zhǔn)通信協(xié)議。
這里,引入行業(yè)最為廣泛應(yīng)用的標(biāo)準(zhǔn)——ISA/IEC 62443系列標(biāo)準(zhǔn)作為討論主體,此標(biāo)準(zhǔn)定義了實(shí)施和維護(hù)電子安全工業(yè)自動(dòng)化和控制系統(tǒng)(IACS)的要求和流程。是應(yīng)對(duì)網(wǎng)絡(luò)安全挑戰(zhàn)整體的方法,彌合了運(yùn)營(yíng)和信息技術(shù)之間的差距,以及流程安全和網(wǎng)絡(luò)安全之間的差距。(筆者注:針對(duì)全部IACS工業(yè)自動(dòng)化和控制系統(tǒng)(Industrial automation and control systems)的行業(yè)設(shè)定了網(wǎng)絡(luò)安全基準(zhǔn),包括樓宇自動(dòng)化、發(fā)電和配電、醫(yī)療設(shè)備、運(yùn)輸以及化工、石油和天然氣等流程行業(yè)。參與機(jī)構(gòu)則包含:國(guó)際自動(dòng)化學(xué)會(huì)(ISA)、國(guó)際標(biāo)準(zhǔn)化組織(ISO)和國(guó)際電工委員會(huì)(IEC)。)
其實(shí)這樣解讀還是過(guò)于書面化,筆者在翻看ISA的官網(wǎng)介紹時(shí)也覺得略有拗口,如果稍微俠義地理解,信息安全的本質(zhì)是——通過(guò)算法加密以及安全驗(yàn)證,保證信息傳輸,命令控制不被第三方篡改。
如果廣義全面的理解,信息安全標(biāo)準(zhǔn)包含很多,涵蓋了工廠在人員、流程和技術(shù)等多方面指導(dǎo)。ISA/IEC 62443系列涉及工業(yè)自動(dòng)化和控制系統(tǒng)(IACS)整個(gè)生命周期的安全性(適用于所有自動(dòng)化和控制系統(tǒng),而不僅僅是工業(yè)系統(tǒng),所以其實(shí)IEC62443標(biāo)準(zhǔn)已經(jīng)包含了信息安全,與安全生產(chǎn)(功能安全包含其中)等綜合信息。這也比較好理解,單純的算法加密不能絕對(duì)保證系統(tǒng)安全運(yùn)行,要在其他區(qū)塊有序工作的前提下。(It is important to introduce the three basic roles that help protect industrial facilities from cyber attacks.)(筆者注:這里涉及較多的終端需求客戶包括Equifax、Target、SolarWinds等行業(yè)巨頭,以及世界各地的大學(xué)、公用事業(yè)和政府機(jī)構(gòu)。這些攻擊包括數(shù)據(jù)泄露和盜竊、勒索軟件、系統(tǒng)滲透和身份盜竊,以及全國(guó)范圍內(nèi)對(duì)電力和水等關(guān)鍵基礎(chǔ)設(shè)施的攻擊。)
Picture from ISA website.
行業(yè)標(biāo)準(zhǔn)解讀:
ISA/IEC 62443分為四個(gè)層次(通用、策略和過(guò)程、系統(tǒng)和組件)。其實(shí)是分四個(gè)部分,一般根據(jù)經(jīng)驗(yàn),企業(yè)產(chǎn)品需要通過(guò)3-3以及4-2認(rèn)證,與設(shè)備,以及組件相關(guān)的重點(diǎn)是第四部分4-1和4-2。
從更宏觀的概念,ISA/IEC 62443定義了工業(yè)控制系統(tǒng)的概念,引入了一個(gè)五級(jí)功能參考模型,將這些功能級(jí)別劃分為區(qū)域和管道,并定義了系統(tǒng)安全的基本要求(基本要求- FR)。同樣也被認(rèn)為是工業(yè)自動(dòng)化和控制系統(tǒng)(IACS) industrial automation and control system的是任何控制系統(tǒng)及其相關(guān)的通信手段(OSI模型的第2級(jí)或第3級(jí))以及對(duì)其實(shí)現(xiàn)有用的接口。本地和/或分布式工業(yè)控制系統(tǒng)(也稱為SCADA)通常由以下部分組成:
- DCS(分布式控制系統(tǒng))
- PLC(可編程邏輯控制器)
- RTU(遠(yuǎn)程終端單元)
- BPCS(基本過(guò)程控制系統(tǒng))
- 安全儀表系統(tǒng)(SIS)
- 通信系統(tǒng)(L2和L3 OSI模型,如交換機(jī)、調(diào)制解調(diào)器、路由器、無(wú)線通信設(shè)備、防火墻等)。
對(duì)應(yīng)在安全方面的表現(xiàn)為——
- FR1—識(shí)別、身份驗(yàn)證控制和訪問(wèn)控制(AC)—在允許訪問(wèn)IACS之前識(shí)別和驗(yàn)證所有用戶(人工、流程和設(shè)備)。
- FR2 -用戶控制(UC):確保所有識(shí)別的用戶(人、進(jìn)程和設(shè)備)都有權(quán)限在系統(tǒng)上執(zhí)行所需的操作,并監(jiān)控這些權(quán)限的使用。
- FR3 -數(shù)據(jù)完整性(DI):確保通信通道和存儲(chǔ)目錄中設(shè)備和信息的完整性(防止未經(jīng)授權(quán)的更改)。
- FR4 -數(shù)據(jù)機(jī)密性(DC):確保通過(guò)通信通道和存儲(chǔ)目錄的信息不被分散。
- FR5 -限制數(shù)據(jù)流(RDF) -將系統(tǒng)劃分為區(qū)域和管道,以避免不必要的數(shù)據(jù)傳播。
- FR6 -事件及時(shí)響應(yīng)(TRE):通過(guò)及時(shí)報(bào)告和及時(shí)決策來(lái)響應(yīng)安全漏洞。
- FR7 -資源可用性(RA) -在拒絕服務(wù)攻擊期間確保系統(tǒng)和資產(chǎn)可用性。
Physical architecture model of an industrial network Picture from Cisco Lab website.
在市面上,集合服務(wù)系統(tǒng)與網(wǎng)絡(luò)設(shè)備一起工作的公司,可以提供對(duì)應(yīng)整體解決方案,包含用戶、時(shí)間、位置、威脅、漏洞和訪問(wèn)類型等屬性的全面上下文身份。這個(gè)身份(人的或其他身份)可用于執(zhí)行與身份的業(yè)務(wù)角色匹配的高度安全的訪問(wèn)策略。管理員可以對(duì)允許網(wǎng)絡(luò)上的端點(diǎn)的人員、內(nèi)容、時(shí)間、位置和方式進(jìn)行精確控制。同時(shí)操作系統(tǒng)可以集成多個(gè)外部身份提供者,舉例如Microsoft Active Directory。
具體在應(yīng)用層面的安全流程為——集成商(提供操作系統(tǒng)和網(wǎng)絡(luò)設(shè)備的方案公司)提供了易于部署的內(nèi)部證書頒發(fā)機(jī)構(gòu)。(筆者注:這里大部分均可支持獨(dú)立部署,也支持證書頒發(fā)機(jī)構(gòu)與現(xiàn)有企業(yè)公鑰基礎(chǔ)設(shè)施集成的部署,并支持手動(dòng)創(chuàng)建批量或單個(gè)證書和密鑰對(duì),以高度安全的方式將設(shè)備連接到網(wǎng)絡(luò)。)對(duì)于人類用戶訪問(wèn)工廠車間的Windows工作站或遠(yuǎn)程進(jìn)入網(wǎng)絡(luò),平臺(tái)可以提供多因素身份驗(yàn)證(MFA),在授予訪問(wèn)權(quán)限之前驗(yàn)證用戶身份。為Windows登錄安裝Duo身份驗(yàn)證會(huì)為所有交互式用戶Windows登錄嘗試添加MFA,無(wú)論是在本地控制臺(tái)還是通過(guò)遠(yuǎn)程桌面協(xié)議(RDP)均可。
同時(shí),方案商還會(huì)提供資產(chǎn)清單和流量數(shù)據(jù)的可見性。它還可以檢測(cè)使用明文協(xié)議發(fā)送的憑據(jù)的存在,使管理員有機(jī)會(huì)在中間人攻擊發(fā)生之前補(bǔ)救這種情況。
從產(chǎn)品設(shè)備層面:
與一般的ISO/IEC標(biāo)準(zhǔn)不同的是,若想取得IEC 62443-4-2與IEC 62443-3-3的證書,必須先通過(guò)IEC 62443 -4-1的認(rèn)證,也就是說(shuō)對(duì)產(chǎn)品供應(yīng)商而言,必須先確保機(jī)構(gòu)內(nèi)產(chǎn)品開發(fā)流程的安全,才能申請(qǐng)產(chǎn)品安全認(rèn)證。目前優(yōu)先經(jīng)受市場(chǎng)考驗(yàn)的主要為IoT設(shè)備。海外市場(chǎng)越來(lái)越多的被要求提供安全等級(jí)(Security Level)證明,而IEC 62443 -4-2規(guī)范便是對(duì)應(yīng)安全等級(jí)(Security Level)的要求細(xì)節(jié),因此隨著市場(chǎng)對(duì)安全需求的增加,IEC62443-4-2認(rèn)證也日顯重要。
驗(yàn)證IEC 62443-4-2,首先須依據(jù)IEC 62443-4-1定義的開發(fā)流程來(lái)實(shí)際制作IEC 62443-4-2的組件,組件涵蓋軟件應(yīng)用(Software Application)、嵌入式設(shè)備(Embedded device)、網(wǎng)通設(shè)備(Network device)以及控制設(shè)備(Host device)四類,同時(shí)技術(shù)安全也需滿足自訂的安全等級(jí)(Security Level)目標(biāo)下的所有要求項(xiàng)目,才能順利取得證書。(筆者注:關(guān)于安全流程評(píng)估,會(huì)有第三方專業(yè)公司例如Security Pattern等公司可以提供評(píng)估的指導(dǎo)資源,以解決威脅、漏洞和潛在后果)
ISA/IEC 62443標(biāo)準(zhǔn)通常指安全密鑰存儲(chǔ)或加密密鑰保護(hù)。加密算法是用于執(zhí)行數(shù)學(xué)函數(shù)的指令,從硬件的角度來(lái)說(shuō),如果沒有觸發(fā)數(shù)學(xué)運(yùn)算的相關(guān)密鑰的保護(hù),實(shí)際上根本沒有安全性,因此安全的密鑰存儲(chǔ)立即變得至關(guān)重要。安全密鑰存儲(chǔ)既保護(hù)設(shè)備物理邊界內(nèi)的加密操作,也保護(hù)加密密鑰。密鑰和算法必須包含在設(shè)備中的相同安全邊界中,以便在事務(wù)期間不能暴露它們。安全密鑰存儲(chǔ)的魯棒性測(cè)試符合定義密鑰保護(hù)魯棒性的通用標(biāo)準(zhǔn)聯(lián)合解釋庫(kù)(JIL)評(píng)級(jí)量表。
ISA/IEC 62443要求“安全密鑰存儲(chǔ)”或保護(hù)加密密鑰。這不是含糊不清的安全術(shù)語(yǔ),而不是硅設(shè)計(jì)的特定功能。一種安全的密鑰存儲(chǔ)或保護(hù)行為。密鑰包括實(shí)現(xiàn)一個(gè)物理安全邊界,其中包括加密操作和加密鍵。如果密鑰和算法不在同一安全邊界中,則密鑰將在期間的某個(gè)時(shí)刻暴露事務(wù)。
ISA/IEC 62443-4-2中,有專門列出安全要求以及對(duì)應(yīng)描述:
那些適用于所有類型組件的組件需求被標(biāo)記為“CR”,而其他的要求根據(jù)所適用的組件類型進(jìn)行標(biāo)記(分別為:EDR嵌入式設(shè)備、SAR軟件應(yīng)用、HDR主機(jī)設(shè)備、NDR(Network Devices).
IEC 62443-4-1標(biāo)準(zhǔn)定義了有效的如標(biāo)識(shí)和身份驗(yàn)證、代碼簽名、開發(fā)環(huán)境安全和硬件安全。組織可以為每個(gè)需求選擇成熟度級(jí)別;然而,為了獲得認(rèn)證,遵守所有要求是很重要的。一個(gè)組織獲得IEC62443-4-1認(rèn)證從任何IEC/ISA批準(zhǔn)的全球認(rèn)證機(jī)構(gòu),如Underwriters Laboratories (UL), Intertek, TüV, CertX和其他,為安全開發(fā)生命周期保證(SDLA),當(dāng)它證明符合所有要求。
這些具象化到系統(tǒng)集成商的能力體現(xiàn),可以表現(xiàn)為幾個(gè)方面,有些包含硬件設(shè)計(jì),有些則主要體現(xiàn)在系統(tǒng)架構(gòu)方面比如:
最小化攻擊面積。每當(dāng)向現(xiàn)有產(chǎn)品或系統(tǒng)添加新特性時(shí),都會(huì)給整個(gè)系統(tǒng)增加一定數(shù)量的安全風(fēng)險(xiǎn)。從安全的角度來(lái)看,組織通過(guò)各種可能的方法來(lái)尋找減少和最小化攻擊面的總體大小的方法是非常重要的,具體減少接口的方式包含:減少用戶角色數(shù)量,避免存儲(chǔ)不需要的機(jī)密數(shù)據(jù),禁用不需要或不總是需要的特性,引入操作控制,如Web應(yīng)用程序防火墻(WAF)和其他入侵檢測(cè)和防御系統(tǒng)。例如,一個(gè)產(chǎn)品從功能設(shè)計(jì)上,是可以使用各種開放端口和服務(wù)進(jìn)行操作的。但是在安全原則下,可以反思是否所有端口和服務(wù)都需要,甚至在任何時(shí)候都可以使用,進(jìn)而刪除不需要的端口和服務(wù)來(lái)減少攻擊面,使其更加安全。這點(diǎn)轉(zhuǎn)化到硬件上,則體現(xiàn)為——從生產(chǎn)硬件的開發(fā)過(guò)程中使用的電路板上刪除調(diào)試端口、標(biāo)頭和跡線。這些方式可以規(guī)避轉(zhuǎn)儲(chǔ)固件或提取關(guān)鍵信息(如密鑰和密碼)來(lái)破壞產(chǎn)品或系統(tǒng)。
Turn Key solution默認(rèn)關(guān)閉不需要運(yùn)行的端口和服務(wù)。還是有些抽象,具體到行為可以包含,默認(rèn)為僅http,第一次登錄時(shí)立即提示修改密碼,禁用所有不安全服務(wù)等,發(fā)生風(fēng)險(xiǎn)行為時(shí)彈窗提示等等。(備注:IEC62443-4-1中提到,默認(rèn)情況下直接啟用密碼老化或密碼復(fù)雜性等安全特性)。
3)限制權(quán)限,比如限制用戶權(quán)限,限制資源權(quán)限,比如CPU限制、內(nèi)存、網(wǎng)絡(luò)和文件系統(tǒng)權(quán)限,以及服務(wù)器上的應(yīng)用程序?qū)?a class="article-link" target="_blank" href="/tag/%E6%95%B0%E6%8D%AE%E5%BA%93/">數(shù)據(jù)庫(kù)只讀訪問(wèn),對(duì)審計(jì)日志文件的讀寫訪問(wèn)等。舉例說(shuō)明,在Linux系統(tǒng)中,默認(rèn)情況下,所有進(jìn)程都不應(yīng)該以root特權(quán)運(yùn)行。類似地,在Microsoft Windows中,所有應(yīng)用程序都不應(yīng)該總是需要Admin系統(tǒng)特權(quán)才能運(yùn)行。
4)縱深防御,以分層的方式部署更多的安全控制。例如,系統(tǒng)集成產(chǎn)品安裝在單獨(dú)的網(wǎng)絡(luò)上,防火墻被放置在不同的網(wǎng)絡(luò)之間,安全事件和訪問(wèn)記錄在產(chǎn)品、系統(tǒng)和網(wǎng)絡(luò)級(jí)別。
5)使用安全的組件和設(shè)計(jì),對(duì)于產(chǎn)品和系統(tǒng)開發(fā),只應(yīng)該使用經(jīng)過(guò)驗(yàn)證的設(shè)計(jì)或設(shè)計(jì)模式。開發(fā)人員應(yīng)該使用行業(yè)標(biāo)準(zhǔn)和經(jīng)過(guò)批準(zhǔn)的加密算法(如國(guó)家標(biāo)準(zhǔn)與技術(shù)研究所(NIST)和聯(lián)邦信息處理標(biāo)準(zhǔn)出版物(FIPS)),安全協(xié)議的操作模式必須用于所有功能,如加密或固件真實(shí)性檢查。只要存在經(jīng)過(guò)驗(yàn)證的安全設(shè)計(jì)解決方案,開發(fā)人員就應(yīng)該避免創(chuàng)建自己的算法。當(dāng)使用第三方開源代碼或商用現(xiàn)貨硬件或軟件時(shí),確保盡可能只使用安全組件是很重要的。確認(rèn)固件和應(yīng)用軟件只包含所需功能的代碼——識(shí)別并刪除死代碼。確保從生產(chǎn)中的產(chǎn)品或系統(tǒng)中刪除任何調(diào)試或開發(fā)特性(硬件或軟件)。
6)軟件的完整性,產(chǎn)品的軟件或固件更新應(yīng)該使用標(biāo)準(zhǔn)的加密機(jī)制來(lái)建立真實(shí)性和完整性。這通常是使用數(shù)字簽名實(shí)現(xiàn)的,例如非對(duì)稱加密技術(shù)和公鑰基礎(chǔ)設(shè)施(PKI),可用于檢測(cè)針對(duì)原始預(yù)安裝版本的軟件或固件完整性的任何更改。數(shù)字簽名算法,如RSA或DSA,是公鑰加密。在公鑰加密(非對(duì)稱加密)中,使用一個(gè)與公鑰配對(duì)的私鑰進(jìn)行身份驗(yàn)證。舊的私鑰密碼學(xué)(稱為對(duì)稱加密)使用單個(gè)密鑰對(duì)數(shù)據(jù)傳輸進(jìn)行加密和解密。在物聯(lián)網(wǎng)系統(tǒng)中,經(jīng)常的情況是如密鑰對(duì)于所有產(chǎn)品都不是唯一的,將有可能允許惡意用戶為該領(lǐng)域中的所有此類產(chǎn)品創(chuàng)建有效的固件映像,公鑰密碼學(xué)則不存在這種情況。
綜上其中的1,2,5,6幾點(diǎn),均與硬件設(shè)計(jì)和安全芯片息息相關(guān),那么下文將嘗試橫向?qū)Ρ?,比如與Security Pattern合作的安全芯片以及提供的能力,簡(jiǎn)單了解安全芯片能做的事情。
從安全芯片以技術(shù)支持層面:
行業(yè)內(nèi)較為全面領(lǐng)先,并與Security Pattern有合作的芯片頭部公司包含NXP,Microchip,以及華大半導(dǎo)體,因?yàn)椴糠仲Y料并非完全公開,因此如下圖做出簡(jiǎn)單對(duì)比。綜合來(lái)看,從完整對(duì)信息安全的理解,代碼支持,API接口調(diào)用支持,demo板等層面,Microchip與NXP相對(duì)完善,也各自推出了適應(yīng)平臺(tái)。(筆者注:以上信息來(lái)源于互聯(lián)網(wǎng)公開AN,以及新聞資料和官網(wǎng)內(nèi)容,不全面部分歡迎讀者伙伴幫忙補(bǔ)充參考。)
這種現(xiàn)成的解決方案與廣泛的mcu和mpu兼容,還可以支持高級(jí)操作系統(tǒng),如Linux、Windows、Android和實(shí)時(shí)操作系統(tǒng)。此外,工程師可以從廣泛的開發(fā)工具、代碼示例、硬件開發(fā)工具包和詳細(xì)的文檔中受益,以減少開發(fā)成本和上市時(shí)間。
參考資料:
ISA-62443-1-1-2007, Security for industrial automation and control systems, Part 1-1: Terminology, concepts, and models
ISA-62443-2-1-2009, Security for industrial automation and control systems, Part 2-1: Establishing an industrial automation and control systems security program
ANSI/ISA-62443-3-2-2020, Security for industrial automation and control systems, Part 3-2: Security risk assessment for system design
ANSI/ISA-62443-3-3-2013, Security for industrial automation and control systems, Part 3-3: System security requirements and security levels
ANSI/ISA-62443-4-1-2018, Security for industrial automation and control systems, Part 4-1: Secure product development lifecycle requirements
(Editorial corrigendum issued in December 2020 changed title from ANSI/ISA-62443-4-1-2018, Security for industrial automation and control systems, Part 4-1: Product security development life-cycle requirements, to parallel IEC 62443-4-1 title; there were no other changes.)
ANSI/ISA-62443-4-2-2018, Security for industrial automation and control systems, Part 4-2: Technical security requirements for IACS components
注解:
RSA、DSA、ECDSA、EdDSA和Ed25519都可以用于數(shù)字簽名,加密只能使用RSA。
RSA (Rivest-Shamir-Adleman)是最早的公鑰密碼系統(tǒng)之一,廣泛用于安全的數(shù)據(jù)傳輸。它的安全性依賴于整數(shù)分解,因此永遠(yuǎn)不需要安全的RNG(隨機(jī)數(shù)生成器)。與DSA相比,RSA驗(yàn)證簽名的速度更快,但生成簽名的速度較慢。
DSA (Digital Signature Algorithm)是美國(guó)聯(lián)邦政府制定的數(shù)字簽名信息處理標(biāo)準(zhǔn)。它的安全性取決于離散對(duì)數(shù)問(wèn)題。DSA生成簽名的速度比RSA快,但驗(yàn)證速度比RSA慢。如果使用了錯(cuò)誤的號(hào)碼生成器,安全性可能會(huì)受到損害。
橢圓曲線數(shù)字簽名算法(ECDSA)是數(shù)字簽名算法(DSA)的橢圓曲線實(shí)現(xiàn)。橢圓曲線密碼學(xué)可以用更小的密鑰提供與RSA相對(duì)相同的安全級(jí)別。DSA也有對(duì)不良rng敏感的缺點(diǎn)。
EdDSA (Edwards Curve Digital Signature Algorithm)是一種基于扭曲Edwards曲線的Schnorr簽名變體的數(shù)字簽名方案。在EdDSA中,簽名的創(chuàng)建是確定性的,其安全性基于某些離散對(duì)數(shù)問(wèn)題的棘手性,因此它比DSA和ECDSA更安全,后者要求每個(gè)簽名都具有高質(zhì)量的隨機(jī)性。
Ed25519是一個(gè)EdDSA簽名方案,但是使用了SHA-512/256和Curve25519;它是一條安全的橢圓曲線,提供了比DSA、ECDSA和EdDSA更好的安全性,具有更好的性能(人的注意力)。
ECC(Elliptic Curves Cryptography)
橢圓曲線密碼編碼學(xué)。ECC和RSA相比,具有多方面的絕對(duì)優(yōu)勢(shì),主要有:抗攻擊性強(qiáng)。相同的密鑰長(zhǎng)度,其抗攻擊性要強(qiáng)很多倍。計(jì)算量小,處理速度快。
DES(Data Encryption Standard)
數(shù)據(jù)加密標(biāo)準(zhǔn),速度較快,適用于加密大量數(shù)據(jù)的場(chǎng)合
SHA1:是由NISTNSA設(shè)計(jì)為同DSA一起使用的,它對(duì)長(zhǎng)度小于264的輸入,產(chǎn)生長(zhǎng)度為160bit的散列值,因此抗窮舉(brute-force)性更好。