2013-06-17 13 views
6

Eski kabuk/unix komut dosyalarını Ruby'ye dönüştürmeye çalışıyor.Ruby'de gpg şifrelemesi uygulaması

Unix'te gpg aracıyla gerçekleştirilmiş bir dosyanın aşağıdaki şifrelemesine sahibim. Alıcı anahtarını, şifrelemek istediğim dosyayı ve pgp'ye giden bir dosyayı şifreleyebilirim.

gpg --recipient "$my_recipient_key" \ 
    --encrypt "$my_file" \ 
    --output "$my_outfile" \ 
    --always-trust \ 
    --compress-algo zip 

Yukarıdaki gibi basit bir şifreleme yapmak için Ruby eşdeğeri nedir?

  1. OpenPGP popülerdir ama hiçbir belge RubyGems sitesinde var ve başka yerlerde iyi örneklerle seyrek şunlardır:

    bazı kazma yaptıktan sonra, görüyorum.

  2. gpgme popüler ve umut verici görünüyor. Ancak, dürüst olacağım, Ruby için yeni ve belgelere tıklayarak (bağlantıya bakın) bana nereden başlayacağınız hakkında biraz kafa karıştırıyor (örneğin iyi bir örnek güzel olurdu)
  3. Ayrıca diğer küçükleri de görüyorum Kullanıcıların tasarladığı mücevherler ve kütüphaneler, ancak resmi iş kullanımında olduğu gibi rubyGems veritabanından sertifikalı taşlar kullanmakla sınırlandım.

Teşekkürler!

cevap

9

Son zamanlarda gpgme kullanıyorum. Bir dosyayı şifrelemek için kod benziyordu bu

GPGME::Key.import(File.open(path_to_key)) #only needed if the key has not been imported previously 
crypto = GPGME::Crypto.new :always_trust => true 
File.open(path_to_encrypt) do |in_file| 
    File.open(output_path, 'wb') do |out_file| 
    crypto.encrypt in_file, :output => out_file, :recipients => "[email protected]" 
    end 
end 
Sen rubygem'ler üzerinde ne hakkında "sertifikalı" bir şey olmadığını bilmek isteyebilirsiniz

- birileri var bir mücevher gönderebilir (ve bunu yapmak için 3 dakika sürüyor)

+0

Bu harika çalıştı, teşekkürler! – user2490003

+2

Aynen bunu (https://rubygems.org/gems/rgpg) beş dakika içinde hacklediğim gibi! :-) –

İlgili konular