Recent StatusGeneral InfoTodaySunrise/Sunset[collapse/shrink]
Sapporo
06:43 →
16:53
Tokyo
06:36 →
17:13
Osaka
06:51 →
17:32
Hakata
07:10 →
17:54
Taipei
07:34 →
18:42
Beijing
08:17 →
18:40
Singapore
08:17 →
20:22
New Delhi
10:35 →
21:35
Moscow
14:12 →
23:16
Nairobi
12:43 →
00:52
Cairo
13:41 →
00:37
Istanbul
14:09 →
00:30
Athens
14:28 →
01:00
Budapest
15:01 →
00:53
Vienna
15:15 →
01:03
Prague
15:29 →
01:05
Berlin
15:38 →
01:04
Rome
15:16 →
01:33
Paris
16:11 →
01:58
London
16:28 →
01:59
Madrid
16:16 →
02:38
Lisbon
16:39 →
03:07
Rio de Janeiro
17:36 →
06:36
Sao Paulo
17:48 →
06:50
New York
20:59 →
07:20
Mexico City
22:08 →
09:32
San Francisco
00:07 →
10:39
Honolulu
02:04 →
13:23
Wellington
04:27 →
14:44
(in JST, GMT+9)
WeatherWorld NewsBookshelfScienceComputerPhilosophy/Thought |
アルゴリズムMD5今更ながら,MD5のアルゴリズムがどうなってるのか調べてみた。 MD5ってのは一方向暗号化アルゴリズムの一つで,ハッシュ関数って呼ばれる。つまり,ある文字列を一定の長さの文字列に変換する関数。入力文字列の長さに関わらず出力の長さは一定なので,情報が欠落し,復号は出来ない。だから,要約アルゴリズムとも呼ばれる。普通,ある文字列をMD5関数に突っ込むと,32桁の16進数が(文字列で)返ってくる。 ちなみに,アメリカ国土安全保障省はMD5について「暗号としては破られたものと考えるべきであり,今後の利用には適さない」1)って発表してて,更に2010年までに,合衆国政府ではMD5を利用してる部分をSHA-2に置き換えるって発表してる。 この辺の話も数年前に話題になったから,覚えてる人が多いとは思うけれど,念のため。 で,アルゴリズムをざっくり見てみると,耳慣れない関数や演算子は一切使われていない。
Wikipedia英語版に,疑似コード(pseudocode)2)でアルゴリズムが載ってるけど,使われてる演算子は AND, OR, XOR, NOT, n-ビットシフト(順に, だから,全体の流れは理解しやすい。途中で使われる関数も,何をやってんのかは簡単にわかる。 んだけれど,じゃぁ何でそんな操作をしてるのかがわからない… 要するに,その関数の意味って何ってこと。これを考えてみようと思う。 …続く 2)
実在するプログラミング言語で書かれたコードじゃなくて,説明用にプログラムに似せて書かれたもの
|
Other LanguagesPhoto Updates
effects by jQuery Carousel
Recent Commentsyour comments are welcome!
Site StatusAccess CounterTOTAL
181855
(Now 10 clients are visiting here.)
Activity Meter
Activities classified with number of recent articles.
DictionaryLinks |