核心数据加密属性

时间:2012-02-10 08:09:14

标签: objective-c cocoa core-data encryption

我们希望加密我们实体的某些属性,但仍然能够使用该属性执行提取和谓词,而无需特别注意谓词等...

人员属性名称已加密

NSPredicate * predicate = [NSPredicate predicateWithFormat:@"name like JOHN"];
johns = [persons filteredArrayUsingPredicate: predicate];

核心数据实体

·H

@interface Person : NSManagedObject

@property (nonatomic, retain) NSString * name; // crypted
@property (nonatomic, retain) NSString * description; // crypted
@property (nonatomic, retain) NSString * someAtrribute;

@end

的.m

@implementation File

@dynamic name;
@dynamic description;
@dynamic someAttribute;

@end
  • 我无法将@dynamic更改为@synthesize并实现我的自定义setter和getter
  • 我可以将加密属性更改为c_name,并使用自定义getter和setter添加合成属性名称,但这不适用于谓词

1 个答案:

答案 0 :(得分:1)

您实际上可以实施自定义访问者方法,请阅读此apple doc