使用 Swift 4 解密 MD5 base64
Posted
技术标签:
【中文标题】使用 Swift 4 解密 MD5 base64【英文标题】:decrypt MD5 base64 with Swift 4 【发布时间】:2017-11-27 21:44:04 【问题描述】:我得到一个用密钥加密的 md5 base 64 加密字符串,这个加密是在 .Net 中完成的,我需要使用 swift 4 解密那个字符串,但是我找不到解决这个问题的方法,有没有人知道这是否可能吗?
【问题讨论】:
How to convert string to MD5 hash using ios swift的可能重复 您可以通过非常快速的搜索找到很多示例。即使在***中也有很多关于这个的答案。提问前请先搜索。 MD5 是哈希,不是加密。因此无法解密。你到底想做什么? 这里更清楚一点:MD5 是一种单向函数。根据设计,它是不可逆的。也就是说,您说的是“用密钥加密”。 MD5 没有密钥,因此您显然没有描述应用于此数据的精确功能。您需要提供用于编码(或加密)此数据的确切 .NET 代码,以便讨论如何在 Swift 中逆向处理。没有散列或加密的“通用”版本。你必须准确地解释它是如何用代码完成的,否则它是没有意义的。 【参考方案1】:MD5 是所谓的散列算法,它与加密算法有着根本的不同。它被设计为单向过程,而加密可以解密以获得原始数据。
如果您要解密从 .Net 传递的数据,则需要将其作为加密传递,而不是经过哈希处理。有许多加密选项可供选择,其中一些更流行的选项可以通过 NuGet 轻松合并到 .Net 项目中。
如果您有密钥和字符串,并且需要确保发送的哈希未被篡改,那么the link Ryan posted in the comments 就是您要查找的内容。
【讨论】:
bcrypt 和 scrypt 也是散列算法,不是加密算法...以上是关于使用 Swift 4 解密 MD5 base64的主要内容,如果未能解决你的问题,请参考以下文章
Java 基础学习总结(202)—— BASE64MD5DESAESHMAC恺撒加密SHARSAPBE 加解密汇总
Java 基础学习总结(202)—— BASE64MD5DESAESHMAC恺撒加密SHARSAPBE 加解密汇总