弓曉鋒,黃琳,周慧,梁正華
(1.貴州省科技信息中心,貴州貴陽,550002;2. 貴州省科技創新中心有限責任公司,貴州貴陽,550002)
根據全省“一云一網一平臺”統籌部署,各行業部門積極制定了相應的協同推進實施方案,進一步梳理了權責清單以及政務服務網進駐事項,明確了工作任務和實施要點,開展了政務服務“一網通辦”業務試點計劃。省級科技部門按照“整合內部分散業務系統,統一用戶,統一業務入口,統一數據出口”的原則,規范了微服務技術架構、業務流程和數據資源,構建了公共支撐平臺、用戶中心和數據接口平臺,并實現了與省級平臺的接入。部門用戶中心與省統一實名身份認證系統用戶進行了綁定,部門數據接口平臺各類科技業務主題數據上架到省數據共享交換平臺。如圖1所示。

圖1 部門平臺整合接入省級平臺
平臺后續改造升級過程中,將在部門科技業務平臺用戶認證體系的構建上引入國產密碼雜湊算法SM3。一是采用SM3哈希函數壓縮用戶登錄密碼為摘要。系統構建過程中,通常采用哈希函數壓縮用戶登錄密碼為摘要,這樣既減少了數據量、固定了數據格式,又打亂了數據組合。常用的哈希算法有MD5消息摘要算法和SHA安全散列算法,設計優的哈希函數出現哈希沖突的概率很小。為了增強系統用戶密碼的安全性,在密碼加密過程中會同步加鹽,即使明文相同的用戶生成的密文也不相同。二是采用JSON Web Token(JWT)對客戶端Token進行編碼,并采用SM3算法對包含的主體信息進行雜湊以提高安全性,進而用來傳遞被認證的用戶身份信息,實現獲取服務資源的目的。JWT是JSON風格輕量級的授權和身份認證規范,可實現對無狀態、分布式的Web應用授權,生成的Token可直接用于認證,也可使用一些常見的算法對包含的主體信息進行加密,安全性較高。JWT規范標識了多種簽名算法,使用過程中頭部會默認指定消息簽名算法HS256,消息體中會包含用戶名、Token的生成時間和過期時間等非敏感類信息,創建簽名時會指定使用哈希函數來進行消息認證的機制HMAC以及頭部聲明的算法HMACSHA256,進而實現消息完整性認證和信源身份認證。
在我國,MD5和SHA-1兩種數字簽名算法應用廣泛,甚至是在網上銀等金融業務上。隨著王小云教授團隊在2015年先后通過差分攻擊算法攻破MD5和SHA-1,各個行業部門開始升級替換現有算法,采用SHA-256。畢竟MD5算法、SHA系列算法均為國外雜湊算法,不符合我國大力提倡的信創合規、自主可控的要求,故而科技業務平臺采用國產密碼算法SM3來替代國外算法SHA-256。隨著國內網絡安全和信息化整體水平的不斷提升,密碼安全和密碼技術在維護國家安全、促進經濟發展方面發揮著越來越重要的作用,商用密碼改造已成為各行各業面臨的重要任務。
SM3國產密碼算法是我國具有自主知識產權的密碼湊雜算法,該算法由王小云等人設計,2010年中國國家密碼管理局發布。SM3哈希算法作為國產商用密碼算法,適用于數字簽名和驗證,采用MD(Merkle-Damgard)結構,消息分組長度為512位,摘要值長度為256位。SM3是在SHA-256基礎上改進實現的一種算法,其壓縮函數與SHA-256壓縮函數類似但設計更加復雜,可碰撞性更強,安全系數更高。SM3算法無法提供完整性保護,不能單獨使用,需通過HMAC配合密鑰一起使用進行消息認證。作為雜湊系列算法的SM3,同樣面臨差分攻擊的風險。
上面提到,隨著部門科技業務平臺與外部省級平臺的接入,系統間的數據請求將不可避免引起用戶數據泄露問題。一是外部政務服務事項辦理場景,需要向部門平臺請求單個用戶的相關數據,這類數據往往涉及電子證照,比如:某位用戶是否是科技特派員;某家企業是否是高新技術企業等。二是外部數據共享交換場景,需要向部門平臺請求一類用戶的相關數據,這類數據往往以數據查詢接口的方式提供,比如:共享某一研究方向的省外專家,而這些專家往往是科研項目評審的網評專家;共享年度內在某些細分領域立項的科研項目等。
科技業務平臺用戶中心可不處理具體的業務邏輯,僅需處理與用戶相關的數據,通過重組業務模塊來模糊業務應用間的邊界,進而協調業務應用和實現,使用戶通過統一展現層再切入到具體的業務。為了簡化平臺對用戶的權限控制,可基于業務場景來優化權限模型和流程管理,因不同組織為所屬用戶規定并約束了業務的流轉與審批流程,以及各節點不同的處置要求,應從業務需求和數據需求的角度出發,區分公眾用戶和管理用戶,公眾用戶又可細分為以科技人員、科技專家為代表的“自然人用戶”和以科研機構、高校、企業為代表的“組織用戶”兩類,組織用戶不僅限于企業法人,同時還包括機關法人、事業單位法人和社會組織法人等。根據特定科技業務辦理需要,自然人用戶和組織用戶之間需要建立關系,自然人可申請加入多個組織,不同組織賦予同一自然人不同的角色身份并進行授權管理,特定組織用戶可分級授權和逐級審批種類科技業務。業務檔案中,關聯了科研人員的科研項目、科研產出、資質和榮譽、論文、成長指數等信息,關聯了科研機構的科研項目、科技獎勵、項目產出、成果轉化、科研基礎、經濟效益、科技活動投入與產出、創新指數等信息。
為有效應對用戶隱私數據泄露問題,通常有幾種方式:一是數據脫敏,通過失真等降低數據敏感性。數據脫敏只是簡單地刪除敏感字段,其使用性較差,而且仍然存在隱私泄露隱患。二是匿名化,通過“去標識化”實現隱私保護。但是,匿名化技術不斷被發現存在漏洞和缺陷,可靠性較差。三是差分隱私,通過加噪聲來抵抗差分攻擊。對比數據脫敏和匿名化,差分隱私具有嚴格的數學模型,安全性級別較高,可量化可證明,是較熱門的隱私保護技術。
針對平臺用戶隱私泄露、數據可用性等問題,迫切需要研發高質量的隱私保護服務[1]。盡可能做到限制相對隱私數據的泄露,就是“差分”的由來,也即任何查詢結果一定程度上不應該能夠被用來推斷某個個體的數據是否被包含在數據集中。此時,引出“相鄰數據集”的概念。所謂相鄰數據集,指兩個數據集只相差一條記錄,這條記錄可以是某個用戶的數據,而差分隱私則定義為相鄰數據集在一定程度上不可區分。
差分隱私(Differential Privacy,簡稱 DP)是 Dwork在2006年針對數據庫的隱私泄露問題提出的一種新的隱私定義[2]。DP技術提供了一種嚴格、可證明的隱私保護手段,且其保護強度不依賴于攻擊者所掌握的背景知識,其是密碼學中的一種手段,旨在提供一種當從統計數據庫查詢時,最大化數據查詢的準確性,同時最大限度減少識別其記錄的機會。其原理是用算法加擾個人用戶數據,使技術回溯過程無法實現,隨后在無法獲得原始數據的情況下對數據批量計算,輸出計算結果,在獲得機器學習所需的數據資源的同時,實現用戶隱私數據的保護。其嚴格的數學定義如下:若帶有定義域的隨機算法M,對所有的S ? Range( M)和滿足的x, y ∈Nx都有 :

