Что произойдет, если для kSecAttrIsPermanent установлено значение НЕТ?

Каково использование атрибута kSecAttrIsPermanent при использовании Apples libcommonCrypto.dylib в iOS?

Документация яблок гласит:

Соответствующее значение имеет тип CFBooleanRef и указывает, должен ли этот криптографический ключ храниться постоянно.


В чем причина не хранить что-то постоянно в цепочке ключей и как долго она будет храниться? (до перезагрузки? пока приложение не будет закрыто? пока приложение не будет удалено?)

Это параметр, используемый в SecKeyGeneratePair при создании ключей.

Из справки по сертификату, ключу и доверенным службам

kSecAttrIsPermanent Если этот ключ присутствует и имеет логическое значение true, ключ или пара ключей добавляются к kSecAttrIsPermanent по умолчанию.

В этом контексте, если вы предоставите этот параметр, и он является ложным, тогда вы получите ключи в памяти, но он не будет сохранен в цепочке ключей (на диске). Это будет продолжаться до тех пор, пока вы продолжаете удерживать его, пока приложение все еще работает, если вы не сохраните его сами после этого.

Interesting Posts
Давайте будем гением компьютера.