- 【トリップ検索】CUDA SHA-1 Tripper【GeForce】
371 : ◆MERIKEN4.k [sage]:2011/08/30(火) 03:32:37.58 ID:0vxsMNNo0 - 今朝は10桁対応の続きでした。
本格的にコードを綺麗にする前に、万一のことを考えて トリップの出現確率を計算しているルーチンの修正を行いました。 10桁トリップの最後は情報量が4bitしかないため、次の16文字しか 出現しません。 .26AEIMQUYcgkosw これに応じて出現確率の計算を修正し、出る可能性のないパターンを 削除するようにしました。これで正確な確率が出るようになったので、 テストをしながら思う存分コードを削れます。
|
- 【トリップ検索】CUDA SHA-1 Tripper【GeForce】
372 : ◆MERIKEN4.k [sage]:2011/08/30(火) 03:59:49.16 ID:0vxsMNNo0 - あと、12桁用のルーチンではキー空間を網羅的に探索するように
していたのですが、10桁のトリップで同じことをやると キーの異なっている同じトリップが大量生産されてしまいました。 crypt (3)はキーの各バイトの下位7bitしかみてないので 当然なんですけど、認証の仕組みとしては10桁トリップは かなりいまいちのようです。まったく知らないで使ってたけど、 無知とは恐ろしい… まあ現実的には問題はないはずなので、 気を取り直して作業の続きに戻ることにします。 ---- ◆ifSxh4TST6 #ハ∀q・q,師 (ca 81 cd 71 a5 71 81 43 8e 74) ◆7TST0f7fAU #ヒホHM蜴ーエ痺 (cb ce 48 4d e5 8e b0 b4 e1 83) ◆7TST3KSETA #ュ掻7タKv2ゥl (ad 91 7e 37 c0 4b 76 32 a9 6c) ◆7TST3KSETA #ュ掻7タヒv2ゥl (ad 91 7e 37 c0 cb 76 32 a9 6c) ◆9TST73/Ir6 #M、マ桶pg縲ヌ (4d a4 cf 89 b1 70 67 e3 80 c7) ◆BL739TST16 #ヤisォpr7カルナ (d4 69 73 ab 70 72 37 b6 d9 c5) ◆BL739TST16 #ヤisォprキカルナ (d4 69 73 ab 70 72 b7 b6 d9 c5) ◆LL43TST6qM #4オd輛タ8ッ帋 (34 b5 64 e7 70 c0 38 af 9b e1) ◆LL43TST6qM #4オd輛タクッ帋 (34 b5 64 e7 70 c0 b8 af 9b e1) ◆OhCs0TST8I #磆マbロI・悼チ (e1 f5 cf 62 db 49 a5 93 89 c1) ◆OhCs0TST8I #磆マbロノ・悼チ (e1 f5 cf 62 db c9 a5 93 89 c1)
|
- 【トリップ検索】CUDA SHA-1 Tripper【GeForce】
373 : ◆MERIKEN4.k [sage]:2011/08/30(火) 05:03:28.80 ID:0vxsMNNo0 - というわけで、せっせとJohn the Ripperのコードを綺麗にしているわけですが、
気分は「汚物は消毒だ〜っ!!(AA略」という感じです。#ifdefにまみれた 4000行あるnonstd.cにはまだ手をつけていませんが、避けては通れません。とほほ…
|
- 【トリップ検索】CUDA SHA-1 Tripper【GeForce】
374 : ◆MERIKEN4.k [sage]:2011/08/30(火) 11:25:25.83 ID:0vxsMNNo0 - 非常に恐ろしく見えたnonstd.cでしたが、#ifdefをある程度取り除いて
みたら、単にアーキテクチャ毎にに最適化されたDESのS-Boxがずらずらと 並んでただけでした。使用するレジスタの数や特定のオペランドの 実行回数に応じて非常に細かく場合わけされています。 ここらへんのJohn the Ripperの性能へのこだわりには本当に 関心させられます。絶対にメンテしたくないコードですけど… 今はとりあえず適当なS-Boxの組み合わせを選んでおいて、 あとで手作業で実行時間を測定して、CPUとGPUに最適な組み合わせを それぞれ調べることにします。
|
- 【トリップ検索】CUDA SHA-1 Tripper【GeForce】
376 : ◆MERIKEN4.k [sage]:2011/08/30(火) 13:12:49.24 ID:0vxsMNNo0 - >>375
> >>372 > (*‘ω‘ *)つ http://toki.2ch.net/test/read.cgi/qa/1299965026/306 衝突はほんとにすぐ起きますよね。 > キーはソルト分の2bitは固定 このへんはいまいちわかりませんでしたが…
|
- 【トリップ検索】CUDA SHA-1 Tripper【GeForce】
377 : ◆MERIKEN4.k [sage]:2011/08/30(火) 14:09:12.18 ID:0vxsMNNo0 - さて、汚物の消毒(笑)は完了して、4000行あったnonstd.cは150行になりました。
素のCの実装と関係ない部分を削除して、8つあるS-Boxを8つのインクルードファイルに 追い出したのですが、随分とすっきりとしました。あとは残りの部分をきれいにして、 thread-safeにしてしまったら、GPUのルーチンの実装に取り掛かれます。 もうS-Boxのソースは当分見たくないです(笑)
|
- 【トリップ検索】CUDA SHA-1 Tripper【GeForce】
379 : ◆MERIKEN4.k [sage]:2011/08/30(火) 21:53:36.76 ID:0vxsMNNo0 - >>378
> みんなどのツール使ってトリップ検索してるの? VecTripper → Radeon版待て屋。 → CUDA SHA-1 Tripper という流れでした。いま作っているTripperの改造板は、これらのツールの 良いところをすべて取り込む予定です。VecTripperはMac用なので 使っている人は少ないと思いますけど、機能的にもUIの面でも非常に 洗練されているのでぜひ見習いたいですね。
|
- 【トリップ検索】CUDA SHA-1 Tripper【GeForce】
380 : ◆MERIKEN4.k [sage]:2011/08/30(火) 22:10:09.76 ID:0vxsMNNo0 - コードのクリーンアップがようやく終わりました。
あれだけごちゃごちゃしてたJohn the RipperのBitslice DESのコードが、 500行ほどの1つにすっきり収まり結構感動しました(笑) もちろん機種判別用の#ifdefは全て削除しました。 このルーチンはどのCコンパイラでも通るはずなので、 Tripperとは別の形でいずれ単独で公開したいと思います。
|
- 【トリップ検索】CUDA SHA-1 Tripper【GeForce】
381 : ◆MERIKEN4.k [sage]:2011/08/30(火) 22:42:56.74 ID:0vxsMNNo0 - Johnのコードには相当難儀させらましたけど、実際には
オリジナルよりもはるかに効率のよいS-Boxの実装を 手に入れることができたのでかえって良かったのかも知れません。 あとはこれがCUDA Cで動いてくれればいいんだけど…
|