<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.theiphonewiki.com/w/index.php?action=history&amp;feed=atom&amp;title=ICloud_Keychain</id>
	<title>ICloud Keychain - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://www.theiphonewiki.com/w/index.php?action=history&amp;feed=atom&amp;title=ICloud_Keychain"/>
	<link rel="alternate" type="text/html" href="https://www.theiphonewiki.com/w/index.php?title=ICloud_Keychain&amp;action=history"/>
	<updated>2026-04-26T11:14:01Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.31.14</generator>
	<entry>
		<id>https://www.theiphonewiki.com/w/index.php?title=ICloud_Keychain&amp;diff=119867&amp;oldid=prev</id>
		<title>Nicolas17: Add links to related resources</title>
		<link rel="alternate" type="text/html" href="https://www.theiphonewiki.com/w/index.php?title=ICloud_Keychain&amp;diff=119867&amp;oldid=prev"/>
		<updated>2021-12-06T00:57:28Z</updated>

		<summary type="html">&lt;p&gt;Add links to related resources&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 00:57, 6 December 2021&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 36:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 36:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;There's a larger system called '''Octagon''' (overall &quot;iCloud Keychain v2&quot; project? or just the new way devices add each other as trusted?), introduced together with CKKS, and a related XPC service called '''Cuttlefish''' (TrustedPeersHelper).&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;There's a larger system called '''Octagon''' (overall &quot;iCloud Keychain v2&quot; project? or just the new way devices add each other as trusted?), introduced together with CKKS, and a related XPC service called '''Cuttlefish''' (TrustedPeersHelper).&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;+&lt;/td&gt;
  &lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;+&lt;/td&gt;
  &lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Resources ==&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;+&lt;/td&gt;
  &lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [https://support.apple.com/guide/security/icloud-keychain-security-overview-sec1c89c6f3b/1/web/1 Apple Platform Security Guide: iCloud Keychain Security]&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;+&lt;/td&gt;
  &lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [https://youtu.be/BLGFriOKz6U?t=1355 Ivan Krstic's talk at BlackHat USA 2016] ([https://www.blackhat.com/docs/us-16/materials/us-16-Krstic.pdf slides]) (though he focuses on iCloud Keychain escrow/backup and glosses over syncing)&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;+&lt;/td&gt;
  &lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [https://conference.hitb.org/hitbsecconf2017ams/materials/D1T4%20-%20Vladamir%20Katalov%20-%20Breaking%20Apple%E2%80%99s%20iCloud%20Keychain.pdf Breaking Apple's iCloud Keychain &amp;amp;ndash; ElcomSoft]&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;+&lt;/td&gt;
  &lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [https://conference.hitb.org/hitbsecconf2018dxb/materials/D1T2%20-%20Cloudy%20With%20a%20Chance%20of%20Messages%20-%20Extracting%20Messages%20from%20iCloud%20-%20Vladimir%20Katalov.pdf Extracting Messages from iCloud &amp;amp;ndash; ElcomSoft]&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Software]]&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Software]]&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;

&lt;!-- diff cache key theiphon_wikidb:diff:wikidiff2:1.12:old-119866:rev-119867:1.7.2:0 --&gt;
&lt;/table&gt;</summary>
		<author><name>Nicolas17</name></author>
		
	</entry>
	<entry>
		<id>https://www.theiphonewiki.com/w/index.php?title=ICloud_Keychain&amp;diff=119866&amp;oldid=prev</id>
		<title>Nicolas17: braindump</title>
		<link rel="alternate" type="text/html" href="https://www.theiphonewiki.com/w/index.php?title=ICloud_Keychain&amp;diff=119866&amp;oldid=prev"/>
		<updated>2021-12-06T00:24:20Z</updated>

		<summary type="html">&lt;p&gt;braindump&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{lowercase}}&lt;br /&gt;
'''iCloud Keychain''' is an Apple service that synchronizes Keychain contents across multiple devices from the same owner,&lt;br /&gt;
using end-to-end encryption.&lt;br /&gt;
This is visible to the user as synchronization of passwords and credit card numbers saved by Safari,&lt;br /&gt;
but other &amp;quot;end-to-end encrypted iCloud data&amp;quot; works by saving the encryption keys in iCloud Keychain as well.&lt;br /&gt;
&lt;br /&gt;
== Codenames ==&lt;br /&gt;
&lt;br /&gt;
Many components of iCloud Keychain are actually open source (some unintentionally!) as part of the [https://opensource.apple.com/source/Security/ Security framework source releases].&lt;br /&gt;
&lt;br /&gt;
You will still find a ''lot'' of unexplained codenames.&lt;br /&gt;
This is a high-level overview from a broad look at the code,&lt;br /&gt;
that may help understand what those names mean,&lt;br /&gt;
though it still has a lot of speculation and unanswered questions.&lt;br /&gt;
&lt;br /&gt;
In Security-55471, iCloud Keychain was introduced, with '''SOS (Secure Object Sync)'''.&lt;br /&gt;
It uses [https://developer.apple.com/library/archive/documentation/General/Conceptual/iCloudDesignGuide/Chapters/DesigningForKey-ValueDataIniCloud.html iCloud Key-Value Store] (KVS) as the storage/sync backend.&lt;br /&gt;
There is an XPC service called &amp;quot;CloudKeychainProxy&amp;quot; that acts as a proxy between the keychain daemon (`securityd`) and KVS,&lt;br /&gt;
because `securityd` can't (rather &amp;quot;couldn't back then&amp;quot;) use Objective-C or link to Foundation.&lt;br /&gt;
&lt;br /&gt;
In Security-57336, SOS can communicate over IDS too, and there's a new IDSKeychainSyncingProxy service (later renamed KeychainSyncingOverIDSProxy).&lt;br /&gt;
This presumably means syncing keychain items by sending end-to-end encrypted push notifications between devices (iMessage uses IDS too) instead of storing items in KVS.&lt;br /&gt;
This version also added '''keychain views''' (see [https://opensource.apple.com/source/Security/Security-57740.1.18/OSX/sec/SOSCircle/SecureObjectSync/ViewList.list.auto.html ViewList.list]),&lt;br /&gt;
which apparently splits syncable keychain items into groups with different properties (maybe different top-level keys?).&lt;br /&gt;
&lt;br /&gt;
Security-58286 changed a lot. There is a whole new &amp;quot;syncing system&amp;quot; called '''CKKS (CloudKit Keychain Syncing)'''.&lt;br /&gt;
Views can be either synced by SOS or by CKKS.&lt;br /&gt;
Presumably SOS is considered legacy (there's code to &amp;quot;upgrade from SOS to CKKS&amp;quot;).&lt;br /&gt;
There are a few new views synced by CKKS, some have self-explanatory names (AutoUnlock and Health)&lt;br /&gt;
but there's also two called '''Engram''' and '''Manatee''' (meaning and distinction unknown).&lt;br /&gt;
&lt;br /&gt;
As hints for future research:&lt;br /&gt;
&amp;quot;Engram&amp;quot; is a private framework that is certainly related;&lt;br /&gt;
some features like AirTag pairing check &amp;quot;whether manatee is available&amp;quot; and tell the user to enable 2FA if not;&lt;br /&gt;
[https://conference.hitb.org/hitbsecconf2018dxb/materials/D1T2%20-%20Cloudy%20With%20a%20Chance%20of%20Messages%20-%20Extracting%20Messages%20from%20iCloud%20-%20Vladimir%20Katalov.pdf ElcomSoft's talk about iMessages in iCloud] mentions needing to download data from both Engram and Manatee to get messages.&lt;br /&gt;
&lt;br /&gt;
There's a larger system called '''Octagon''' (overall &amp;quot;iCloud Keychain v2&amp;quot; project? or just the new way devices add each other as trusted?), introduced together with CKKS, and a related XPC service called '''Cuttlefish''' (TrustedPeersHelper).&lt;br /&gt;
&lt;br /&gt;
[[Category:Software]]&lt;/div&gt;</summary>
		<author><name>Nicolas17</name></author>
		
	</entry>
</feed>