Так как ответа пока нет, я подумал, что мне стоит ответить тем, что я нашел до сих пор.
Я просмотрел исходный код , доступный для связки ключей OS X, и хотя я не уверен на 100%, потому что его много, связка ключей использует 3DES в API-классах -> KeyItem. cpp в строке 141. В строке Import / Export -> SecWrappedKeys.cpp в строке 150 также есть комментарии о том, что только DES и 3DES используются как минимум для этого класса. Отсутствует много частных классов, поэтому я могу продолжать только то, что вижу.
В связке ключей Apple docos и в других случайных статьях технической поддержки говорится, что для связки ключей есть пароль приложения и пароль, сгенерированный системой. Если вы изменяете свой dev-сертификат для приложения, оно теряет запись цепочки для ключей, а при восстановлении на новый телефон цепочка для ключей не работает.
Из того, что я видел, цепочка для ключей использует опцию 1 (самая сильная, где все 3 клавиши разные). Этими тремя паролями будет ваш пароль для разблокировки телефона / по умолчанию один или случайный, если нет блокировки, UDID устройства или какой-то другой эквивалентный уникальный идентификатор для iPhone и идентификатор приложения (забыли его название) для третьего.
Редактировать: В свете недавнего эксплойта, который был продемонстрирован на некоторых сайтах, может показаться, что все 3 пароля генерируются системой, даже если у пользователя есть пароль для телефона.