読み方 : カウンターモード

CTRモード【CTR mode】counter mode

概要

CTRモードとは、ブロック暗号で任意の長さのデータ暗号化する暗号利用モードの一つで、一回の処理ごとに値を一定の幅ずつ増加させる「カウンタ」を暗号化し、その結果と平文を合成する方式。高速に暗号化したい場合に用いられる。
CTRモードのイメージ画像

共有鍵暗号の一種であるブロック暗号は一定の固定長データ暗号化する手法だが、実用上は任意長の長いデータ暗号化する必要がある。任意のデータを一定のブロックに区切り、暗号アルゴリズムをどのように適用するかを定めた手順を「暗号利用モード」という。

CTRモードでは、ブロック暗号擬似乱数を生成する装置のように用いる。具体的には、暗号鍵とランダムな初期値(nonceと呼ばれる)に基づくカウンタ値を暗号化し、その結果と平文排他的論理和XOR)演算したものを暗号文とする。カウンタはブロックごとに一定の規則で増加し、同じ値が重複しないよう管理される。

復号時も同じカウンタ系列から得られる値を用いて排他的論理和を行うため、暗号化復号の処理が同一となり、処理が単純で実装しやすい。各ブロックの処理は独立しており、前のブロックの結果に左右されないため、前後のブロックを並列処理することが可能であり、大容量データの高速処理に適している。

一方、安全な運用のためにはカウンタや初期値の扱いが重要となる。同じ暗号鍵と同じカウンタ系列を再利用すると、暗号文同士の関係から平文が推測される危険がある。そのため、暗号化ごとに一意な初期値やカウンタを用いるように運用を工夫する必要がある。

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。