? 信息技術(shù)極大的提高了我們的生產(chǎn)力水平缚忧,給我們的生產(chǎn)生活帶來(lái)便利和高效僵控,同時(shí)也帶來(lái)了信息安全問題痕钢。本文首先介紹信息通信過程面臨的問題图柏,其次介紹幾種常見的信息安全技術(shù),最后討論信息安全自我防護(hù)的常識(shí)技能任连。
一蚤吹、信息的傳輸及安全威脅
? 當(dāng)一個(gè)人向另一個(gè)人發(fā)送信息時(shí),發(fā)出信息的人稱為發(fā)送者随抠,而收到信息的人稱為接收者裁着。信息傳輸?shù)哪P腿鐖D1所示,張三為發(fā)送者拱她、李四為接收者二驰,張三向李四發(fā)生了一條信息,這里的信息可以是郵件秉沼、文件或微信消息等桶雀。信息通過網(wǎng)絡(luò)從張三的計(jì)算機(jī)發(fā)送到李四的計(jì)算機(jī)上矿酵,在傳輸時(shí)會(huì)經(jīng)過多臺(tái)通信設(shè)備(交換機(jī)、路由器等)中轉(zhuǎn)矗积,在這個(gè)過程中全肮,就存在惡意竊聽者(王五)的威脅。信息安全所面臨的威脅總的來(lái)說包括下面幾種:
? 竊聽棘捣,信息內(nèi)容本該只有發(fā)送者和接收者知道辜腺,但如果不采取相應(yīng)的措施,就可能被竊聽者竊取乍恐,導(dǎo)致秘密泄露评疗,破壞信息的機(jī)密性。
? 篡改禁熏,竊聽者竊取信息后壤巷,可以對(duì)信息進(jìn)行修改再轉(zhuǎn)發(fā)給接收者,從而破壞信息的完整性瞧毙。
? 偽裝,別有用心者將自己偽裝成某個(gè)合法的發(fā)送者寄症,向接收者發(fā)送虛假信息宙彪。
? 否認(rèn),發(fā)送者否認(rèn)向接收者發(fā)送過某條信息有巧,如張三否認(rèn)向李四承諾轉(zhuǎn)賬100萬(wàn)的信息释漆。
二、常見信息安全技術(shù)
? 為解決信息安全面臨的威脅篮迎,科學(xué)家們發(fā)明了多種信息安全技術(shù)男图,以下介紹幾類常見的技術(shù)。
(一)密碼技術(shù)
1.基本概念
? 密碼技術(shù)可以解決信息竊聽的問題甜橱。如圖2所示逊笆,張三不想讓人看到他發(fā)送的信息內(nèi)容,那么他可以將信息加密后再發(fā)送出去岂傲。加密前的信息稱為明文难裆,加密后的信息稱為密文。李四在接收到張三的密文后镊掖,需要進(jìn)行解密才能看到明文乃戈。解密就是將密文恢復(fù)成明文的過程。將信息加密后亩进,即使被竊聽症虑,竊聽者也只能得到密文,而無(wú)法知道加密前的明文內(nèi)容归薛。接收者將密文還原成明文的過程稱為解密谍憔,而接收者以外的人試圖將密文還原成明文則稱密碼破譯匪蝙,簡(jiǎn)稱破譯。
? 密碼技術(shù)由密碼算法和密鑰兩部分組成韵卤。密碼算法是能夠重復(fù)使用的骗污,包括加密算法和解密算法,加密算法是從明文生成密文的計(jì)算步驟(程序)沈条,解密算法是把密文還原成明文的計(jì)算步驟(程序)需忿。密鑰(密碼)是一種參數(shù),是可變的蜡歹,它是在明文轉(zhuǎn)換為密文或?qū)⒚芪霓D(zhuǎn)換為明文的算法中輸入的參數(shù)屋厘。
? 下面以凱撒密碼為例,把密碼技術(shù)的相關(guān)概念串起來(lái)月而。凱撒密碼傳說是古羅馬著名軍事統(tǒng)帥凱撒使用過的汗洒。凱撒密碼通過將明文中所用的字母表按照一定數(shù)字循環(huán)平移來(lái)進(jìn)行加密,解密則是通過反方向循環(huán)平移操作完成的父款。循環(huán)平移就是加密算法溢谤,循環(huán)平移的數(shù)量就是密鑰。如圖3所示憨攒,我們將字母表循環(huán)平移3個(gè)字母世杀,于是,明文的A在加密后就變成與其相隔3個(gè)字母的D肝集,B變成E瞻坝,以此類推。
? 例如:我們采用凱撒密碼算法和密鑰為3加密明文STMSA杏瞻,得到的密文為VWPVD所刀。
? S->V
? T->W
? M->P
? S->V
? A->D
? 解密則是將密文VWPVD往反方向循環(huán)平移3位還原成明文STMSA沥阱。
2.兩種典型的加密方法
? 根據(jù)密鑰的使用方法误澳,可將加密方法分為對(duì)稱加密和非對(duì)稱加密。
? 對(duì)稱加密是指加密和解密時(shí)使用同一密鑰的方法养筒,以上提到的凱撒密碼就屬于對(duì)稱加密的一種树肃,當(dāng)前主要有DES蒸矛、3DES、RC5胸嘴、IDEA等算法雏掠。對(duì)稱加密的應(yīng)用比較早,具有算法公開劣像、計(jì)算量小乡话、速度快、效率高耳奕、使用長(zhǎng)密鑰時(shí)難破解等優(yōu)點(diǎn)绑青,但由于通信雙方都使用同樣的密鑰诬像,存在密鑰配送問題,安全性得不到保證闸婴。
? 例如坏挠,張三要發(fā)生信息給李四,而不想讓人知道信息內(nèi)容邪乍,因此張三決定用對(duì)稱加密的方式進(jìn)行加密降狠。那么,是不是把密文直接發(fā)送給李四就行庇楞?顯然是不可以的榜配,因?yàn)槔钏倪€需要有密鑰才能進(jìn)行解密才能得到明文。如何把密鑰安全的發(fā)送給接收者的密鑰配送問題就是對(duì)稱密鑰無(wú)法解決的吕晌。
? 非對(duì)稱加密(公鑰密碼體系)則是指加密和解密時(shí)采用不同的密鑰的方式蛋褥。私有密鑰(簡(jiǎn)稱私鑰)用于解密;公共密鑰(公鑰)用于加密且僅用于加密睛驳,無(wú)法用于解密烙心。私鑰和公鑰需要成對(duì)一起使用,私鑰只能由需要解密的人保存乏沸,公鑰則可以公開弃理,任何需要加密的人都可以持有。如圖4所示屎蜓,假設(shè)張三要給李四發(fā)一條信息,李四是接收者钥勋,張三是發(fā)送者炬转,雙方采用非對(duì)稱加密方式通信的流程如下:
? (1)李四生成一個(gè)包含有私鑰和公鑰的密鑰對(duì)算灸。私鑰由李四自行妥善保管扼劈。
? (2)李四將自己的公鑰發(fā)給張三菲驴,告訴張三用這個(gè)公鑰加密信息并發(fā)給他荐吵。這個(gè)公鑰在傳輸過程中即使給截獲也不怕。
? ∩匏病(3)張三用李四的公鑰對(duì)信息進(jìn)行加密先煎。
? (4)張三將密文發(fā)送給李四巧涧。發(fā)送過程即使被竊聽者截獲薯蝎,竊聽者同時(shí)擁有公鑰和密文也是無(wú)法進(jìn)行解密的。
? “(5)李四接收到張三的密文后占锯,使用自己的私鑰進(jìn)行解密得到明文袒哥。
? 非對(duì)稱加密在實(shí)現(xiàn)上主要是基于大素?cái)?shù)和橢圓曲線的原理,常見的非對(duì)稱加密算法有RSA消略、Rabin堡称、ElGamal、橢圓曲線加密算法(Elliptic curve)等艺演。
(二)單向散列函數(shù)
? 日常生活中却紧,由于指紋具有唯一性,我們常會(huì)使用指紋信息來(lái)確定某個(gè)人的身份(不可能也沒必要用到整個(gè)人信息來(lái)認(rèn)證)钞艇。針對(duì)計(jì)算機(jī)所處理的消息啄寡,我們有時(shí)也需要用到“指紋”,例如當(dāng)需要比較兩個(gè)文件是否一致時(shí)哩照,尤其當(dāng)文件非常大時(shí)挺物,我們無(wú)需直接對(duì)比文件內(nèi)容,只要對(duì)比它們的“指紋”就行飘弧,這就需要用到單向散列函數(shù)识藤,單向散列函數(shù)也是防篡改的重要手段。
? 單向散列函數(shù)有一個(gè)輸入和一個(gè)輸出次伶,輸入的內(nèi)容稱為消息痴昧,輸出的內(nèi)容稱為散列值,單向散列函數(shù)可以根據(jù)消息的內(nèi)容計(jì)算出散列值冠王,這個(gè)散列值就是消息的“指紋”赶撰,可以用來(lái)檢查消息的完整性,從而達(dá)到防篡改的目的柱彻。例如從微軟公司的網(wǎng)站下載一個(gè)Windows 10安裝鏡像豪娜,微軟會(huì)在你下載前提供這個(gè)安裝鏡像的散列值,下載完成后就可以用微軟提供的散列值驗(yàn)證鏡像的完整性哟楷,從而起到防篡改的作用瘤载。
? 單向散列函數(shù)具有以下性質(zhì):
? 一是任意長(zhǎng)度消息計(jì)算出的散列值的長(zhǎng)度都是固定的。例如采用SHA-256算法時(shí)卖擅,不管是一個(gè)16字節(jié)的用戶密碼鸣奔,還是5MB的圖片,還是一個(gè)4GB大小的操作系統(tǒng)鏡像文件惩阶,計(jì)算出來(lái)的散列值都是32字節(jié)(256比特)的挎狸。
? 二是要能快速計(jì)算出散列值。盡管消息越長(zhǎng)琳猫,單向散列函數(shù)計(jì)算的時(shí)間肯定要長(zhǎng)點(diǎn)伟叛,但如果無(wú)法在合理的時(shí)間完成計(jì)算就沒有意義。
? 三是不同消息的散列值應(yīng)該不同脐嫂。要確保能驗(yàn)證消息的完整性统刮,防止篡改紊遵,消息中哪怕只有1比特內(nèi)容改變,也必須有很高概率產(chǎn)生不同的散列值侥蒙。
? 三是具備單向性暗膜。即根據(jù)消息計(jì)算出散列值是很容易的,但無(wú)法通過散列值反推算出消息內(nèi)容鞭衩。正如同把玻璃砸得粉碎是很容易学搜,但卻無(wú)法將碎片還原成完整的玻璃。
? 除防篡改外论衍,單向散列值還有很多非常廣的應(yīng)用瑞佩,如賬號(hào)密碼的保存、區(qū)塊鏈中區(qū)塊間的鏈接等坯台。當(dāng)前常見的單向散列函數(shù)算法有MD5炬丸、SHA-256等。
(三)數(shù)字簽名
? 數(shù)字簽名相當(dāng)現(xiàn)實(shí)世界中的蓋章蜒蕾、簽字的功能在計(jì)算機(jī)中的實(shí)現(xiàn)稠炬,可以解決篡改、偽裝和否認(rèn)等問題咪啡。在實(shí)行無(wú)紙化辦公后首启,為確保電子文書的有效性,一般會(huì)在電子文書上加蓋上電子印章撤摸,電子印章就是數(shù)字簽名有效的表現(xiàn)形式毅桃。可以簡(jiǎn)單的把電子印章看作就是數(shù)字簽名准夷。
? 數(shù)字簽名同樣也使用非對(duì)稱加密的方法實(shí)現(xiàn)疾嗅,如圖5所示,使用私鑰加密相當(dāng)于生成簽名冕象,而用公鑰解密則相當(dāng)于驗(yàn)證簽名。
? 為什么加密相當(dāng)于簽名汁蝶,解密相當(dāng)于驗(yàn)證簽名呢渐扮?因?yàn)椋M成密鑰對(duì)的兩個(gè)密碼之間存在嚴(yán)密的數(shù)學(xué)關(guān)系掖棉,他們一一對(duì)應(yīng)墓律,無(wú)法拆開。用公鑰加密得到的密文幔亥,只能用與該公鑰配對(duì)的私鑰才能解密耻讽;同樣的,用私鑰加密得到的密文(數(shù)字簽名)帕棉,也只能用該私鑰配對(duì)的公鑰才能解密(驗(yàn)證簽名)针肥。也就是說饼记,如果某個(gè)公鑰成功解密了密文,那么就能夠證明這段密文是用與該公鑰配對(duì)的私鑰進(jìn)行加密所得到的慰枕,所以就能實(shí)現(xiàn)數(shù)字簽名的功能具则。
? 數(shù)字簽名有兩種方法:直接對(duì)消息簽名和對(duì)消息的散列值簽名。假設(shè)發(fā)送者張三要對(duì)消息簽名具帮,而接收者李四要對(duì)簽名進(jìn)行驗(yàn)證博肋,張三需要事先生成一個(gè)包括私鑰和公鑰的密鑰對(duì),然后把公鑰給而需要驗(yàn)證簽名的李四蜂厅,這步跟前面的非對(duì)稱加密是一樣的匪凡。下面以直接對(duì)消息進(jìn)行簽名的方法介紹簽名和驗(yàn)證過程。
? 【蛟场(1)張三用自己的私鑰對(duì)消息就行加密得到數(shù)字簽名病游,即消息+私鑰=數(shù)字簽名。
? ∈踅薄(2)張三將消息和簽名發(fā)給李四礁遵。
? (3)李四用張三的公鑰對(duì)收到的密文(簽名)解密采记,只有密文(簽名)確實(shí)是用張三私鑰加密的佣耐,李四才能用張三的公鑰解密(驗(yàn)證)。
? ∵罅洹(4)李四將簽名解密后得到的消息與張三直接發(fā)送的消息進(jìn)行比對(duì)驗(yàn)證兼砖。
? 直接對(duì)消息簽名的方法比較易于理解,但當(dāng)消息比較大時(shí)既棺,會(huì)非常耗時(shí)讽挟,效率很低,所以一般不會(huì)采用這種方法丸冕,而是采用散列值簽名的方法耽梅。散列值方法是先利用上一小節(jié)講的單向散列函數(shù)得到消息的散列值(指紋),再對(duì)散列值(指紋)進(jìn)行簽名和驗(yàn)證胖烛。因?yàn)樯⒘兄担ㄖ讣y)可以代表消息原文眼姐。
三、信息安全防護(hù)常識(shí)技能
? ∨宸(一)不要使用保密的密碼算法众旗。不要嘗試自己開發(fā)一套密碼算法來(lái)保障信息安全,開發(fā)高強(qiáng)度的密碼算法是非常困難的趟畏,而且自己開發(fā)的算法也很難得到有效的攻擊測(cè)試贡歧,非常不可靠。另一方面,從歷史上看利朵,密碼算法的秘密早晚都會(huì)公諸于眾律想。
? (二)密碼總有一天會(huì)被破解哗咆。任何密碼算法生成的密文蜘欲,只要將所有密鑰都嘗試一遍(暴力破解),總有一天能破譯出來(lái)晌柬,僅僅是時(shí)間問題姥份。因此,破譯密文的時(shí)間要與保密明文的價(jià)值進(jìn)行權(quán)衡年碘,即考慮情報(bào)信息的時(shí)間價(jià)值澈歉。
? (三)要經(jīng)常修改密碼屿衅。當(dāng)前只有一次性密碼從理論上講永遠(yuǎn)是安全的埃难,也就一次通信使用一個(gè)密碼。然而一次性密碼并不是一種現(xiàn)實(shí)可用的算法涤久,但我們可以按照一次性密碼的理念涡尘,通過經(jīng)常修改密碼,縮短同一個(gè)密碼的使用時(shí)間來(lái)提高安全性响迂。
? 】汲(四)使用低強(qiáng)度密碼比不進(jìn)行任何加密更危險(xiǎn)。人們?nèi)菀淄ㄟ^“密碼”這個(gè)詞獲得一種“錯(cuò)誤的安全感”蔗彤,就像打了有問題的病毒疫苗川梅,然后跑到病毒聚集的地方一樣。而且低強(qiáng)度的密碼很容易通過查表(字典)的方法進(jìn)行破解然遏。
? ∑锻尽(五)打補(bǔ)丁和升級(jí)軟件系統(tǒng)是最好的防護(hù)。要從算法上破解密碼是非常困難的待侵,黑客一般會(huì)繞開密碼破解丢早,利用軟件的漏洞(BUG),尤其是操作系統(tǒng)的漏洞(BUG)入侵我們的電腦秧倾,獲取我們的信息香拉。因此,及時(shí)給操作系統(tǒng)打補(bǔ)丁中狂,升級(jí)軟件能更好的保護(hù)您的信息安全,比安裝防火墻更有效扑毡,且低成本胃榕。
? (六)提高意識(shí)防范社會(huì)工程學(xué)攻擊。社會(huì)工程學(xué)攻擊是指通過欺詐他人以收集信息勋又、行騙和入侵計(jì)算機(jī)系統(tǒng)的行為苦掘,如電信詐騙,是目前非常流行有效的攻擊手段楔壤。要防范社會(huì)工程學(xué)攻擊鹤啡,一定要提高安全意識(shí),不要輕易相信陌生電話蹲嚣,不要點(diǎn)擊來(lái)歷不明的鏈接(網(wǎng)址)递瑰,不要安裝來(lái)歷不明的軟件(App)等,歸根到底就是不要貪小便宜隙畜,不要有妄念抖部。
? 文章首先介紹了竊聽、篡改议惰、偽裝和否認(rèn)等四種信息安全維修慎颗,其次介紹了密碼技術(shù)、單向散列函數(shù)和數(shù)字簽名三種信息安全技術(shù)言询,最好介紹了六種信息安全防護(hù)