【问题标题】:Is it safe to keep Credentials likes Username and password in swift file将凭据喜欢的用户名和密码保存在 swift 文件中是否安全
【发布时间】:2021-09-23 20:57:01
【问题描述】:

在我的 iOS 应用程序中,我正在使用具有一些用户名和密码的 Web 服务来访问端点。现在我已经将网络服务的用户名和密码保存在我的 swift 文件中,当我需要使用网络服务时,我正在从 swift 文件中读取凭据并发送到网络服务器。我的问题是将凭据或任何敏感数据保存在 swift 文件中是否安全?有没有办法对 IPA 文件进行逆向工程并读取凭证或任何其他方式来获取 swift 文件中存储的密钥。这对于 android APK 来说是可能的,如果将完整的代码保存在 java 文件中,逆向工程会将完整的代码暴露给攻击者。

我的 swift 文件

class Connection:NSObject {
 ...
     public let pass = "AD%$^%DS78DS"
     public let user = "KKKSL"
 ...
}

【问题讨论】:

  • 1. 2号。是的。您可以轻松获取 ipa 文件并打开它
  • 谢谢@Paulw11 .. 你能为此目的提出一些安全的做法吗?
  • 理想情况下,用户将使用 OAuth 登录以获得使用 API 的令牌。在应用程序中存储硬编码凭据没有真正安全的方法。
  • 但是如何将密码输入钥匙串?如果您要创建一个钥匙串项目,那么密码已经需要在您的应用程序中的某个地方
  • 绝对没有办法在您的应用程序内存储信息(或将其发送到您的应用程序),以使具有一定技能的用户无法读取信息。如果需要控制,则需要对用户进行身份验证,而不是对应用进行身份验证。如果您正在访问 3rdparty 系统,则需要通过您自己的服务器对其进行路由。无论您如何存储它们,都无法可靠地保护应用程序已知的凭据。我已经进行了一次演讲,其中包括一些你可以做的事情来稍微模糊信息,但这并不是强有力的保护。 youtube.com/watch?v=ziwm8bMKxsw

标签: ios swift security


【解决方案1】:

使用加密算法。例如 SH1

【讨论】:

  • SHA-1 不是加密算法,它是哈希算法。
猜你喜欢
  • 2011-12-14
  • 1970-01-01
  • 2017-04-25
  • 2021-10-31
  • 2018-09-05
  • 1970-01-01
  • 1970-01-01
  • 2013-06-05
  • 1970-01-01
相关资源
最近更新 更多