溫少的日志
導航
BlogJava
首頁
新隨筆
聯系
聚合
管理
<
2005年3月
>
日
一
二
三
四
五
六
27
28
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
統計
隨筆 - 75
文章 - 0
評論 - 168
引用 - 0
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
(14)
給我留言
查看公開留言
查看私人留言
隨筆檔案
2010年7月 (1)
2009年9月 (3)
2009年1月 (1)
2008年7月 (1)
2008年6月 (1)
2008年5月 (1)
2008年3月 (1)
2008年2月 (2)
2007年11月 (3)
2007年9月 (3)
2007年5月 (2)
2007年4月 (8)
2007年3月 (6)
2006年11月 (15)
2006年7月 (8)
2006年4月 (1)
2006年3月 (1)
2006年1月 (2)
2005年4月 (1)
2005年3月 (5)
2005年2月 (1)
2005年1月 (2)
2004年12月 (3)
2004年11月 (2)
2004年10月 (1)
鏈接
溫少的日志(主站)
搜索
最新評論
1.?re: 使用bcel動態創建class
謝謝樓主的分享 支持一下
--長春慶典公司
2.?re: 精巧好用的DelayQueue
評論內容較長,點擊標題查看
--chun
3.?re: 使用bcel動態創建class
寫的很詳細很實用
--吉林網站升級
4.?re: 使用bcel動態創建class
謝謝博主無私的分享
--長春短租公寓
5.?re: 使用JSON替代XML
很好的方法啊,要記住
--長春日租房
閱讀排行榜
1.?使用bcel動態創建class(8646)
2.?關于java nio在windows下實現(7951)
3.?Java aio和JSR 203(6886)
4.?新寫了一個Java并發程序設計教程(6410)
5.?JDK 在linux下支持epoll了(6361)
評論排行榜
1.?提高編碼速度的一個辦法(25)
2.?JPA這個爛東西(19)
3.?歡迎訪問金蝶“友商網”(www.youshang.com)(13)
4.?也說一種普遍錯誤使用的LOG方式(13)
5.?使用JSON替代XML(12)
最安全的加密算法
在密碼學里,有一種理想的加密方案,叫做一次一密亂碼本(one-time pad)。
one-time pad的算法有以下要求:
1、密鑰必須隨機產生
2、密鑰不能重復使用
3、密鑰和密文的長度是一樣的。
one-time pad是最安全的加密算法,雙方一旦安全交換了密鑰,之后交換信息的過程就是絕對安全的啦。這種算法一直在一些要求高度機密的場合使用,據說美國和前蘇聯之間的熱線電話、前蘇聯的間諜都是使用One-time pad的方式加密的。不管超級計算機工作多久,也不管多少人,用什么方法和技術,具有多大的計算能力,都不可能破解。
一次一密的一種實現方式,如下:
public
class
OneTimePadUtil
{
public
static
byte
[] xor(
byte
[] bytes,
byte
[] keyBytes)
{
if
(keyBytes.length
!=
bytes.length)
{
throw
new
IllegalArgumentException();
}
byte
[] resultBytes
=
new
byte
[bytes.length];
for
(
int
i
=
0
; i
<
resultBytes.length;
++
i)
{
resultBytes[i]
=
(
byte
) (keyBytes[i]
^
bytes[i]);
}
return
resultBytes;
}
}
使用例子:
String plainText
=
"
溫少
"
;
String keyText
=
"
密碼
"
;
byte
[] plainBytes
=
plainText.getBytes();
byte
[] keyBytes
=
keyText.getBytes();
assert plainBytes.length
==
keyBytes.length;
//
加密
byte
[] cipherBytes
=
OneTimePadUtil.xor(plainBytes, keyBytes);
//
解密
byte
[] cipherPlainBytes
=
OneTimePadUtil.xor(cipherBytes, keyBytes);
這是最簡單的加密算法,但也是最安全的機密算法。前天和朋友討論到了這個問題,所以寫了這篇文章。
posted on 2005-03-27 11:28
溫少的日志
閱讀(952)
評論(2)
編輯
收藏
Comments
#
re: 最安全的加密算法
Curvesoft
Posted @ 2006-03-23 16:18
那么最關鍵的也最容易出問題的就在于“密鑰的交換”,呵呵
回復
更多評論
#
re: 最安全的加密算法
masuz
Posted @ 2006-10-23 15:29
嗯,這個方法不錯!
回復
更多評論
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
Powered by:
BlogJava
Copyright © 溫少的日志
主站蜘蛛池模板:
扎赉特旗
|
酉阳
|
桐梓县
|
扎赉特旗
|
灯塔市
|
临泉县
|
澎湖县
|
崇左市
|
仙桃市
|
洮南市
|
崇阳县
|
进贤县
|
大埔县
|
金川县
|
子长县
|
历史
|
历史
|
通道
|
泸西县
|
青川县
|
吴桥县
|
玛多县
|
康保县
|
丹巴县
|
高唐县
|
奉贤区
|
同德县
|
迁西县
|
深圳市
|
鸡东县
|
顺平县
|
菏泽市
|
黄平县
|
灵丘县
|
同江市
|
颍上县
|
凤山县
|
金平
|
图们市
|
宜城市
|
历史
|