溫少的日志
導航
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(8647)
2.?關于java nio在windows下實現(7951)
3.?Java aio和JSR 203(6886)
4.?新寫了一個Java并發程序設計教程(6410)
5.?JDK 在linux下支持epoll了(6363)
評論排行榜
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
溫少的日志
閱讀(953)
評論(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 © 溫少的日志
主站蜘蛛池模板:
武清区
|
涿鹿县
|
松溪县
|
西贡区
|
屏东市
|
信丰县
|
石河子市
|
梁山县
|
云林县
|
金塔县
|
兰考县
|
黎川县
|
休宁县
|
当阳市
|
滨海县
|
磐安县
|
肇源县
|
井陉县
|
曲麻莱县
|
罗定市
|
营口市
|
南川市
|
莲花县
|
泽库县
|
陈巴尔虎旗
|
祁连县
|
菏泽市
|
贵阳市
|
秦皇岛市
|
合山市
|
彰化县
|
穆棱市
|
鹰潭市
|
团风县
|
琼海市
|
博罗县
|
信丰县
|
开封市
|
开化县
|
台安县
|
延川县
|