国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于UDP傳輸?shù)拇髷?shù)據(jù)加解密技術(shù)

2017-03-09 23:34◆任
關(guān)鍵詞:加解密加密算法解密

◆任 雁

?

基于UDP傳輸?shù)拇髷?shù)據(jù)加解密技術(shù)

◆任 雁

(長治學(xué)院計算機系 山西 046011)

在網(wǎng)絡(luò)傳輸日益頻繁的今天,數(shù)據(jù)文件的加密技術(shù),顯得尤為重要,是數(shù)據(jù)安全傳輸?shù)挠行ПU?,本文首先對網(wǎng)絡(luò)數(shù)據(jù)的加密方式進行了分類概述,對大文件(格式不限)的實時加解密進行了深入探討及具體實現(xiàn),使UDP協(xié)議不僅在大數(shù)據(jù)的可靠傳輸上,同時也在安全性上得到了充足保障。

UDP傳輸;加密;解密

0 前言

數(shù)據(jù)加密,是通過特定的加密算法和密鑰,將可識別的文件轉(zhuǎn)化為不可讀的密文,數(shù)據(jù)解密與之相反,將不可讀的密文轉(zhuǎn)化為可讀的明文。數(shù)據(jù)加解密在現(xiàn)實中有廣泛的應(yīng)用,它是對數(shù)據(jù)信息在網(wǎng)絡(luò)傳輸中進行保護的最有效手段。早期,密碼只針對文字等簡單信息進行加、解密,但隨著技術(shù)的發(fā)展與進步,現(xiàn)在,對語音、圖像等復(fù)雜的數(shù)據(jù)類型都可進行加、解密轉(zhuǎn)換。本文提出的方法可以對任意類型、任意大小的數(shù)據(jù)文件進行加、解密處理,為UDP大數(shù)據(jù)的傳輸提供了安全保障。

1 數(shù)據(jù)加密算法分類

1.1對稱加密算法

是指在加、解密的過程中,都使用相同的密鑰進行加解密的算法,該算法的優(yōu)點是加解密過程的高效率,及使用長密鑰時破譯困難。

1.2 非對稱加密算法

是指在加、解密的過程中,使用不同的密鑰進行加解密的算法,密鑰分公鑰和私鑰,公鑰是公開的,用于加密過程,私鑰是不公開的,用于解密過程,解密一方只需要保管好自己的私鑰即可,非對稱加密的優(yōu)點是密鑰的隱蔽性更強,但缺點是其加解密的效率要遠遠低于對稱加密。

1.3 Hash算法

Hash算法比較特別的地方在于,它是一種單向算法,即通過Hash算法對目標(biāo)數(shù)據(jù)生成一段特定長度且唯一的Hash值,但卻不能通過這個Hash值逆向獲得源信息。

2 技術(shù)實現(xiàn)

本文使用C++代碼來具體實現(xiàn),因為是對任意大小、任意格式的文件進行加、解密,考慮到過程的時效性,本文主要采用效率更高的對稱加密算法,密碼可以由用戶自行設(shè)定和輸入,系統(tǒng)根據(jù)用戶輸入的密碼生成密鑰,在創(chuàng)建密鑰的過程中,還使用了Hash算法,之后使用密鑰對源文件進行加解密處理,最終將結(jié)果創(chuàng)建為新的文件。

2.1 聲明數(shù)據(jù)類型

首先,在頭文件中聲明相關(guān)數(shù)據(jù)類型,包括文件指針、密鑰對象、Hash對象、緩存大小等,同時聲明相關(guān)函數(shù),例如初始化函數(shù)BOOL InitCrypt();加密前處理函數(shù)BOOL CryptProcess(CFile*lpSourceFile,CFile*lpDestFile,LPSTRlpPassword);加密函數(shù)BOOL JiaMiFile(CFile* lpSourceFile,CFile * lpDestFile,LPSTRlpPassword)等。

2.2 獲取源文件擴展名

因為是對任意類型文件進行加、解密處理,所以需首先獲取源文件擴展名,kuozhanming=PathFindExtension((LPCWSTR) FilePathName);同時創(chuàng)建相同類型空文件,用來存放加密后內(nèi)容數(shù)據(jù)。

2.3處理數(shù)據(jù)長度及分配內(nèi)存空間

相關(guān)初始化工作(包括創(chuàng)建上下文、創(chuàng)建Hash對象等)結(jié)束后,還需定義一次處理數(shù)據(jù)長度m_dwBufferLen=m_dwBlock Len+ENCRYPT_BLOCK_SIZE;及分配相應(yīng)內(nèi)存空間m_pbBuffer=(BYTE*)malloc(m_dwBufferLen)。

