一个简单的Ruby可逆加密解密类
2018-10-12 14:11
871 查看
实现代码:
class Des
require 'openssl'
require 'base64'
ALG = 'DES-EDE3-CBC'
KEY = "mZ4Wjs6L"
DES_KEY = "nZ4wJs6L"
#加密
def encode(str)
des = OpenSSL::Cipher::Cipher.new(ALG)
des.pkcs5_keyivgen(KEY, DES_KEY)
des.encrypt
cipher = des.update(str)
cipher << des.final
return Base64.encode64(cipher) #Base64编码,才能保存到数据库
end
#解密
def decode(str)
str = Base64.decode64(str)
des = OpenSSL::Cipher::Cipher.new(ALG)
des.pkcs5_keyivgen(KEY, DES_KEY)
des.decrypt
des.update(str) + des.final
end
end
测试代码:
require 'pp'
des = Des.new
str = '1234567890123456'
pp '=====encrypt====='
str = des.encode(str)
pp str
pp '=====decrypt====='
pp des.decode(str)
您可能感兴趣的文章:
相关文章推荐
- Mac安装Ruby+Cucumber+Selenium 然后运行一个简单的ruby脚本用selenium-webdriver
- 自己拿ruby写的一个简单的生命游戏
- 一个使用Ruby on Rails开发LBS网站的简单实例
- 一个简单的ruby生成器例子(用连续体Continuation实现)
- 一个使用Ruby on Rails开发LBS网站的简单实例
- 一个简单的ruby生成器例子(用连续体Continuation实现)
- 一个简单的ruby生成器例子(用连续体Continuation实现)
- Ruby on Rails,创建一个最简单的站点。
- Ruby On Rails的一个简单实例
- Ruby on Rails,创建一个最简单的站点。
- ruby利用Zip Gem写一个简单的压缩和解压的小工具
- Ruby学习笔记2 : 一个简单的Ruby网站,搭建ruby环境
- 一个简单文件检索程序,java版本和ruby版本
- [Ruby on Rails系列]6、一个简单的暗语生成器与解释器(上)
- 利用mechanize Gem实现一个简单的ruby爬虫
- ruby利用Zip Gem写一个简单的压缩和解压的小工具
- 【转】Ruby on Rails,创建一个最简单的站点
- ruby利用Zip Gem写一个简单的压缩和解压的小工具
- 一个简单的Haskell和Ruby的快排
- Ruby on Rails,一个简单的CMS系统,创建应用骨架并与数据库连接