Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 安全文本输入_Swift_Macos_Security - Fatal编程技术网

Swift 安全文本输入

Swift 安全文本输入,swift,macos,security,Swift,Macos,Security,在我的应用程序中,有一个用户可以输入一些敏感信息的地方。为此,我使用了一个NSSecureTextField 但是,NSSecureTextField只使用一个普通的字符串来存储其内容。这带来了一个问题,因为我想销毁String实例,但这是不可能的,因为字符串是不可变的 当用户输入完密码后,内存中可能会有10多个该密码的实例 有没有什么方法可以更安全地输入文本?“这是不可能的,因为字符串是不可变的”怎么回事?@ElTomato很好地假设用户键入一组字符,而不是每次都必须创建一个新字符串。我不知道

在我的应用程序中,有一个用户可以输入一些敏感信息的地方。为此,我使用了一个
NSSecureTextField


但是,
NSSecureTextField
只使用一个普通的
字符串来存储其内容。这带来了一个问题,因为我想销毁
String
实例,但这是不可能的,因为字符串是不可变的

当用户输入完密码后,内存中可能会有10多个该密码的实例


有没有什么方法可以更安全地输入文本?

“这是不可能的,因为字符串是不可变的”怎么回事?@ElTomato很好地假设用户键入一组字符,而不是每次都必须创建一个新字符串。我不知道您所指的问题。请展示几行代码来说明您的观点。我想说的是,您如何清除内存中的密码字符串并将其归零?@eltoma请查看以进行比较