web-dev-qa-db-ja.com

保存されたデータを変更しようとする試みに対して、バーコードとQRコードはどの程度耐性がありますか?

ドキュメントを操作および偽造から保護したいとします。したがって、ドキュメントの機密情報をエンコードし、ドキュメントに挿入されたQRコードに保存します。

攻撃者がQRコードに保存されているデータを変更および変更できないことを確認できますか?そして、それを変更することが可能である場合、攻撃者が変更することはどれほど難しいのですか?言い換えれば、QRコードはどの程度安全ですか?

45
Questioner

... QRコードはどの程度安全ですか?

QRコード内のデータは エラー修正 によって偶発的な損傷から保護されていますが、意図的な操作から保護されていません。また、攻撃者はドキュメント内のQRコードを完全に別のQRコードに置き換える可能性があります。

112
Steffen Ullrich

通常、QRコードは操作から保護されていません。だが:

データに デジタル署名 を含めると、QRコードが自分で作成したもので、変更されていないかどうかを誰でも確認できます。次に、攻撃者ができる唯一のことは、QRコードをあなたが作成した他のQRコードに置き換えることです。

このようなアプローチは通常、次のように機能します。

  • 安全なサーバーでは、鍵のペア(公開鍵と秘密鍵)が生成されます。公開鍵は安全に公開できます。秘密鍵がサーバーを離れることはありません。
  • QRコードを作成する必要がある場合、サーバーは情報と秘密鍵からデジタル署名を計算します。情報はデジタル署名とともにQRコードに入れられます。
  • QRコードをスキャンするためのアプリを作成します。公開鍵はアプリに含まれています。公開鍵、情報、およびデジタル署名を入力として受け取るアルゴリズムは、QRコードのデータが改ざんされていないかどうかを確認できます。

QRコードのデジタル署名用の標準的なソフトウェアまたは優れた既存のソフトウェアがあるかどうかはわかりません。

60
Paul

QRコードまたはバーコードは、非アルファベット形式で書き込まれたデータです。通常のテキストで同じデータを書き込むことで得られるセキュリティ以上のセキュリティは提供されません。

45
David Richerby

QRコードは、意図的な変更に対する保護を提供しません。

ドキュメントの保護は、目的に応じてさまざまな方法でアプローチできます。コンテンツの検証はデジタル署名を添付することで実行できますが、署名鍵を他の誰かの署名鍵に単純に置き換えるのを防ぐために、公開鍵の外部(帯域外)検証が必要です。これは、コード(ドキュメント)の署名がWebサイトまたはその他の帯域外チェックを介して入手できるコードダウンロードで一般的です。

非表示の透かしやその他のステガノグラフィーの手法は、ドキュメントの検証に役立ちますが、厳密な暗号署名とは対照的に、検出されないことに依存しています。多くのアプローチがあり、その効果は配布と使用に依存します。たとえば、選択した単語や文字のカスタムマイクロ間隔。非標準の円グラフの回転。デジタルドキュメントの選択した場所の余分なスペース。印刷されたドキュメントの白い紙に小さな黄色のドット。他にもたくさんありますが、デジタル署名はゴールドスタンダードです。

8
user10216038

バーコードは操作が簡単です。結局のところ、これらは単なる数値のエンコーディングです。冗長性があるもの、チェックサムがあるもの、まったく保護されていないものがあります。

あなたはバーコードについての話からこれらのメモが好きかもしれません: Jemandem einen Strich auf die Rechnung machen (ドイツ語のタイトルですが、英語のスライド)。

スピーカーは、さまざまな種類のバーコードを操作することで多くの楽しみを持ち、それらがどのように機能するか、操作がどのように機能するか、どのシステムが脆弱であったか、どのシステムがバーコードをいじるのに対して十分な保護があったかを説明しました。

3
allo

QRコードとバーコードは、機械で読み取り可能な情報にすぎません。人間が簡単に読み取ることができないからといって、それがセキュリティの種類を意味するわけではありません。

セキュリティのためにバーコードを付けるのではなく、使いやすさのために。 QRコード(およびその他のQRコード)が存在する理由は、より多くのデータを入れることができるためです。結局、データはデータであり、データ自体が安全でない限り、どちらも表現ではありません。

2
John Keates

「印刷されたバーコードとQRコードの変更」を意味する場合、バーコードは通常変更されると機能しなくなり、QRコードは何らかの「エラー修正」を備えているため、小さな改ざんによって生き残ることができます。 QRコードを別の任意のコードに変更することは事実上不可能です。

しかし、既存のものを変更するのはあまりにも愚かです。悪意のあるQR /バーのステッカーを印刷して、ターゲットの上に直接貼り付けることができます。泥棒が、人々がスキャンしてお金を支払うためにスキャンする「受信者QRコード」を置き換える(ステッカーを貼る)ことで、店からお金を「盗む」ケースはすでにいくつかあります。たとえば、 here は、少し前に起こった本当のニュースです。

1
iBug