Keygen

keygen（"key + generator"の混成語）とは、ソフトウェアのライセンスキーを生成・取得するプログラムである。
概要.
ソフトウェアの利用においては、インストールの際に、正規の購入者しか知り得ないパスコードの入力が要求される場合があるが、keygen は、この認証を突破することができる文字列を生成するプログラムである。
また、keygen を名乗るマルウェアが少なからず存在する。
作成方法.
keygen の作成においては、認証を行うためのプログラム（インストーラーなど）が、ローカルマシンで（オフラインで）動作していることを利用する。そのため、キーの照合をオンラインで行うネットワーク認証などは（多くの場合）keygen を作成することができない。攻撃者は、対象のインストーラーなどを、デバッガなどを使用して解析し、認証を行っている部分を特定する。そして、認証のために利用されている関数などを特定することにより、パスコードを逆算するためのプログラムを作成することができる。