
「報平安」保安
「報平安」可讓用户選擇在自己的受支援裝置未有到達預定的目的地時要通知的聯絡人。當用户選擇聯絡人來開始使用「報平安」時,系統會傳送 iMessage 訊息給該聯絡人,並提供關於該階段的詳細資料,包括目的地。啟動用户的裝置還會產生一個存取代號和「報平安」加密密鑰。「報平安」加密密鑰會在第二個 iMessage 訊息傳送;不過,這個訊息會被 iMessage 伺服器保留而不是立即送達。由於此訊息會在用户和其指定聯絡人之間進行端對端加密,Apple 無法取用訊息的內容。
當啟動用户的裝置朝着目的地前進時,裝會定期向 iMessage 伺服器傳送心跳訊息,此訊息可以延長之前送達的「報平安」加密密鑰訊息的到期時間。如果裝置已關機或失去連線,iMessage 伺服器會在到達到期時間時自動將包括加密密鑰的 iMessage 訊息釋出給聯絡人。如果裝置未有朝着目的地前進,系統也可以釋出「報平安」加密密鑰訊息。以此方式釋出訊息時,存取代號會被包括在內。
在「報平安」階段期間,啟動用户的裝置會定期收集相關的「報平安」資料(例如位置和電池電量),然後使用「報平安」密鑰加密這些資料並上載到 iCloud。Apple 無法取用「報平安」密鑰,亦無法取用這些上載的資料。
結束「報平安」階段需要用户認證。如果用户取消階段,系統會從伺服器上安全地刪除加密資料和包括「報平安」加密密鑰的 iMessage 訊息。
如果「報平安」裝置未如預期地到達目的地,或設定的計時器到期,所選聯絡人將會收到包括「報平安」加密密鑰的 iMessage 訊息。有兩個情境可能會導致此情況:
失去連線後:在這種情況下,指定聯絡人不會收到存取代號,而且聯絡人的裝置會執行第二次檢查,以確定自上一個心跳訊息以來,是否已經過了足夠的時間。聯絡人的裝置要求從伺服器取得已加密的「報平安」資料,接着伺服器會進行第三次檢查,以進一步確認自上一個心跳訊息以來,是否已經過了足夠的時間。如果是的話,伺服器會將已加密的「報平安」資料提供給聯絡人,聯絡人可以使用他們的「報平安」密鑰解密這項資料。
當用户的裝置確定他們未有朝着目的地前進時:在這種情況下,除非用户在系統提示時取消或延長「報平安」,否則指定聯絡人會同時收到存取代號和「報平安」加密密鑰。聯絡人的裝置將存取代號提供給伺服器,允許其下載已加密的「報平安」資料。然後聯絡人可以使用「報平安」密鑰解密這項資料。