日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

[EntLib]微软企业库5.0 学习之路——第七步、Cryptographer加密模块简单分析、自定义加密接口及使用—上篇...

發(fā)布時(shí)間:2025/6/15 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [EntLib]微软企业库5.0 学习之路——第七步、Cryptographer加密模块简单分析、自定义加密接口及使用—上篇... 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

? 在完成了后,今天開始介紹企業(yè)庫中的新模塊:Cryptographer(加密模塊),這個(gè)模塊在日常的大多數(shù)項(xiàng)目的作用非常重要,例如:網(wǎng)站會(huì)員密碼、身份證號(hào)、網(wǎng)站配置等,通過對(duì)信息進(jìn)行加密可以保證項(xiàng)目數(shù)據(jù)的安全性。

今天主要介紹以下幾點(diǎn):

1、企業(yè)庫Cryptographer(加密模塊)簡單分析。

2、實(shí)現(xiàn)一個(gè)自定義加密接口。

3、在項(xiàng)目中應(yīng)用自定義接口。

?

第一點(diǎn)、企業(yè)庫Cryptographer(加密模塊)簡單分析

在我們?nèi)粘i_發(fā)中總會(huì)使用加密對(duì)數(shù)據(jù)進(jìn)行加密,我們一般都會(huì)在項(xiàng)目中自定義一些加密方法,而企業(yè)庫就是為了簡便這些開發(fā),提供了簡便的方式來進(jìn)行數(shù)據(jù)加密解密。

和其他的模塊一樣,Cryptographer(加密模塊)也可以通過簡單的配置進(jìn)行數(shù)據(jù)加密解密,具體有關(guān)配置方面的介紹可以看園子里huangcong所寫的文章,我就不多介紹了:

Cryptography Application Block (初級(jí))

Cryptography Application Block (高級(jí))

Cryptographer(加密模塊)主要提供2種加密方式:

1、HashCryptographer(離散加密),這種方法根據(jù)特定的算法對(duì)數(shù)據(jù)進(jìn)行加密,此種加密無法被解密。

2、SymmetricCryptographer(對(duì)稱性加密),這種方法也是根據(jù)特定的算法對(duì)數(shù)據(jù)進(jìn)行加密,但是數(shù)據(jù)加密后可以進(jìn)行解密。

通過圖可以更好的理解,下圖引用自企業(yè)庫5.0文檔:

加密模塊中靜態(tài)類Cryptographer為核心,方便程序員根據(jù)配置對(duì)數(shù)據(jù)進(jìn)行加密解密,其主要包含以下成員:

1、方法CreateHash,根據(jù)配置文件中所配置的離散配置名讀取配置對(duì)數(shù)據(jù)進(jìn)行加密。

2、方法EncryptSymmetric,根據(jù)配置文件中所配置的對(duì)稱性配置名讀取配置對(duì)數(shù)據(jù)進(jìn)行加密。

3、方法DecryptSymmetric,根據(jù)配置文件中所配置的對(duì)稱性配置名讀取配置對(duì)數(shù)據(jù)進(jìn)行解密。

4、方法CompareHash,比較帶加密的數(shù)據(jù)和已加密的數(shù)據(jù)是否一致。

5、私有方法GetHashProvider、GetSymmetricCryptoProvider,根據(jù)配置文件名獲取離散加密、對(duì)稱加密實(shí)例。

在這個(gè)加密模塊中,靜態(tài)類Cryptographer為我們提供了根據(jù)配置名進(jìn)行加密解密方式,同時(shí)還提供了一個(gè)抽象類CryptographyManager來實(shí)現(xiàn)自定義的加密解密管理器,在加密模塊中已經(jīng)為我們提供了一個(gè)CryptographyManager的實(shí)現(xiàn)——CryptographyManagerImpl

抽象類CryptographyManager本質(zhì)上就是一個(gè)非靜態(tài)的Cryptography,其定義了4個(gè)抽象方法:

1、方法CreateHash。

2、方法EncryptSymmetric。