2.4密鑰生成

在正式加密源文件前,還需將用戶輸入的密碼轉(zhuǎn)化為Hash數(shù)據(jù)CryptHashData(m_hHash, (BYTE*)lpPassword, strlen(lp- Password),0);并生成密鑰CryptDeriveKey(m_hCryptProv, ENCRYPT_ALGORITHM,m_hHash,KEYLENGTH,&m_hKey)。

2.5文件加密

正式加密開始后,需將源文件逐段加密:

CryptEncrypt(m_hKey,0,eof==m_hSource->GetPosition(),0,m_pbBuffer,&m_dwCount,m_dwBufferLen);

并將加密后的數(shù)據(jù)放入目標(biāo)文件:

m_hDestination->Write (m_pbBuffer,m_dwCount);

直到源文件全部讀取完畢,自此,源文件已全部加密為不可讀的密文,存放于一個新的文件中。

2.6解密處理

解密的過程與此相反,需逐段讀取密文:

m_dwCount=m_hSource->Read(m_pbBuffer,m_dwBufferLen);同時進行解密處理:

CryptDecrypt(m_hKey,0,eof1==m_hSource->GetPosition(),0,m_pbBuffer,&m_dwCount);并將解密后的數(shù)據(jù)段存入指定文件m_hDestination->Write(m_pbBuffer,m_dwCount);直至整段密文被讀取完畢。

3 結(jié)語

UDP協(xié)議是面向非連接的傳輸協(xié)議,其優(yōu)點是傳輸?shù)膶崟r高效性,占用系統(tǒng)資源相對較少,但其缺點是傳輸協(xié)議對數(shù)據(jù)本身的完整性缺乏有效保證。所以,除通過收發(fā)確認、延時重發(fā)等有效機制確保傳輸數(shù)據(jù)的完整性外,本文通過特定加、解密算法,大大增強了傳輸數(shù)據(jù)的安全性,使UDP協(xié)議在大數(shù)據(jù)傳輸實際應(yīng)用中,不僅能發(fā)揮其傳輸過程的高效性,還能有效保障其傳輸數(shù)據(jù)內(nèi)容的安全性。

數(shù)據(jù)文件的加、解密技術(shù),在現(xiàn)實中有廣泛的應(yīng)用,它可以有效保障數(shù)據(jù)內(nèi)容在傳輸過程中的隱秘性、安全性,同時結(jié)合UDP協(xié)議不僅可以實現(xiàn)點對點的穿透,還可以確保大文件實時傳輸?shù)耐暾约皟?nèi)容的安全性,在網(wǎng)絡(luò)應(yīng)用日益普遍的今天,提供了諸多便捷。

[1]盧開澄編.著計算機密碼學(xué)[M].清華大學(xué)出版社, 2003.

[2]黃河明.數(shù)據(jù)加密技術(shù)及其在網(wǎng)絡(luò)安全傳輸中的應(yīng)用[D].廈門大學(xué):碩士學(xué)位論文,2008.

[3]王全民,周清,劉宇明等.文件透明加密技術(shù)研究[J].計算機技術(shù)與發(fā)展,2010.

猜你喜歡
加解密加密算法解密
炫詞解密
解密“一包三改”
炫詞解密
基于整數(shù)矩陣乘法的圖像加密算法
基于混沌系統(tǒng)和DNA編碼的量子圖像加密算法
混沌參數(shù)調(diào)制下RSA數(shù)據(jù)加密算法研究
PDF中隱私數(shù)據(jù)的保護方法
電子取證中常見數(shù)據(jù)加解密理論與方法研究
基于小波變換和混沌映射的圖像加密算法
網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)募咏饷芟到y(tǒng)研究
贵南县| 集贤县| 云霄县| 大新县| 济阳县| 池州市| 聂拉木县| 松滋市| 淳化县| 青田县| 怀化市| 澎湖县| 铁岭市| 镇平县| 安福县| 淳安县| 长乐市| 光泽县| 马鞍山市| 灌云县| 天镇县| 邢台市| 嘉鱼县| 安国市| 礼泉县| 郑州市| 丰镇市| 沙坪坝区| 华安县| 乌兰县| 义马市| 页游| 祁阳县| 寿阳县| 沂南县| 井研县| 海原县| 海宁市| 安达市| 同江市| 达日县|