パスワード

**パスワード**（）とはのこと。特に、コンピュータ関連の分野で特定の機能や権限を使用する際に認証を行うために入力する文字列（文字・数字・記号等の組合せ）を指す。

## 概説
通常はユーザIDと対にして用いる。あらかじめ登録されているそのユーザIDのパスワードと、操作者によって入力されたパスワードが一致していることによって、操作者がそのユーザIDの使用者本人であると認識する。

パスワードのうち、数字のみのものを特にという。金融機関のATMや携帯電話の本人確認で利用される。

文字列の長さが数十文字以上と長いパスワードのことを特に**[[パスフレーズ]]**と呼ぶことがあり、高いセキュリティが必要なシステムで用いられる。

多くのシステムでは、パスワードに用いることのできる文字はアルファベット（ラテン文字）26文字（大文字・小文字が区別される場合は52文字）、一部の記号に限定されているが、ASCII以外のUnicode文字を用いることができるものもある。NISTは2025年にこのような使える文字種を制限することを非推奨にした。

## ガイドライン
### NIST
アメリカ国立標準技術研究所（NIST）は、パスワードに関して以下の基準を定めていて、これは2025年に改訂した第4版である。Revision 4 of SP 800-63, Digital Identity Guidelines の SP 800-63B-4 の 3.1.1.2. Password Verifiers に書かれている。

* パスワードの長さ
** 多要素認証を使用しない場合は、パスワードの長さは15文字以上にする。(SHALL)
** 多要素認証を使用する場合は、パスワードの長さは8文字以上にする。(SHALL)
** 許容するパスワードの最大長は64文字以上にするべき。(SHOULD)
* パスワードの文字種
** パスワードには全てのASCII印字可能文字と空白文字を許容するべき。(SHOULD)
** パスワードにはUnicode文字を許容するべき。その際はUnicode正規化を行う。(SHOULD)
** 異なる文字種を混ぜないといけないなどのルールは設けてはならない。(SHALL NOT)
* パスワード変更の強制
** 定期的なパスワード変更を要求しない。(SHALL NOT)
** パスワード流出の証拠がある場合は、パスワード変更を強制する。(SHALL)
* パスワードをどうやって作ったかのヒントを記載させてはいけない。(SHALL NOT)
* 「最初のペットの名前は」などのナレッジベース認証は使用してはいけない。(SHALL NOT)
* パスワードの一部だけで認証を通すことはやってはいけない。(SHALL)
* 前後の空白を削除するなど、パスワードの入力ミスを限定的に許容してもよい。(MAY)
* よく使われるパスワード、サービス名、ユーザー名などをパスワードに使用した場合は拒否する。(SHALL)
* パスワード入力中に、*や・の表記だけでなく、実際のパスワードを見られるようにするオプションを提供すべきである。(SHOULD)
* パスワードマネージャーの使用を許可する(SHALL)。オートフィルが使えない場合はコピー・アンド・ペーストの貼り付けが使えるようにするべきである(SHOULD)。パスワードマネージャーの利用者の方がランダムに生成されたより強力なパスワードを使う傾向にある。
* （サーバー側では）パスワードにソルトを付けてハッシュ化して保存する。パスワードを平文で保存しない。(SHALL)

SHALL, SHOULD, MAYは RFC 2119 で定義されていて、SHALLは必須、SHOULDは推奨、MAYはしてもよい、の意味である。

### 総務省
総務省は安全なパスワードの設定・管理のガイドラインを発表している。

以下のパスワードは危険である。
* IDと同じ文字列
* 自分や家族の名前、電話番号、生年月日
* 辞書に載っているような一般的な英単語ひとつだけ
* 同じ文字の繰り返しやわかりやすい並びの文字列
* 短すぎる文字列

パスワード管理として、定期的な変更は不要としている。これは2017年のNISTのパスワード基準の改定（第3版）に合わせたものである。

## パスワードへの攻撃
パスワードやクレジットカードの番号を入手することで、他人になりすまして様々な利益が得られることから、パスワードを不正調査するということがしばしば行われてきた。

本人しか知らないことが前提になっているため、入力した内容は画面上には伏せ字で表示される。例えば「ABCD」と入力しても「●●●●」と表示され、入力した文字数しか分からないようになっている。

また、複数回間違ったパスワードを入力すると、システムがそれ以降の入力を拒否するようになっている場合もある。
 
パスワードは任意の文字列で構成されるが、完全にランダムということはほとんどなく、実際は覚えやすい文字列で構成される場合が多い。その性質を利用して、辞書に載っている単語や人名を入力することで、パスワードを発見する効率を高めるソフトウェアもある。推測されにくいパスワードにするよう求められることが多く、新規でパスワードを作る際に簡単な文字列を設定すると設定自体をコンピューターに却下されたり、サイトごとに異なるパスワードにするよう求めることもある。結果的にパスワードを忘れてしまい、前述したように間違ったパスワードを複数回入力してロックされてしまうといった問題点もある。 

キャッシュカードや携帯電話端末の暗証番号は僅か4桁だけしかない場合が多く、番号を忘れてしまった場合に、全部の番号を試すソフトウェアが存在する。さらに、パスワードの発見には「フィッシング」と呼ばれる手法も存在する。これは、偽のウェブサイトやメールを使ってユーザーにパスワードを入力させる方法である。例えば、銀行やオンラインサービスを装ったメールを送り、リンクをクリックさせて偽のログインページに誘導する。このページにパスワードを入力すると、攻撃者にその情報が渡る仕組みである。

また、パスワードの安全性を高めるために、パスキーなどによる多要素認証が推奨されている。これは、パスワードに加えて、スマートフォンに送られる認証コードなど、追加の認証手段を必要とするものである。これにより、パスワードが漏洩しても、攻撃者がアカウントにアクセスするのを防ぎやすくすることができる。

パスワードを管理するパスワードマネージャーも存在する。パスワードマネージャーは、複雑で推測されにくいパスワードを自動的に生成し、安全に保管する機能を持っている。ユーザーは、マスターパスワード一つを覚えておけば、他のすべてのパスワードを管理できる。Apple、Google、マイクロソフトなどはパスワードマネージャーのサービスを提供している。

## パスフレーズ
よく似た語としてパスフレーズが存在する。主に次の3通りの意味で用いられているが、条件に当てはまる場面でも従来どおり「パスワード」と呼称するケースも存在する。
* パスワードの中でも、特に複数の単語を組み合わせて比較的長めに設定されたもの。（原義）
* 元々存在するパスワードに加えてユーザーが任意で別の合言葉を設定できる場合において、その合言葉を元々存在するパスワードと区別して呼称する場合。
* 公開鍵暗号技術において、秘密鍵を行使するため、秘密鍵が格納されたファイルや記憶領域に対してユーザーが提示する合言葉。

## 脚注

## 関連項目
* 生体認証（パスワードの入力に加え、指紋や虹彩などの生体による認証を組み合わせる多要素認証も多くなっている。）
* キーワード（パスワードと混同される場合があるが、意義や目的が異なる。）
* アイデンティティ管理
* パスワードクラック
* 総当たり攻撃
* 辞書攻撃
* キーロガー
* クラッキング
* 合言葉
* ワンタイムパスワード
*セキュリティトークン
* パスワード問題
* CAPTCHA

## 外部リンク
* "コンピュータウイルス・不正アクセスの届出状況について｜(2)強いパスワードとは" - IPA 独立行政法人 情報処理推進機構