タグ

ブックマーク / xtech.nikkei.com (24)

  • 第7回■文字エンコーディングが生み出すぜい弱性を知る

    文字コードに関する問題は大別すると文字集合の問題と文字エンコーディングの問題に分類できる。前回は文字集合の取り扱いに起因するぜい弱性について説明したので、今回は文字エンコーディングに起因するぜい弱性について説明しよう。 文字エンコーディングに依存する問題をさらに分類すると2種類ある。(1)文字エンコーディングとして不正なデータを用いると攻撃が成立してしまう点と,(2)文字エンコーディングの処理が不十分なためにぜい弱性が生じることがある点だ。 不正な文字エンコーディング(1)――冗長なUTF-8符号化問題 まず,(1)の不正な文字エンコーディングの代表として,冗長なUTF-8符号化問題から説明しよう。前々回に解説したUTF-8のビット・パターン(表1に再掲)を見ると,コード・ポイントの範囲ごとにビット・パターンが割り当てられているが,ビット・パターン上は,より多くのバイト数を使っても同じコー

    第7回■文字エンコーディングが生み出すぜい弱性を知る
  • エンジニアのためのWebデザイン教室:ITpro

    Webプログラムを手がける企業であっても,必ずしもWebデザイナが存在しているとは限りません。プログラマが自分でデザインを適用しなくちゃならないことも少なくありません。 技術者の人と会話をすると「僕にはデザインのセンスがなくてね」という自嘲的な発言をよく耳にします。しかし,Webデザインにセンスは必ずしも不可欠ではありません。ちょっとしたポイントを学習することで,誰にでもしっかりデザインされたページが作れます。HTMLCSSによる実装を通して,デザインの基礎を学んでいきましょう。 第1回 Webデザインに必要なのはちょっとした知識と訓練 第2回 Webデザインの基礎はHTMLの構造にあり 第3回 文書を装飾するのはCSSの役目 第4回 Webデザインの基を学ぶための環境について 第5回 HTML文書を装飾するCSSの基礎(その1) 第6回 HTML文書を装飾するCSSの基礎(その2)

    エンジニアのためのWebデザイン教室:ITpro
  • まつもと直伝 プログラミングのオキテ---目次 - まつもと直伝 プログラミングのオキテ:ITpro

    第0回 あらためてRuby入門 まつもとゆきひろ氏自身による「Ruby入門」をお届けします。日経Linuxの連載開始前の特別企画(2005年4月号)として,Rubyが他のスクリプト言語やオブジェクト指向言語とどこが違うのか,なぜ便利なのかを中心に解説してもらったものです。 ● 基と他言語との違い ● 実装とRuby誕生の秘密 第1回 プログラミングとオブジェクト指向の関係 プログラマを目指す人々の中にも,「オブジェクト指向は難しい」とか,「なかなか分からない」という印象を持つ方が多いようです。そこで,Rubyを題材にオブジェクト指向という考え方について説明していきます。 ● その1 ● その2 ● その3 第2回 抽象データと継承 オブジェクト指向プログラミングを構成する3原則のうち,前回は「ポリモーフィズム」を学びました。今回はオブジェクト指向の歴史を復習した後,残りの「データ抽象」と

    まつもと直伝 プログラミングのオキテ---目次 - まつもと直伝 プログラミングのオキテ:ITpro
  • エンジニアでない人のための「Web+DBサイト」入門 第11回(最終回) Web+DBサイト構築の見積もり額,適正価格とは?:ITpro

    最終回です。今回は,ある意味IT業界の禁忌に触れてみます。Web+DBシステムを発注したときの見積もり額の秘密です。システムが目指す最終的な目的は”利益を上げられる仕組みの構築”です。見積もり額は利益算定の一番わかりやすいコスト判断ですが,果たして構築費用はどういう計算で生まれているのでしょうか。 利益を上げるコツは「身の丈に合った投資」をすること 利益を上げるためにはどうするべきか。私は経済評論家ではありませんから,あれやこれや難しい話はできません。ただ物事の質は,実はいつだって単純なものです。バサっと単純明快に言い切ってしまいましょう。「自分の身の丈に合った額を投入すること」です。 決して都会とは言い切れない我が家周辺では,冬になると焼き芋の巡回販売車が回ってきます。焼き芋屋さんのほとんどは軽トラックを使っています。なぜ軽トラックなのでしょうか? つまらないことに見えますが,これがビ

    エンジニアでない人のための「Web+DBサイト」入門 第11回(最終回) Web+DBサイト構築の見積もり額,適正価格とは?:ITpro
  • 文字コード規格の基礎:ITpro

    この記事は,日経ソフトウエア 1999年10月号に掲載したものです。それ以降の情報が盛り込まれていませんので,現在とは異なる場合があります。 文字コード規格の基礎を手早く理解したい場合などにお役立てください。 文字コードは間違いなく情報を交換するための「決まりごと」なので,正確を期すため厳密な仕様が規定されている。だが,その仕様そのものを実装するプログラムを作る場合を除けば,プログラマが仕様の詳細を隅々まで理解している必要はない。六法全書を読んでいなくても問題なく普段の生活ができるようなものだ。 ここでは,通常のプログラミングをするうえで必要と思われる範囲のことを,なるべく簡潔に説明したい。「半角カナ」のような呼び名は正確さを欠くものだが,多くの人に伝わりやすいので説明の中でも使っていく。説明を簡略化するため「正確な仕様を知りたいときは規格書そのものを必ず参照してほしい」と書きたいところだ

    文字コード規格の基礎:ITpro
  • 第26回 どこにメニューをおくべきか,どこが画面の一等地か:ITpro

    Webサイトのデザインの中で,ここ2年で大きく変わりつつある「常識」があります。それは,「メニュー(索引)」の位置と「一等地」の場所です。ユーザーの閲覧環境が加速度的に変化しているという認識の下で,それでも最良のユーザビリティを提供しようとするなら,どのようなことを考えておく必要があるでしょうか。 左メニューと右メニュー(視線との交差)のどちらがベスト? まだモニター画面の大きさが小さかった時代(1995年前後),情報へアクセスしやすくする「メニュー」の位置は,ほとんど誰が考えても左側にあり,議論もされなかったように記憶しています。確実に画面の中に入り,ユーザーも基的に左端にさえ注意を向けていれば,大切な情報にたどり着けるという「暗黙の常識」が存在していたかのような時代でした。 しかしここ数年,メニューが左側にあると当に操作性が良いのかという議論を聞くようになり,大手のWebサイトでも

    第26回 どこにメニューをおくべきか,どこが画面の一等地か:ITpro
  • 【初級】暗号・認証技術を基礎から理解する 前編:ITpro

    情報データを様々な攻撃から守る安全なシステムを構築するためには,セキュリティ技術の理解が欠かせない。ここではセキュリティ確保の中核技術とも言える,「共通鍵/公開鍵暗号」,「デジタル署名」,「バイオメトリクス」といった暗号・認証技術を取り上げ,基的な仕組みや利用動向を解説する。 今や日の企業のほぼすべてがインターネットを利用しており,一般家庭を見ても利用人口は約5割に達するという。ITは水道や電気と並ぶ,欠かすことのできない社会インフラとなった。 しかし,コンピュータの数が増え,ユーザーが様々なサービスを享受できるようになった一方で,深刻な問題が発生してきた。それは,一つひとつのコンピュータに監視の目が行き届かなくなり,悪意のある人間による不正操作が行われやすい環境になってきたということだ。実際に,コンピュータ上のデータが盗まれたり,改ざんされるといった事件が多発するようになり,連日のよ

    【初級】暗号・認証技術を基礎から理解する 前編:ITpro
  • ITPro: 基本設計におけるレビューの勘どころ

    どんなに基設計をしっかりやっても,その後のフェーズで「欠陥」が見つかれば意味がない。欠陥が発見されれば手戻りが発生し,進ちょく遅れや収益悪化といったプロジェクトの混乱を招く。基設計フェーズにおける品質向上のプロセスや成果物のレビュー方法について解説しよう。 「考慮していない外部システムとの連携が詳細設計で見つかった」,「仕様間の不整合が実装フェーズで発見された」――。どんなに基設計をしっかりやっても,その後のフェーズで「欠陥」が見つかれば意味がない。欠陥が発見されれば手戻りが発生し,進ちょく遅れや収益悪化といったプロジェクトの混乱を招く。基設計フェーズにおける品質向上のプロセスや成果物のレビュー方法について解説しよう。 「欠陥防止」を徹底する 改めて言うまでもないが,基設計の成果物の品質を向上させるプロセスは,(1)設計作業を実施する,(2)成果物をレビューして欠陥を洗い出す,(

    ITPro: 基本設計におけるレビューの勘どころ
  • 頻発するWindowsエクスプローラのハングを解決する:ITpro

    筆者は,ホーム・ネットワークで複数のコンピュータを使用している。ゲーム用,開発用,画像・ビデオ管理用---といった具合である。最近,あるパソコンを使っているときに,Windowsエクスプローラで特定のフォルダを開いてその内容をスクロールすると,一時的にエクスプローラがハングして,長いときで1分間その状態が続くという現象が発生するようになった。エクスプローラのハングはよくあることだし,最初の数回はエクスプローラのいつもの奇行だと思って無視していた。しかし,ハングに規則性があることに気が付いたので,何かが壊れたのではないかと疑問を持ち,調査することにした。 注:記事は,筆者であるMark Russinovich氏が運営する「Mark's Sysinternals Blog」 で人気があった記事の要約であり,原文は米Windows ITPro Magazineの2006年6月号に掲載された。ブ

    頻発するWindowsエクスプローラのハングを解決する:ITpro
  • 「攻撃は15分で完了する」---不正侵入,その実際の手口

    インターネット上のシステムに対する不正侵入が後を絶たない。筆者の職場であるセキュリティ・オペレーション・センター(以下,SOC)では,一日に10件以上の不正アクセスによる侵入の試みを観測している。また,インターネットセキュリティシステムズの監視サービスを利用している企業・組織のシステムの8割以上において,何らかの侵入行為の兆候が観測されている。 情報システムが事業の重要な基盤となっている現在では,不正アクセスは,企業経営に直接的な影響を与える可能性が高い。例えば,2005年に不正アクセスを受けたカカクコムでは,2005年度の決算において,Webサイトの一時閉鎖にかかわる特別損失4100万円[注1]を計上している。 注1)関連記事:個人情報漏えい事件を斬る(7):特損4100万円「価格.comショック」の舞台裏 すべての企業がこのように直接的な影響を受けるとは限らないが,実際に侵入行為を受け

    「攻撃は15分で完了する」---不正侵入,その実際の手口
  • 【PHPカンファレンス2006】PHPで書かれた実際のアプリケーションに潜む危険なコード

    「(PHPで書かれたアプリケーションには)アバウトなコードが多い」。エレクトロニック・サービス・イニシアチブの大垣靖男社長は,2006年8月19日に開催されたPHP関連イベント「PHPカンファレンス2006」の講演「危険なコード」で,PHPで書かれたアプリケーションに存在する危険なコードを指摘した。講演の中では,実際に存在するアプリケーションの名前を出し,そのソースコードからセキュリティ上危険な個所を挙げていった。「安全なコードを書くには悪い例も知っておかなければならない」というのが同氏の主張である。 大垣氏はまず,「セキュリティのリスクはサブシステムとの境界の部分で発生する」と指摘した。サブシステムとは,データベース,メール・システム,ユーザーのWebブラウザといった外部のシステムのこと。「境界で入力時にきちんとバリデーション,出力時にきちんとエスケープ処理(フィルタリング)を行えば,か

    【PHPカンファレンス2006】PHPで書かれた実際のアプリケーションに潜む危険なコード
  • 第4回 HTMLからXHTMLへの移行方法(1):ITpro

    HTMLからXHTMLにスムーズに移行するには、「書式の違い」をきちんと押さえておくことが不可欠。今回は「XML宣言」「文書型宣言」「XML名前空間と言語コード」「MIMEタイプ」「style要素とscript要素」について見ていこう。 HTMLよりも書式が厳格なXHTML XHTMLHTMLをXMLで再定義したマークアップ言語であり、HTMLの簡便さを残しつつXMLの論理的厳密性を備えている。そのため、HTMLのようにルーズなコーディング(たとえば終了タグがないなど)でもブラウザで問題なく表示される、ということはほとんどない。したがって、書き方にエラーがないかどうか少し神経質にならなければならない。 また、CSSがきちんと適用されないというトラブルも、実はXHTMLが正しく書かれていないことに起因していることが少なくない。 これらの問題を避けるべく、エラーのないソースにするには、バリデ

    第4回 HTMLからXHTMLへの移行方法(1):ITpro
  • [MySQLウォッチ]第28回 MySQL 5.1期待のクラスタリング機能

    数カ月前にMySQL 5.1 GA版 のリリース見通しを5月と記述したが,残念ながら下半期に突入した現在もBata版にとどまっている。バージョン5.0から5.1へのアップは,番号としてはポイント以下のマイナー・バージョンアップだ。しかし,非常に大きな期待を持って待っているユーザーも多いだろう。それは,MySQL 5.1 からMySQL Clusterがストレージ対応になるからだ。 今回は,MySQL 5.1 GA版 のリリース準備として,期待の高まるMySQL Clusterのストレージ対応を紹介する。 MySQL Cluster の登場 もともとMySQL Clusterは,NDB Clusterという商品だったものをMySQL ABが自社製品として取り込み,MySQL 4.1.3 (RPM版はMySQL 4.1.10)から実装が始まった。それ以前は,標準機能のReplicationかサ

    [MySQLウォッチ]第28回 MySQL 5.1期待のクラスタリング機能
  • Webデザイン エンジニアリング 第16回 ボタンを押させるテクニック:ITpro

    対象とするユーザーの“慣れや知識”によって,画面の構成を変えたほうが伝わりやすいとするならば,画面上の「ユーザー・インタフェース(UI)部品」の色や形状も,ユーザーに応じて変えるべきでしょう。今回は,代表的なUI部品でありながら,なかなか作り手の思うように押してくれない「ボタン」について考えます。 わかりやすいボタンの形状はユーザーによって違う まず,前回とほぼ同じ絵を用います。Webシステムの操作方法への「熟知度(PCリテラシ)」を縦軸,「提供したいサービスに対する知識」を横軸とします。そして,それぞれの「軸」に対して,受け入れやすいと思われる「ボタン」の形状を例記しました。 上図の【A】や【B】のタイプに当てはまるPCリテラシの高いユーザーは,ボタンの“ラベル”に「submit」と書かれていようが「GO」と書かれていようが,ボタンを認識することはさほど苦ではありません。 しかし,PC

    Webデザイン エンジニアリング 第16回 ボタンを押させるテクニック:ITpro
  • 「もう負荷分散は必要ない」---1台で同時50万接続のWebサーバーが登場

    イーツリーズ・ジャパンは,専用LSIを用いたハードウエア処理によって,高さ1.5Uのきょう体1台で50万接続まで可能なWebサーバー専用装置「freeocean」を,2006年7月中旬に出荷する。狙いは「負荷分散装置と複数のWebサーバーを組み合わせたシステム全体を1台で置き換える」(イーツリーズ・ジャパン)こと。価格は機能をWebサーバーに限定し同時接続3万2768コネクションまで可能なエントリ機種が400万円(税別),キャッシュ機能を備えた機種が600万円(税別)。販売目標は今期300台。 freeoceanは,HTTP,TCP/IP,イーサネットなどWebサーバーの機能に必要な最低限のプロトコルをFPGA(Field Programmable Gate Array)で実現したWebサーバー専用装置である。ハードウエアによるHTTPサーバー機能に加え,Perl言語処理系やServlet

    「もう負荷分散は必要ない」---1台で同時50万接続のWebサーバーが登場
  • 「営業日報は諸悪の根源」、『御社の営業がダメな理由』の著者が語る

    2006年5月に出版された『御社の営業がダメな理由』(新潮新書)が、紀伊国屋書店の新書週間ベストセラーランキングの9位(5月29日~6月4日)に入るなど、幅広い支持を得ている。このは、「優秀な営業担当者は育成できない」「売れるかどうかは確率で決まる」などと言い切り、これらのことを前提とした理論的・組織的営業手法を説く。 著者である、グランド・デザインズ(東京・港)の藤篤志社長に話を聞いた。自身も大阪有線放送社(現USEN)で営業担当者、営業マネジャーとして抜群の成績を上げ、人材派遣大手のスタッフサービス・ホールディングスで営業担当取締役を務めた経験を持つ。 ——このでは「営業結果=営業量×営業能力」など、3つの方程式を示しています。このうち、営業能力を伸ばすのは容易ではないため、営業量を増やすことの重要性を説いています。 私は、独立するまでの約20年間、大阪有線放送社と、スタッフサー

    「営業日報は諸悪の根源」、『御社の営業がダメな理由』の著者が語る
  • サーバやPCのボトルネック箇所の簡単な見分け方(Linux編):佐野裕のサーバ管理者日記:ITpro

    前回はWindowsでのサーバやPCのボトルネック箇所の簡単な見分け方をご紹介させていただきましたが、要望がありましたので今回はLinuxの場合をご紹介いたします。 4つの主要ボトルネック要素の復習です。 サーバやPCには4つの主要ボトルネック要素があります。このいずれかがボトルネックとなった場合システム全体のレスポンスが低下します。 CPU使用率 メモリ使用量 ディスクI/O TCPコネクション数 Linuxにおいてはボトルネック箇所を以下のように見分けることができます。 1. CPU使用率 CPU使用率が常に100%に近い場合はCPUがボトルネックであることが判明します。CPU使用状況を簡単に調べるには3つの方法があります。「top」「w」「vmstat」コマンドを使う方法です。 -----------------------------------------------------

    サーバやPCのボトルネック箇所の簡単な見分け方(Linux編):佐野裕のサーバ管理者日記:ITpro
  • 【MySQLウォッチ】第25回 チューニングの指標,ベンチマークのノウハウ:ITpro

    誰もが,データベースができるだけ高速で動くことを望む。そのために様々なテクニックを駆使してチューニングを試みる。 チューニングの結果を確認するには,何かしらの指標が必要となる。「体感的に向上した」というのは,まったく当てにならない。正確に性能を把握してこそ,効率的なチューニングが行えるのだ。今回は,ベンチマークについて紹介する。 MySQLのベンチマーク方法 ベンチマークには,2つの方向性がある。一つ目は,決まった処理を通じて,MySQLサーバーの処理速度を計測するものだ。これは,手順が決まっているため,それほど準備は必要ない。また,常に同じ処理を行うので,MySQLサーバーの基的な処理能力を測るのに適している。 2つ目は,作成したデータベースの処理スピードを計測するものだ。一つ目も重要であるが,結局は,作成したデータベースが高速で動作するかが重要である。さらに,同時アクセス数やデータ量

    【MySQLウォッチ】第25回 チューニングの指標,ベンチマークのノウハウ:ITpro
  • ミクシィのCTOが語る「mixiはいかにして増え続けるトラフィックに対処してきたか」:ITpro

    ミクシィのCTOが語る「mixiはいかにして増え続けるトラフィックに対処してきたか」 YAPC::Asia 2006 Tokyo 東京都大田区で開催されているPerl技術者向けカンファレンス「YAPC::Asia 2006 Tokyo」で2006年3月29日,日最大のソーシャル・ネットワーキング・サイト(SNS)である「mixi」を運営するミクシィのBatara Kesuma(バタラ・ケスマ)取締役最高技術責任者(CTO)が,増え続ける膨大なトラフィックにどのように対処してきたのかについて講演した。カギとなるのは「データベース分割」である。 mixiのシステムはもともとBatara氏が1人で作り上げたものだ。2003年当時,米国でFriendsterなどのSNSがはやっており,同氏が会社(現在のミクシィ,当時はイー・マーキュリー)にSNSを作りたいと提案したところ認められたという。同氏が

    ミクシィのCTOが語る「mixiはいかにして増え続けるトラフィックに対処してきたか」:ITpro
  • NTTデータがOracle RAC対抗のPostgreSQLクラスタ開発,2006年度に実システムに適用へ

    NTTデータと子会社のNTTデータ先端技術が,オープンソースDBMS PostgreSQLでクラスタリング機能を実現するソフトウエア「RitaDB(開発コード名)」を開発したことがITproの取材で明らかになった。検索処理の負荷分散が可能なPostgreSQLクラスタリング・ソフトウエアは多いが,RitaDBOracle RAC(Real Application Clusters)などと同様に検索だけでなく更新性能の向上も実現する。2006年度中に実システムへの適用を目指す。 RitaDBは,クライアントからのリクエストを受け付けて振り分ける「コーディネーター・ノード(C-Node」,SQL文を実行する「サブ・ノード(S-Node)」,トランザクションを管理する「トランザクション・ノード(T-Node)」,ログを管理する「ログ・ノード(L-Node)」で構成する。C-NodeおよびS-N

    NTTデータがOracle RAC対抗のPostgreSQLクラスタ開発,2006年度に実システムに適用へ