最初の質問:Splyncは安全
SplyncのMVPリリース時に、友人たちが実際にアプリを試しました。彼らはメールとパスワードで登録し、プロジェクトを作成して経費を追加しました。多少のバグはあったものの、全体的にうまく動作しました。でも、彼らが最初にした質問はデザインや機能、速度ではなく、セキュリティについてでした。日々の経費記録をSplyncに本当に任せられるのか?非常に重要な質問です。個人の財務データは非常に機密性が高いため、それを扱うアプリは安全でなければなりません。
SplyncはHTTPではなくHTTPSを使用
Splyncは、データのリンクやプロジェクトの共有、デバイス間の経費の同期を可能にするためにインターネットを必要とします。つまり、記録した数字やタップしたボタンはすべてサーバーに到達する前にウェブ上を通ります。保護がなければ、同じWi-Fiネットワークにいる誰かがその通信を静かに監視することができます。これがSplyncがHTTPではなくHTTPSを使用する理由です。
HTTPが安全でない理由
HTTP(Hypertext Transfer Protocol)はかつてインターネット通信の標準でしたが、大きな欠点があります。それは情報を平文で送信することです。秘密を封筒に入れずにハガキに書くようなものです。郵便局員、配達員、窓から覗く見知らぬ人、誰でも読むことができます。これが初期ウェブの「http」接続の状態で、機能はしましたがプライバシーはありませんでした。HTTPSはあなたのメッセージを暗号化された封筒に封じ込めることでこれを解決します。
HTTPSはどうやってあなたを守るのか
Splyncを開くと、スマートフォンとサーバーが対話を始めますが、すぐにはお互いを信頼しません。まず、ハンドシェイクと呼ばれる儀式を行います。これは、見知らぬ者同士が秘密を共有する前にIDを交換するようなものです。このハンドシェイクで、あなたの電話はサーバーのデジタル証明書を確認し、それが本当にSplyncであり偽物でないことを証明します。信頼が確立されると、両者は一時的な秘密鍵、つまりこのセッション専用のパスワードに合意します。
ハンドシェイクがセキュアな通信を開始
その瞬間から、あなたが送信するすべての情報—ログイン、プロジェクトデータ、経費—はその鍵を使って暗号化されます。誰かが信号を傍受しようとしても、ランダムな文字の羅列しか見えません。それは水中で会話を叫ぶようなものです。これらはすべてアプリを開くたびに自動的に、ミリ秒単位で行われます。あなたはそれを目にしませんが、HTTPSは常に見えない盾としてあなたの個人データを守っています。それがなければ、インターネットは依然としてハガキのように無防備な世界です。
HTTPSを使わないアプリがあるとどうなるか
なぜHTTPSが重要なのか理解するために、簡単なシーンを想像してみてください。カフェでコーヒーを楽しみながら、公共のWi-Fiネットワークで経費を確認しています。HTTPSがなければ、あなたのメール、パスワード、プライベートなプロジェクト名などすべてが平文で空中を飛び交います。基本的なツールを持った近くの人が、その接続を傍受し、すべてを逐一読み取ることができます。これは中間者攻撃と呼ばれ、インターネット初期には非常に一般的でした。
サイトが安全かどうかの確認方法
現在、ブラウザはHTTPSで保護されていないサイトを使用者に警告します。「http://」で始まるウェブアドレスを見たら、機密情報を入力しないでください。それは接続が暗号化されていないことを意味します。URLが「https://」で始まり、小さな鍵アイコンが表示されていることを常に確認してください。HTTPSの「S」はSecureを表し、それが大きな違いを生みます。あなたのデータは暗号化されたトンネルの中を安全に移動していることを示しています。
アプリ内でURLを確認できるか
アプリのURLは通常見えないため、どうやって確認するのかと思うかもしれません。現代のアプリは、セキュアなHTTPSリクエストのみを通じて通信するよう設計されています。開発者はアプリのソースコード内で正確なサーバーアドレスを指定し、システムは安全でない「http://」接続を自動的にブロックします。例えば、iPhoneではすべてのアプリはデフォルトでHTTPSを使用しなければなりません。AppleはApp Transport Security(ATS)というフレームワークを通じてこれを強制し、暗号化されていない通信を拒否します。
HTTPSでSplyncは安全
あなたのスマートフォン自体が警備員の役割を果たし、暗号化されていない接続を拒否します。なので、URLを目にすることはないかもしれませんが、Splyncがサーバーに接続するたびに、すでにその見えないHTTPSの盾を通過しているのです。HTTPSはあなたのデバイスとサーバー間の道を保護します。でも、サーバー自体はどうでしょうか?次のトピック、SSHについて説明します。