自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

VB.NET加密算法基礎(chǔ)概念解析

開發(fā) 后端 算法
VB.NET加密算法的應(yīng)用提高了程序開發(fā)的安全和穩(wěn)定性。初學(xué)者們在學(xué)習(xí)的過程中,需要通過不斷的實(shí)踐經(jīng)驗(yàn)積累來加深對其的理解。

對于一款編程語言來說,評價(jià)其功能的好壞,其中一個(gè)最重要的因素就是在安全性方面的評估。VB.NET語言的安全性是比較全面的。我們可以通過對VB.NET加密算法的一些基本概念對其進(jìn)行一個(gè)詳細(xì)的了解。#t#

加密將防止數(shù)據(jù)被查看或修改,并在原本不安全的信道上提供安全的通信信道,它達(dá)到以下目的:

保密性:防止用戶的標(biāo)識或數(shù)據(jù)被讀取。

數(shù)據(jù)完整性:防止數(shù)據(jù)被更改。

身份驗(yàn)證:確保數(shù)據(jù)發(fā)自特定的一方。

VB.NET加密算法1、散列(HASH)函數(shù)

散列(HASH)函數(shù)H也稱哈希函數(shù)或雜湊函數(shù)等,是典型的多到一的函數(shù),其輸入為一可變長x(可以足夠的長),輸出一固定長的串h(一般為128位、160位,比輸入的串短),該串h被稱為輸入x的Hash值(或稱消息摘要Message Digest、指紋、密碼校驗(yàn)和或消息完整性校驗(yàn)),計(jì)作h=H(x)。為防止傳輸和存儲的消息被有意或無意地篡改,采用散列函數(shù)對消息進(jìn)行運(yùn)算生成消息摘要,附在消息之后發(fā)出或與信息一起存儲,它在報(bào)文防偽中具有重要應(yīng)用。

消息摘要采用一種單向散列算法將一個(gè)消息進(jìn)行換算。在消息摘要算法中,文件數(shù)據(jù)作為單向散列運(yùn)算的輸入,這個(gè)輸入通過HASH函數(shù)產(chǎn)生一個(gè)散列值。如果改動了文件,散列值就會相應(yīng)地改變,接收者即能檢測到這種改動過的痕跡。從理論上來講,攻擊者不可能制造一個(gè)替用的消息來產(chǎn)生一個(gè)完全相同的消息摘要。Hash函數(shù)可用于數(shù)字簽名、消息的完整性檢測、消息的起源認(rèn)證檢測等。

散列函數(shù)是安全的是指它具有:

一致性:相同的輸入產(chǎn)生相同的輸出。

隨機(jī)性:消息摘要外觀是隨機(jī)的,以防被猜出源消息。

唯一性:幾乎不可能找到兩個(gè)消息產(chǎn)生相同的消息摘要。

單向性:即如果給出輸出,則很難確定出輸入消息。

Hash函數(shù)H一般滿足以下幾個(gè)基本要求:

(1)輸入x可以為任意長度;輸出數(shù)據(jù)串長度固定;

(2)正向計(jì)算容易,即給定任何x,容易算出H(x);反向計(jì)算困難,即給出一Hash值h,很難找出一特定輸入x,使h=H(x);

(3)抗沖突性(抗碰撞性),包括兩個(gè)含義,一是給出一消息x,找出一消息y使H(x)=H(y)是計(jì)算上不可行的(弱抗沖突),二是找出任意兩條消息x、y,使H(x)=H(y)也是計(jì)算上不可行的(強(qiáng)抗沖突)。

VB.NET加密算法2、私鑰加密

私鑰加密又稱為對稱加密,因?yàn)橥幻荑€既用于加密又用于解密。私鑰加密算法非??欤ㄅc公鑰算法相比),特別適用于對較大的數(shù)據(jù)流執(zhí)行加密轉(zhuǎn)換。

VB.NET加密算法3、公鑰加密(PKCS)和數(shù)字簽名

公鑰加密使用一個(gè)必須對未經(jīng)授權(quán)的用戶保密的私鑰和一個(gè)可以對任何人公開的公鑰。用公鑰加密的數(shù)據(jù)只能用私鑰解密,而用私鑰簽名的數(shù)據(jù)只能用公鑰驗(yàn)證。公鑰可以被任何人使用;該密鑰用于加密要發(fā)送到私鑰持有者的數(shù)據(jù)。兩個(gè)密鑰對于通信會話都是唯一的。公鑰加密算法也稱為不對稱算法,原因是需要用一個(gè)密鑰加密數(shù)據(jù)而需要用另一個(gè)密鑰來解密數(shù)據(jù)。

責(zé)任編輯:曹凱 來源: 中國IT實(shí)驗(yàn)室
相關(guān)推薦

2009-10-26 14:18:46

2010-01-12 18:05:38

VB.NET對象

2010-01-13 10:15:19

VB.NET Stri

2010-01-19 15:08:18

VB.NET對象成員

2010-01-12 18:28:28

VB.NET共享變量

2010-01-13 18:17:00

VB.NET通信程序

2009-10-29 13:46:14

VB.NET DES加

2010-01-13 16:26:57

VB.NET通知控件

2010-01-21 18:08:25

VB.NET程序結(jié)構(gòu)

2010-01-12 16:44:53

VB.NET數(shù)組

2010-01-08 15:11:22

VB.NET字符串轉(zhuǎn)義

2010-01-19 10:12:39

VB.NET Butt

2010-01-21 10:48:18

VB.NET擴(kuò)展方法

2010-01-08 14:56:18

VB.NET類定義

2009-10-09 15:59:41

VB.NET對象

2010-01-12 16:20:44

VB.NET類

2010-01-12 17:21:29

VB.NET對象

2010-01-14 14:21:07

2009-11-02 14:48:45

VB.NET HOOK

2010-01-15 16:46:05

VB.NET集合存儲
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號