則隨機算法M是(ε , δ)-差分隱私,如果δ=0,則隨機算法M是ε-差分隱私。上述定義中,概率空間由算法M給出,參數ε, δ均稱為隱私保護預算,參數ε不受人為控制,參數δ可受人為控制。隨著參數ε的減少,數據的隱私保護就越強,但是與此同時它的效用就越低。可以看出,數據集X在隨機算法M的擾動下輸出的結果屬于S集合的概率,小于等于e的ε次方然后乘以數據集Y在隨機算法M的擾動下輸出的結果屬于S集合的概率。這個結果因為變化太小導致了改變之前的數據集和改變之后的數據集對攻擊者來說是無法察覺的,則說明滿足差分隱私。
對于數據集和算法的組合,有以下幾種情形:

(3)記A1( D1) , A2(D2) , A3( D3), . ..,Am( Dm)為一系列相互獨立的差分隱私,且算法Ai( D)分別滿足εi-差分隱私,這些算法組合起來滿足-差分隱私,整體小于等于最大ε-差分隱私。
差分隱私技術中的常用機制是將噪聲插入到查詢結果中,使得數據失真或者擾亂數據。差分隱私噪聲機制有拉普拉斯機制、指數機制、高斯機制等,最常用的為拉普拉斯機制。下面簡單描述拉普拉斯噪聲機制的敏感度、概率密度函數和差分隱私。
(1)敏感度。給定一個函數集,X和Y為鄰近數據集,一個函數的l1敏感度被定義為:,查詢函數的敏感度表明改變一條數據對查詢操作帶來的影響程序。


差分隱私保護最初的應用場景是交互式數據查詢,后面逐步延伸至非交互式數據發布。上架到數據共享交換平臺對外發布的數據集,比如共享的科技專家庫專家信息,為了防止攻擊者準確獲取專家敏感數據導致泄露專家隱私,在每個真實數據值后面加上一個服從拉普拉斯分布的隨機噪聲。將每一條記錄看作一個不相交的數據集,根據差分隱私的并行組合性質,每一條記錄都符合ε差分隱私時,整體數據集也滿足ε差分隱私[3]。如果一條記錄有多個屬性,根據差分隱私的序列組合性質,將ε隱私保護預算分為多個部分分別加到各個屬性。相比于傳統技術,在實現同樣復雜度和效果的情況下,差分隱私的效率會比較高,但由于對于背景知識的假設過于強調,需要在查詢結果中加入大量的隨機化,如果數據維度較大將導致噪音過大時并覆蓋原始數據,大大降低共享數據的可用性,此時,需要對高維數據進行降維。數據降維可采用主成分分析、線性判別分析技術或基于加權貝葉斯網絡降維等方法,對降維后的數據添加噪音再發布[4]。除了提到的中心化差分隱私保護,在用戶數據采集過程中,可以采用本地差分隱私保護。本地差分隱私是為了消除可信數據中心,而是直接在用戶的數據集上做差分隱私,然后再傳輸到數據中心進行聚合計算,這樣數據中心也無法猜測出原始數據,從而保護數據隱私。