一个简单的Ruby可逆加密解密类

 更新时间:2014年05月27日 11:22:26   作者:  
这篇文章主要介绍了一个简单的Ruby可逆加密解密类,需要的朋友可以参考下

实现代码:

复制代码 代码如下:

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)

相关文章

  • Ruby中case表达式详解

    Ruby中case表达式详解

    本文主要介绍了Ruby中case表达式的两种形式以及分析,有需要的朋友可以参考下
    2014-10-10
  • Ruby是什么以及如何使用

    Ruby是什么以及如何使用

    这篇文章主要介绍了Ruby是什么以及如何使用,Ruby和Ruby on Rails 在早期就出现在Web开发领域了,然而,虽然现在JavaScript和Python都占据了主导地位,Ruby还是仍然占有一席之地
    2017-04-04
  • windows下安装ruby与rails时遇到的问题总结

    windows下安装ruby与rails时遇到的问题总结

    这篇文章主要总结了windows下安装ruby与rails时遇到的问题,本文总结的问题都是通过自己实践所得来的,总结的还算是相对比较全面,需要的朋友可以参考学习,下面来一起看看吧。
    2017-04-04
  • Ruby基础知识之类

    Ruby基础知识之类

    这篇文章主要介绍了Ruby基础知识之类,本文讲解了类的创建、访问器、类变量、常量、类方法、方法的访问性、工厂方法、模块module等内容,需要的朋友可以参考下
    2015-04-04
  • 写一个漂亮Rakefile的方法

    写一个漂亮Rakefile的方法

    这篇文章主要介绍了写一个漂亮Rakefile的方法,文中主要就是写一个类,继承自 Tasklib,然后在这个类的初始化函数里用 task 或者 file 来定义实际完成任务的子 task 即可,需要的朋友可以参考下
    2014-06-06
  • Ruby元编程之梦中情人method_missing方法详解

    Ruby元编程之梦中情人method_missing方法详解

    这篇文章主要介绍了Ruby元编程之梦中情人method_missing方法详解,本文讲解了我该怎么用 method_missing 、方法代理、define_method、什么时候用 method_missing、元方法等内容,需要的朋友可以参考下
    2015-05-05
  • Ruby中数组的一些相关使用方法

    Ruby中数组的一些相关使用方法

    这篇文章主要介绍了Ruby中数组的一些相关使用方法,是Ruby学习当中的基础知识,需要的朋友可以参考下
    2015-05-05
  • Ruby 取得指定月日期数的方法

    Ruby 取得指定月日期数的方法

    取得指定月日期数的Ruby代码
    2009-05-05
  • Windows下安装配置Ruby的debug工具ruby-debug-base19

    Windows下安装配置Ruby的debug工具ruby-debug-base19

    这篇文章主要介绍了Windows下安装配置Ruby的debug工具ruby-debug-base19的方法,同时讲解了Ruby的IDE RubyMine中的相关配置方法,需要的朋友可以参考下
    2016-03-03
  • Ruby的基本语法学习总结

    Ruby的基本语法学习总结

    这篇文章主要介绍了Ruby的基本语法学习总结,本文讲解了Ruby中的关键字、注释、数据类型、赋值和条件运算、输出和输入、条件判断语句、循环语句等内容,需要的朋友可以参考下
    2014-11-11

最新评论