Page 7
This feature runs exclusively as part of the cloud storage pipeline for images being uploaded to iCloud Photos and cannot act on any other image content on the device. Accordingly, on devices and accounts where iCloud Photos is disabled, absolutely no images are perceptually hashed. There is therefore no comparison against the CSAM perceptual hash database, and no safety vouchers are generated, stored, or sent anywhere.
Page 12:
"To make sure Apple's servers do not have a count of matching images for users below
the match threshold, the on-device matching process will, with a certain probability, re-
place a real safety voucher that's being generated with a synthetic voucher that only
contains noise. This probability is calibrated to ensure the total number of synthetic
vouchers is proportional to the match threshold. Crucially, these synthetic vouchers are
a property of each account, not of the system as a whole. For accounts below the
match threshold, only the user's device knows which vouchers are synthetic; Apple's
servers do not and cannot determine this number, and therefore cannot count the num-
ber of true positive matches.
The code running on the device will never let Apple servers know the number of syn-
thetic vouchers directly; this claim is subject to code inspection by security researchers
like all other iOS device-side security claims. Only once an account exceeds the match
threshold of true matches against the perceptual CSAM hash database can Apple
servers decrypt the contents of the corresponding safety vouchers and obtain the exact
number of true matches (always in excess of the match threshold) – and the visual de-
rivatives that correspond to those vouchers. In other words, even though the creation of
synthetic vouchers is a statistical protection mechanism, it is not a traditional noise-
based approach: under this protocol, it is impossible for servers to distinguish synthetic
vouchers from real ones unless the number of true positive (non-synthetic) matches
cryptographically exceeds the match threshold."
It may not be able to decrypt the vouchers, but it'll try if real+synthetic vouchers exceed the threshold. I still don't understand why they take this method instead of running the comparison entirely on-server for photos that are shared. Why open Pandora's Box when they have the decryption keys for iCloud Photos?