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
181883
(Now 5 clients are visiting here.)
Activity Meter
Activities classified with number of recent articles.
DictionaryLinks |