每一個可以努力的日子,都是一份厚禮。
信息安全
應用密碼學:加密,解密,數字簽名,證書……
Diffie-Hellman密鑰交換——使用openssl編程
2011 1月 3rd
DH密鑰交換算法,是第一個提出的公開密鑰算法,它比RSA還要早提出。它使得在公開的不可信信道安全地交換密鑰成為可能。但DH算法無法抵禦中間人攻擊,必須借用數字簽名才足夠安全。
下面是使用openssl進行DH密鑰交換的示例程序: 更多 >
AES加密和解密——使用openssl編程
2011 1月 3rd
AES是一套對稱密鑰的密碼術,目前已廣泛使用,用於替代已經不夠安全的DES算法。所謂對稱密鑰,就是說加密和解密用的是同一個密鑰,消息的發送方和接收方在消息傳遞前需要享有這個密鑰。和非對稱密鑰體系不同,這裡的密鑰是雙方保密的,不會讓任何第三方知道。
對稱密鑰加密法主要基於塊加密,選取固定長度的密鑰,去加密明文中固定長度的塊,生成的密文塊與明文塊長度一樣。顯然密鑰長度十分重要,塊的長度也很重要。如果太短,則很容易枚舉出所有的明文-密文映射;如果太長,性能則會急劇下降。AES中規定塊長度為128 bit,而密鑰長度可以選擇128, 192或256 bit 。暴力破解密鑰需要萬億年,這保證了AES的安全性。
AES的算法較為複雜,在此不細加闡述。下面是使用openssl進行AES加密和解密的示例程序: 更多 >