セキュリティ
最終更新日: 2026年10月19日
QR Wait は順番待ちに並ぶ方々について保存する情報をできるだけ少なくし、残りを守ります。このページはその方法をまとめたものです。何をどれだけの期間保存するかはプライバシーポリシーをご覧ください。
1. ホスティングと暗号化
QR Wait は Cloudflare のネットワーク(Workers と Durable Objects)上で動作し、データもそこに保存します。すべての通信は HTTPS(TLS)で暗号化され、qrwait.app とそのすべてのサブドメインでは HTTPS のみを使うようブラウザに指示しています(HSTS、1 年)。
ページには厳格なコンテンツセキュリティポリシー(CSP)が設定されています。スクリプトは QR Wait と Cloudflare からのみ読み込まれ、他のウェブサイトがフレーム内に QR Wait を表示することはできません。
Cloudflare は ISO/IEC 27001、ISO/IEC 27701、ISO/IEC 27018 の認証を保有していると表明しています(Cloudflare Trust Hub)。これらは Cloudflare のものであり、QR Wait 自体は認証を取得していません。
2. アカウントとログイン
- パスワードはソルト付きの PBKDF2-SHA-256 ハッシュとしてのみ保存します。既知のデータ漏えいに含まれる新しいパスワードは拒否します。この確認のために QR Wait の外へ送られるのは、その SHA-1 ハッシュの先頭 5 文字だけです(k-匿名性)。
- 認証アプリ(TOTP)による 2 段階ログインと、1 回限りのリカバリーコード。オーナーはどのチームメンバーが有効にしているかを確認できます。
- チームメンバーには役割(オーナー、管理者、係員)があり、制限されている場合は割り当てられた順番待ちだけを開けます。
- 1 つのアカウントへのログインに 24 時間以内に 5 回失敗すると、ログインにはボット確認(Cloudflare Turnstile)も必要になります。
- 新しいブラウザからアカウントにログインされると、メールが送信されます。
- セッションは 14 日間使われないと終了します。パスワードの変更や「他のデバイスからログアウト」で、ほかのすべてのセッションが終了します。
- 確認、パスワード再設定、招待のリンクは 1 回限りで、保存するのはそのハッシュだけです。
3. レート制限
リクエストは Cloudflare のエッジで IP アドレスごとに制限されます。ログイン・新規登録・パスワード再設定は 1 分あたり 10 回、順番待ちへの参加は 1 分あたり 60 回、REST API はキーごとに 1 分あたり 120 回、IP アドレスごとに 1 分あたり 120 回です。
4. 来訪者のデータ
- 来訪者に電話番号やメールアドレスを尋ねることはありません。名前は、事業者がその順番待ちで有効にした場合にのみ尋ねます。
- チケットは、含まれる名前や参加フォームの回答とともに、順番待ちの設定にかかわらず参加から遅くとも 24 時間後に削除されます。
- 位置情報は保存しません。順番待ちが位置を確認する場合、チケットに記録されるのは順番待ちまでの距離と測定時刻だけです。
- 係員の画面に表示される QR コードは 15〜75 秒ごとに変わり、各コードの有効時間は 1〜5 分です。よそで共有された写真では誰も参加できません。
- 係員がパネルで行った操作は 30 日間記録されます。係員リンクはいつでも取り消せます。
5. バックアップ
再構築できないデータ(アカウント、順番待ちの設定、チケット残高)は毎日 Cloudflare R2 へエクスポートされ、書き込み前に暗号化されます。各パートはそれぞれ専用の AES-256-GCM 鍵で暗号化され、その鍵自体も公開鍵(RSA-OAEP)で暗号化されます。これを開く秘密鍵はオフラインで保管しています。エクスポートは 35 日間保持されます。
チケットがバックアップに含まれることはありません。来訪者の名前を含み、最長でも 1 日しか存在しないためです。
6. 連携
- Webhook は一度だけ表示されるシークレットで署名され(タイムスタンプ付き HMAC-SHA256)、公開された https アドレスにのみ送信されます。事業者がアドレスごとに名前を許可しない限り、番号と時刻だけを含みます。
- API キーは一度だけ表示され、SHA-256 ハッシュとしてのみ保存されます。キーは読み取り専用か読み書き可能のいずれかで、いつでも取り消せます。
- 開発者向けの詳細:API と Webhook のリファレンス(英語)。
7. 再委託先
サービスを運営するため、以下の企業が QR Wait に代わってデータを処理します。
| 企業 | 用途 | 所在地 |
|---|---|---|
| Cloudflare, Inc. | ホスティング、保存、バックアップ、メール配信、ボット確認(Turnstile)、セキュリティ、Cookie を使わないアクセス統計 | 米国、グローバルネットワーク |
| Lemon Squeezy, LLC | 決済と請求書(販売者として) | 米国 |
| Apple Inc. | QR Wait の iPhone アプリへの通知(Apple Push Notification service) | 米国 |
| Google LLC | QR Wait の Android アプリへの通知(Firebase Cloud Messaging) | 米国 |
| OpenStreetMap Foundation | 管理パネルの地図タイルと住所検索 | 英国 |
ブラウザ通知は、来訪者自身のブラウザのプッシュサービスを経由します。データがトルコと EU の外へどのように移転されるかはプライバシーポリシーで説明しています。
8. 脆弱性の報告
hello@qrwait.app 宛てに件名「Security」でご連絡ください。3 営業日以内に受領をお知らせし、10 営業日以内に初回の評価をお送りします。修正されるまで問題を公開せず、ご自身のアカウントと順番待ちだけで検証してください。
これらのルールに善意で従った調査に対して、法的措置はとりません。有償のバグバウンティはありません。同じ連絡先を機械可読な形で:security.txt。