不急不徐,持之以恒。

          http://blog.gopersist.com/

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            24 隨筆 :: 0 文章 :: 52 評論 :: 0 Trackbacks

          加密算法

          數據加密算法有對稱加密、非對稱加密和信息摘要三類。

          對稱加密是使用單個密鑰對數據進行加密和解密。有DES、AES、RC-5等算法。

          非對稱加密是使用一對密鑰(公鑰和私鑰)對數據進行加密和解密。有RSA、ECC等算法。非對稱加密大概比對稱加密慢100倍以上。

          通常的用法如下:

          1. 使用公鑰加密數據,使用私鑰解密數據。
          2. 使用私鑰簽名數據,使用公鑰驗證簽名。

          信息摘要如果也算加密算法的話,它的加密過程不需要密鑰,并且經過加密的數據無法被解密,它是根據不定長的明文計算得到一段定長的數據。有MD5、SHA1等算法。

          密鑰規范

          規范太多,網上講得很亂,挑常用的按我的理解列一下。

          密鑰格式:

          1. X.509:通用的證書格式,包括公鑰信息、用戶標識、簽發信息等。
          2. PKCS系統標準:美國RSA數據安全公司及其合作伙伴制定的一組公鑰密碼學標準。其中PKCS#8描述私有密鑰的信息格式,包括私鑰及可選的屬性集等。

          密鑰存儲:

          1. DER:二進制編碼。
          2. PEM:ASCII編碼。

          加密模式

          塊密碼自身只能加密長度等于密碼塊長度的單塊數據,若要對變長數據進行加密,則必須事先將數據進行切分,而且最后一個數據塊需要適當的填充方式擴展到密碼塊的長度。加密模式即塊密碼的工作模式,就是使用這些方式用同一個密鑰對多于一塊的數據進行加密。

          加密模式通常用于對稱加密,也可以用于非對稱加密。但非對稱加密通常不適合加密較長的信息,所以會使用混合加密代替。

          ps: 以RSA和DES為例,混合加密通常使用DES先加密明文,再使用RSA的公鑰加密DES的密鑰,再將2個密文一起傳遞出去。接收方使用RSA的私鑰解密DES的密鑰信息,再使用DES的密鑰解密具體內容。

          最簡單的加密模式是ECB(即電子密碼本)。其他還有CBC、PCBC、CFB等。

          ECB和CBC需要對最后一塊進行填充,填充方法有很多種,最簡單的是先在明文的最后填充空字符,使明文長度為密碼塊長度的整數倍。

          微信訂閱號:
          源文地址:http://blog.gopersist.com/2015/04/08/crypto/

          posted on 2015-04-13 21:51 老林 閱讀(4938) 評論(0)  編輯  收藏 所屬分類: 安全
          主站蜘蛛池模板: 彭水| 会理县| 宣恩县| 房产| 赤壁市| 新平| 扬中市| 喜德县| 蒙山县| 东源县| 江安县| 巴南区| 叙永县| 兴山县| 蛟河市| 鲁甸县| 樟树市| 榆树市| 通海县| 灯塔市| 江北区| 芷江| 涪陵区| 台北市| 丹阳市| 邛崃市| 二连浩特市| 珲春市| 阳新县| 伊金霍洛旗| 化州市| 天全县| 临漳县| 锡林浩特市| 兴国县| 莱西市| 浠水县| 巴彦淖尔市| 郸城县| 常山县| 时尚|