在Swift 4中将Sha256散列值转换为NSString

时间:2018-06-13 07:21:32

标签: ios swift sha256

我使用参考SHA256 in swift的SHA256加密方法转换了我的字符串。现在我需要提前解密字符串back.thanks

1 个答案:

答案 0 :(得分:1)

好像你误解了SHA256。 SHA256是一种散列方法,而不是加密方法。

  

哈希函数是可用于映射数据的任何函数   任意大小的固定大小的数据。哈希返回的值   函数被称为哈希值,哈希码,摘要或简单的哈希

wiki

散列函数为作为参数传递给它的每个字符串/数据生成一个唯一值,并且无法从散列值中获取字符串/数据。散列函数就像单向流

您可以使用哈希函数的唯一方法是为您拥有的每个字符串生成唯一值。

以下是SHA256的一个用例,可帮助您更好地理解

例如,如果您的应用具有每个用户的用户名和密码,则不太了解将DB中的密码保存为纯文本。而我们所做的就是生成一个哈希键并将数据库中的哈希键保存为密码。

每当用户尝试将来登录时,您将获得密码作为参数传递给您的API生成SHA,并将其与您在数据库中保存的内容进行比较。因为SHA256为传递给它的每个字符串/数据生成唯一值,所以没有两个密码可以具有相同的哈希值。这证实了用户正在尝试使用适当的凭据登录。

希望这能让您了解如何使用SHA256