2016年04月13日

Railsのgemパッケージ Bcryptを使った後、Rubyで暗号化・複合化をやってみる

Railsのgemパッケージ Bcryptを使った後、
Rubyで暗号化・複合化をやってみました。

@暗号化
$ cat crypt.rb
#!/home/yutaka/.rvm/rubies/ruby-2.2.1/bin/ruby

require 'openssl'

def encrypt_data(data,password,salt)
cipher = OpenSSL::Cipher::Cipher.new("AES-256-CBC")
cipher.encrypt
cipher.pkcs5_keyivgen(password, salt)
cipher.update(data) + cipher.final
end

p encrypt_data("aiueo","password","saltsalt")
p encrypt_data("ai","password","saltsalt")



A復号化
$ cat decrypt.rb
#!/home/yutaka/.rvm/rubies/ruby-2.2.1/bin/ruby

require 'openssl'

def decrypt_data(data,password,salt)
cipher = OpenSSL::Cipher::Cipher.new("AES-256-CBC")
cipher.decrypt
cipher.pkcs5_keyivgen(password, salt)
cipher.update(data) + cipher.final
end

p decrypt_data("Wc\x0E\xD8:N\xB12f\xB7L\x8C\xF8\xFE\x99_","password","saltsalt")
p decrypt_data("<\xE2\xBE◎改訂3版基礎 Ruby on Rails :3,672円
改訂3版基礎 Ruby on Rails (KS IMPRESS KISO SERIES) -
改訂3版基礎 Ruby on Rails (KS IMPRESS KISO SERIES) -

◎WEB+DB PRESS Vol.79:1,554円
WEB+DB PRESS Vol.79 [大型本] / 成瀬 ゆい, そらは(福森 匠大), 西 磨翁, 小川 航佑, 佐藤 新悟, 塚越 啓介, 藤原 亮, 堀 哲也, 田村 孝文, 桑野 章弘, 松浦 隼人, 中村 俊之, 田中 哲, 福永 亘, 杉山 仁則, 伊藤 直也, 登尾 徳誠, 近藤 宇智朗, 若原 祥正, 松木 雅幸, 奥野 幹也, 後藤 秀宣, 羽二生 厚美, 笹田 耕一, 平河 正博, 東舘 智浩, 渡邊 恵太, 中島 聡, A-Listers, はまちや2, 川添 貴生, 山田 育矢, 伊藤 友隆, 村田 賢太, まつもと ゆきひろ, 佐野 岳人, 山口 恭兵, 千葉 俊輝, 平松 亮介 (著); WEB+DB PRESS編集部 (編集); 技術評論社 (刊)

◎Javaで作って学ぶ暗号技術 - RSA,AES,SHAの基礎からSSLまで:3,456円
Javaで作って学ぶ暗号技術 - RSA,AES,SHAの基礎からSSLまで -
Javaで作って学ぶ暗号技術 - RSA,AES,SHAの基礎からSSLまで -


◇参考URL
http://webos-goodies.jp/archives/encryption_in_ruby.html
posted by アンドレアス at 00:09| Comment(0) | TrackBack(0) | Ruby・Ruby on Railsコマンド | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバック