c# - iOS 中没有 bcrypt 实现...可以使用其他语言,创建静态库吗?

标签 c# java objective-c hash bcrypt

在 Objective-C 中没有直接的 bCrypt ( http://codahale.com/how-to-safely-store-a-password/) 实现,虽然有 C 代码可以实现这一点,但它专门用于 x86 处理器,依赖于 BSD 库。

我正在构建一个 iOS 应用程序,它与相应的在线(.NET 和 HTML5+Javascript)应用程序共享相同的密码哈希值。

我不在我应该在的地方,在那里我可以阅读极其简单的 Java 代码 ( http://www.mindrot.org/projects/jBCrypt/ ) 并将其转换为适用于 iOS 开发的 Objective-C 代码。

但是,有一个 Ruby 实现 ( https://github.com/codahale/bcrypt-ruby ),而且我听说您可以使用 Ruby 构建 iOS 应用程序。然后我可以将 Ruby 代码滚动到静态库中,并将其链接到我的 iOS 项目吗?或者,甚至使用 Mono 并利用 .NET 实现(也是一个干净、纯代码、无依赖项的项目)来构建静态库?

或者,最后,有人知道 bCrypt 代码的 Objective-C 实现吗?看起来很简单,我只是对 .NET/C#/Ruby 了解不够,无法自己翻译。

最佳答案

我最近开源了我自己的 BCrypt Objective C 实现。我也寻找现有的 Objective C 实现,但无济于事。所以我从 Java 移植了一个!

它没有任何外部库或框架依赖项,因此它可能非常适合您。

你可以在这里找到它... <德尔> http://www.jayfuerstenberg.com/blog/bcrypt-in-objective-c https://github.com/jayfuerstenberg/JFCommon

关于c# - iOS 中没有 bcrypt 实现...可以使用其他语言,创建静态库吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6065302/

相关文章:

c# - 是否可以在 EntityFramework 实体对象上使用 Ninject?

c# - Windows 7 中的扩展 dll 版本号

c# - 如何配置 Fluent NHibernate 在使用 ReferencesAny 时返回 null 而不是丢失对象的代理

java - 如何使用 JAXB 生成 CDATA block ?

java - 如何在 Java 1.8 Streams 中仅当存在至少一个元素时才在 foreach 之前执行逻辑

java - <表达式> 预期在 spring-data hibernate 中得到 <from>

c# - 策略模式的实现如何在运行时选择正确的策略?

ios - UITableView 中 UILabel 的大小类别被随机忽略

objective-c - UITableView 上的自定义滚动绘图层

iphone - 如何在 Objective C 中将 unicode 转义码转换为字符(在 iPhone 上)