タグ

2011年1月27日のブックマーク (17件)

  • CSRF対策のトークンをワンタイムにしたら意図に反して脆弱になった実装例

    補足 この記事は旧徳丸浩の日記からの転載です(元URL、アーカイブはてなブックマーク1、はてなブックマーク2)。 備忘のため転載いたしますが、この記事は2011年1月27日に公開されたもので、当時の徳丸の考えを示すものを、基的に内容を変更せずにそのまま転載するものです。 補足終わり 橋口誠さんから今話題の書籍パーフェクトPHP (PERFECT SERIES 3)を献いただきました。ありがとうございます。このエントリでは同書のCSRF対策の問題点について報告したいと思います*1。 書では、CSRFの対策について以下のように説明されています(同書P338)。 CSRFへの対応方法は、「ワンタイムトークンによるチェックを用いる」「投稿・編集・削除などの操作の際にはパスワード認証をさせる」などがあります。一番確実な方法は両者を併用することですが、ユーザ利便性などの理由から簡略化する場合で

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • http://labs.creazy.net/twitgif/

  • 後発なのに大ヒット 携帯ブログ「DECOLOG」がつかんだ“女心”

    携帯電話向けブログサービス「DECOLOG」が、10代後半~20代の女性に支持され、月間60億ページビュー(PV)以上を稼ぐ人気となっている。月間ユニークユーザーは800万人。アクセスランキング上位のブロガーは、街で声をかけられたり、握手や写真を求められるほどの知名度という。 デコメ素材や写真を使ってユーザーがページをデコレーションできるのが特徴。出会い系やアダルト、コンプレックス商材の広告を掲載しないなど“健全さ”も売りだ。2007年2月にオープンし、当初はまったく流行らなかったが、08年4月ごろから口コミで広まり始めた。 ランチの感想に友達とのプリクラ、恋人のグチ――DECOLOGには若い女性の日常が詰まっている。他愛もない内容に思えるが「みんなそれぞれにストーリーがある。毎日こんな生活でこんなふうに頑張っているんだと知るうちにブログのファンになるんです」と、運営元ミツバチワークスの光

    後発なのに大ヒット 携帯ブログ「DECOLOG」がつかんだ“女心”
  • Google APIs & Developer Products - January 2011

    Mobile Search Gadgets Data APIs Social Misc Ads Geo Tools Chrome

  • PSGIアプリケーションをリバースプロキシ下で使う際の静的コンテンツの配信方法について - blog.nomadscafe.jp

    PSGIアプリケーションをリバースプロキシ下で使う際の静的コンテンツの配信は、リバースプロキシー側で行う事が多いと思うのですが、こうやるのが良いんじゃないかという案。 プロジェクトのトップディレクトリにhtdocsを作成し、その中にfavicon.ico、staticディレクトリをいれます $ ls -l /path/to/myproj/htdocs Total xxx -rw-r--r-- 1 user user 1406 Jun 30 2010 favicon.ico drwxr-xr-x 6 user user 204 Jan 21 16:39 static $ ls -l /path/to/myproj/htdocs/static Total xxx drwxr-xr-x 4 user user 136 Jun 30 2010 css drwxr-xr-x 11 user user

    kamipo
    kamipo 2011/01/27
  • Read an Interesting Article on Facebook Developers(和訳)

    I enjoyed reading the article and thought people might find it interesting too... so I roughly translated the article to Japanese. 以下Facebook社の開発プロセスについてのyeeguy氏のブログを日語訳したもの。95%程度はあっていると思うが詳しく確認していないので詳細は適当な部分がある。題名は原文へリンクしてある。 How Facebook Ships Code(Facebook社でコードがリリースされるまで) 2011年1月17日 — yeeguy Facebook社のやり方に感心している。とても個性的な環境で、同じ環境を簡単に作れるようなものではない (もしやってみたとしても、他の会社全てでうまくいくわけではないだろう)。以下に示すのは、会社でどの

  • Perl公式ドキュメント日本語版

    このサイトは Perl の公式ドキュメントを日語翻訳したものを表示するサイトです。翻訳データは、perldocjp project からとってきたものです。 類似のものに perldoc.jp がありますが、それよりもみやすくなるようにがんばってみました。 ドキュメント一覧 概要(overview) perl - Perl の概要 perlrun - perl コマンドの実行とオプションについて チュートリアル perldebtut - デバッグのチュートリアル perlopentut - Perl でいろんなものを開くためのチュートリアル perlpacktut - pack と unpack のチュートリアル perlreftut - Mark によるリファレンスに関するとても短いチュートリアル perlretut - Perl の正規表現のチュートリアル perlt

    kamipo
    kamipo 2011/01/27
    めちゃくちゃ見やすい
  • サーバの命名法 - モジログ

    人力検索はてな - サーバなどの機器が大量に増え、命名に困っています。(2006-08-23) http://q.hatena.ne.jp/1156318046 <サーバなどの機器が大量に増え、命名に困っています。 サーバやネットワークの管理者にお尋ねします。 サーバやハブ、ルータなどの名前はどのように付けていますか? 機器名や役割などをそのまま名前にしている場合もありますが、今回は惑星の名前や星座の名前など、バリエーションが豊富で今後機器が増えても安心な「シリーズもの」を教えてください>。 サーバの命名をどうするか、アイディアがたくさん出ている。これは面白い。 以下、このページから私の目についたものを抜粋。URLは、参考URLに出ているものか、そのリンク先。 数学者の名前 http://www-history.mcs.st-and.ac.uk/Indexes/Full_Alph.html

  • Debian 6.0 "Squeeze"のリリースは2月5日 | エンタープライズ | マイコミジャーナル

    The Universal Operating System Debianの次期最新版となるDebian 6.0 "Squeeze"のリリース予定日が発表された。クリティカルな問題が発生しない限り、Debian 6.0 "Squeeze"は2月5日または6日に発表されることになる。Debian 5.0が公開されたのが2009年2月14日だったことを考えると、2年を経ての正式リリースとなる。 Debianのリリースはほかの人気の高いLinuxディストリビューションと比較すると、比較的長い周期でのリリースとなる。半年おきにリリースが実施されるUbuntuと比較すると、特にその周期の長さが目立つ。リリース回数が少ないということでDebian 6.0 "Squeeze"のリリースが注目されるということもあるが、真にユニバーサルなOSであることを示す重要なバージョンとして、Debian 6.0 "S

    kamipo
    kamipo 2011/01/27
    DebianでZFSが使える!
  • Cのコールバック関数をC++のメンバ関数にバインディングする方法 - kazuhoのメモ置き場

    たとえば libevent のような C 言語でかかれたイベント駆動型のライブラリを C++ から使っていると、C++ のメンバ関数をコールバックとしてセットできたらうれしいことが多いですよね。以下のようにすればできます。 たとえば、コールバック関数をセットする関数の型が、 void set_foo_callback(void (*)(void* cb_arg), void* cb_arg); なら、以下のようにクラスとメンバ関数を引数にとるテンプレート関数を定義し、 template <typename T, void (T::*FUNC)()> void to_foo_callback(void* cb_arg) { T* obj = reinterpret_cast<T*>(cb_arg); (obj->*FUNC)(); }以下のように受け渡せばいい。 class K { publ

    Cのコールバック関数をC++のメンバ関数にバインディングする方法 - kazuhoのメモ置き場
  • 『【研究レポート抜粋】P2P Replicated File Store の実装』

    上記表の通り、仮想ノードにより偏りは少なくなったが、仮想ノードの導入により以下の問題が発生する。 ノード追加時のデータコピーの局所性物理ノードだけでコンシステントハッシングを行う場合、ノードを追加した際は新ノードが配置される場所の次に位置するノードからデータをコピーするだけでよいという特徴がある。 しかし仮想ノードを導入すると仮想的なノードが入り混じる形で配置されるので、結果的に全ての物理ノードにデータコピーが発生する。 そのため、P2P Replicated File Storeではオンラインでのノード追加機能を諦め、ノード追加時には再起動による再配置に絞ることにした。 耐障害性 レプリケーション P2P Replicated File Store では、ファイルの格納時にノード側でレプリケーションを自動的に行う。 上図のようにシーケンシャルにファイルレプリケーションを行う。 非同期での

    『【研究レポート抜粋】P2P Replicated File Store の実装』
    kamipo
    kamipo 2011/01/27
  • JavaScriptのテストについて本気出して考えてみた(2) - 愛と勇気と缶ビール

    前回からの続きで。 DOMエミュレーションの戦略 一方で、物のブラウザを使わずに何らかのJavaScript実行環境でDOMをエミュレートして、その上でテストを走らせよう、という戦略もある。 この分野の大御所はEnv.js(http://www.envjs.com/)ということになっているのだけど、Env.jsのイヤンなところは導入がめんどくさい所である。何がめんどくさいって、antでビルドしなくちゃいけない。テストのためにどの程度の環境構築コストをかけられるかは状況において違うだろうが、例えばJSをメインでやっているエンジニアが「ちょっとテスト環境整えたい」っていう時にantから入れて頑張るだろうか?Javaの経験や、こういうビルドツールの導入/利用の流れに慣れている人だと全然問題ないレベルなんだけど。 というわけで、Env.jsは結構力を入れて開発されたものではあるのだろうけど、僕に

    JavaScriptのテストについて本気出して考えてみた(2) - 愛と勇気と缶ビール
  • JavaScriptのテストについて本気出して考えてみた(1) - 愛と勇気と缶ビール

    一週間のうちまる一日くらいは、「あーあのJavaScriptコードのテストってどうするのがいいかしら?」と考えている。 嘘です。多分45分くらい。 考えている時間の長さはどうでもいいんだけど、JavaScriptのテストは場合によっては中々ややこしい問題に成り得る。DOMなどの外部リソースにタッチすることのない「純JavaScript(オレオレ用語です)」であればブラウザ上であろうとRhino上であろうとNode JS上であろうと(理論上は)テストを動かせるのだが…。 JavaScriptであろうとなかろうと、外部のリソースに依存している(外部のリソースを操作する)コードはそうでないコードよりテストが面倒になる。ファイルR/WやDBの操作などIO系は勿論そうだし、どこかのサーバに何かしらのプロトコルで話しかけるようなコードもしかり。 JSのテストがややこしくなるのは、JavaScript

    JavaScriptのテストについて本気出して考えてみた(1) - 愛と勇気と缶ビール
  • プログラミングメモ - std::auto_ptr の考え方とか

    std::auto_ptr が使いづらいという話を時々聞いていて,代わりに,参照カウンタ付きの boost::shared_ptr が便利だよ,という話もよく聞きます。たしかに,少し遅いものの,参照カウンタ付きのポインタってのは便利です。 一方で,std::auto_ptr は,考え方(設計思想)がいまいち分かりづらいから,不便だとか言われちゃうのかな,とも。例えば,こちらの話のような。コードはリンク先を参照してください。 auto_ptrはそのままポインタ型(BIGSTRUCT*)としては渡せず、 get()関数を呼ぶ必要があります。イヤですね。透過的でありません。でも、これは意図的なのです。 (snip) bar()内では、 引数として渡されたptrから新しいptr_barにメモリのアドレスが渡されます。しかしこれがくせ者で、 bar()から抜けるときにはこのptr_barが削除されて

    kamipo
    kamipo 2011/01/27
  • auto_ptrはダメなのか? - munepi.com

    なぜスマートポインタを使いたいのか 以前書いたboost::shared_ptrの記事を読みかえしてみました。 なんともひどい文章だ。何より内容が分かりづらいのが良くない。ということで、もう一度スマートポインタについて整理してみようと思います。 スマートポインタについて考える前に、 そもそもポインタをそのまま使うのが何故いけないのでしょうか。「ポインタが何か」についてはもう分かっているとして、 ポインタを使わなければいけない局面を考えてみましょう。 ポインタがどうしても必要で、かつ真価を発揮するのは動的なメモリ確保と一緒に使うときでしょう。C++ではnew演算子で動的なメモリ確保を行えます。 int main(int argc, char* argv[]) { BIGSTRUCT* ptr = new BIGSTRUCT; ... return 0; } とりあえず、BIGSTRUCTが何

    kamipo
    kamipo 2011/01/27
  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

    kamipo
    kamipo 2011/01/27