gpt4 book ai didi

ios - 敏感数据 : NSString VS NSMutableString (iPhone)

转载 作者:可可西里 更新时间:2023-11-01 03:53:06 27 4
gpt4 key购买 nike

我有一些敏感数据想在使用后直接清除。目前,敏感数据的形式是 NSString。 NSString 在我的理解中是不可变的,这意味着我无法真正清除数据。不过,NSMutableString 似乎更合适,因为它是可变的,并且具有 replaceCharactersInRange 和 deleteCharactersInRange 等方法。我不知道实现细节,所以我想知道 NSMutableString 是否能满足我的目的?

最佳答案

我担心 NSMutableString 会尝试优化并将字符串留在内存中。如果你想要更多的控制尝试分配你自己的内存然后用它创建一个 NSString 。如果这样做,您可以在释放内存之前覆盖内存。

char* block = malloc(200);
NSString* string = [[NSString alloc] initWithBytesNoCopy:length:encoding:freeWhenDone];
//use string
memset(block, 0, 200);// overwrite block with 0
[string release];
free(block);

关于ios - 敏感数据 : NSString VS NSMutableString (iPhone),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2361981/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com