写点什么

JRuby 综述:Ruby 1.8.7 支持、Android 支持及 Bcrypt-ruby

  • 2009-08-25
  • 本文字数:727 字

    阅读完需:约 2 分钟

拖延了一年多之后, JRuby 团队终于决定将 Ruby 1.8.7 支持添加到 JRuby 主干中

Ruby 1.8.7 支持终于登陆 JRuby 1.4 了!感谢 olabini,Marcin Mielzynski 及 JRuby 社区的全体成员!

JRuby 1.4 将成为 JRuby 的下一个版本,年底行将发布, jruby.properties 表明默认情况下其版本号是 Ruby 1.8.7。

JRuby 的Android支持也得到了极大的改进。Charles Nutter发布了一个基于 JRuby 的 irb 作为 Android 应用,其源代码位于 GitHub,叫做 ruboto-irb
与此同时, Android Scripting Environment 开始支持JRuby 了。

很多Ruby 程序库通过本地扩展将Ruby 与本地程序库连接起来——但这么做对JRuby 却不行, bcrypt-ruby 就是一个活生生的例子。幸好有Phusion 的无私奉献,bcrypt-ruby 的下一版将能使用在JRuby 及Ruby 1.9.x 上了。其 JRuby 支持包含了 bcrypt 算法的 Java 版本,而 Ruby 1.9 支持则涵盖了在长时间计算过程中对 GIL 处理及释放方式的改进。

那么 bcrypt-ruby 到底为何物呢?它实现了一种散列算法,其运行速度要比其他算法如 SHA-1 慢很多。其想法就是利用该算法来对密码进行散列;试想,如果数据库的密码散列值被窃取,那么就可以通过它计算出密码了。虽然散列算法是单向函数,我们仍旧可以对大量可能的密码进行散列,然后与数据库中存储的散列值进行比对。快速的散列算法对这种暴力破解很有帮助,而这正是 bcrypt 的用武之地。由于算法运行速度很慢,因此人们很难通过暴力破解的方式获取散列密码。

bcrypt-ruby 程序库会保证密码散列值是经过随机数处理过的(即 salt ,意指在每个密码后面添加随机值,然后才计算密码和 salt 的散列值,以此防范“字典攻击”——译者注)。

查看英文原文: JRuby Roundup: Ruby 1.8.7 Support, Android Support, Bcrypt-ruby

2009-08-25 01:301223
用户头像

发布了 88 篇内容, 共 264.0 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

iOS开发:实现点击常用控件弹出地区选择框(万能方法)

三掌柜

8月日更 8月

Go并发之同步异步、异步回调

Regan Yue

高并发 协程 Go 语言 8月日更

Python代码阅读(第6篇):根据给定的函数对列表中的元素进行分组

Felix

Python 编程 Code Programing 阅读代码

架构实战营模块 4 作业指导

华仔

架构实战营

十大排序算法--计数排序

Ayue、

排序算法 8月日更

千万级学生管理系统考试试卷存储方案

面向对象的猫

08-消息队列备选架构选择和细化

Lane

Flutter Android 端 Activity/Fragment 流程源码分析

工匠若水

flutter android 0 基础学习 Flutter 8月日更

【Vue2.x 源码学习】第二十九篇 - diff算法-节点比对| 8月更文挑战

Brave

源码 vue2 8月日更

kubernetes入门:可视化界面dashboard极简安装教程

小鲍侃java

8月日更

在线身份证号码提取生日工具

入门小站

工具

电商秒杀系统

Presley

07-数据库存储架构

Lane

奥运背后的5G赛场,竟然也这么激烈?

白洞计划

手撸二叉树之二叉树的最大深度

HelloWorld杰少

数据结构与算法 8月日更

Linux之crontab命令

入门小站

Linux

架构实战营 - 模块四作业

Julian Chu

架构实战营

模块四作业

Geek_35a345

Vue进阶(十七):proxyTable 配置

No Silver Bullet

Vue 8月日更

Vue进阶(十九): ES6 箭头函数

No Silver Bullet

Vue 箭头函数 8月日更

搜索二维矩阵②

Memorys

Java 面试 算法

🏆【Git 实战专题】你知道git rebase如何让代码提交变得清晰明白吗?

洛神灬殇

git Rebase git rebase 8月日更

【设计模式】组合模式

Andy阿辉

C# 后端 设计模式 8月日更

kubernetes/k8s CRI分析-kubelet创建pod分析

良凯尔

Kubernetes 源码分析 Kubernetes Plugin #Kubernetes# cri-o

oeasy教您玩转vim - 10 - # 插入新行

o

理解 defer、panic 和 recover

Rayjun

Go 语言

一款非常简单的基于WebRTC的视频预览播放器(具有贴图、视频特效)

liuzhen007

8月日更

毕业设计

Chris Cheng

毕业总结

Chris Cheng

架构训练营

【Flutter 专题】74 图解基本 DropdownButton 下拉选项框按钮

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 8月日更

golang--切片(slice)

en

slice Go 语言 切片

JRuby综述:Ruby 1.8.7支持、Android支持及Bcrypt-ruby_Java_Werner Schuster_InfoQ精选文章