原理 所謂涉密,指接觸了機密的數據。機密的數據是由數據的擁有者事先定義的,如工程圖紙、程式原始碼、客戶資料、機密文檔等。
在防泄密技術中,定義成機密的數據是應該以加密形式存在的。這裡不討論完全基於
訪問控制 形式保護數據的方案,基於訪問控制的保護與真正的防泄密是完全不同的兩個領域,防泄密必須解決安全環境失效的情況下的數據不泄密,訪問控制是不考慮安全環境失效的情況的。
在
防泄密系統 中,訪問控制技術同樣被大量使用,比如對涉密的對象的涉密訪問控制、涉密計算機的同機虛擬隔離技術等。但防泄密技術的本質是數據加密,訪問控制只是輔助的手段。優秀的防泄密系統的安全架構不應該建立在訪問控制的基礎上。防泄密系統必須確保全全環境失效時的機密數據處於加密狀態。
常用技術 防泄密軟體主要防範內部工作人員,而內部工作人員又能夠或正在使用著機密數據。因此防泄密軟體的目標就是對於內部機密數據做到“只能用,不能帶走”。在這種設計目的下,許多先進的技術被引入到防泄密系統中。
實時加解密技術
首先是實時加解密技術。實時加解密技術可以保障數據在加密後可以直接使用,與不加密的數據使用體驗和效果完全相同。這個技術才可以使一切機密數據在加密狀態下工作成為可能。因此,實時加解密技術是優秀防泄密軟體的基礎技術。
主動加密技術
目前比較先進防泄密軟體都採用了主動加密技術。主動加密是基於實時加解密技術的一種加密信息自我保護手段。這裡的“主動”,是針對防泄密系統而言的,不是指執行加密動作的人。因此,“主動加密”是一種技術,不是指一個動作,類似於反病毒引擎的“
主動防禦 ”技術。
實時加解密 引擎在工作中提供實時加解密服務的同時監控全部密文數據的流向,當密文轉化為其它數據形式,與另外的非涉密數據結合生成新的數據、或者其它非涉密數據引用了部分密文時能夠自動加密這些與之發生關係的數據。
涉密訪問控制
涉密訪問控制是指在對象涉密後為防止涉密所做的一切處理。在防泄密系統中,涉密訪問控制主要指對涉密應用程式的行為以及涉密數據的流向控制。
主動加密 實際上也是一種涉密訪問控制。由於主動加密技術在實時加解密技術的支持下呈現完全透明的用戶體驗,不會給用戶“操作被控制”的感覺,因此在基於實時加解密技術的保密系統中用戶基本上很少感覺到涉密訪問控制的存在。
同機虛擬隔離技術
同機虛擬隔離技術可以在一台計算機中對不同套用進行虛擬隔離。同機隔離技術對於Internet套用具有十分重要的意義和使用價值。在這種技術出現之前,為了防止機密信息的外泄,涉密計算機都採用
物理隔離 的方式與外網(Internet)隔離,物理隔離等同於因噎廢食,閉關鎖國。而同機隔離技術可以使Internet變成單向使用,在從Internet獲取信息的同時,內部機密數據卻不能向外泄漏。
電子郵件加密技術
由於網際網路技術的大量使用,電子郵件和IM檔案傳輸成為主要的通訊方式。針對網際網路套用數據包的加密技術是十分實用的技術。
移動存儲設備的使用控制
移動存儲設備一般是轉移數據最直接的方式。對於涉密系統一般會對移動存儲設備的使用進行嚴格管理,防泄密軟體中一般可以控制移動存儲設備的許可權。好的控制技術可以做到控制移動存儲設備的數據流向。比如可以控制隨身碟為單向使用,其數據可以進入涉密系統,而涉密系統的數據不能流向隨身碟。
通信連線埠與設備控制
對於網路、串口、並口、數據機、藍牙、1394等通信連線埠和設備,在涉密系統中都有使用控制方式。
多通道加密技術
對於企業中需要進行部門機密隔離的套用,應該使用多通道加密技術。不同通道使用不同的證書(密鑰)達到機密數據互相隔離的目的。部門機密數據的隔離不應該以單純依賴於訪問控制的方式(如以訪問許可權控制)。
反截屏技術
截屏也成為一種竊密手段,因此防泄密軟體中一般有反截屏技術。
主動加密 接觸傳染性
涉密的界定一般採取“過保護”方式。也就是說,一個對象在與機密數據接觸後,如果沒有辦法證明它沒有涉密,總是認為它是涉密的。通俗一點講,就是“寧可枉殺一千,不可放過一個”。舉一個簡單的例子來理解涉密的概念:非典時期,凡與非典病人接觸過的人都先隔離起來觀察,如果把非典病人看作機密數據,那么與非典病人接觸過的人就是涉密。因為當時沒有辦法證明這些接觸過的人有沒有被感染非典病毒。當然,隔離觀察一段時間後沒有出現感染非典症狀的人證明其沒有感染非典,可以解除隔離。與機密數據接觸的數據如果後來與涉密前一樣沒有發生改變,也可以認為其沒有從機密數據中獲取機密,也可以解除涉密狀態。至於涉密後數據發生改變的,如果無法證明其改變的部分與機密數據無關,這個數據必須強制加密。因此,接觸傳染性是主動加密的典型特徵。
在計算機操作中,接觸傳染性有多種表現形式,我們舉例說明這個有趣有現象:
現有一個普通文檔A(不加密)和一個機密文檔B(已加密)
1)用Word同時打開了文檔A和文檔B,從文檔B中複製部分內容到文檔A,然後保存文檔A,這時文檔A被強制加密。
這個現象很好理解,因為文檔B是機密數據,其部分機密數據轉移到文檔A了,所以文檔A保存後被加密。
2)用Word同時打開了文檔A和文檔B,修改並保存文檔A,這時文檔A被強制加密。
這個現象比較費解,因為文檔A看上去沒有引用文檔B的任何數據。因為文檔A和文檔B被同一個Word打開著,計算機沒有辦法證明文檔A的修改部分與文檔B無關(我們不能以人工方式去判定),所以修改後文檔A被加密了。
3)同時打開文檔A和文檔B,從文檔A中複製數據到文檔B,保存文檔B並退出Word,文檔A和文檔B的加密狀態不變。
這個現象也好理解,文檔A沒有變化,當然不會被加密,文檔B原來是加密的,所以保存後仍然是加密的,至於引用了非加密的文檔A的內容不會改變文檔B的機密屬性。
4)用Word打開文檔B,新建一個文本檔案C,用Windows記事本打開,用Windows剪貼簿從文檔B中複製一段文字貼上到文本C中並保存。
結果:檔案C被加密。
5)用Excel打開一個非加密的電子表格檔案D,用Word打開文檔B,選中文檔B中的一段文字,用滑鼠拖動到EXCEL中,關閉Word。再保存EXCEL檔案為電子表格D。
結果:電子表格D被加密。
新生繼承性
新生繼承性也是主動加密的典型特徵。任何對象在涉密後其新建的檔案都會被加密,這一點應該很好理解。類似於生物學上的遺傳特性。主動加密的新生繼承性與基於加密資料夾的加密屬性繼承有所不同,加密資料夾的加密屬性繼承是靜態位置的加密屬性繼承,不能阻止保存數據的人主動涉密。而主動加密的新生繼承性是強制性的,只要應用程式已經涉密,這個應用程式的輸出數據總是
密文 形式,所以無論把數據保存到什麼地方,數據總是加密形式。
技術套用 主動加密技術從原理上來說只要能夠準確監控機密數據的流向就可以實現,從有
防泄密系統 開始就出現了不同的技術流派。主動加密技術一般都是基於作業系統後台實現的,所以從前台的用戶一般操作體驗上很難感覺到技術層面上的差別,能夠感覺到的最多只是對作業系統性能的影響。
主動加密從技術實現上可以分成三類:
這類技術是最累的主動加密技術,其原理是為每一個應用程式寫一個
外掛程式程式 (也稱“外掛”),應用程式在載入時會自動載入外掛程式程式,外掛程式程式載入後會監視所有的
數據輸出 ,必要時加密數據,如果一個操作不能主動加密,就強制取消對應的操作。
這種技術採用的是一對一的直觀思維,因此其支持的目標是以應用程式為單位的,而且一般和應用程式的版本還有關係,因為同一個應用程式未必能夠支持不同版本的外掛程式。也不是所有的應用程式都支持外掛程式技術。事實上,能夠支持外掛程式的應用程式僅限於Office、
CAD 等大型通用化套用軟體,專用軟體和一般的小型軟體都不支持外掛外掛程式。因此,這種技術套用環境受到諸多限制,而且由於從原理上不能保證受支持套用軟體之外的軟體的適用性,因此這種技術基本面臨淘汰。
2)基於API攔截的主動加密
這種技術比起上面的技術來在通用性上有所進步,大部分“標準”的應用程式能夠得到支持,實現上也相當簡單,不需要考慮不同的應用程式。其缺點是API攔截是基於套用層的,不是所有的應用程式都使用標準的API運算元據,一旦應用程式的數據操作使用的驅動方式,或者直接使用VMM的
記憶體映射檔案 ,這種方式就會出現不能正常解密或泄密漏洞。因此,這種技術也只能適用於已經測試通過的環境。另外,API攔截不是標準的系統開發技術,使用API攔截後系統性能下降明顯,與反病毒軟體和一些工具軟體往往也存在兼容性問題,這些都是API攔截技術的詬病。
3)基於檔案系統驅動技術的主動加密
這種技術是理論上最完美的技術。驅動技術是標準的系統開發技術,因此不存在兼容性問題(本身有程式BUG的驅動除外)。所有應用程式(包括作業系統本身)都必須通過檔案系統驅動獲取磁碟數據,因此在驅動中對數據進行控制幾乎無一漏網。另外,由於驅動運行於作業系統
核心層 ,其效率、性能和抗攻擊性不是套用層的
API 攔截所能達到的。
主動加密意義 防泄密不僅僅是防止外來人員的竊取,更多的是防止內部人員的主動泄密。而
防泄密系統 的難點就在於即要保證內部人員能夠正常使用機密數據,又要防止這些機密數據傳出本單位。在主動加密技術出現之前,機密信息“監守自盜”沒有技術上的解決辦法,只能依賴於行政手段和規章制度來保障。主動加密技術加上
實時加解密 技術,可以保障單位內部正常使用機密數據的同時防止任何形式的對外泄密,不管這種泄密是內部人員有意為之或無意所為。由於主動加密的接觸傳染性和新生繼承性,機密數據無論被帶到什麼地方,都是密文形態的,而密文一旦離開其宿主單位,因為缺少了解密所需的密鑰,無法還原其記錄的內容,從數學原理上保證其原始信息是安全的。因此,主動加密技術是防泄密技術的核心技術。防泄密系統的成敗往往取決於其主動加密技術。
訪問控制 涉密訪問控制是指在對象涉密後為防止涉密所做的一切處理。在防泄密系統中,涉密訪問控制主要指對涉密應用程式的行為以及涉密數據的流向控制。主動加密實際上也是一種涉密訪問控制。由於主動加密技術在實時加解密技術的支持下呈現完全透明的用戶體驗,不會給用戶“操作被控制”的感覺,因此在基於實時加解密技術的保密系統中用戶基本上很少感覺到涉密訪問控制的存在。
除主動加密外,涉密訪問控制在數據流向主動加密不能覆蓋的範圍時必須對數據進行控制,通過允許或阻塞涉密數據的流通,在用戶操作時則表現為對某個操作行為的允許和禁止。
涉密行為鑑別同樣是涉密訪問控制的基礎。涉密訪問控制只控制涉密的對象。
這裡沒有再畫出無涉密許可權的操作分支。對於沒有涉密許可權者,其應用程式不能涉密。如果在涉密後加密證書丟失(如自行銷毀加密證書、證書過期或被管理員剝奪),涉密的應用程式將不能輸出和轉移任何數據。
secWall企業版中的涉密訪問控制邏輯 實際上涉密
訪問控制 技術在
防泄密系統 中幾乎是無處不在的,對保密對象的分級訪問許可權控制(如列印控制、讀寫控制、甚至防截屏)也由涉密訪問控制實現。涉密訪問控制技術一般貫穿整個防泄密系統,而不象其他技術可以由某個單獨的模組來實現。
涉密訪問控制技術從安全性上必須明確,任何基於訪問控制技術的系統都有一個前提條件,就是依賴於防泄密系統構建的安全環境。如果安全環境失效,訪問控制技術也就不可靠了。在安全環境失效的時候唯一有效的保密手段就是加密。只有加密過的數據在安全環境失效時仍然可以保證機密數據不會泄密。所以不與
數據加密 結合在一起的訪問控制技術在保密系統中幾乎沒有意義。
衡量涉密
訪問控制 技術優劣的一個重要指標就是對用戶操作的阻塞量。主動加密技術可以在保證安全的前提下對用戶操作沒有任何影響,所以涉密訪問控制在涉密數據流出時應該優先採用主動加密技術進行處理,只有在主動加密技術不可及的地方才啟用阻塞處理。在
防泄密系統 中,
實時加解密 技術是支持一切加密檔案透明操作的基礎,涉密訪問控制技術則是調度員,涉密行為鑑別為涉密訪問控制提供行動依據。因此,實時加解密技術、涉密行為鑑別技術、主動加密技術和涉密
訪問控制 技術構成了防泄密系統的四大關鍵技術,這四種技術相互依存,任何一種技術不過關都會拖累整個防泄密系統的技術和性能指標。
加密算法 防泄密軟體常用的加密算法有三種,IDEA 算法、RSA算法、AES算法,加密強度來講,AES最好。
IDEA算法
IDEA算法屬於
對稱加密算法 , 對稱加密算法中,
數據加密 和解密採用的都是同一個密鑰,因而其安全性依賴於所持有密鑰的安全性。
對稱
加密算法 的主要優點是加密和解密速度快,加密強度高,且算法公開.
缺點是實現密鑰的秘密分發困難,在大量用戶的情況下
密鑰管理 複雜,而且無法完成身份認證等功能,不便於套用在網路開放的環境中。
對稱加密算法的特點是算法公開、計算量小、加密速度快、加密效率高。
目前最著名的
對稱加密算法 有
數據加密標準 DES,但傳統的DES由於只有56位的密鑰,因此已經不適應當今分散式開放網路對數據加密安全性的要求。歐洲數據加密標準IDEA等,目前加密強度最高的對稱加密算法是
高級加密標準 AES,AES提供128位密鑰,128位AES的加密強度是56位DES加密強度的1021倍還多。
對稱加密算法過程是將數據發
IDEA是International Data Encryption Algorithm的縮寫,是1990年由瑞士聯邦技術學院來學嘉(X.J.Lai)和Massey提出的建議標準算法,稱作PES(Proposed Encryption Standard)。Lai和Massey在1992年進行了改進,強化了抗差分分析的能力,改稱為IDEA.它也是對64bit大小的
數據塊 加密的分組加密算法.
密鑰 長度為128位。它基於“相異代數群上的混合運算”設計思想,算法用硬體和軟體實現都很容易,它比DES在實現上快得多 。
RSA算法
RSA算法是
非對稱加密算法 ,非對稱加密算法的保密性比較好,它消除了最終用戶交換密鑰的需要,但加密和解密花費時間長、速度慢,它不適合於對
檔案加密 而只適用於對少量數據進行加密。
RSA算法是建立在大數分解和素數檢測的理論基礎上。
RAS密鑰的產生過程:
獨立地選取兩個互異的大素數p和q(保密)。
計算n=p×q(公開),則ф(n)=(p-1)*(q-1)(保密)
隨機選取整數e,使得1<e<ф(n)並且gcd(ф(n),e)=1(公開)
計算d,d=e-1mod(ф(n))保密。
RAS私有密鑰由{d,n},
公開密鑰 由{e,n}組成
RAS的加密/解密過程:
首先把要求加密的明文信息M數位化,分塊;
然後,加密過程:C=Me(mod n)
解密過程:M=Cd(mod n)
非對稱密鑰加密體制的優點與缺點:
解決了
密鑰管理 問題,通過特有的密鑰發放體制,使得當用戶數大幅度增加時,密鑰也不會向外擴散;由於密鑰已事先分配,不需要在通信過程中傳輸密鑰,安全性大大提高;具有很高的加密強度。
AES加密算法
AES加密算法屬於
不可逆加密算法 , 不可逆加密算法的特徵是加密過程中不需要使用密鑰,輸入明文後由系統直接經過加密算法處理成密文,這種加密後的數據是無法被解密的,只有重新輸入明文,並再次經過同樣不可逆的加密算法處理,得到相同的加密密文並被系統重新識別後,才能真正解密。
1997年4月15日,美國國家標準和技術研究所NIST發起了徵集AES算法的活動,並成立了專門的AES工作組,目的是為了確定一個非保密的、公開披露的、全球免費使用的
分組密碼 算法,用於保護下一世紀政府的敏感信息,並希望成為秘密和公開部門的
數據加密標準 。
1997年9月12日,在聯邦登記處公布了徵集AES候選算法的通告.AES的基本要求是比三重DES快而且至少和三重DES一樣安全,分組長度128比特,密鑰長度為128/192/256比特。1998年8月20日,NIST召開了第一次候選大會,並公布了15個候選算法。1999年3月22日舉行了第二次AES候選會議,從中選出5個.AES將成為新的公開的
聯邦信息處理標準 (FIPS--Federal Information Processing Standard),用於美國政府組織保護敏感信息的一種特殊的
加密算法 。美國國家標準技術研究所(NIST)預測AES會被廣泛地套用於組織,學院及個人。入選AES的五種算法是MARS、RC6、Serpent、Twofish、Rijndael。
2000年10月2日,美國商務部部長Norman Y. Mineta宣布,經過三年來世界著名密碼專家之間的競爭,Rijndael數據加密算法最終獲勝。
為此而在全球範圍內角逐了數年的激烈競爭宣告結束,這一新加密標準的問世將取代DES
數據加密標準 ,成為21世紀保護國家敏感信息的高級算法。
優劣鑑別 目前市場上防泄密軟體(
防泄密系統 )魚龍混雜、良莠不齊,作為單位用戶怎樣衡量防泄密系統的優劣呢?其實只要從幾個方面考察就可以確定防泄密軟體的質量:
1)穩定性
穩定性是壓倒一切的指標。如果沒有穩定性,這種防泄密系統就是失敗的產品。防泄密系統為了達到
訪問控制 目的,實現得不好就會影響作業系統的穩定,質量差的防泄密系統造成程式崩潰、
當機 甚至藍屏屢見不鮮。
2)透明度
防泄密系統的透明度是指安裝部署防泄密系統前後對於用戶正常工作操作計算機的差別。好的防泄密系統通過
實時加解密 技術不改變任何使用方式和操作習慣。
3)兼容性
兼容性是指
防泄密系統 對應用程式的支持方式。有些防泄密系統是套用級的,只支持已知的應用程式。這種防泄密系統的兼容性相對比較差,因為應用程式的補丁升級和後續版本都可能導致防泄密系統的失效。好的防泄密系統應該是與應用程式無關的,能夠提供對未來或未知套用的支持。這種系統不但無後顧之憂,而且從經濟性上為客戶保值和增值,客戶在套用系統升級可變更應用程式後不需要重新變更和部署防泄密系統。
4)性能
是電器就必然消耗功率。防泄密系統要加密數據,加密數據就需要消耗計算機資源。因此不要指望防泄密系統一點不影響計算機的效率。測試性能影響的方式很簡單,可使用下面的方式:
如果你是
CAD 用戶,可以在安裝
防泄密系統 前使用三維的CAD軟體(如
Inventor 、
SolidWorks 等)打開一個包含多個零部件的總裝圖(圖形越複雜越好),記錄下使用的時間,在部署防泄密軟體後加密整個總裝圖(包括所有零部件),然後再打開這個總裝圖,記錄所使用的時間。比較一下前後兩次使用的時間是否在自己所能承受的範圍。
如果你的行業是軟體開發,會對
原始碼 防泄密,可以找一個比較大的原始碼工程作為測試對象,在部署前記錄下全部編譯一次的時間,在部署後加密這個工程的全部原始碼,再記錄一下
編譯時間 。比較兩次編譯的時間看是否在自己可以接受的範圍。
如果你是地理數據處理、平面設計和視頻非編用戶,那你更應該關注防泄密系統的性能,因為這類行業的軟體本身就十分消耗計算機資源。測試性能的方式也是測試部署前後對同一檔案的操作時間。不過真正的
實時加解密 系統並不增加數據輸入輸出量,因此對這類系統的性能影響很小。
總的來說,原始碼編譯器最能檢驗防泄密系統的性能。以Microsoft
SDK 的命令行編譯環境為例,好的防泄密軟體應該做到性能影響不超過30%,而實時防病毒軟體對其性能影響不同廠商的產品一般在35%到100%之間。三維CAD軟體也比較能夠體現出性能影響。而一般的套用軟體性能影回響該小於3%,幾乎感覺不到。
泄密系統 數據防泄密 系統能夠實現機密信息只能在辦公區域內使用,不能夠帶走,可以實現如下功能:
1、用戶鑒權:系統集成了統一的用戶鑒權管理,用戶統一使用USB-KEY進行身份認證,客戶端支持雙因子認證產品是基於用戶的管理體系,在人員、角色、許可權三者之間建立的對應關係。在實際套用中完全匹配企業中的人員、職位及許可權。
2、泄密控制:系統對打開加密文檔的應用程式進行如下控制:列印、記憶體竊取、拖拽和剪貼簿等防止用戶主動或被動地泄漏機密數據。
3、審批管理:系統支持文檔的共享、離線和外發操作,管理員可以按照實際工作需要,配置是否對這些操作強制執行審批流程。
4、精細管控:系統對文檔的操作許可權進行細分,包括文檔的讀取、共享、存儲、分發、列印等管控同時對文檔的時效性做到了有效管控。為用戶提供了人性、科學、安全、有效的管理機制。
5、全面審計:系統對加密文檔的常規操作,進行詳細且全面的審計。控制台提供了基於WEB的管理方式。審計管理員可以方便地通過瀏覽器進行全系統的審計管理。
6、離線支持:離線功能是應對客戶端在沒有與伺服器聯網的狀態下實現的有限管控。具體體現的情況如:公司人員出差、回家加班、伺服器網路中斷等情況。
7、文檔外發:系統中,非授權人員不能閱讀加密文檔的內容。本功能製作的外發文檔,可以在未安裝客戶端的機器上正常訪問。外發的文檔,和內部使用一樣,受到加密保護和泄密控制,不會造成文檔內容泄露。
8、
文檔加密 :系統對指定應用程式所生成的文檔進行強制加密保護。
用戶文檔 將被強制加密,並且只能在連線上伺服器時訪問自己創建的文檔。該過程完全透明,不影響現有套用和用戶習慣。通過共享離線和外發管理可以實行更多的
訪問控制 。