我在覈心數據中有實體Account
和CreditCard
。一個account
可以有多個creditCards
。每個creditCard
有一個number
。我如何加密number
?核心數據加密?
我知道我可以在沒有核心數據的情況下使用鑰匙串服務,但我可以一起使用它們嗎?我想使用核心數據而不是像NSUserDefaults
這樣的原因是因爲我想處理多個帳戶。我沒有使用鑰匙串服務,所以我不確定它是否適合多個賬戶。
我在覈心數據中有實體Account
和CreditCard
。一個account
可以有多個creditCards
。每個creditCard
有一個number
。我如何加密number
?核心數據加密?
我知道我可以在沒有核心數據的情況下使用鑰匙串服務,但我可以一起使用它們嗎?我想使用核心數據而不是像NSUserDefaults
這樣的原因是因爲我想處理多個帳戶。我沒有使用鑰匙串服務,所以我不確定它是否適合多個賬戶。
通過將Keychain對象轉換爲NSData
對象,可以將Keychain對象存儲在Core Data中。這並不是那麼微不足道,因爲你需要正確地來回轉換它。查看有關非標準持久屬性的documentation documents以幫助您。
您可以更改要加密的屬性以鍵入Transformable,並創建您自己的NSValueTransformer,該類型在調用transformedValue時進行加密,並在調用reverseTransformedValue時進行解密。
變形的屬性: https://developer.apple.com/library/prerelease/ios/samplecode/PhotoLocations/Introduction/Intro.html
解密/加密AES256的實施例: https://gist.github.com/m1entus/f70d4d1465b90d9ee024