2009/01/31

Hashed SSH known_hosts

最近のsshは、known_hostsのホスト名の部分をハッシュしてどのホスト用のホストキーかをわかりにくくしている様子。


|1|bba7yd3UHfh+jr5uSlkQY7LTfmU=|qRn2KHJy4PyNHGlaKyKX0Z/A/rs= ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAuFVL...zOP/gnhbrOQ8EfTjcJX==


ちょっと必要だったので、Rubyで同じ処理をする物を作った。


require 'hmac-sha1'

hostname='127.0.0.1'
key = Array.new(20).collect{rand(0xFF).to_i}.pack('c*')
"|1|#{[key].pack('m').chop}|#{[HMAC::SHA1.digest(key, hostname)].pack('m').chop}"


1.9だとhmacのライブラリの構造が1.8とは少し違うみたい。

Comments: コメントを投稿



<< Home

This page is powered by Blogger. Isn't yours?