平文(ひらぶん、へいぶん)やクリアテキスト()とは、データ通信において、意味が理解でき直接利用できる、つまり暗号化されないままで、転送あるいは蓄積されるデータやメッセージの形式のことである。
暗号化アルゴリズムの入力はプレーンテキスト()、出力は暗号文()と呼ぶ。英語では plaintext と plain text は区別される。
概要 暗号とは、通信されている情報を見ても、特別な知識・解読作業なしでは読めないように変換する表記法のことであり、暗号文とはそのような処理がなされたデータである。であるから、平文とは、秘匿・隠蔽の処理が何も行われていない、そのままのデータのこと。現代では、平"文"、暗号"文"といっても文字列を指すものではなくバイナリデータを意味していて、テキスト(文字)のデータだけに留まらず、画像や音声などについても用いる。
定義 + Internet Engineering Task Forceによる定義、ならびに情報処理推進機構による翻訳cleartext - Internet Security Glossary - IPAplaintext - Internet Security Glossary - IPA 英語名 日本語名 定義 cleartext 平文 意味的な情報内容(すなわち、意味)が理解できる、または直接利用できるデータ。暗号化されているデータは平文では無い。 plaintext プレーンテキスト 暗号化処理に入力され、これによって変換されるデータ、もしくは、復号処理の出力であるデータ。多重暗号化処理をかける場合など、プレーンテキストは暗号化されている場合もある。特にインターネット標準では、cleartext と plaintext を混同するべきではない(SHOULD NOT)とされている。
平文保存・送信の脆弱性 パスワードやクレジットカード番号、個人情報などの秘匿することが重要な情報をインターネットなどのネットワーク経由で送信する場合、スニファといったツールによる盗聴のおそれがあるため、秘匿が必要なデータは平文のままで送信してはいけない。平文保存は、CWE(共通脆弱性タイプ一覧)で「重要な情報の平文保存(CWE-312)」や「認証情報の平文保存(CWE-256)」として定義されている。平文保存・送信を避けるのはコンピュータセキュリティの基本である。
しかしながら、インターネットの初期段階ではセキュリティの考慮はあまりなされておらず、telnet、FTP、POP3、HTTPといった古くからあるプロトコルを使う昔のアプリケーションはパスワードを平文のままで送信していた。
これらのプロトコルには、既に暗号化のための拡張規格があり、それに対応したアプリケーションが開発されている。
WebページはHTTPを使い、電子メールの取得もPOP3を用いることが多い。このため、現在でも多くの場面で平文が使われている。暗号化に対応したアプリケーションを利用しようとすると、暗号化デバイスが必要になったり、CPU負荷(計算量)が増加するため、金銭的にコストが上昇しがちであることも敬遠される一因である。 利用者は、クレジットカード番号などの個人情報などをWebページに入力する場合は、通信が暗号化されていることを確認する必要がある。 ウェブアプリケーションを作成する場合も、平文を利用すべきか考慮が必要である。
関連項目 暗号化 LANアナライザ Transport Layer Security プレーンテキスト
参照
外部リンク RFC 2828 Internet Security Glossary 上記資料における"cleartext"定義の日本語訳