杜 蘭,陳琳琳,張 麗,戴麗麗,沈雅婷
(南京理工大學紫金學院 計算機學院,江蘇 南京 210023)
李伯虎院士及其團隊于2009年在國際上首先定義“云制造”的概念,并開始云制造1.0的研究實踐[1-4];2012年開始 “智慧云制造”(云制造2.0)的研究與探索[5],提出了按智慧云制造模式和手段構建的智慧云制造系統(Smart Cloud Manufacturing System,SCMS)的概念。
現階段,越來越多的學者開展智慧云制造相關研究。肖瑩瑩[6]等綜述了對求解復雜計劃調度問題的計算智能技術的研究現狀。周佳軍[7]等闡述了制造物聯、信息物理融合生產系統、泛在制造、云制造、社會化企業、主動制造和智慧制造等幾種典型新興智能制造模式的產生背景、基本概念和支撐技術和初步應用等。
區塊鏈是使用加密算法、時間戳、樹形結構和共識機制來實現的分布式賬本,具有去中心化、開發共識、去信任、匿名性、可追溯性、不可篡改性、集體維護性以及公開透明性,在數據的收集、流轉、存儲和共享全過程中可以保證信息的機密性、完整性、可追溯性和匿名性。把區塊鏈技術與SCMS安全架構相融合,系統的安全性、可靠性和健壯性會得到極大提升。
現階段大多數智慧云制造體系結構的研究都是層次化體系架構,只是在分層依據上有所區別。2014年姚錫凡等提出的智慧制造的11層體系架構[8]。2016年李伯虎等提出智慧云制造系統的7層體系結構[5]。綜合前二者特點,總結出一種8層結構,如圖1所示。

圖1 智慧云制造系統體系結構

圖2 智慧云制造系統風險矩陣
針對SCMS各層所面臨的安全風險矩陣如圖2所示。
傳統SCMS安全體系存在如下問題:
(1)系統多采用中心化設計,其安全性完全依賴于中心數據庫和服務器,“單點故障”問題將會影響云制造系統中所有用戶。
(2)系統身份認證多基于公鑰基礎設施( Public Key Infrastructure,PKI)[10]體系。PKI系統大都依靠集中式的第三方可信的認證中心(CA)來發放、更新、撤銷和驗證證書。當前設計存在三個問題:一是CA入侵目標明顯,易發生單點故障;二是非法用戶攻擊加密通信來冒充身份;三是云計算環境下跨域身份認證和角色訪問控制等需求,當前PKI技術還不能很好滿足[11-14]。
(3)消息認證面臨重放攻擊和密鑰推測攻擊等多重威脅,網絡通信時的數據安全性和完整性難以保障。
(4)缺少嚴格的訪問控制,用戶有意或無意的“越獄”行為常有發生。
(5)數據泄密,云制造平臺上的非授權用戶獲取和篡改信息難度低,易非法濫用或挪用資源分配權和使用權。
(6)缺乏對從來源到終點的數據流轉全過程的追蹤與管控、安全審計和預警。
綜上,SCMS安全需求總結如表1所示。

表1 SCMS安全需求總結
區塊鏈是分布式存儲、P2P網絡、加密算法、哈希算法、時間戳、Merkle樹形結構和共識機制等計算機技術實現的分布式賬本。區塊鏈包括6層基礎框架,分別是數據層、網絡層、共識層、激勵層、合約層和應用層,如圖3所示。

圖3 區塊鏈基礎框架
結合SCMS安全需求,區塊鏈應用于SCMS安全架構的可行性如表2所示。
針對圖2所示SCMS各層所面臨的安全風險及漏洞,可采用如下基于區塊鏈的智慧云制造系統安全架構(BCSCMS),如圖4所示。
基于區塊鏈的身份認證策略是將區塊鏈技術與PKI相結合,通過分布式總賬來記錄數字證書和公鑰,以區塊鏈交易的方式來實現證書的注冊、更新和撤銷,如圖5所示。使用區塊鏈各種屬性來保障PKI 的正常運行,例如利用區塊鏈分布式和去中心化,可避免CA單點故障,也省去了與認證中心的建立信道的過程;利用區塊鏈決傳統PKI系統所面臨的證書透明度及CA單點故障的問題:利用區塊鏈的可追溯性實現用戶身份產生、認證、使用以及注銷的全生命周期管理。

表2 區塊鏈應用于SCMS安全架構的可行性

圖4 基于區塊鏈的智慧云制造系統架構

