有兩種方法可以提供安全的通訊:第一種是保證傳輸介質的物理安全,即使任何人都不可能在傳輸介質上接上自己的竊密線或"竊聽",第二種方法是加密重要數據.
(1)物理安全
如果所有的系統都鎖在屋裡,並且所有連接系統的網絡和接到系統上的終端都在上鎖的同一屋內,則通訊與系統一樣安全(假定沒有MODEM).但是系統的通訊線在上鎖的室外時,就會發生問題了.
盡管從網絡通訊線提取信息所需要的技術,比從終端通訊線獲取數據的技術高幾個數量級,上述的同樣的問題也倒發生在網絡連接上.
用一種簡單的(但很昂貴)高技術加壓電纜,可以獲得通訊的物理安全.這一技術是若干年前,為美國國家電話系統而發展的.通訊電纜密封在塑料中,埋置於地下,並在線的兩端加壓.線上連接了帶有報警器的監示器,用來測量壓力.
如果壓力下降,則意味電纜可能破了,維修人員將被派出尋找與修復出問題的電纜.
電纜加壓技術提供了安全的通訊線.不是將電纜埋置於地下,而是架線於整座樓中,每寸電纜都將暴露在外.如果任何人企圖割電纜,監示器會啟動報警器,通知安全保衛人員電纜已被破壞.如果任何人成功地在電纜上接了自己的通訊線,安全人員定期地檢查電纜的總長度,應可以發現電纜拼接處.加壓電纜是屏蔽在波紋鋁鋼包皮中的,因此幾乎沒有電磁發射,如果要用電磁感應竊密,
勢必需用大量可見的設備.
這樣終端就不必鎖在辦公室,而只需將安全電纜的端頭鎖在辦公室的一個盒子裡.
另一個增加外部終端物理安全的方法,是在每天下午5點使用計算機的時間結束時,即當所有用戶回家時,斷開終端的連接.這樣某人若想非法進入系統, 將不得不試圖在白天人們來來回回的時間裡獲取終端的存取權,或不得不在下午5點手試圖潛入計算機房(如果5點後計算機房有操作人員或有安全人員,潛入計算機房的企圖就不可能得逞).
光纖通訊線曾被認為是不可搭線竊聽的,其斷破處立即可被檢測到,拼接處的傳輸會令人難以忍耐的緩慢.光纖沒有電磁幅射,所以也不能用電磁感應竊密.不幸的是光纖的最大長度有限制,長於這一長度的光纖系統必須定期地放大(復制)信號.這就需要將信號轉換成電脈沖,然後再恢復成光脈沖,繼續通過另一條線傳送.完成這一操作的設備(復制器)是光纖通訊系統的安全薄弱環節,因為信號可能在這一環節被搭線竊聽.有兩個辦法可解決這一問題:距離大於最大長度限制的系統間,不要用光纖線通訊(目前,網絡覆蓋范圍半徑約100
公裡),或加強復制器的安全(用加壓電纜,警報系統,警衛).
(2)加密
加密也可提高終端和網絡通訊的物理安全,有三種方法加密傳輸數據:
. 鏈接加密:在網絡節點間加密,在節點間傳輸加密,傳送到節點後解密, 不同節點對間用不同的密碼.
. 節點加密:與鏈接加密類似,不同的只是當數據在節點間傳送時,不用明碼格式傳送,而是用特殊的加密硬件進行解密和重加密,這種
專用硬件通常旋轉在安全保險箱中.
. 首尾加密:對進入網絡的數據加密,然後待數據從網絡傳送出後再進行解密.網絡本身並不會知道正在傳送的數據是加密數據.這一
方法的優點是,網絡上的每個用戶(通常是每個機器的一個用戶)可有不同的加密關鍵詞,並且網絡本身不需增添任何專門的加密設備.缺點是每個系統必須有一個加密設備和相應的軟件(管理加密關鍵詞).或者每個系統必須自己完成加密工作(當數據傳輸率是按兆位/秒的單位計算時,加密任務的計算量是很大的).
終端數據加密是一特殊情況,此時鏈接加密法和首尾加密法是一樣的方法,終端和計算機都是既為節點又為終止端點.
通訊數據加密常常不同於文件加密,加密所用的方法不應降低數據的傳送速度.丟失或被歪曲了的數據不應當引起丟失更多的數據位,即解密進程應當能修復壞數據,而不能由於壞數據對整個文件或登錄進行不正確地解密.對於登錄會話,必須一次加密一個字節,特別是在UNIX系統的情況下,系統要將字所返回給用戶,更應一次加密一個字節.在網絡中,每一鏈可能需要不同的加密關鍵字,這就提出了對加密關鍵詞的管理,分配和替換問題.
DES傳送數據的一般形式是以代入法密碼格式按塊傳送數據,不能達到上述的許多要求.DES采用另一加密方法,一次加密一位或一個字節,形成密碼流.
密碼流具有自同步的特點,被傳送的密碼文本中發生的錯誤和數據丟失,將只影響最終的明碼文本的一小段(64位).這稱為密碼反饋.在這種方法中,DES被用作虛擬隨機數發生器,產生出一系列用於對明碼文本的隨機數.明碼文本的每n位與一個DESn位的加密輸出數進行異或,n的取值為1-64,DES加密處理的輸入是根據前邊傳送的密碼文本形成的64位的數值.
發n為1時,加密方法是自同步方式:錯一位或丟失1位後,64位的密碼文本將不能被正確地解密,因為不正確的加密值將移入DES輸入的末端.但是一旦接收到正確的64位密碼,由於DES的加密和解密的輸入是同步的,故解密將繼續正確地進行.
DES的初始輸入稱為種子,是一個同時由傳輸器和接收器認可的隨機數.通常種子由一方選擇,在加密前給另一方.而加密關鍵詞不能以明碼格式通過網絡傳送,當加密系統加電時在兩邊都寫入加密關鍵詞,並且在許多階段期間加密關鍵詞都保持不變,用戶可以選擇由主關鍵詞加密的階段關鍵詞,發送到數據傳送的另一端,當該階段結束後,階段關鍵詞就不再使用了.主關鍵詞對用戶是不可見的,由系統管理員定期改變,選擇哪一種關鍵詞管理方法,常由所用的硬件來確定.如果加密硬件都有相應的設備,則用種子還是用主關鍵詞階段關鍵詞是無關緊要的.
(3)用戶身份鑒別
口令只是識別一個用戶的一種方法,實際上有許多方法可以用來識別用戶.
. CALL BACK MODEM:則維護系統有效用戶表及其相應電話號碼的設備.當用戶撥號調用系統時,CALL BACK MODEM獲得用戶的登錄戶頭,掛起,再回頭調用用戶的終端.這種方法的優點是,限制只有電話號碼存於MODEM中的人才是系統的用戶,從而使非法侵入者不能從其家裡調用系統並登錄,這一方法的缺點是限制了用戶的靈活性,並仍需要使用口令,因為MODEM不能僅從用戶發出調用的地方,唯一地標識用戶.
. 標記識別:標記是口令的物理實現,許多標記識別系統使用某種形式的卡(如背面有磁條的信用卡),這種卡含有一個編碼後的隨機數.卡由連接到終端的閱卡機讀入,不用再敲入口令.為了增加安全性, 有的系統要求讀入卡和敲入口令.有些卡的編碼方法使得編碼難於復制.標記識別的優點是,標識可以是隨機的並且必須長於口令.
不足之處是每個用戶必須攜帶一個卡(卡也可與公司的徽記組合使用).並且每個終端上必須連接一個閱讀機.
. 一次性口令:即"詢問-應答系統".一次性口令系統允許用戶每次登錄時使用不同的口令.這種系統允許用戶每次登錄時使用不同的口令.
這種系統使用一種稱做口令發生器的設備,設備是手攜式的(大約為一個袖珍計算器的大小),並有一個加密程序和獨一的內部加密關鍵詞.系統在用戶登錄時給用戶提供一個隨機數,用戶將這個隨機數送入口令發生器,口令發生器用用戶的關鍵詞對隨機數加密,然後用戶再將口令發生器輸出的加密口令(回答)送入系統,系統將用戶輸入的口令,與它用相同的加密程序,關鍵詞和隨機數產生的口令比較,如果二者相同,允許用戶存取系統.這種方法的優點是:用戶可每次敲入不同的口令,因此不需要口令保密,唯有口令發生器需要安全保護.為了增加安全性,UNIX系統甚至不需聯機保存關鍵詞,實際的關鍵詞可保存在有線連接於系統的一個特殊加密計算機中.在用戶登錄期間,加密計算機將為用戶產生隨機數和加密口令.這樣一種系統的優點是,口令實際不由用戶輸入,系統中也不保存關鍵詞,即使是加密格式的關鍵詞也可保存於系統中.
其不足之處類似於標記識別方法,每個用戶必須攜帶口令發生器,
如果要脫機保存關鍵詞,還需要有一個特殊硬件.
. 個人特征:有些識別系統檢測如指印,簽名,聲音,零售圖案這倦的物理特征.大多數這樣的系統極是實驗性的,昂貴的,並且不是百分之
百的可靠.任何一個送數據到遠程系統去核實的系統有被搭線竊聽的危險,非法入侵者只須記錄下送去系統校核的信息,以後再重顯示這些信息,就能竊密.注意:這同樣也是標記識別系統的一個問題.
6.SUN OS系統的網絡安全
美國SUN MICROSYSTEM公司的SUN OS操作系統是建立在貝爾實驗室的UNIX SYSTEM V和加州大學伯克得分校的UNIX 4.3基礎上的UNIX操作系統.SUN OS 4.0版提供了專門的鑒別系統,該系統極大地提高了網絡環境的安全性.它也可用來確保其它UNIX系統或非UNIX系統的安全.它使用DES密碼機構和公共關鍵字密碼機構來鑒別在網絡中的用戶和機器.DES表示數據編碼標准,而公共數據編碼機構是包含兩種密鑰的密碼系統:一種是公用的,另一種是專用的.公用的密鑰是公開的而專用密鑰是不公開的.專用(秘密)的密鑰用來對數據進行編碼和解碼.
SUN OS系統不同於其它公共關鍵字編碼之系統在於:SUN OS的公用和專用密鑰都被用來生成一個通用密鑰,該密鑰又用來產生DES密鑰.
(1)確保NFS的安全
在網絡文件系統NFS上建立安全系統,首先文件系統必須開放並保證裝配的安全.
. 編輯/etc/eXPorts文件,並將-Secure任選項加在要使用DES編碼機構的文件系統上.在屏幕上顯示服務器怎樣開放安全的/home目錄,如:
home -Secure,Access=engineering
其中engineering是網絡中唯一能存取/home文件系統的用戶組.
. 對於每台客戶機(CLIENT),編輯/etc/fastab文件時,Secure將作為一個裝配任選項出現在每個需要確保安全的文件系統中.
. SUN OS中包括有/etc/publickey數據庫,該庫對每個用戶均包含有三個域:
用戶的網絡名,公用密鑰和編碼後的密鑰.當正常安裝時X唯一的用戶是nobody,這個用戶可以無需管理員的干預即可建立自己的專用密鑰(使用
chkey(1)).為了進一步確保安全,管理員可為每個使用newkey(8)的用戶建立一
其中engineering是網絡中唯一能存取/home文件系統的用戶組.
. 對於每台客戶機(CLIENT),編輯/etc/fastab文件時,Secure將作為一個裝配任選項出現在每個需要確保安全的文件系統中.
. SUN OS中包括有/etc/publickey數據庫,該庫對每個用戶均包含有三個域:
用戶的網絡名,公用密鑰和編碼後的密鑰.當正常安裝時X唯一的用戶是nobody,這個用戶可以無需管理員的干預即可建立自己的專用密鑰(使用
chkey(1)).為了進一步確保安全,管理員可為每個使用newkey(8)的用戶建立一