キーロガー

キーロガー（Keylogger, またはKeystroke logging）とは、コンピュータ（パーソナルコンピュータ）へのキー入力を監視し、それを記録するソフトウェアもしくはハードウェアである。
概要.
キーロガーは、キーボードの入力信号を記録するものだが、使い方次第で利用者の入力したID・パスワードや住所・氏名といった重要な個人情報まで盗めるため、コンピュータセキュリティに関連して社会問題の一端に挙がっている。一般ではキーロガーといえばソフトウェア型のものをさし、社会問題として扱われるケースにおいては、ハードウェア型のキーロガーは製品自体が限られ話題になることはあまりないが、ハードウェアキーロガーの不正使用が事件となったケースも稀にみられる。
一般的にキーロガーは、パソコンに接続ないしインストールされ、ユーザーがどんなキーやコマンドを入力したかを逐一記録して内部メモリに記録したりログファイルを出力するプログラムで、監視目的のほか、データのバックアップなどにも利用できる。
歴史背景.
旧来のパソコン通信では、回線接続後にターミナルソフトからホストコンピュータへ何らかのコマンドやプログラムを入力することで通信を行っていたが、当時はまだ常時接続も提供されておらず、さらに通信速度が遅い割に通信コストは非常に高かったため、できるだけ短時間で通信を終了する必要があった。送信内容を確認する際にも、通信時間をできるだけ短くするためには回線切断後にチェックすることが必要であった。このため、回線切断後に通信ログをチェックする手段として一種のキーロガーが利用されていたが、常時接続の普及で通信コストが下がったため、一々回線を切ってチェックする人も減り、同種のソフトウェアは廃れ始めた。
打鍵数や各キーの利用頻度を直接取得できるため、キー配列や人間工学の研究でも利用されており、これらに関しては何ら問題はない。
しかし、その過程で他人のパソコンにこのキーロガーをインストールしてそのパソコンから何を入力したのかを盗み見る手段として使う者が現れ、ついに通信機能を持ち、自動的にログを特定の場所へ送信する「ルートキットソフトウェア」まで登場した。またコンピュータウイルスが備える機能の一つとして実装される例もある。
キーロガーはネットカフェなどの公共施設のパソコンに仕掛けられていたケースが過去幾度となく報じられている。不特定多数の人々が利用する環境ゆえに、収集効率がとても良いためだ。
種類.
似たようなものでは、マウス操作を記録するものもあり、総じてデータロガーの一種として扱われる。
ソフトウェアキーロガー.
かつてシングルタスクのOSしかなかった時代、2つ以上のソフトウェアを同時に実行できなかったため、オペレーティングシステムに組み込まれる必要があるなど、技術的ハードルの高かったソフトウェアキーロガーだが、マルチタスクOSが一般的になると簡単に設計できることもあり、大量に出回った。この中には前述したとおり不正のない用法もあったが、その一方でプログラムとしての動作を隠す（ステルス性など）ものも登場、利用者のプライバシーを暴くようなものも登場している。
今日では、特に利用者に気付かれないよう設計されたキーロガーはマルウェア（悪質プログラム）に分類され、トロイの木馬として、アンチウイルスソフトにより侵入を防ぎ発見することが可能だ。
ハードウェアキーロガー.
キーボードのPS/2コネクタやUSB端子とパソコンの間に設置するハードウェアキーロガーが市販されているが、これは既存のアンチウイルスソフトでは検出できないため、接続を直接確認するしかない。
マジックランタン.
連邦捜査局（FBI）はパソコンへのインストールとログの確認を自動で行う『マジックランタン』を開発した。マジックランタンの存在は、マフィア幹部ニコデモ・スカルフォ・ジュニアの電子メール解読のために用いられたことから2001年に明らかとなった。
現時点では、マジックランタンは捜査目的にのみ用いられているが、民間への流出や同様の機能を持ったソフトの独自開発などが懸念されている。
音声.
キーボード・タッチの音を記録し、叩くときの音の違い（指により強さや時間間隔が異なる、キーにより音が微妙に異なるなど）の特徴から、キー入力を推定する。
備考.
こういったキーロガーだが、未成年者など親・保護者の監督下にあるものが不穏当な電子掲示板への書き込みなど問題行動をしていないかをチェックするプログラム製品（パッケージソフトウェア）も存在し、フィルタリングソフトウェア同様に子供の不適当なパソコン利用を制限する・監視するといったことにも利用される。親が子供の了解なしに子供の私物であるパソコンに仕込んだのであれば、プライバシー侵害として法的に問題となる可能性もある。
キーロガー対策.
キーロガー対策をするには、大きく分けて以下の2つが考えられる。
パスワードマネージャーを使う.
パスワードマネージャー（パスワード管理ソフト）とは、パスワードを管理するためのツールである。各社から様々なパスワードマネージャーが提供されているが、主な機能は以下の通りとなる。
生体認証を使う.
指紋認証や虹彩認証などにより、IDとパスワードを入力せずにログインが可能になる。