[{"data":1,"prerenderedAt":276},["ShallowReactive",2],{"blog-tag-ja-security":3},[4],{"id":5,"title":6,"author":7,"body":8,"category":258,"coverImage":259,"description":260,"draft":261,"extension":262,"locale":263,"meta":264,"navigation":265,"noindex":261,"path":266,"publishedAt":267,"seo":268,"slug":269,"stem":270,"tags":271,"updatedAt":267,"__hash__":275},"blog\u002Fblog\u002Fqr-read-intro.md","QR コードを読み取る — \u002Ftools\u002Fqr-read の思想と使い方","Zerosend Editorial",{"type":9,"value":10,"toc":247},"minimark",[11,15,23,27,61,65,72,75,90,93,96,119,122,128,149,152,155,158,176,179,182,192,198,204,215,224,227],[12,13,14],"p",{},"怪しい広告に貼られていた QR、送られてきたチラシの QR、カメラで読むにはスマホを近づける距離が取りづらい QR。「画像として手元にある QR を PC でサッと中身だけ確認したい」という場面は意外と多いものです。",[12,16,17,22],{},[18,19,21],"a",{"href":20},"\u002Ftools\u002Fqr-read","Zerosend の QR 読み取りツール"," は、この用途のためにあります。フィッシングやスキャン型詐欺への自衛にも使えます。",[24,25,26],"h2",{"id":26},"どんな場面で役立つか",[28,29,30,38,44,50],"ul",{},[31,32,33,37],"li",{},[34,35,36],"strong",{},"印刷物の URL を PC でそのまま開きたい",": チラシやポスターの QR を撮影 → 画像をドロップ → URL をコピー、という流れでスマホを使わずに遷移できます",[31,39,40,43],{},[34,41,42],{},"受け取った QR の内容を先に確認したい",": メールや SNS で届いた QR をスキャンする前に、リンク先が安全かテキストで確認できます",[31,45,46,49],{},[34,47,48],{},"スクリーンショットに含まれる QR を読みたい",": 画面録画や資料の中に小さく写っている QR も、画像をそのまま貼り付けるだけで読み取れます",[31,51,52,55,56,60],{},[34,53,54],{},"QR コード生成後の検証",": ",[18,57,59],{"href":58},"\u002Ftools\u002Fqr-create","QR コード生成ツール"," で作った QR が正しい内容を埋め込んでいるか、すぐ確認できます",[24,62,64],{"id":63},"なぜブラウザ内で-qr-を読み取るのか","なぜブラウザ内で QR を読み取るのか",[12,66,67,68,71],{},"QR 読み取り=「カメラで撮って自動でリンクを開く」と考えがちですが、これは",[34,69,70],{},"危険な挙動","です。悪意のある QR はフィッシングサイト、マルウェア配布 URL、課金トラップ、不審なアプリインストールに誘導することがあります。",[12,73,74],{},"Zerosend はこれに対し 2 つの方針を取ります。",[76,77,78,84],"ol",{},[31,79,80,83],{},[34,81,82],{},"画像読み取り処理をローカルで行う"," — QR 画像を第三者に渡さない",[31,85,86,89],{},[34,87,88],{},"デコード結果を自動遷移しない"," — URL が含まれていても、まずテキストとして表示し、ユーザーが内容を確認してから手動で判断できる",[12,91,92],{},"これはセキュリティ設計として重要な原則で、ZerosendのCLAUDE.mdにも「外部 URL への自動遷移禁止」として明記されています。",[24,94,95],{"id":95},"使い方",[76,97,98,106,109,116],{},[31,99,100,105],{},[18,101,102],{"href":20},[103,104,20],"code",{}," を開く",[31,107,108],{},"QR が写っている画像をドラッグ&ドロップ",[31,110,111,112,115],{},"自動でデコードが走り、結果が",[34,113,114],{},"プレーンテキスト","として表示される",[31,117,118],{},"内容を確認し、必要なら手動でコピー・遷移",[24,120,121],{"id":121},"仕組み",[12,123,124,127],{},[103,125,126],{},"jsQR"," というブラウザ対応の純 JavaScript QR デコーダを使っています。",[28,129,130,137,143,146],{},[31,131,132,133,136],{},"画像を ",[103,134,135],{},"\u003Ccanvas>"," に描画",[31,138,139,142],{},[103,140,141],{},"getImageData()"," でピクセル配列を取得",[31,144,145],{},"jsQR がピクセル配列から QR を検出・デコード",[31,147,148],{},"結果をテキストとしてそのまま表示 (HTML として解釈しない・リンク化しない)",[12,150,151],{},"ライブラリは WASM ではなく純 JavaScript 実装のため、初回ロードが軽いのも特徴です。",[24,153,154],{"id":154},"フィッシング対策としての使い方",[12,156,157],{},"怪しいメール・チラシ・SMS に QR が含まれているとき:",[76,159,160,163,170,173],{},[31,161,162],{},"画像をスクリーンショットや保存で取得 (スキャンしない)",[31,164,165,166,169],{},"Zerosend で読み取って",[34,167,168],{},"テキストとして"," URL を確認",[31,171,172],{},"URL 構造に違和感がないかチェック (正規サイトのサブドメイン偽装、短縮 URL 経由、意味不明なパスなど)",[31,174,175],{},"問題なさそうなら手動でアドレスバーに入力して遷移",[12,177,178],{},"カメラで直接読むと一発でブラウザが開くリスクがありますが、この手順ならテキストで一度確認できます。",[24,180,181],{"id":181},"よくある質問",[12,183,184,187,188,191],{},[34,185,186],{},"Q. 悪意ある QR コードを読み取っても安全ですか？","\nA. 安全です。Zerosend は読み取り結果を ",[34,189,190],{},"テキストとして表示するだけ","で、URL を自動的に開きません。フィッシングサイトへの誘導や不正アプリのインストールは、ユーザーが自分でリンクを開かない限り起きません。設計上の安全機構です。",[12,193,194,197],{},[34,195,196],{},"Q. バーコード (1D コード) も読み取れますか？","\nA. 現状は QR コード (2D) 専用です。バーコードには非対応です。",[12,199,200,203],{},[34,201,202],{},"Q. 画像内に複数の QR がある場合は？","\nA. 現状は最初に検出された 1 つだけ読み取ります。",[12,205,206,209,210,214],{},[34,207,208],{},"Q. 読み取れない QR","\nA. 解像度不足・反射・歪みが主な原因です。撮り直すか ",[18,211,213],{"href":212},"\u002Ftools\u002Fimage-edit","画像編集"," で補正を試してください。",[12,216,217,220,221,223],{},[34,218,219],{},"Q. 読み取り結果がサーバーに送られていないか確認したい","\nA. DevTools の Network タブを開いてから QR 画像をドロップしてください。通信が発生しないことが確認できます。",[103,222,126],{}," ライブラリは純 JavaScript 実装のため、WASM の読み込みもなく初回ロードが軽いです。",[24,225,226],{"id":226},"関連ツール",[28,228,229,235,240],{},[31,230,231,234],{},[18,232,233],{"href":58},"QR コード生成"," — 作った QR の検証にも使える",[31,236,237,239],{},[18,238,213],{"href":212}," — QR 画像の切り抜き・回転で読み取り成功率向上",[31,241,242,246],{},[18,243,245],{"href":244},"\u002Ftools\u002Fimage-compress","画像圧縮"," — 読み取れた QR 画像を軽く保存",{"title":248,"searchDepth":249,"depth":249,"links":250},"",2,[251,252,253,254,255,256,257],{"id":26,"depth":249,"text":26},{"id":63,"depth":249,"text":64},{"id":95,"depth":249,"text":95},{"id":121,"depth":249,"text":121},{"id":154,"depth":249,"text":154},{"id":181,"depth":249,"text":181},{"id":226,"depth":249,"text":226},"tech",null,"Zerosend の QR 読み取りツールは、画像をサーバーに送らずブラウザ内で QR の中身をテキスト抽出します。リンク先の自動遷移はせず、安全に内容を確認できます。Zerosend 編集部が解説。",false,"md","ja",{},true,"\u002Fblog\u002Fqr-read-intro","2026-04-20",{"title":6,"description":260},"qr-read-intro","blog\u002Fqr-read-intro",[272,273,274],"QR","ツール","セキュリティ","9MmmWPTfOPwejFG4M1Cr_Z6VD8XdHWqtq-FTJEUil_0",1777617519117]