|
SSL(Secure Socket Layer),中zhong文wen直zhi譯yi為wei安an全quan插cha接jie層ceng協xie議yi層ceng,聽ting不bu明ming白bai?說shuo白bai了le就jiu是shi在zai原yuan有you的de協xie議yi上shang加jia上shang一yi層ceng加jia密mi以yi及ji認ren證zheng這zhe類lei東dong西xi,目mu的de是shi保bao證zheng信xin息xi安an全quan。舉ju個ge簡jian單dan的de例li子zi我wo給gei你ni發fa一yi串chuan數shu據ju,不bu用yongSSL,被邪惡的第三方將其截獲,就能看出我的意圖,如果加上不帶認證的SSL將數據加密,即使被第三方得到,他拿到的也是無法看懂的數據,一點用都沒有。這隻是一個比較淺顯的比方,可能有人問:我把我要發送的數據寫一個加密算法加密後再發出去,這算不算SSL呢?我無法給出正確答案,請直接閱讀下麵的文字。
SSL有兩個最核心的技術,一個是加密,一個是認證。認證是比較深層次的東西(至少我這麼認為),暫且不說認證,單說加密。
廣義上的SSL是包含隻把信息加密的這種作法,隻是從字麵上來講。如果嚴格遵循SSL提出者寫的規範,這種加密的作法也有限定,用什麼樣的加密方法是有規定。那如果有人要問SSL用(yong)的(de)是(shi)什(shen)麼(me)加(jia)密(mi)算(suan)法(fa)?我(wo)會(hui)反(fan)問(wen)你(ni),你(ni)知(zhi)道(dao)多(duo)少(shao)種(zhong)算(suan)法(fa)呢(ne)?看(kan)著(zhe)他(ta)們(men)茫(mang)然(ran)的(de)眼(yan)神(shen),我(wo)心(xin)裏(li)暗(an)暗(an)笑(xiao),開(kai)個(ge)玩(wan)笑(xiao)而(er)已(yi),下(xia)麵(mian)簡(jian)單(dan)介(jie)紹(shao)一(yi)下(xia)加(jia)密(mi)方(fang)麵(mian)的(de)知(zhi)識(shi)。
加(jia)密(mi)共(gong)分(fen)為(wei)帶(dai)鑰(yao)匙(chi)加(jia)密(mi)和(he)不(bu)帶(dai)鑰(yao)匙(chi)加(jia)密(mi),這(zhe)是(shi)以(yi)我(wo)的(de)習(xi)慣(guan)劃(hua)分(fen)。不(bu)帶(dai)鑰(yao)匙(chi)加(jia)密(mi)好(hao)理(li)解(jie),就(jiu)是(shi)一(yi)個(ge)算(suan)法(fa),不(bu)依(yi)賴(lai)於(yu)任(ren)何(he)外(wai)部(bu)數(shu)據(ju),這(zhe)種(zhong)算(suan)法(fa)不(bu)好(hao)的(de)地(di)方(fang)是(shi)一(yi)旦(dan)被(bei)破(po)解(jie)就(jiu)不(bu)能(neng)使(shi)用(yong),就(jiu)相(xiang)當(dang)於(yu)我(wo)知(zhi)道(dao)你(ni)是(shi)用(yong)這(zhe)種(zhong)方(fang)法(fa)加(jia)密(mi),那(na)麼(me)你(ni)的(de)信(xin)息(xi)也(ye)毫(hao)無(wu)安(an)全(quan)可(ke)言(yan),也(ye)就(jiu)不(bu)好(hao)在(zai)網(wang)絡(luo)連(lian)接(jie)這(zhe)方(fang)麵(mian)使(shi)用(yong)。
lingwaiyizhongshidaiyaochijiami,yejiushishuopojiederenjiyaozhidaoshishenmesuanfayeyaozhidaoyaochishishenme,zhizhidaoqiyibunengpojie。yidanpojie,zaihuanyigeyaochi,haikeyijixuyong,zhegeyaochijiushicanyujiamisuanfadewaibushuju。
那(na)麼(me),帶(dai)鑰(yao)匙(chi)加(jia)密(mi)的(de)算(suan)法(fa)又(you)分(fen)為(wei)兩(liang)種(zhong),一(yi)種(zhong)是(shi)對(dui)稱(cheng)加(jia)密(mi)的(de)算(suan)法(fa),另(ling)一(yi)種(zhong)是(shi)不(bu)對(dui)稱(cheng)加(jia)密(mi)的(de)算(suan)法(fa)。對(dui)稱(cheng)是(shi)指(zhi)加(jia)密(mi)用(yong)的(de)什(shen)麼(me)鑰(yao)匙(chi),解(jie)密(mi)也(ye)得(de)用(yong)這(zhe)個(ge)鑰(yao)匙(chi)。不(bu)對(dui)稱(cheng)加(jia)密(mi)是(shi)指(zhi)加(jia)密(mi)用(yong)的(de)是(shi)一(yi)種(zhong)鑰(yao)匙(chi),解(jie)密(mi)用(yong)的(de)是(shi)另(ling)外(wai)一(yi)種(zhong)鑰(yao)匙(chi)。SSL用的就是不對稱加密算法。具體用的什麼,好像還不止一種,有興趣的讀者可以查詢相關資料,這裏隻是簡介,將大概原理介紹一下。
假如通信雙方甲和乙,甲給乙發信息,乙給甲發信息,如何確保第三方看不到(或看不懂)tamenzhijianfasongdeshujune?caiyongbuduichengjiami。jiageiyifaxin,jiayaogeitajiami,yongyigeyaochijiahaole,haobixianzaifadeneirongshihuoxingwen,shuiyekanbudong,nameyijieshoule,yaoxiangzhidaoshishenmeneirong,jiudejiemi。
前麵說這是不對稱加密:一,乙必然要知道這個算法;二er,乙yi必bi然ran要yao知zhi道dao解jie密mi所suo需xu要yao的de鑰yao匙chi。這zhe個ge鑰yao匙chi哪na裏li來lai的de,甲jia給gei的de?不bu是shi。解jie密mi的de鑰yao匙chi遠yuan比bi加jia密mi的de鑰yao匙chi重zhong要yao得de多duo,隻zhi能neng自zi己ji知zhi道dao,別bie人ren,哪na怕pa是shi甲jia方fang也ye不bu行xing,因yin為wei一yi旦dan你ni的de解jie密mi鑰yao匙chi讓rang別bie人ren知zhi道dao,加jia密mi算suan法fa又you是shi公gong開kai,那na麼me就jiu等deng於yu所suo有you發fa給gei你ni的de信xin息xi內nei容rong也ye就jiu全quan部bu公gong開kai了le。所suo以yi解jie密mi密mi鑰yao隻zhi能neng自zi己ji知zhi道dao。
youyubuduichengjiamidelianggemiyaoshiyidui,suoyiyongshenmeyaochijiemi,jiudeyongxiangduiyingdeyaochijiami,zhehuasuiranfanguolaishuobijiaotongshunyidian,dandoushiyigeyisi。zhemeshuolai,xianqianjiafangjiamishujusuoyongdeyaochiheyifangjiemishujusuoyongdeyaochishiyidui,shiyouyifanglaizhizuo。xianzaiqingchule,yifangchanshengleyigeyaochidui,baqizhongyigegaosujiafang,rangtayonglaijiami,lingyigefangzaizijiadebaoxianguili,zhiyouzijizhidao,yonglaijiemijiafangchuanlaidexinxi。jiageiyifaxinshizheyangde,yigeijiafaxinyeyiyang,yongjiageitadeyaochijiami,fageijia,jiazaiyongzijideyaochijiemi。zhejiushiyigegongyao,yigesiyao。gongyaofabuchuqu,bierenyonglaijiami,siyaozijinazheyonglaijiemi。
有(you)人(ren)問(wen)公(gong)鑰(yao)別(bie)人(ren)知(zhi)道(dao)了(le),會(hui)不(bu)會(hui)被(bei)人(ren)推(tui)算(suan)出(chu)私(si)鑰(yao),我(wo)可(ke)以(yi)這(zhe)麼(me)回(hui)答(da),會(hui),隻(zhi)是(shi)時(shi)間(jian)的(de)問(wen)題(ti)。你(ni)說(shuo),時(shi)間(jian)不(bu)是(shi)問(wen)題(ti),我(wo)可(ke)以(yi)等(deng)。我(wo)告(gao)訴(su)你(ni),問(wen)題(ti)是(shi)你(ni)沒(mei)那(na)麼(me)多(duo)時(shi)間(jian)等(deng)。
破po解jie不bu對dui稱cheng加jia密mi,可ke簡jian可ke繁fan,是shi根gen據ju密mi鑰yao的de長chang短duan來lai決jue定ding,密mi鑰yao越yue短duan,破po解jie時shi間jian越yue短duan,密mi鑰yao越yue長chang,破po解jie時shi間jian越yue長chang。一yi個ge足zu夠gou長chang的de密mi鑰yao,等deng破po解jie出chu來lai要yao等deng到dao天tian荒huang地di老lao,這zhe是shi現xian在zai的de情qing況kuang,也ye許xu過guo些xie年nian這zhe種zhong情qing況kuang會hui有you改gai觀guan。
說(shuo)完(wan)加(jia)密(mi),再(zai)說(shuo)認(ren)證(zheng),認(ren)證(zheng)相(xiang)對(dui)加(jia)密(mi)來(lai)說(shuo)會(hui)複(fu)雜(za)一(yi)些(xie),還(hai)可(ke)能(neng)說(shuo)不(bu)太(tai)清(qing)楚(chu),這(zhe)裏(li)一(yi)樣(yang)隻(zhi)是(shi)對(dui)原(yuan)理(li)做(zuo)一(yi)些(xie)簡(jian)單(dan)介(jie)紹(shao),認(ren)證(zheng),打(da)個(ge)比(bi)方(fang)說(shuo),你(ni)如(ru)何(he)證(zheng)明(ming)你(ni)的(de)身(shen)份(fen),用(yong)身(shen)份(fen)證(zheng),什(shen)麼(me)?你(ni)用(yong)一(yi)個(ge)假(jia)的(de)身(shen)份(fen)證(zheng),那(na)麼(me)我(wo)再(zai)查(zha)你(ni)的(de)電(dian)子(zi)身(shen)份(fen)證(zheng)等(deng)等(deng)。我(wo)來(lai)調(tiao)查(zha)你(ni)的(de)身(shen)份(fen),這(zhe)個(ge)過(guo)程(cheng)就(jiu)叫(jiao)認(ren)證(zheng)。認(ren)證(zheng)是(shi)為(wei)了(le)防(fang)止(zhi)有(you)人(ren)假(jia)冐(冐)成(cheng)別(bie)人(ren)發(fa)信(xin)息(xi)。
再zai回hui顧gu一yi下xia,甲jia和he乙yi發fa信xin息xi,甲jia先xian把ba公gong鑰yao發fa給gei乙yi,讓rang乙yi用yong來lai加jia密mi信xin息xi,這zhe時shi,如ru果guo有you一yi個ge第di三san方fang丙bing,截jie獲huo到dao公gong鑰yao,則ze他ta就jiu可ke以yi用yong甲jia的de公gong鑰yao加jia密mi信xin息xi,並bing且qie假jia冒mao成cheng乙yi給gei甲jia發fa信xin。如ru果guo甲jia在zai接jie收shou乙yi的de公gong鑰yao時shi要yao求qiu乙yi提ti供gong“身份證”,術語叫證書,那丙就傻眼了。
這(zhe)種(zhong)證(zheng)書(shu)是(shi)由(you)一(yi)些(xie)機(ji)構(gou)簽(qian)發(fa),這(zhe)些(xie)機(ji)構(gou)被(bei)稱(cheng)為(wei)證(zheng)書(shu)頒(ban)發(fa)機(ji)構(gou),這(zhe)些(xie)機(ji)構(gou)被(bei)人(ren)信(xin)任(ren),證(zheng)書(shu)發(fa)給(gei)你(ni)時(shi),還(hai)是(shi)經(jing)過(guo)這(zhe)機(ji)構(gou)簽(qian)名(ming),就(jiu)像(xiang)微(wei)軟(ruan)頒(ban)發(fa)給(gei)你(ni)MVPzhengshushishangmianyoubiergaicideqianmingyiyang,butongdeshizhelishishuziqianming。guanyushuziqianming,youshiyitaohenfuzadelilun,zhelizanbubiaolu。youshuziqianmingzhihou,zhengshujibenshangjiubunengzaojia。youyourenwen,ruguozhengshubanfajigoufageiniyigecuowudezhengshuzenmeban?zheshigehenyansudewenti,zerenyaoyouzhengshubanfajigouchengdan。dangjiafangyaoqiuyichushizhengshuhou,yibazhengshutijiaoshangqu,shangmianyoubanfajigoudemingziheqianming,yeyouyidemingzi,zheyangjiajiukeyifangxindiheyijiaoliu,zheyangdisanfangjiuwucongchazu。
甲和乙互發信息聊得火爆,第三方丙即使截獲信息也看不懂,但他不甘寂寞,使出最後一招--篡(cuan)改(gai)。這(zhe)是(shi)個(ge)損(sun)人(ren)不(bu)利(li)已(yi)的(de)活(huo),對(dui)付(fu)這(zhe)種(zhong)搗(dao)蛋(dan)的(de)人(ren),可(ke)以(yi)使(shi)用(yong)哈(ha)希(xi)值(zhi)的(de)辦(ban)法(fa),俗(su)稱(cheng)電(dian)子(zi)摘(zhai)要(yao)。固(gu)定(ding)的(de)內(nei)容(rong)對(dui)應(ying)固(gu)定(ding)的(de)電(dian)子(zi)摘(zhai)要(yao),當(dang)通(tong)信(xin)內(nei)容(rong)被(bei)篡(cuan)改(gai)後(hou),接(jie)收(shou)方(fang)再(zai)計(ji)算(suan)一(yi)次(ci)電(dian)子(zi)摘(zhai)要(yao),生(sheng)成(cheng)出(chu)來(lai)的(de)就(jiu)和(he)原(yuan)來(lai)的(de)對(dui)不(bu)上(shang)了(le),這(zhe)不(bu)就(jiu)發(fa)現(xian)內(nei)容(rong)被(bei)篡(cuan)改(gai)了(le)嗎(ma)?
總之SSL利用很多對付監聽、偽造和篡改等行為的技術,來保障網絡雙方安全地交流。目前隨著監聽與反監聽、偽造和反偽造、篡改與反篡改技術的不斷進步,SSL技ji術shu也ye在zai不bu斷duan發fa展zhan,兩liang方fang麵mian是shi一yi對dui不bu可ke調tiao和he的de矛mao盾dun,卻que起qi到dao互hu相xiang促cu進jin,共gong同tong發fa展zhan的de作zuo用yong。表biao麵mian上shang十shi分fen平ping靜jing的de互hu聯lian網wang,這zhe裏li的de戰zhan爭zheng悄qiao無wu聲sheng息xi卻que異yi常chang激ji烈lie。■
|