近幾個世紀(jì)以來人們使用鎖、柵欄、簽名、封印、賬冊和儀表等來保護(hù)自己的財產(chǎn)和隱私,并得到從國際條約到國際法到禮節(jié)和風(fēng)俗等的大量社會結(jié)構(gòu)的支持。
這一切處于快速的變革中。大多數(shù)記錄現(xiàn)在都實現(xiàn)了電子化,從銀行賬號到土地財產(chǎn)登記冊都如此;隨著Internet購物的流行,交易也日趨電子化。還有很多也很重要但不那么明顯的是,很多日常系統(tǒng)也已經(jīng)悄悄地實現(xiàn)了自動化處理。防盜自動警鈴不再會驚醒鄰居的美夢,而是悄悄地向警察發(fā)送消息;學(xué)生們不再需要使用硬幣來為其宿舍內(nèi)的洗衣機(jī)和干衣機(jī)付費,而是用可在大學(xué)書店充值的智能卡進(jìn)行記賬;鎖不再是簡單的機(jī)械設(shè)施,而是可以通過遠(yuǎn)程電子控制或刷卡進(jìn)行操縱;數(shù)百萬的人們不再需要租賃錄像帶,而是通過衛(wèi)星或電纜來觀看電影。甚至普通鈔票也不再只是紙上印著墨汁,而是包含了數(shù)字水印信息,以便機(jī)器檢測很多偽造行為。
那么,這些新的安全技術(shù)效果如何?遺憾的是,真實的答案是“與預(yù)期的良好作用相距甚遠(yuǎn)”。新系統(tǒng)通常很快就被攻破,同樣的基礎(chǔ)性錯誤在不同的應(yīng)用程序中不斷重復(fù)出現(xiàn)。通常需要經(jīng)過四五次嘗試才能實現(xiàn)安全的設(shè)計,而這實在太多了。
媒體經(jīng)常報告Internet上的安全漏洞,銀行為取款機(jī)上的“錯誤提款”與客戶爭論不休,VISA報告了Internet上有爭議的信用卡交易數(shù)量的顯著增長,衛(wèi)星電視公司追索復(fù)制其智能卡的盜版者,執(zhí)法機(jī)構(gòu)試圖通過控制加密機(jī)制使用的法律來監(jiān)視計算機(jī)領(lǐng)域的恐怖主義行為。更糟糕的是,各種功能之間存在很多交互—— 偶然按到了移動電話的重?fù)苕I只是一個小小的麻煩,而在發(fā)明了一種機(jī)器且該機(jī)器在每次電話號碼被呼叫時就提供一罐軟飲料時,情況就不那么簡單了,當(dāng)你突然發(fā)現(xiàn)你的電話賬單上有50罐可樂時,誰應(yīng)該對此負(fù)責(zé)?電話公司?手持設(shè)備制造商?還是銷售機(jī)操作員?一旦幾乎所有影響生活的電子設(shè)備都連接到Internet上(Microsoft預(yù)計這將在2010年出現(xiàn)),“Internet安全”對個人意味著什么,怎樣應(yīng)付這個問題?
除系統(tǒng)故障外,還有很多系統(tǒng)不能有效工作。醫(yī)療記錄系統(tǒng)不允許醫(yī)生按需共享個人健康信息,但仍不能防止這些信息被不擇手段的私家偵探獲取。Zillion-dollar軍事系統(tǒng)阻止不具備絕密級許可權(quán)限的任何人獲取情報數(shù)據(jù),但通常在設(shè)計上幾乎要求所有人都具備絕密級許可權(quán)限才能完成任何工作。乘客售票系統(tǒng)在設(shè)計上試圖防止客戶欺騙,但當(dāng)反壟斷官員打破了鐵路的統(tǒng)一后,無法阻止新的鐵路公司彼此之間的欺騙。如果設(shè)計者知道其他地方有哪些做法已經(jīng)被嘗試過并失敗過,就可以預(yù)見其中很多失敗。
安全工程是從這些混亂中涌現(xiàn)出的一門新學(xué)科。
盡管大多數(shù)底層技術(shù)(如加密學(xué)、軟件可靠性、防篡改、安全打印和審計等)較容易理解,但如何有效應(yīng)用這些技術(shù)則更難。由于從機(jī)械機(jī)制向數(shù)字機(jī)制的轉(zhuǎn)變幾乎無處不在,使得很多經(jīng)驗教訓(xùn)沒有足夠的時間在工程團(tuán)體內(nèi)被學(xué)習(xí)和接受。我們一次又一次地看到很多做法在不同場合重復(fù)。
最有能力應(yīng)對變遷的行業(yè)通常是那些從其他領(lǐng)域?qū)W習(xí)了適當(dāng)技術(shù)的行業(yè),比如,銀行取款機(jī)(甚至預(yù)付費煤氣表)就重用了軍事領(lǐng)域敵我識別裝備中的技術(shù)。因此,即便某位安全設(shè)計人員在某個特定領(lǐng)域擁有出色的技能——不管是操縱密碼的數(shù)學(xué)家還是開發(fā)鈔票墨水的化學(xué)家——?對整個主題有全局的理解還是有意義的。良好的安全工程的實質(zhì)是理解系統(tǒng)面臨的潛在威脅,之后運用技術(shù)上和組織上合適的混合防護(hù)措施,來對這些威脅進(jìn)行控制。了解在其他應(yīng)用中哪些措施是有效的,更重要的是了解哪些措施是無效的,這對開發(fā)會很有幫助,并且可以省下一大筆錢。