3、方法DecryptSymmetric。

4、方法CompareHash。

實(shí)現(xiàn)類CryptographyManagerImpl則主要實(shí)現(xiàn)了抽象類CryptographyManager,其主要信息如下:

1、字段IDictionary<string, IHashProvider> hashProviders,離散加密鍵值對(duì)集合,包含了多個(gè)離散加密實(shí)現(xiàn)。

2、字段IDictionary<string, ISymmetricCryptoProvider> symmetricCryptoProviders,對(duì)稱加密鍵值對(duì)集合,包含了多個(gè)對(duì)稱加密實(shí)現(xiàn)。

3、字段IDefaultCryptographyInstrumentationProvider instrumentationProvider,提供加密模塊出現(xiàn)錯(cuò)誤報(bào)告

4、構(gòu)造函數(shù),一共有3個(gè)構(gòu)造函數(shù),接收泛型列表形式的離散加密實(shí)現(xiàn)、對(duì)稱加密實(shí)現(xiàn)以及

5、加密解密方法CreateHash、EncryptSymmetric、DecryptSymmetric,這3個(gè)方法接收3個(gè)參數(shù):所配置的加密解密實(shí)例名、待加密數(shù)據(jù)和加密模塊的錯(cuò)誤報(bào)告(IDefaultCryptographyInstrumentationProvider)。

其內(nèi)部會(huì)根據(jù)實(shí)例名到hashProviders或symmetricCryptoProviders這2個(gè)列表中尋找相應(yīng)的加密解密實(shí)現(xiàn),然后調(diào)用實(shí)現(xiàn)進(jìn)行加密解密。

?

?

在實(shí)際的項(xiàng)目開發(fā)的開發(fā)過程中,我們既可以通過靜態(tài)類Cryptographer簡單的完成對(duì)數(shù)據(jù)的加密解密,也可以通過實(shí)現(xiàn)抽象類CryptographyManager來編寫符合項(xiàng)目需求的加密解密管理器,總的來說企業(yè)庫的這個(gè)Cryptographer模塊已經(jīng)為我們提供了很好的加密解密封裝,同時(shí)又提供了擴(kuò)展接口在其基礎(chǔ)上可以進(jìn)行進(jìn)一步擴(kuò)展,大大方便了我們的日常項(xiàng)目開發(fā)。

?

第二點(diǎn):實(shí)現(xiàn)一個(gè)自定義加密接口

在第一點(diǎn)中,我簡單介紹了企業(yè)庫Cryptographer模塊的重要信息,現(xiàn)在我來介紹下企業(yè)庫Cryptographer模塊為我們提供的加密解密擴(kuò)展接口。

上面說過,企業(yè)庫Cryptographer模塊提供了2種加密解密方式:

1、HashCryptographer(離散加密),這種方法根據(jù)特定的算法對(duì)數(shù)據(jù)進(jìn)行加密,此種加密無法被解密。

2、SymmetricCryptographer(對(duì)稱性加密),這種方法也是根據(jù)特定的算法對(duì)數(shù)據(jù)進(jìn)行加密,但是數(shù)據(jù)加密后可以進(jìn)行解密。

這2種加密解密方式對(duì)應(yīng)著2個(gè)接口:IHashProvider和ISymmetricCryptoProvider,分別看下這2個(gè)接口的代碼:

IHashProvider接口:

1 2 3 4 5 6 public?interface?IHashProvider { ????byte[] CreateHash(byte[] plaintext); ????bool?CompareHash(byte[] plaintext, byte[] hashedtext); }

這個(gè)接口只有2個(gè)方法:

1、方法CreateHash,接收傳入的待加密數(shù)據(jù)(字節(jié)數(shù)組)根據(jù)具體實(shí)現(xiàn)進(jìn)行離散加密返回加密后的數(shù)據(jù)(字節(jié)數(shù)組)。

