2016-09-25 13 views
2

のiOSキーチェーンに保存することができ5 types of keysキーチェーンがロックされているときに、どのキーチェーン属性にアクセスできないのですか?

  • kSecClassGenericPassword
  • kSecClassInternetPassword
  • kSecClassCertificate
  • kSecClassKey
  • kSecClassIdentity

は、これらのキータイプは、それぞれが異なるのサポートがあります属性セット。どの属性が「公開」であり、ロックされたキーチェーンに公開されているのか、どのキー属性が公開されていないのかは不明です。

ロックされたキーチェーンで次のすべてが公開されるとしますか?

私のアプリケーショングループ資格を持たないアプリケーションは、私のキーチェーンアイテムの属性を表示できますか?

enter image description here

答えて

1

すべての属性は、公開と見なされます。キーチェーン内の唯一の秘密は、データ(つまり、属性を使用して取得するもの)です。 Keychain Services Programming Guide: Structure of a Keychainを参照してください:

注:データとは異なり、アイテムの属性は秘密と見なされないため、暗号化されません。キーチェーンがロックされていても、いつでも読むことができます。

実際には、属性(すべての属性)でさえ暗号化されている(最初のロック解除前など)場合がありますが、これに。データがシークレットの場合は、属性ではなくキーチェーンデータである必要があります。しかし、覚えておいて、あなたはデータを検索することはできません....暗号化されているので....あなたは属性のみを検索できます。 iOSはキーチェーン全体を一度に復号化しません。一般的には、必要な部分を復号化するだけです。これに関する詳細については、iOS Security Guideを参照してください。