2012-02-13 17 views
5

Dosyayı imzalamak istediğim bir sunucuyla eşleştirdiğim ve ardından doğrulanacağı istemciye geri gönderdiğim bir uygulama yazıyorum. - GnuPG (GPG) için Python arayüzüneDosya nasıl imzalanır ve sonra doğrulanır?

piton-gpgme - GPGME kütüphanesinde

için piton sarmalayıcı

piton-gnupginterface:

Ubuntu/Debian için Python için birden gnupg modülleri var gibi

piton-gpgme-Dbg - GPGME kütüphane için piton sarıcı (ayıklama uzantısı)

piton-PYME - GPGME GnuPG kütüphanesi

Python arayüzü

piton-PYME-doc - GPGME GnuPG şifreleme kütüphanesine

için Python arayüzü birisi Bir Ben bu beni ayağa kalkar ve hızlı çalışan kullanması gereken tavsiye edebilir misiniz?

Python modülünü kullanmak yerine gpg'ye dışa vurmalı mıyım?

Teşekkürler!

cevap

1

Sen O komut satırı GnuPG sarar http://code.google.com/p/python-gnupg/

kullanabilirsiniz. Dosyaları şifrelemek/imzalamak ve şifresini çözmek/doğrulamak için kullanıyorum.

+0

Bunu gördüm, ama Ubuntu'da paket mevcut değil gibi görünüyor. Benim seçenekler şunlardır: piton-gnupginterface - GPGME kütüphanesi piton-gpgme-DGB'YE için piton sarıcı - - GPGME kitaplığı (hata ayıklama uzantısı) için piton sarıcı piton-PYME GnuPG'nin (GPG) piton-gpgme için Python arayüzü - GPTME GnuPG şifreleme kitaplığına Python arabirimi python-pyme-doc - Python arabirimi GPGME GnuPG şifreleme kitaplığına –

+0

@JonoBacon Bir easy_install veya bunun gibi bir şey yapmayı düşündünüz mü? – jrg

+1

Oh, ben sadece indirerek, untaring ve 'python setup.py install' :-) –

2

python-gpgme'u kullanın (bir bonus olarak, muhtemelen sürdürücüyü tanırsınız).

durumunda
import gpgme 
from io import BytesIO 

ctx = gpgme.Context() 
plain = BytesIO("Hello") 
sign = BytesIO("") 

ctx.sign(plain, sign, gpgme.SIG_MODE_CLEAR) 
print sign.getvalue() 

o BytesIO bir dosya-açıktır değil: İşte

Eğer (daha iyi bir yol varsa, jamesh ile kontrol ben yoğun bu kullanmak değil) bir şey imzalamak için kullanabilirsiniz nasıl şey gibi. file("/etc/passwd")'u sade ve sys.stdout olarak belirtin ve DWYW olarak verebilirsiniz.

+0

FYI tarafından yüklenen' python-gpgme' klonlanmış orijinal kodunu (launchpad'den github'a) yükledim (https://github.com Programcılar için docstrings ve diğer lüksler eklemek amacıyla [Samuele Santi] (https://github.com/rshk) tarafından/rshk/pygpgme). – ankostis

İlgili konular