QR コード誤り検出とは、QR コードのデータ領域に埋め込まれたチェックサム (BCH 符号) によって、読み取ったデータにビット誤りが含まれているかどうかを判定する仕組みです。誤り訂正 (リード・ソロモン符号) がデータを復元するのに対し、誤り検出は「データが正しいか否か」の判定のみを行います。
QR コードの構造上、フォーマット情報 (15 ビット) と版情報 (18 ビット) にはそれぞれ BCH(15,5) と BCH(18,6) の誤り検出符号が適用されています。これにより、スキャナーはまずフォーマット情報を正しく読み取れたかを検証し、読み取り不能と判断した場合は別の方向からの再スキャンを試みます。
誤り検出が重要な理由は、誤ったデータを正しいと誤認してリダイレクトすることを防ぐためです。短縮 URL を格納した QR コードで 1 ビットでも誤読が発生すると、全く別の URL に遷移する危険性があります。誤り検出により、スキャナーは「読み取り失敗」としてユーザーに再スキャンを促すことができます。
実用上の注意点として、誤り検出の信頼性は QR コードの印刷品質と環境条件に依存します。汚れ、折れ、光の反射などで検出限界を超える誤りが発生した場合、誤り訂正レベル (L/M/Q/H) の選択が最終的な読み取り成功率を左右します。