BLOGTIMES
::
Home > rubyで文字列の暗号化・複合化をする
2009/11/14
[ by hsur at 14:02]

rubyで文字列の暗号化・複合化をする

  

rubyのアプリにデバッグ用のメッセージの出力を埋め込みたかったのですが、デバッグメッセージをそのまま出力するといろいろ詮索されてしまうので、何かの形で読めなくして埋め込みたいと思って調べてみると、ウノウラボにちょうどよさげなサンプルがありました。

ウノウラボ Unoh Labs: rubyで手軽に暗号化文字列やハッシュ値を生成

require 'openssl'
def encrypt(aaa, solt = 'solt')
  enc = OpenSSL::Cipher::Cipher.new('aes256')
  enc.encrypt
  enc.pkcs5_keyivgen(solt)
  ((enc.update(aaa) + enc.final).unpack("H*")).to_s
  rescue
    false
end
def decrypt(bbb, solt = 'solt')
  dec = OpenSSL::Cipher::Cipher.new('aes256')
  dec.decrypt
  dec.pkcs5_keyivgen(solt)
  (dec.update(Array.new([bbb]).pack("H*")) + dec.final)
  rescue  
    false
end

今回扱うメッセージ自体は別に解読されてもそんなに困らないので、シーザー暗号で十分なんですが、rubyだと標準添付のopensslを使うだけで上記のAES256での暗号化も簡単にできるようです。これは意外と色んなところで使えるかも。

このエントリは役に立ちましたか?
トラックバックについて
Trackback URL:
お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
このエントリへのTrackbackにはこのURLが必要です→http://blog.cles.jp/item/3286
Trackbacks
このエントリにトラックバックはありません
Comments
愛のあるツッコミをお気軽にどうぞ。[policy]
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントはありません
Comments Form

コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。

OpenID を使ってログインすることができます。

Identity URL: Yahoo! JAPAN IDでログイン

Web Services by Yahoo! JAPANPowered by NP_SpamBayesJP
★下記に2つの英単語をスペースで区切って入力してください
::
Home > rubyで文字列の暗号化・複合化をする