CAPICOM電子商務(wù)安全應(yīng)用論文

時(shí)間:2022-03-18 04:09:00

導(dǎo)語(yǔ):CAPICOM電子商務(wù)安全應(yīng)用論文一文來(lái)源于網(wǎng)友上傳,不代表本站觀點(diǎn),若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。

CAPICOM電子商務(wù)安全應(yīng)用論文

摘要電子商務(wù)的出現(xiàn)變革了貿(mào)易方式,在帶來(lái)便利的同時(shí)也帶了很多安全隱患,如何構(gòu)建電子商務(wù)的安全性成為商務(wù)信息化的研究熱點(diǎn)。分析了電子商務(wù)交易模型的安全需求,探討了密碼中間件capicom在安全交易模型中的應(yīng)用,討論CAPICOM的數(shù)據(jù)結(jié)構(gòu)和COM對(duì)象,指出使用標(biāo)準(zhǔn)接口的密碼中間件能使電子商務(wù)應(yīng)用零開銷地本地化CSP。關(guān)鍵字密碼中間件;電子商務(wù);交易模型;信息安全;CAPICOM1前言隨著Internet的不斷普及,人們的消費(fèi)觀念和商務(wù)模式也發(fā)生了巨大了變化,人們更希望通過(guò)網(wǎng)絡(luò)的便利來(lái)進(jìn)行網(wǎng)絡(luò)采購(gòu)和交易,從而導(dǎo)致了(ElectronicCommerce)電子商務(wù)的出現(xiàn),并在世界范圍內(nèi)掀起了一股熱潮。但是,美國(guó)密執(zhí)安大學(xué)一個(gè)調(diào)查機(jī)構(gòu)通過(guò)對(duì)23000名因特網(wǎng)用戶的調(diào)查顯示[1],超過(guò)60%的人由于擔(dān)心電子商務(wù)的安全問(wèn)題而不愿進(jìn)行網(wǎng)上購(gòu)物。因此,研究和分析電子商務(wù)的信息安全問(wèn)題,特別是針對(duì)我國(guó)國(guó)情,充分借鑒國(guó)外的先進(jìn)技術(shù)和經(jīng)驗(yàn),開發(fā)和研究出具有獨(dú)立知識(shí)產(chǎn)權(quán)的電子商務(wù)信息安全產(chǎn)品,成為目前我國(guó)電子商務(wù)的熱點(diǎn)。2電子商務(wù)安全威脅電子商務(wù)中的安全隱患可分為如下幾類[2],1.信息截獲和竊取。如果沒(méi)有采用加密措施或加密強(qiáng)度不夠,攻擊者可能通過(guò)因特網(wǎng)、電話網(wǎng)、電磁波輻射域內(nèi)安裝截收裝置或在網(wǎng)關(guān)和路由器上截獲數(shù)據(jù)等方式,竊取機(jī)密信息,或通過(guò)對(duì)信息流量和流向、通信頻度和長(zhǎng)度等參數(shù)的分析,導(dǎo)出有用信息,如銀行帳號(hào)、密碼等;2.信息篡改。如果攻擊者熟悉了網(wǎng)絡(luò)信息格式,可對(duì)網(wǎng)絡(luò)傳輸?shù)男畔⑦M(jìn)行中途修改,并發(fā)往目的地,從而破壞信息完整性。如篡改信息流的次序,更改信息內(nèi)容;3.信息假冒。當(dāng)攻擊者掌握了網(wǎng)絡(luò)信息數(shù)據(jù)規(guī)律或解密了商務(wù)信息以后,可以假冒合法用戶來(lái)欺騙其他用戶,例如偽造電子郵件,虛開網(wǎng)站和商店,發(fā)送電子郵件,收定貨單;偽造大量用戶窮盡商家資源,使合法用戶不能正常訪問(wèn)網(wǎng)絡(luò)資源,使有嚴(yán)格時(shí)間要求的服務(wù)不能及時(shí)得到響應(yīng)等;4.交易抵賴。交易抵賴包括多個(gè)方面,如發(fā)信者事后否認(rèn)曾經(jīng)發(fā)送過(guò)某條信息或內(nèi)容,收信者事后否認(rèn)曾經(jīng)收到過(guò)某條消息或內(nèi)容,購(gòu)買者做了定貨單不承認(rèn),商家賣出的商品因價(jià)格差而不承認(rèn)原有的交易。3電子商務(wù)安全需求電子商務(wù)面臨的威脅直接導(dǎo)致了電子商務(wù)對(duì)于信息安全的需求,也就是實(shí)現(xiàn)一個(gè)安全電子商務(wù)系統(tǒng)務(wù)必具備的信息安全品質(zhì),主要包括機(jī)密性、完整性、認(rèn)證性和不可抵賴性。1.秘密性(Confidentiality),電子商務(wù)作為貿(mào)易的一種手段,其信息直接代表著個(gè)人、企業(yè)或國(guó)家的商業(yè)機(jī)密。傳統(tǒng)紙面貿(mào)易都是通過(guò)郵寄封裝的信件或通過(guò)可靠的通信渠道發(fā)送商業(yè)報(bào)文來(lái)達(dá)到保守機(jī)密的目的。電子商務(wù)是建立在一個(gè)較為開放的網(wǎng)絡(luò)環(huán)境上的如Internet,維護(hù)商業(yè)機(jī)密是電子商務(wù)全面推廣應(yīng)用的重要保障。因此,要預(yù)防非法的信息存取和信息在傳輸過(guò)程中被非法竊取。2.完整性(DataIntegrity),電子商務(wù)簡(jiǎn)化了貿(mào)易過(guò)程,減少了人為的干預(yù),同時(shí)也帶來(lái)維護(hù)貿(mào)易各方商業(yè)信息的完整、統(tǒng)一的問(wèn)題。由于數(shù)據(jù)輸入時(shí)的意外差錯(cuò)或欺詐行為,可能導(dǎo)致貿(mào)易各方信息的差異。此外,數(shù)據(jù)傳輸過(guò)程中信息丟失、信息重復(fù)或信息傳送的次序差異也會(huì)導(dǎo)致混亂。因此,要預(yù)防對(duì)信息的隨意生成、修改和刪除,同時(shí)要防止數(shù)據(jù)傳送過(guò)程中信息的丟失和重復(fù)并保證信息傳送次序的統(tǒng)一。3.認(rèn)證性(VerificationofIdentity),網(wǎng)絡(luò)電子商務(wù)交易系統(tǒng)的特殊性,企業(yè)或個(gè)人的交易通常都是在虛擬的網(wǎng)絡(luò)環(huán)境中進(jìn)行,所以對(duì)個(gè)人或企業(yè)實(shí)體進(jìn)行身份性確認(rèn)成了電子商務(wù)中得很重要的一環(huán)。對(duì)人或?qū)嶓w的身份進(jìn)行鑒別,為身份的真實(shí)性提供保證,即交易雙方能夠在相互不見面的情況下確認(rèn)對(duì)方的身份。這意味著當(dāng)某人或?qū)嶓w聲稱具有某個(gè)特定的身份時(shí),鑒別服務(wù)將提供一種方法來(lái)驗(yàn)證其聲明的正確性。4.不可抵賴性(Non-repudiationofDisputedCharges)。電子商務(wù)可能直接關(guān)系到貿(mào)易雙方的商業(yè)交易,如何確定要進(jìn)行交易的貿(mào)易方的確是進(jìn)行交易所期望的貿(mào)易方這一問(wèn)題則是保證電子商務(wù)順利進(jìn)行的關(guān)鍵。在傳統(tǒng)紙面貿(mào)易中,雙方通過(guò)在交易合同、契約或貿(mào)易單據(jù)等書面文件上手寫簽名或印章來(lái)鑒別貿(mào)易伙伴,確定合同、契約、單據(jù)的可靠性并預(yù)防抵賴行為的發(fā)生。這也就是人們常說(shuō)的"白紙黑字"。在無(wú)紙化的電子商務(wù)方式下,通過(guò)手寫簽名和印章進(jìn)行貿(mào)易方的鑒別已是不可能的。因此,要在交易信息的傳輸過(guò)程中為參與交易的個(gè)人、企業(yè)或國(guó)家提供可靠的標(biāo)識(shí)[3]。4密碼中間件和CAPICOM中間件是獨(dú)立的系統(tǒng)軟件或服務(wù)程序,它屏蔽了操作系統(tǒng)和網(wǎng)絡(luò)協(xié)議的差異,并提供相應(yīng)的平臺(tái)以滿足不同領(lǐng)域的需要。它成功地解決了網(wǎng)絡(luò)計(jì)算和分布計(jì)算環(huán)境下資源的通信,共享,管理,控制等問(wèn)題[3]。其技術(shù)本身很復(fù)雜,技術(shù)標(biāo)準(zhǔn)多,產(chǎn)品多。在Windows技術(shù)體系下,應(yīng)用最為廣泛的是DEC/RPC標(biāo)準(zhǔn)下的COM/DCOM,和DNA標(biāo)準(zhǔn)下的COM。在諸多行業(yè)應(yīng)用中,信息安全特性已成為軟件的一個(gè)重要品質(zhì),密碼服務(wù)也成為一個(gè)重要的構(gòu)件支撐,基于中間件技術(shù)來(lái)構(gòu)造密碼中間件成為當(dāng)前的主流技術(shù)路線,涌現(xiàn)出相當(dāng)成功的產(chǎn)品,如微軟的CAPICOM,SUN的CryptoJava。Windows操作系統(tǒng)采用分層的加密體系模型CSP密碼服務(wù)提供者(CryptographicServiceProvider)架設(shè)系統(tǒng)安全。CSP提供了齊全的具有密碼功能的Win32API函數(shù)供程序員調(diào)用,稱為CryptoAPI。然而,調(diào)用CryptAPI完成密碼操作仍然相當(dāng)復(fù)雜。[5]使用COM,開發(fā)人員可以把注意力集中在解決用戶所需要的問(wèn)題上.而不用關(guān)心網(wǎng)絡(luò)協(xié)議等底層結(jié)構(gòu)的細(xì)節(jié)。[4]微軟提供了CAPICOM組件,它以COM對(duì)象的形式封裝了上述的復(fù)雜操作,使用它獲取密碼服務(wù)更方便。因?yàn)樵诓煌拈_發(fā)環(huán)境中,往往先要對(duì)API函數(shù)進(jìn)行某種封裝或轉(zhuǎn)換,這增加了使用難度,CAPICOM以中間件的形式提供了一個(gè)標(biāo)準(zhǔn)的密碼應(yīng)用層接口,是介于應(yīng)用與CSP之間的中間層,使得應(yīng)用與CSP具有邏輯獨(dú)立性。在工作時(shí),CAPICOM按一定順序列檢索CSP。首先檢查缺省CSP是否支持用戶指定的算法及密鑰長(zhǎng)度,如果失敗,則搜索系統(tǒng)提供的CSP,并判斷其是否支持指定的算法和密鑰長(zhǎng)度,直至遍歷完所有CSP。兩者關(guān)系如圖1所示。5安全電子商務(wù)交易模型安全電子商務(wù)交易模型從組成來(lái)講一般有以下幾個(gè)組件[6]:(1)電子商店作為電子經(jīng)濟(jì)中買賣發(fā)生的場(chǎng)所,它從傳統(tǒng)的市場(chǎng)渠道中取得價(jià)值。(2)信息中介是內(nèi)容、信息、知識(shí)及經(jīng)驗(yàn)的商,能夠成為某一特定電子商務(wù)領(lǐng)域增加價(jià)值。(3)信用中介是在買賣雙方建立信用的機(jī)構(gòu)。(4)電子商務(wù)實(shí)施者為其他電子商店或信息中介提供組件、功能及相關(guān)服務(wù),使得電子商務(wù)得以進(jìn)行或者進(jìn)行得更好。(5)基礎(chǔ)設(shè)施供應(yīng)商作為由跨越不同領(lǐng)域機(jī)構(gòu),如NII(國(guó)家信息化設(shè)施),PKI(公鑰基礎(chǔ)設(shè)施)等,它們來(lái)提供網(wǎng)絡(luò)應(yīng)用平臺(tái)和安全交易全環(huán)境。從電子商務(wù)系統(tǒng)的架構(gòu)上來(lái)分類[6],主要有B2B和B2C。B2B模式下參與的雙方都是企業(yè),特點(diǎn)是定單數(shù)量大,平均在75000美元,需要商業(yè)洽談,按照固定合同條款和商業(yè)規(guī)則進(jìn)行交易。信用開始是依托信用卡,爾后需要更復(fù)雜的銀行信用管理系統(tǒng),基礎(chǔ)設(shè)施包括局域網(wǎng)、定制的目錄和流程規(guī)則;B2C模式下是顧客直接與商家接觸,特點(diǎn)是定單數(shù)量小,平均在75美元,主要是按價(jià)目表或者固定價(jià)格,屬于沖動(dòng)購(gòu)買或者偶爾購(gòu)買,所以廣告的作用很大。信用依靠消費(fèi)者信用卡,基礎(chǔ)設(shè)施主要是互聯(lián)網(wǎng)的鏈接。僅就交易工作流而言,它有很多業(yè)務(wù)需求如:客戶管理,商品瀏覽,身份認(rèn)證,訂單管理,配送和轉(zhuǎn)賬等,本文當(dāng)中,重點(diǎn)討論在密碼服務(wù)和安全性上的需求,通過(guò)實(shí)施安全性措施,確保在交易的生命周期當(dāng)中,在交易信息的運(yùn)動(dòng)過(guò)程中,敏感信息不會(huì)喪失信息安全性。6CAPICOM的應(yīng)用在交易流程中,證書的操作主要有:證書庫(kù)的打開,證書檢索,證書驗(yàn)證,證書加密數(shù)據(jù)和數(shù)字簽名CryptoAPI只提供了基本的密碼函數(shù),對(duì)于數(shù)字證書很少涉及,而CAPICOM組件對(duì)這些高層應(yīng)用服務(wù)提供了方便的接口。圖4十六進(jìn)制形式密文和解密結(jié)果WINDOWS平臺(tái)中,證書存于證書庫(kù)CertStore的結(jié)構(gòu)中,使用時(shí)必檢索證書庫(kù),取得證書句柄,獲得證書的基本信息如:有效期,公鑰等,同時(shí),還要對(duì)證書的有效性進(jìn)行驗(yàn)證。私鑰存于密鑰容器中(KeyContainer),有對(duì)應(yīng)私鑰的證書,還存有私鑰容器的句柄。[4]默認(rèn)的證書庫(kù)有4個(gè):Trust,My,CA,Root,其中My存放了個(gè)人的證書,其中還有私鑰容器句柄,Trust存放了通信群體中其它人的證書,僅公鑰。證書的管理必須用到CAPICOM的幾個(gè)接口:IStorePtr指向證書庫(kù),ICertificates2Ptr指向證書集合,ICertificatePtr指向證書,三個(gè)接口形成操作證書的三級(jí)索引。圖5驗(yàn)證過(guò)程6.2證書參與加密運(yùn)算:保證秘密性證書加密實(shí)際是用接收方證書的公鑰加密,過(guò)程有兩步:用公鑰加密對(duì)稱密鑰,用對(duì)稱密鑰加密數(shù)據(jù)如支付的信息:客戶帳號(hào)和PIN碼等。CAPICOM定義的對(duì)象IenvelopedDataPtr對(duì)兩步進(jìn)行了包裝,對(duì)于編程人員是透明的。⑴定義數(shù)據(jù)信封IEnvelopedDataPtrpEncryptIEnvelopedData(__uuidof(EnvelopedData));IEnvelopedDataPtrpDecryptIEnvelopedData(__uuidof(EnvelopedData));⑵設(shè)定算法參數(shù)和對(duì)稱密鑰長(zhǎng)度CAPICOM對(duì)密碼算法的標(biāo)識(shí)標(biāo)準(zhǔn)和密鑰長(zhǎng)度進(jìn)行了定義,以常量形式給出。這里以RC4為例。pEncryptIEnvelopedData->Algorithm->Name=CAPICOM_ENCRYPTION_ALGORITHM_RC4;pEncryptIEnvelopedData->Algorithm->KeyLength=CAPICOM_ENCRYPTION_KEY_LENGTH_40_BITS;⑶加密bstrtemp=SysAllocStringByteLen("HelloCapicom!",14);_bstr_ta.Assign(bstrtemp);pEncryptIEnvelopedData->Content=_bstr_ta;bstrciphertext=pEncryptIEnvelopedData->Encrypt(CAPICOM_ENCODE_BINARY);⑷取出密文bstrtemp是BSTR指針,指向雙字節(jié)的字符串,即以兩個(gè)Bytes來(lái)存一個(gè)ASCII字符,_bstr_t類型對(duì)雙字節(jié)字符串進(jìn)行了對(duì)象裝箱,字節(jié)數(shù)是字符數(shù)據(jù)量的兩倍。加密"HelloCapicom!"后,以字符形式看密文則呈亂碼形式。二進(jìn)制形式則如圖2所示。PCHARpCiphertext=NULL;pCiphertext=(PCHAR)bstrciphertext;printf("密文字符流:\n");PVOIDpchartemp=malloc(24);for(intk=0;k<bstrciphertext.length()*2;k){if(k$==0){memcpy((PVOID)pchartemp,pCiphertext,24);}pCiphertext;}⑸解密pDecryptIEnvelopedData->Decrypt(bstrciphertext);printf("解密后:%s\n",(PCHAR)pDecryptIEnvelopedData->Content.copy());結(jié)果如圖4所示。6.3數(shù)字簽名和驗(yàn)證:保證完整性和抗抵賴性簽名是對(duì)消息哈希值進(jìn)行簽名,先算出數(shù)據(jù)的哈希值,再用簽名者的私鑰對(duì)哈希值簽名,通過(guò)這個(gè)過(guò)程來(lái)保證訂單信息如商品數(shù)量,品名等的完整性和非抵賴性。此步驟中,會(huì)檢索MY證書庫(kù)的證書,找證書公鑰對(duì)應(yīng)的私鑰的容器句柄,再找到私鑰,這對(duì)于程序員是透明的。簽名和數(shù)據(jù)可以“依附”發(fā)送也可“獨(dú)立”發(fā)送,接收者收到數(shù)據(jù)和簽名后,重算數(shù)據(jù)的哈希值,將哈希值和數(shù)據(jù)的簽名送進(jìn)驗(yàn)證運(yùn)算將會(huì)得出驗(yàn)證結(jié)果。CAPICOM組件,用接口ISignedDataPtr和IHashedDataPtr來(lái)封裝此功能。⑴定義哈希對(duì)象和設(shè)定哈希算法IHashedDataPtrpIHashedDataPtr(__uuidof(HashedData));pIHashedDataPtr->Algorithm=CAPICOM_HASH_ALGORITHM_SHA1。⑵哈希和取哈希值哈希對(duì)象的哈希值是字符串形式的以十六進(jìn)制的格式返回,SHA-1算法的哈希值為160位,即20字節(jié),表示成HEX格式一個(gè)字節(jié)表示為兩個(gè)字符,共40個(gè)ASCII字符,再用雙字節(jié)字符表示。則為40個(gè)寬字符,80字節(jié),所以哈希值的字節(jié)長(zhǎng)度變成了80字節(jié)。如圖3所示。bstrtemp=SysAllocStringByteLen("HelloCapicom!",14);_bstr_ta.Assign(bstrtemp);PCHARpchar=NULL;pIHashedDataPtr->Hash(_bstr_ta);bstrHashValue=pIHashedDataPtr->Value;⑶簽名簽名加入時(shí)間戳和簽名者信息,還要編碼成一定的格式,有時(shí)還加入了簽名者的證書,故簽名消息的長(zhǎng)度取決于多個(gè)因素。而不只取決簽名者的公鑰長(zhǎng)度。如以二進(jìn)制編碼為格式則為898字節(jié),如圖5所示。ISignedDataPtrpISignedDataPtr(__uuidof(SignedData));pISignedDataPtr->Content=pIHashedDataPtr->Value;bstrSignature=pISignedDataPtr->Sign(0,TRUE,CAPICOM_ENCODE_BINARY);⑷驗(yàn)證pISignedDataPtr->Content=pIHashedDataPtr->Value;pISignedDataPtr->Verify(bstrSignature,TRUE,CAPICOM_VERIFY_SIGNATURE_ONLY);如果驗(yàn)證不通過(guò)則會(huì)拋出異常,驗(yàn)證失敗。如圖3所示。7結(jié)束語(yǔ)信息安全如果涉及到國(guó)家利益和經(jīng)濟(jì)利益,密碼算法往往需要本地化,而算法模塊CSP的變動(dòng)會(huì)對(duì)直接調(diào)用CSP的商務(wù)應(yīng)用產(chǎn)生藕合變動(dòng),這是開發(fā)者所不愿見到的。有了CAPICOM中間件,[7]可以通過(guò)本地化CSP,實(shí)現(xiàn)本地化的密碼算法,將其設(shè)定為默認(rèn)的CSP,只要其遵照CSP的規(guī)范,可以和CAPICOM無(wú)縫掛接,而對(duì)上層的電子商務(wù)交易模型不要做任何修改。做到密碼服務(wù)消費(fèi)和密碼服務(wù)生產(chǎn)的分隔與獨(dú)立,從而實(shí)現(xiàn)CSP的零開銷本地化。文章創(chuàng)新性地將CAPICOM密碼中間件技術(shù)和電子商務(wù)交易模型相結(jié)合,很好地滿足了電子商務(wù)的信息安全保密需求,解決應(yīng)用層安全需求和底層密碼服務(wù)模塊本地化之間的藕合矛盾。參考文獻(xiàn)1張碩陽(yáng)等.電子商務(wù)交易中的風(fēng)險(xiǎn)來(lái)源與風(fēng)險(xiǎn)認(rèn)知[A].廣東:中山大學(xué)出版社,2002:187~1962張楚等.電子商務(wù)與交易安全[A].北京:中國(guó)法制出版社289~2963/library/default.asp?url=/library/en-us/seccrypto/security/setting_the_computer_default_csp.asp4微計(jì)算機(jī)信息(高世偉等,基于DCOM技術(shù)實(shí)現(xiàn)的控制系統(tǒng),2005,21,1-2,23)5張楚等.電子商務(wù)與交易安全[A].北京:中國(guó)法制出版社276~2866馮登國(guó).2001.密碼工程實(shí)踐指南.北京:清華大學(xué)出版社.[M]13~15.