MD5
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2006/07/07(金) 22:37:42コマンドプロンプトで引数一つを必要としたPGを作成してみました。
import java.security.MessageDigest;
import java.security.*;
import java.io.FileInputStream;
public class Digest {
public void printDigest(byte[] digest) {//ダイジェストを16進数で表示する
for (int i = 0; i < digest.length; i++) {
int d = digest[i];
if (d < 0) {//byte型では128〜255が負値になっているので補正
d += 256;
}if (d < 16) {//0〜15は16進数で1けたになるので、2けたになるよう頭に0を追加
System.out.print("0");
}System.out.print(Integer.toString(d, 16));//ダイジェスト値の1バイトを16進数2けたで表示
}
}
public byte[] getStringDigest(String data) throws Exception {//文字列からダイジェストを生成する
MessageDigest md = MessageDigest.getInstance("MD5");
byte[] dat = data.getBytes();
md.update(dat);//dat配列からダイジェストを計算する
return md.digest();
}
public static void main(String args[]) throws Exception {
if (args.length!=1){
System.out.println("引数はひとつです。");return;
}if (args.length>=1){
System.out.println("1番目のパラメタは"+args[0]+"でした");
}
Digest d = new Digest();
d.printDigest(d.getStringDigest("12345"));
}
}
0002デフォルトの名無しさん
2006/07/07(金) 22:42:270003デフォルトの名無しさん
2006/07/07(金) 23:05:45M し! _ -── ‐- 、 , -─-、 -‐─_ノ
チ D // ̄> ´  ̄  ̄ `ヽ Y , ´ ) M え
ェ 5 L_ / / ヽ D |
ッ が / ' ' i 5 >>1
ク 許 / / く !? っ
サ さ l ,ィ/! / /l/!,l /厶, て
ム れ i ,.lrH‐|'| /‐!-Lハ_ l /-!'|/l /`'メ、_iヽ
だ る l | |_|_|_|/| / /__!__ |/!トi i/-- 、 レ!/ / ,-- レ、⌒Y⌒ヽ
け の _ゝ|/'/⌒ヽ ヽト、|/ '/ ̄`ヾ 、ヽト、N'/⌒ヾ ,イ ̄`ヾ,ノ!
よ は 「 l ′ 「1 /てヽ′| | | 「L! ' i'ひ} リ
ね ヽ | ヽ__U, 、ヽ シノ ノ! ! |ヽ_、ソ, ヾシ _ノ _ノ
-┐ ,√ !  ̄ リ l !  ̄  ̄ 7/
レ'⌒ヽ/ ! | 〈 _人__人ノ_ i く //!
人_,、ノL_,iノ! /! ヽ r─‐- 、 「 L_ヽ r─‐- 、 u ノ/
/ / lト、 \ ヽ, -‐┤ ノ キ 了\ ヽ, -‐┤ //
ハ キ { / ヽ,ト、ヽ/!`hノ ) モ |/! 「ヽ, `ー /) _ ‐'
ハ ャ ヽ/ r-、‐' // / |-‐ く | > / / `'//-‐、 /
ハ ハ > /\\// / /ヽ_ ! イ ( / / // / `ァ-‐ '
ハ ハ / /! ヽ レ'/ ノ > ' ∠ -‐  ̄ノヽ /
{ i l ! / フ / -‐ / ̄/〉 〈 \ /
0004デフォルトの名無しさん
2006/07/08(土) 00:09:060005デフォルトの名無しさん
2006/07/08(土) 08:21:39MD5 の MD5 の MD5 ・・・
ってつなげていったらいつか戻ってくるよね?
有限個数しかないんだから。
0006デフォルトの名無しさん
2006/07/08(土) 10:13:39つなげていく?
0007デフォルトの名無しさん
2006/07/08(土) 12:55:51MD5(MD5("aaaa"))
MD5(MD5(MD5("aaaa")))
...
てことか??
0008デフォルトの名無しさん
2006/07/08(土) 13:01:29別に何か意味がある訳じゃなくて、
単にそうやってつなげた全MD5値の
有向グラフってどんなカタチなんだろーなー
っていうとりとめもない興味。
0009デフォルトの名無しさん
2006/07/08(土) 13:21:14有限個数しかないんだからいつか戻る
は正しいと思う
周期はまちまち?分布は?最大の周期は?最小の周期は?
激しくどうでもいいな
0010デフォルトの名無しさん
2006/07/08(土) 18:58:110011デフォルトの名無しさん
2006/07/08(土) 19:09:22今更なにに使うというんだ。
0012デフォルトの名無しさん
2006/07/08(土) 19:11:38与えられたハッシュ値を持つような何らかの
データを十分短い時間で生成できる、ということなのかな?
0013デフォルトの名無しさん
2006/07/08(土) 19:51:140014デフォルトの名無しさん
2006/07/09(日) 00:01:08通常のMD5ではなく、なんかしら暗号キー(例:"9999999999")を使って
Javaで暗号化できないか?ということでは?
(3DESなら、暗号キー使ったPGなら見たことあるが、
MD5でもできるのかとかそういうことでは?)
0015デフォルトの名無しさん
2006/07/09(日) 00:02:410016デフォルトの名無しさん
2006/07/09(日) 00:07:4914です。
3DESならネットで見たことあるが、
MD5をJAVAで暗号キー使ったPGは見たことない。どこかありますか?
0017デフォルトの名無しさん
2006/07/09(日) 00:34:010018デフォルトの名無しさん
2006/07/09(日) 00:52:23キーをくっつけてハッシュをとればいい。
そのハッシュ値はキーを知らないと作り出せない。
0019デフォルトの名無しさん
2006/07/09(日) 14:47:431はたぶん初心者だからわかりやすく、
実際にプログラム書いてあげれば?
0020デフォルトの名無しさん
2006/07/09(日) 15:57:36そんな感じのアルゴリズム名で使えるやつあるだろ多分。
ちゃんとしたアルゴリズムじゃなくて適当にやるだけなら、
ハッシュの計算に使う元データにキーをくっつけてから計算しろ。
てか俺Java知らねーんだよ、だからこれで許してね。
0021デフォルトの名無しさん
2006/07/09(日) 17:11:04共通鍵暗号方式の「3DES」とハッシュ関数の「MD5」を同列に語る意味が分からん。
根本的に用途が違う。
0022デフォルトの名無しさん
2006/07/09(日) 18:01:26同じものではないが同列に語る意味はあるな
0023デフォルトの名無しさん
2006/07/09(日) 19:06:440024デフォルトの名無しさん
2006/07/09(日) 19:43:320025デフォルトの名無しさん
2006/07/09(日) 20:02:02002621
2006/07/09(日) 23:02:11どういう部分が同列に語る意味があるのか、よろしければ教えてください。
個人的に↓のように理解しています。
3DES = 鍵 と 平文
MD5 = 平文
MD5には3DESにある鍵にあたる部分がないため、>>21では同列に語る意味がないといいました。
0027横レス
2006/07/09(日) 23:58:57UNIXのpasswdとか
MD5(一方向性ハッシュ関数)は暗号化関数ではない、というのもまあわかる
出力はビット数減ってるし
平文が複数個のブロックからなるとき、一方向性ハッシュ関数と鍵とある平文ブロックを使ってマスクを生成し
次の平文ブロックにXORすることで暗号化を行う、という共通鍵ブロック暗号方式があったような気もする
最初の平文ブロックのマスクは初期値から作るのかな
0028デフォルトの名無しさん
2006/07/10(月) 00:11:15一方向性ハッシュ関数から暗号方式を作るんじゃない
暗号方式からMACを作るんだ
http://www.cryptrec.jp/topics/cryptrec_20060525_c05report.html
0029デフォルトの名無しさん
2006/07/10(月) 00:28:35おまえさあ、きちんと分かってて書いてるのかと思ったら違ったのな。
>3DES = 鍵 と 平文
>MD5 = 平文
>MD5には3DESにある鍵にあたる部分がないため、>>21では同列に語る意味がないといいました。
はじめから鍵つきMD5の話だろうに。
0030デフォルトの名無しさん
2006/07/10(月) 21:27:53鍵つきのMD5は3DESとなんの関係もないと思うんだけど
鍵の決め方とかそういうハナシ?
ならハッシュを持ち出す意味がわからんし・・・
0031横レス
2006/07/10(月) 21:44:10そもそも>>14の
>暗号化できないか?ということでは?
が,「HMACを作る」ことを言ってるのか
「共通鍵暗号方式を作る」ことを言っているのかもよくわからないし
0032デフォルトの名無しさん
2006/10/11(水) 19:30:420033デフォルトの名無しさん
2006/10/23(月) 20:25:14ttp://www.vector.co.jp/soft/dl/win95/util/se136327.html
MD5をチェックする前に言っておくッ!
おれは今やつのソフトをほんのちょっぴりだが体験した
い…いや…体験したというよりはまったく理解を超えていたのだが……
,. -‐'''''""¨¨¨ヽ
(.___,,,... -ァァフ| あ…ありのまま 今 起こった事を話すぜ!
|i i| }! }} //|
|l、{ j} /,,ィ//| 『おれはアイコンの上にD&Dしていたと
i|:!ヾ、_ノ/ u {:}//ヘ 思ったらいつのまにかHelpをクリックしていた』
|リ u' } ,ノ _,!V,ハ |
/´fト、_{ル{,ィ'eラ , タ人 な… 何を言ってるのか わからねーと思うが
/' ヾ|宀| {´,)⌒`/ |<ヽトiゝ おれも何をされたのかわからなかった…
,゙ / )ヽ iLレ u' | | ヾlトハ〉
|/_/ ハ !ニ⊇ '/:} V:::::ヽ 頭がどうにかなりそうだった…
// 二二二7'T'' /u' __ /:::::::/`ヽ
/'´r -―一ァ‐゙T´ '"´ /::::/-‐ \ バグだとかジョークソフトだとか
/ // 广¨´ /' /:::::/´ ̄`ヽ ⌒ヽ そんなチャチなもんじゃあ 断じてねえ
ノ ' / ノ:::::`ー-、___/:::::// ヽ }
_/`丶 /:::::::::::::::::::::::::: ̄`ー-{:::... イ もっと恐ろしいものの片鱗を味わったぜ…
0034デフォルトの名無しさん
2007/04/02(月) 20:18:31暗号化にするなら別の暗号化アルゴリズム必須じゃないかと。
概要だと、
・MD5(pass)を保存して、証明するときにpassを入力させてMD5(pass)と保存してある値を比較する。一致ならOK
・MD5(pass)をキーにして別のアルゴリズムで暗号化する。復号化するときにpassを入力させてMD5(pass)をキーにして暗号化に使ったアルゴリズムの対で復号する。
だろ?場合によってはMD5_(pass)=MD5(内部キー+pass)ってしてMD5_を使ったり。
こういう話じゃない?
0035デフォルトの名無しさん
2007/04/26(木) 12:54:24[2] 問題文(含コード&リンク): 次のような、左上を直角とし「+-」からなる三角形図を作りなさい
+-+-+
+-+-
+-+
+-
+
[3] 環境
[3.1] OS: Windows XP
[3.2] コンパイラ名とバージョン: Visual Studio .NET
[3.3] 言語: C
[4] 期限:5月2日
0036デフォルトの名無しさん
2007/04/26(木) 12:55:46[2] 問題文(含コード&リンク): 次のような、左上を直角とし「+-」からなる三角形図を作りなさい
+-+-+
+-+-
+-+
+-
+
[3] 環境
[3.1] OS: Windows XP
[3.2] コンパイラ名とバージョン: Visual Studio .NET
[3.3] 言語: C
[4] 期限:5月2日
0037デフォルトの名無しさん
2007/04/26(木) 12:57:25[2] 問題文(含コード&リンク): 次のような、左上を直角とし「+-」からなる三角形図を作りなさい
+-+-+
+-+-
+-+
+-
+
[3] 環境
[3.1] OS: Windows XP
[3.2] コンパイラ名とバージョン: Visual Studio .NET
[3.3] 言語: C
[4] 期限:5月2日
0038デフォルトの名無しさん
2007/04/26(木) 13:00:100039test
2007/05/05(土) 06:36:262
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
32
0040デフォルトの名無しさん
2007/05/12(土) 10:32:140041デフォルトの名無しさん
2007/05/12(土) 11:33:030042デフォルトの名無しさん
2007/05/12(土) 12:23:110043デフォルトの名無しさん
2007/05/12(土) 22:19:34■ このスレッドは過去ログ倉庫に格納されています