ios - swift 4 中变量的密码加密

标签 ios swift xcode password-protection

我有一个变量var password = ""。该应用程序有注册页面,其中密码采用安全输入条目形式。

然后我必须将密码从一个 Controller 传递到另一个 Controller ,因此我将其分配给密码变量,以完成注册过程。

password = passwordtextField.text

Class A{
var password = ""
@IBOutlet weak var passwordTextField:UITextField!

//save function
password = passwordtextField.text

//pass the data to next class to complete registration
let vc = storyboard?.instantiateViewController(withIdentifier: "BControllerid") as! BViewController
  vc.passwordB = password

}

Class BViewController{
var passwordB = ""

//viewDiLoad
request.body = ["password" : passwordB]
//call the request
}

我的问题是: 1.我应该加密分配给变量的密码吗?如果可以的话,该怎么办呢?在进行 API 调用之前我是否必须再次解密? 2. 分配密码并传递给下一个类(class)是否安全?

最佳答案

对于问题 1:

不,您不需要加密它,因为它正在应用程序内使用。没有人可以在您的代码之外读取该变量。

好吧,您可以在向 API 发送密码时执行相同的机制,因为如果您的网络不安全或者有人试图在您的 API 调用和应用程序中间中断,那么他就可以获取这些信息。因此,最好在发送到 API 时对密码进行加密,并将其以加密形式存储到数据库中。

对于问题 2:

是的,这样做是安全的。如前所述,它始终在您的项目内,因此,除了负责的类之外,没有人会读取变量和分配的值。

希望一切顺利。

关于ios - swift 4 中变量的密码加密,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51980452/

相关文章:

ios - swift UIView.animate 跳过动画

ios - 注释掉 CSS 中的一行或多行代码

ios - 在 UITableViewCell 中加载图像时用 UIActivityIndi​​catorView 替换 UIImageView

arrays - UserDefaults 无法正确检索我的字符串数组

ios - 在动态框架 Objective C 和 Swift 中混合搭配实现目标协议(protocol)的 Swift 类,但找不到定义

C++ 奇怪的编译错误 : error: changes meaning of "Object" from class "Object"

iphone - 使用核心数据进行存储 - 在基于导航和基于窗口的应用程序中 - iPhone

ios - 检查下载进度时,检查 "progress == 1.0"可以吗?还是应该>=?

uikit - 在 iOS 上,我可以访问系统提供的字体的 TTF 文件吗?

ios - swift:将传入的 json 数组转换为字典和对象