Apple (iCloud+) Private Relay (iOS15~)ついに来たな…

まずは公式サイトを読もう

www.apple.com developer.apple.com support.apple.com

利用環境

iOS 15, iPad OS 15,macOS MontereyにおけるSafari Appおよびアプリ内のSafariブラウザ
(それに加えてSFSafariViewControllerで動いてる画面)

developer.apple.com

他社製のブラウザやWKWebViewで動いている画面,およびその他の通信方法を提供するブラウザは対象外
マシン全体の通信の置き換えはできない,適用範囲はあくまでSafari系の周りにのみ限られる
および,端末から出るTCP80宛の通信WKWebViewから出るHTTPプロトコルの通信全て
(以下に経緯が載っています)

soluna-eureka.hatenablog.com

WKWebViewとSFSafariViewControllerの見分け方

右上か左上に「ぁあ」があればSFSafariViewController,「⬆️」しかなければWKWebView
後者もしくは独自ブラウザで行うTCP443宛のHTTPS通信なら,Private Relayにはまず流されないと考えても良さそう

出口サーバの管轄会社はどこ?

cloudflare, akamai, fastlyの3社…らしい(他にあったら教えて欲しい),ここら辺はAppleが一括で契約してくれてるはず

www.cman.jp

ここから見て自分のIPアドレスの登録情報が上の3社のどれかなら成功

www.speedtest.net

もしくはここで「iCloud Private Relay」と出れば成功

契約方法

既にiCloud+の一部になっているので,iCloudに課金契約をつけてiCloud+にしてやる必要がある, つまりは無料Apple会員では利用不可,当たり前だよなぁ?

support.apple.com

最安なら50GBを130円で購入できるので,ライトユーザーはコレくらいでいいっすね

利用方法

  1. 契約します
  2. 本体を買ってApple IDでログインします
  3. 「設定」→「Apple ID」→「iCloud」→「プライベートリレー(ベータ版)」
  4. オンにする
  5. IPアドレス位置情報設定」をいじる(「国と時間帯を使用」で良いんじゃないかな)

不都合が起きれば別のブラウザを使えば良いしオフにしても良い,割と簡単に素早くスイッチが入るっぽいのでご安心を

仕組み

Private RelayはiCloudに組み込まれている新しいインターネットプライバシーサービスで、ユーザーはより安全でプライバシーが保護された方法でウェブに接続してブラウズできるようになります。Safariでのブラウズ時、Private Relayはユーザーのデバイスから発信されるすべてのトラフィックを確実に暗号化し、Appleやユーザーのネットワークプロバイダを含む何者もユーザーと訪問先のウェブサイトの間でのトラフィックにアクセスしたり読み取ったりできないようにします。その後、ユーザーのリクエストはすべて2つの別々のインターネットリレーを通じて送信されます。1つ目はユーザーの実際の位置情報ではなく地域に割り当てられた匿名のIPアドレスをユーザーに割り当てます。2つ目はユーザーが訪問しようとしているウェブアドレスを復号し、目的の場所にユーザーを転送します。この情報の分割によって、ユーザーと訪問先のサイトの両方が、Appleを含むどのような組織にも特定できなくなるため、ユーザーのプライバシーが保護されます。
https://www.apple.com/jp/newsroom/2021/06/apple-advances-its-privacy-leadership-with-ios-15-ipados-15-macos-monterey-and-watchos-8/

iCloud Private Relayサービスは、革新的なマルチホップアーキテクチャを採用しています。異なる事業者が運用する2つの独立したインターネットリレーを介してリクエストが送信されるため、Appleを含むいかなる者も、ユーザーのブラウジングアクティビティの詳細を閲覧したり収集したりすることができません。Private Relayでは、接続しているクライアントがiPhoneiPadMacであることが検証されるため、接続元のデバイスAppleバイスであることが保証されます。また、デフォルトでは、エグレスIPアドレスにより、クライアントのおおよその位置情報が都市レベルで正確に表されるので、IPアドレスに基づいて地域ベースの制限を課す際に、関連する位置情報をネットワークが受け取ることもできます。その場合でもクライアントの固有IPアドレスは引き続きマスク処理され、匿名化されたアドレスのみがWebサイトと共有されます。これらのアドレスは、Private Relayユーザーのグループ間でも共有されます。
https://developer.apple.com/jp/support/prepare-your-network-for-icloud-private-relay/

