Swift中的争夺字符串

时间:2018-04-25 09:31:14

标签: ios swift hash cryptography

我想加扰包含用户UID的字符串,因此无法使用数据库跟踪此字符串。 我也希望这应该是一个一致的模式,所以没有随机的字母改组 - 如果用户更改设备,从这个功能出来的结果应该是相同的。

然而,我不想仅为此添加CryptoSwift

这只是为了使可读性更难,而且还要确保相同的用户基本上发布到数据库中的相同位置。因此,没有与此相关的安全问题。它仅用于匿名化某些数据。

UID可能如下"0bb0fca0-1e89-429f-901a-1413894d9f59"

我如何以最佳方式实现这一目标?

我正在考虑添加素数或者使用某种“黑盒子”来发送字符串到函数并获取另一个字符串。字符串的大小或应该如何完成并不重要

1 个答案:

答案 0 :(得分:1)

我找到了一个很好的解决方案。有一个人制作了单个文件MD5转换器,没有任何名为MD5 Digest

的第三方库

然后可以像这样使用这个库

let input = "0bb0fca0-1e89-429f-901a-1413894d9f59"
let md5 = input.utf8.md5
print(md5)

这给出了结果:

4a89b58cb43b3eecd289c1d093b48bd0

这正是我想要的,可以重新创建的东西,但仍然会根据我发送的字符串产生一个结果,即用户无法连接到正在发送的字符串。