2、方法CompareHash,接收待加密數(shù)據(jù)(字節(jié)數(shù)組)和已經(jīng)加密后的數(shù)據(jù)(字節(jié)數(shù)組),調(diào)用具體實(shí)現(xiàn)的離散加密方法將待加密數(shù)據(jù)進(jìn)行加密然后與已加密數(shù)據(jù)進(jìn)行比較,看其是否相等。

?

ISymmetricCryptoProvider接口:

1 2 3 4 5 6 public?interface?ISymmetricCryptoProvider { ????byte[] Encrypt(byte[] plaintext); ????byte[] Decrypt(byte[] ciphertext); }

這個(gè)接口也比較簡單,也只有2個(gè)方法:

1、方法Encrypt,接收待加密數(shù)據(jù)(字節(jié)數(shù)組),調(diào)用實(shí)現(xiàn)方法進(jìn)行加密,返回加密后的數(shù)據(jù)(字節(jié)數(shù)組)。

2、方法Decrypt,接收已加密數(shù)據(jù)(字節(jié)數(shù)組),調(diào)用實(shí)現(xiàn)方法進(jìn)行解密,返回解密后的數(shù)據(jù)(字節(jié)數(shù)組)。

而如果我們需要擴(kuò)展自定的加密解密方法據(jù)需要從上面2個(gè)接口入手,根據(jù)需求判斷是要進(jìn)行離散加密還是對(duì)稱性加密實(shí)現(xiàn)不同的接口。

?

以上就是今天所要介紹的企業(yè)庫Cryptographer模塊信息,主要介紹了Cryptographer模塊的常用類、加密解密管理器,同時(shí)簡單介紹了Cryptographer模塊的加密解密擴(kuò)展接口。

在下一篇文章中我將繼續(xù)介紹如何實(shí)現(xiàn)自定義離散加密和對(duì)稱性加密方法,以及在項(xiàng)目中使用自定義的加密解密方法

?

微軟企業(yè)庫5.0 學(xué)習(xí)之路系列文章索引:

第一步、基本入門

第二步、使用VS2010+Data Access模塊建立多數(shù)據(jù)庫項(xiàng)目

第三步、為項(xiàng)目加上異常處理(采用自定義擴(kuò)展方式記錄到數(shù)據(jù)庫中)?

第四步、使用緩存提高網(wǎng)站的性能(EntLib Caching)

第五步、介紹EntLib.Validation模塊信息、驗(yàn)證器的實(shí)現(xiàn)層級(jí)及內(nèi)置的各種驗(yàn)證器的使用方法——上篇

第五步、介紹EntLib.Validation模塊信息、驗(yàn)證器的實(shí)現(xiàn)層級(jí)及內(nèi)置的各種驗(yàn)證器的使用方法——中篇?

第五步、介紹EntLib.Validation模塊信息、驗(yàn)證器的實(shí)現(xiàn)層級(jí)及內(nèi)置的各種驗(yàn)證器的使用方法——下篇

第六步、使用Validation模塊進(jìn)行服務(wù)器端數(shù)據(jù)驗(yàn)證

第七步、Cryptographer加密模塊簡單分析、自定義加密接口及使用—上篇

第七步、Cryptographer加密模塊簡單分析、自定義加密接口及使用—下篇

第八步、使用Configuration Setting模塊等多種方式分類管理企業(yè)庫配置信息

第九步、使用PolicyInjection模塊進(jìn)行AOP—PART1——基本使用介紹

第九步、使用PolicyInjection模塊進(jìn)行AOP—PART2——自定義Matching Rule

第九步、使用PolicyInjection模塊進(jìn)行AOP—PART3——內(nèi)置Call Handler介紹

第九步、使用PolicyInjection模塊進(jìn)行AOP—PART4——建立自定義Call Handler實(shí)現(xiàn)用戶操作日志記錄

第十步、使用Unity解耦你的系統(tǒng)—PART1——為什么要使用Unity?

第十步、使用Unity解耦你的系統(tǒng)—PART2——了解Unity的使用方法(1)

第十步、使用Unity解耦你的系統(tǒng)—PART2——了解Unity的使用方法(2)

