Tworzę program w języku Python, który będzie dystrybuowany do użytkowników Windows za pośrednictwem instalatora.Jak zrobić PGP w Pythonie (generowanie kluczy, szyfrowanie/odszyfrowywanie)
Program musi być w stanie pobrać plik codziennie szyfrowany przy użyciu klucza publicznego użytkownika, a następnie odszyfrować go.
Muszę więc znaleźć bibliotekę Pythona, która umożliwi generowanie publicznych i prywatnych kluczy PGP, a także odszyfrować pliki zaszyfrowane za pomocą klucza publicznego.
Czy to coś, co zrobi pyCrypto (dokumentacja jest mglista)? Czy istnieją inne czyste biblioteki Pythona? Co powiesz na samodzielne narzędzie wiersza poleceń w dowolnym języku?
Wszystko, co widziałem do tej pory, to GNUPG, ale zainstalowanie go w systemie Windows powoduje wyprowadzanie plików do rejestru i umieszczanie plików DLL wszędzie, a następnie muszę się martwić, czy użytkownik już je zainstalował, jak wykonać kopię zapasową istniejących kluczy itp. Wolałbym mieć bibliotekę Pythona lub narzędzie wiersza poleceń i samodzielnie zarządzać kluczami.
Aktualizacja: pyME może działać, ale nie jest kompatybilny z Pythonem 2.4, którego muszę użyć.
Dzięki, że brzmi idealnie. Nie miałem pojęcia, że mogę wyciągnąć exe z gpg. Gdzie będzie umieścić brelok? Czy ta metoda spowoduje jakiekolwiek problemy, jeśli użytkownik ma już zainstalowany gpg? Czy jest szansa, że zobaczę, jak twój kod generuje klucze i importuje klucze? – Greg
Pamiętaj również, aby zaktualizować nas tutaj, gdy zwolnisz swój ostatni kod. – Greg
Po wywołaniu gpg, określ ścieżkę, w której chcesz umieścić breloczki za pomocą argumentu --homedir. (Jest to już zrobione dla ciebie przy użyciu modułu Traugotta - istnieje klasa GPG, której konstruktor przyjmuje parametr gnupghome, który możesz ustawić w tym katalogu.) Pubring.gpg, secring.gpg i trustdb.gpg są tworzone w folderze określonym przez - -homedir. Nie wierzę, że spowoduje to problem, jeśli użytkownik ma już zainstalowaną gpg - argument --homedir powinien zastąpić dowolne wartości w rejestrze. –