通常は、Web を閲覧すると、Web トラフィックに含まれている情報 (DNS レコードや IP アドレスなど) をネットワークのプロバイダや、閲覧した Web サイトに知られてしまいます。この情報を基に、閲覧者の本人確認が実施されたり、時間経過に伴う位置情報や閲覧履歴を蓄積してプロフィールが作成されたりする場合があります。iCloud プライベートリレーは、Safari で Web を閲覧する際に、あなたが誰で、どのサイトを訪れているのか、Apple も含め誰一人としてわからないよう徹底し、プライバシーを守るしくみになっています。
プライベートリレーが有効になっている場合、あなたのリクエストは 2 つの個別の安全なインターネットリレーに分けて送られます。IP アドレスを見ることができるのは、ネットワークのプロバイダと 1 つ目のリレー、これは Apple が運用しています。DNS レコードは暗号化されるので、あなたが閲覧しようとしている Web サイトのアドレスを両者とも知ることはできません。2 つ目のリレーは他社のコンテンツプロバイダが運用していて、これが一時的な IP アドレスを生成し、あなたがリクエストした Web サイトの名前を復号化した上で、そのサイトにあなたをつないでくれます。これらすべてが最新のインターネット標準を用いて行われるので、プライバシーを守りながら、申し分のないパフォーマンスで快適に閲覧を続けられます。
https://support.apple.com/ja-jp/HT212614

1段階目のAppleのサーバはユーザの通信を受け入れ転送する,2段階目のcloudflare, akamai, fastlyのサーバは通信を暗号化し接続する,つまりAppleは通信された内容を把握しないし,依頼された企業は誰が通信したかを把握しないということになる…?
確かにコレなら「通信したユーザと通信した内容を1つの組織が両方を同時に把握する」ことは起こり得ないと言える…

というよりもSafariそのものがTor browserのような機能を持つことになる,どんな回線でもプロバイダの先で最初にicloudに接続し転送と暗号化を経てサイトにアクセスできる,それに加えてそこそこな速度も出るし(最大100Mbpsまでは期待できそう)

IPv6もOK

ちゃんと対応している,フルで置き換わる

QUICとは何か

datatracker.ietf.org tex2e.github.io www.cybertrust.co.jp

難しスギィ!
要するに

  • HTTP-over-QUICがHTTP/3で,
  • QUICはTCPTLS・HTTP/2の一部をUDP上で実装して,
  • IPアドレスが変わっても再接続が可能

ってことですか…?

VPNやTorとは何が違うのか

Safari系の画面でなければ素通りする

TwitterもNicovideoもPixivもJaneStyleもSFSafariViewControllerを使ってなさそうなのでダメっす,必ずSafariからやりましょう

位置情報が探られやすい

IPアドレス位置情報設定」で「おおよその位置情報を保持」にするとGoogleに都市レベルの位置情報をお出しされる
「国と時間帯を使用」でも国家レベルや時間帯レベルの位置情報が出てくる,つまり位置匿名性は高いとは言えない

実際TorやVPNやProxyならば出口ノードが海外におかれる場合も多く,それには劣ってしまう…と考えている(各リレーの中身がどんな風に構成されてるかにもよりそうだが,個人の集合体ではなく4社独占体制なので明らかに脆い)

開示請求するとどうなるの?

実はノーログだったりするのか,それとも素直に応じるタチなのか,Appleと3社の間でどんなやりとりが発生するのか,やってみなければわからない部分が非常に多く,興味深い
というか「プロバイダ←Apple←3社←Web管理者←申立人」みたいな4段構えになりかねない,「お互いにデータを照合しない」というPrivate relayの取り決めがどこまで通用してどこから通用しないのかが,そこが非常に気になる…

林檎ユーザだとバレる可能性がある

段々と出口サーバのIPが割れてくる可能性がある,というよりこの特定作業は有志が既に初めてそうなのが…
https://mask-api.icloud.com/egress-ip-ranges.csv
なんだこれは,たまげたなぁ…(14MBのcsv
既に全てのリレーの出口が掲示されているじゃないか…

中国とロシアで使えない

前者は公式発表だけど後者はユーザー報告,これは法律が違ったり圧力がかかったりしているせいなのですか?

今のところ確認されている不都合

日本国内限定

モバイルデータ通信による機能が阻害される

通信会社からユーザーを見れば,宛先が全てiCloudになる上に内容も秘匿されるので, 一切のコンテンツフィルタは動作しなくなる(本体内蔵型を除く)し, 特定サービスが対象の無料プランも検知できないから適用されない
iOS向けで出しているアプリであっても中身がSFSafariViewControllerで動いているものはアウトになるので, 契約してる携帯通信会社のページを確認しておこう

出口のIPアドレスがコロコロ変わる

特に匿名掲示板だとIDなどが切り変わるか(運がとても良ければ)被る可能性があり,思わぬ事故が発生するかもしれない
不都合なら火狐を使おう

やっぱり遅い

100Mbps以上の速度が欲しかったら使うな

締め出される可能性がある

非常に強い林檎アンチなコミュニティがあれば,IPアドレスから焼かれる可能性が考えられる
もしくは側から見ればプロキシとの違いが明確にわからない以上,トラフィック量だけを見てオートでブロックすれば, 間違ってフィルタされてしまう可能性だってある
後者は簡潔なホワイトリスト設定をAppleが出しているわけではなさそう,さっきのクソデカcsvで何とかするしかないみたい…