第十步、使用Unity解耦你的系統(tǒng)—PART2——了解Unity的使用方法(3)

第十步、使用Unity解耦你的系統(tǒng)—PART3——依賴注入

第十步、使用Unity解耦你的系統(tǒng)—PART4——Unity&PIAB

擴(kuò)展學(xué)習(xí):

擴(kuò)展學(xué)習(xí)篇、庫中的依賴關(guān)系注入(重構(gòu) Microsoft Enterprise Library)[轉(zhuǎn)]



本文轉(zhuǎn)自kyo-yo博客園博客,原文鏈接:http://www.cnblogs.com/kyo-yo/archive/2010/08/09/Learning-EntLib-Seventh-Introduce-Cryptographer-and-Expand.html,如需轉(zhuǎn)載請自行聯(lián)系原作者


總結(jié)

以上是生活随笔為你收集整理的[EntLib]微软企业库5.0 学习之路——第七步、Cryptographer加密模块简单分析、自定义加密接口及使用—上篇...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 天堂国产在线 | 国产精品第一页在线观看 | 中文字幕在线观看一区二区 | 成人福利在线播放 | 欧美成人做爰大片免费看黄石 | 日本免费在线视频 | 久久视频热| 中文字幕日韩视频 | 99精品视频在线免费观看 | 久久精品国产av一区二区三区 | 小蝌蚪av | 极品色综合| 在线观看欧美国产 | 欧美精品在线看 | 美女av毛片 | 欧美一区二区三区视频 | 亚洲精品在线不卡 | r级无码视频在线观看 | 亚洲国产精品影院 | 在线视频中文字幕 | 国产免费无码一区二区 | 久久乐国产精品 | 欧美a级在线免费观看 | 变态另类丨国产精品 | 色吧在线视频 | 丁香久久综合 | 草色网 | 天天亚洲| 嫩草视频在线观看 | 多啪啪免费视频 | 黄色喷水网站 | 中文字幕第28页 | 4438成人网 | 国产微拍一区 | 亚洲日本视频在线观看 | 狠狠操在线播放 | 国产激情毛片 | 四虎最新网址在线观看 | 肉嫁高柳家 高清 | 日日摸日日添日日碰9学生露脸 | 欧美视频一二区 | 四虎免费视频 | 五月婷婷基地 | 永久免费未满 | 黄色a网站 | 三级不卡| 久久精品美女 | 日本美女黄网站 | 男人天堂视频网 | 特级西西人体444www高清 | 四虎影院在线免费播放 | 欧美aⅴ在线 | 色网综合 | 国产在线观看精品 | 天天欧美| 91av影院 | 美女扒开腿让男人操 | 久久久亚洲精品视频 | 福利在线一区 | 精品无码一区二区三区免费 | 久久免费国产 | 精品人妻人人做人人爽 | 免费看黄色一级大片 | 国产精品看片 | 香蕉视频亚洲 | 色播综合网 | 欧美乱强伦 | 成人午夜又粗又硬又大 | 国产情趣视频 | 欧美jjzz| 国产精品无码乱伦 | 国产欧美日| 91超碰在线播放 | 美女福利在线 | 久久久精品国产sm调教网站 | 黄色片在线免费观看 | 国产精彩视频一区 | 最新欧美大片 | 亚洲熟妇无码av | 国产精品一区二区三区免费在线观看 | 中国免费看的片 | 樱花草av | 中文字幕在线播放日韩 | 在线观看国产欧美 | 一区二区免费在线 | 亚洲乱码视频 | 动漫美女舌吻 | 毛片在线免费 | 精品人妻一区二区三区久久夜夜嗨 | 一级黄色片免费在线观看 | 国产精品三级电影 | 国产一二三在线 | 亚洲福利在线播放 | 免费av网站大全 | 在线免费观看你懂的 | 国精产品一区一区三区有限公司杨 | 在线视频亚洲色图 | 欧美一区二区高清视频 | 久久久久久久久久影视 |