В приложении Mac у меня есть требование хранить закрытый ключ, отправленный с сервера для авторизованного пользователя, безопасным способом и извлекать его обратно, когда это необходимо программно. Я знаю, что брелок - лучшее место для хранения закрытого ключа. Есть ли пример кода, доступного для достижения этой цели?
Я могу добавить закрытый ключ в цепочку ключей, используя метод "SecKeychainItemImport" из "Security.framework", но у меня возникают проблемы с получением секретного ключа из цепочки для ключей. Я пытался использовать методы "SecKeychainItemCopyAttributesAndData" и "SecKeychainItemCopyContent" для получения секретного ключа обратно из цепочки для ключей. Но пока не повезло.
Я также читал в блогах о том, что хранилище закрытых ключей находится внутри скрытой папки ".ssh". Но я чувствую, что хранение закрытого ключа внутри цепочки для ключей обеспечивает еще один уровень безопасности, так что кто-то еще не может иметь легкий доступ к закрытому ключу.