圖5 基于區塊鏈的PKI
基于區塊鏈的消息認證策略是利用區塊鏈的數字簽名機制,它涉及公鑰、私鑰和加密技術等,它有兩個作用:一是認證數據起源,驗證發送者是不是真正的用戶而不是被冒充的;二是驗證信息在傳輸過程中是否被篡改、重放或延遲等。
基于區塊鏈構建訪問控制系統,是將區塊鏈中地址、交易、區塊、賬戶、挖礦、驗證、合約等相關概念與傳統訪問控制中的用戶、角色、權限、屬性、環境、資源等結合,作為基于屬性的訪問控制(ABAC模型)系統的基礎框架,以區塊鏈交易的形式來創建、管理、執行訪問控制策略/權限,利用智能合約以自動可執行格式編碼訪問控制規則,進行自動化的權限管理,杜絕非法用戶入侵,只允許合法用戶按其訪問控制策略訪問系統資源,防止欺詐式拒絕承認已被策略授予的權限[15]。
區塊鏈記錄了訪問控制策略和權限從創建到轉移的全生命周期,在此基礎上可設計分布式、可追溯和不可篡改的安全日志審計模塊。
基于區塊鏈構建數據庫系統,不會因誤操作而導致數據丟失,也不會因為中心節點實效而導致整個系統癱瘓,也不會因為操作權限問題導致數據被竊取甚至被篡改?;趨^塊鏈的數據庫系統使用多種加密算法(如哈希算法和非對稱加密算法)來保證數據的機密性。數據庫不依賴于任何可信實體就可完成統一維護更新,任何單一實體不能修改數據,保證了數據的完整性和安全性?;趨^塊鏈構建數據庫系統是一種分布式系統,考慮到區塊容量有限,難以存儲大規模的數據,只用區塊鏈管理數據索引和操作權限,用專用的數據服務器集中存儲真實數據。
基于區塊鏈的安全審計和預警策略是把數據跟蹤策略添加到可編程的智能合約,自動追蹤數據來源和數據處理過程。在獲取了從來源到使用的全生命周期數據以后,實時分析日志信息生成安全審計報告,可以發現攻擊者對系統的攻擊行為,使用數據融合、數據挖掘、智能分析和可視化技術,評估分析安全威脅態勢,及時預警,主動挖掘修補漏洞。
保密性是指對信息或資源的隱藏。BCSCMS有如下三個方面的安全機制來防止信息被竊取、盜用或篡改:
(1)在區塊鏈中節點之間的數據采用加密算法(如Hash256算法)加密后通過非對稱密鑰對的方式進行傳輸,防止信息被竊取。
(2)數字簽名技術使用非對稱加密技術和數字摘要技術保證信息傳輸的保密性、數據交換的完整性、發送信息的不可否認性、交易者身份的確定性等,防止信息被盜用。
(3)共識機制保證寫入區塊鏈的數據已被全部節點驗證通過并永久保存,非法節點無法通過攻破所有節點篡改數據,防止信息被篡改。
完整性是指數據或資源的可信度。BCSCMS有如下三個方面的安全機制保障存儲或傳輸過程中信息不被未經授權的篡改和信息丟失;
(1)BCSCMS所有節點都參與記錄數據區塊,數據區塊加入時所有節點都會對其驗證,驗證通過才允許加入到區塊鏈中,保證了數據的真實性。
(2)區塊鏈是按時間順序將數據區塊形成首尾相連的鏈式數據結構,時間戳技術和共識機制等保證了數據信息一旦被寫入BCSMS后就不可篡改。
(3)BCSCMS利用分布式節點共同驗證,不可能被非法節點偽裝被授權節點進行欺騙性攻擊,可防止未經授權的篡改。
可追溯性是指信息根據時間歷史追蹤。BCSCMS架構下區塊鏈把數據分成不同的區塊,每個區塊由區塊頭和區塊體兩部分組成,其中區塊頭封裝著區塊頭值、上一區塊的哈希值、時間戳、隨機數等信息。區塊的前后順序通過記賬者加蓋時間戳來形成具有時間先后順序的鏈式結構,保證了數據的可追溯性,實現了數據來源和流轉過程的全周期透明化。當系統運行出現問題時,對BCSCMS中的歷史錯誤信息進行時間溯源就可查找問題原因。此外,可追溯的全生命周期數據可以作為安全審計監管的追責依據,對不良數據和不良用戶行為雙重審計。
匿名性是指不需公開身份。BCSCMS的運行規則和數據信息是公開透明的,節點之間的數據交換遵循固定的算法,節點之間無需公開身份讓對方對自己產生信任,可以基于地址而非個人身份進行數據交換,保證了匿名性和用戶隱私。
智慧云制造作為一種新信息通信技術與制造業深度融合的新模式,現有研究中對于系統安全風險鮮少研究,對于安全的擔憂將會成為SCMS發展的瓶頸。本文首先分析了SCMS的體系架構及其所涉及的安全風險,針對傳統SCMS安全體系存在問題提取了主要需求,初步設計了基于區塊鏈的智慧云制造系統安全架構方案,并重點將區塊鏈與身份認證、消息認證、訪問控制、數據保護和安全審計與預警等方面安全技術相融合,最后從保密性、完整性、可追溯性和匿名性4個維度對BCSCMS的安全性進行了分析。希望本研究能為防范SCMS的信息安全問題提供一種新思路。