Tech Sketch Bucket of Technical Chips by TIS Inc.

数字6桁パスワードのMD5ハッシュ値をOpenMPを使って総当たり

Pocket

皆さん、JALやANAのマイレージ番号は持っていますか。持っていらっしゃるエンジニアは、先日の JALマイレージWebサイトに不正アクセス、約2700万人にパスワード変更を依頼 (ITpro 2014/2/3) というニュースを見て、「数字4桁や6桁のパスワードなんてそもそもありえない」「脆弱な実装がとうとう公然化したか」と思ったことでしょう。実際数字6桁のパスワードハッシュなど、ごくシンプルなコードで一瞬で解析できてしまうのです。

マルチコア時代のプログラマは関数脳になろう〜Scala・Clojure〜

Pocket

前回 の記事では、関数型プログラミングの概念とJava8による実装例を示しました。しかしJava8のリリースは来年まで延期されてしまったため、今すぐ試してみるには少しハードルが高いかもしれません。
そこで今回は、Java7のJVM上で動作する代表的な関数型プログラミング言語、 ScalaClojure を紹介します。

マルチコア時代のプログラマは関数脳になろう〜Java8のススメ〜

Pocket

CPUのクロックアップに限界が訪れ、マルチコア化することで処理性能向上を目指す時代になりました。これからのプログラマには、マルチコアで処理性能が向上するプログラム=マルチスレッドで並列処理が可能なプログラムを書く能力が必要になります。今回は「関数型」でプログラムを書くことによって、いとも簡単に並列化ができることを実例を元に解説します。