タグ

ProgrammingとNetworkに関するgouei2001のブックマーク (6)

  • ワンタイム・パスワード

    ポイント ●ワンタイム・パスワードとは,一度しか使えないパスワード(使い捨てパスワード)のこと。これを実装するための仕組みを意味する場合もある。 ●事前に認証する側と,される側でハードウエアや関数を共有しておく必要がある。 固定式のパスワードだと,セキュリティ向上のために定期的に変更したり,類推されにくい文字列を使用したりする必要がありました。逆に考えれば,「パスワードを毎回異なるものにして,意味のない文字列を使う」ことができれば理想的です。これを仕組みとして実装したものが,ワンタイム・パスワードです。 ワンタイム・パスワードの実装は製品によってまちまちです。しかも,見たり使ったりしても内部の仕組みはわかりません。そこで,今回はワンタイム・パスワードを実現するために利用されている代表的な技術を2つ紹介します。どちらも「毎回異なるパスワードを利用する」と仕組みを実現するために,事前に認証する

    ワンタイム・パスワード
  • ネットワークプログラミングの基礎知識

    ネットワークプログラミングの基礎知識 ここでは IP アドレスやポート番号、クライアントとサーバの役割などを説明し、 perl・C言語・Java などでソケット (Socket) を使った HTTP クライアントや POP3 クライアント、簡単なサーバを作成してみます。 要はネットワークプログラミングをやってみよう、ということです。 このページのサンプルプログラムは、RFC などの規格に準拠した「正しい」プログラムではありません。 また、全体的にエラー処理が不十分です (今後改善する予定です)。 あくまでも概要を理解するためのサンプルととらえてください。 もし気でしっかりとしたクライアントやサーバを書きたいなら、このページを読んだ上で、 さらに RFC を熟読し、そして wget・Apache・ftp コマンドなどのソースを参考にしてください。 このページに間違いを見付けたら、掲示板

  • SERVER_NAMEとHTTP_HOSTの違い:phpspot開発日誌

    Chris Shiflett: SERVER_NAME Versus HTTP_HOST SERVER_NAMEとHTTP_HOSTの比較。 次のように値を取得すると一見、どちらも同じ値を取得できます。(値はリクエストしたサーバのホスト名) $_SERVER["SERVER_NAME"]; $_SERVER["HTTP_HOST"]; ただ、それぞれにおいて、取得方法が違ってきます。 HTTP_HOSTはリクエスト時に host:〜 で指定した値が返され、 SERVER_NAMEは、リクエスト時の host:〜 を使うものの、指定が無い場合は httpd.conf等に記述したServerNameディレクティブがデフォルトで使われます。 更にSERVER_NAMEはhtmlentitiesによってエスケープされるようです。 リクエストヘッダーの値をそのまま取りたい場合はHTTP_HOSTを使

  • サービス終了のお知らせ

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

  • 先輩と覚える HTTP ステータスコード

    gistfile1.md 先輩に学ぶ HTTP Status Code 超雑にまとめました。修正してください。 登場人物 アプリケーション先輩: いつも忙しい。横に広がるのが得意(デブじゃない)。 後輩: 頼んでばっかしで役に立たない。 サーバー先輩: アプリケーション先輩と仲がいい。Unix Socket でつながるくらい仲良し。 プロクシ先輩: アプリケーション先輩とかサーバー先輩と後輩の間を取り持って代わりに伝えたりしてくれる。たまに勝手にレスポンスを書き換える。 1xx 系 100 Continue 後輩「あ、先輩!お願いが!」 アプリケーション先輩「おー、聞いてやる。詳しく話せ」 101 Switching Protocols 後輩「せんぱーい、お願いなんですけどー」 アプリケーション先輩「ちょっと待て、お前 HTTP 1.0 で喋るな、 HTTP 1.1 か TLS 1.0 で

    先輩と覚える HTTP ステータスコード
  • 開発メモ: 50行のC++コードでWebサーバを実装する

    「Kyoto Tycoonの設計 その四」改め、50行でWebサーバを書く方法を解説する。前回実装した「多重I/Oマルチスレッド汎用TCPサーバ」の上にHTTPの処理を行う層をつけて、「多重I/Oマルチスレッド汎用HTTPサーバ」を司るクラスを実装してみたので、それを使ってちょちょいとやる。 URLクラス HTTPと言えばURLが使えないと意味がない。URLは単なる文字列として扱ってもよいのだが、様々なシーンで分解や加工が必要になり、その処理はなにげに複雑で面倒なので、予めクラスとして導出しておいた方がよいだろう。 class URL { public: // 文字列のURLを解析して内部構造を作る void set_expression(const std::string& expr); // スキーム要素を設定する void set_scheme(const std::string&

  • 1