Gnupg'ın passphrase-fd argümanı nasıl kullanılır? | tutuappapks.com
GnuPG'leri kullanmak istiyorum decrypt kullanıcı etkileşimi olmadan komut. Senaryo --passphrase-fd argüman tam olarak ihtiyacım olan şey gibi görünüyor. Ama nasıl çalıştığını bilmiyorum - örnekler bulamadım.
Hem Windows hem de UNIX ortamlarında bana böyle bir komut örneği verebilir misiniz?
(FYI, GnuPG 2 kullanıyorum).
Gpg seçeneğini kullanabilmek için --passphrase-fd GnuPG v2'de belirtmeniz gerekir --batch parametre. İlk önce nasıl yapacağımı açıklayacağım --passphrase-fd çalışır ve daha sonra örneklere ulaşır.
--passphrase-fd GnuPG hangi dosya tanıtıcı (-fd) parolanın gelmesini beklemek. Standart dosya tanımlayıcıları STDIN (0), STDOUT (1) ve STDERR'dir (2). Bu sorunun bağlamında, normalde sadece STDIN (0) ile ilgili endişe duyarsınız.
Parola kelimesinin nereden geleceğini belirlemediniz, bu yüzden STDIN (standart olarak) kullanımını çeşitli şekillerde göstereceğim.
--passphrase-fd 0 GnuPG'ye girişten gelen parolayı geçerli kabuk içine almasını söyler; Örneğin, GnuPG'nin bir sonraki giriş satırı girişinde parola verisini almasını istiyorsanız, komut ve çıktı şu şekilde olacaktır:
"testkey4321 (4321) <test@4321.com>"
Yukarıdaki örnekte, parola, geçerli standart girdideki kabuklara girerek sağladığımız dosya tanıtıcısı 0 (STDIN) aracılığıyla sağlanmıştır.
Bir sonraki örnekte, GnuPG'ye girişten gelen parolayı gerçekte başka bir komutun çıktısı olan varolan kabuk içine almasını söyleyeceğiz (yankı, bu durumda sadece "echos" dediğiniz şey).
Parola içeren bir dosyanın içeriğini STDIN'e aktaran başka bir örnek -
Özetle, --passphrase-fd sadece GnuPG'ye standart bir dosya tanıtıcı aracılığıyla gerekli parolaları beslemek istediğinizi bildirir; GnuPG v2 ve GnuPG arasındaki fark sadece --batch parametre.
Yukarıdaki örnekler Windows ve * nix ortamlarında aynı şekilde çalışmalıdır; tek fark, Windows'taki konfigürasyonunuza ve sürümünüze bağlı olarak değiştirilmenizdir. cat ile type Bir dosyanın içeriğini STDIN'e dökmek için.
Güzel! Sorumu çıkardığın ve bir cevap verdiğiniz için çok teşekkür ederim! - Blackbird
Teşekkür ederim, bu tam olarak aradığım bilgiler. - dchayka
Windows'da ne 'tip' ne de 'echo' komutuyla çalışamazdım. Ne işe yaradı dosyada parola ve bu dosyayı gpg2'ye itmek. Yani: gpg2 --batch --passphrase-fd 0 --decrypt "dosyatodecrypturi" <"filewithpassphraseuri" - Dolfa
@Dolfa: Çok teşekkür ederim .... pencerelerde kaç kez denediğimi bilmiyorsunuz ...... komutunuz bana gerçekten yardımcı oldu. - Viji
kylehuff'un cevabı hala benim için işe yaramaz, gpupg hala bir şifre sorusu açıyor.
Göre https://wiki.archlinux.org/index.php/GnuPG#Unattended_passphrase gnupg sürüm 2.1.0 ve üstü ile, desteklemek için ek adımlar yapmanız gerekir --passphrase-fd
Öncelikle, geridönüş pinentry moduna izin vermek için gpg-agent yapılandırmasını düzenleyin: ~ / .gnupg / gpg-agent.conf
Değişikliğin yürürlüğe girmesine izin vermek için çalışıyorsa, gpg-aracı işlemini yeniden başlatın.
İkincisi, uygulamanın geri döngü modunu kullanmak için bir komut satırı parametresi içerecek şekilde güncellenmesi gerekir:
Teşekkürler, teşekkürler, teşekkürler, teşekkürler, teşekkürler! Bunu saatlerce savunuyordum ve hiçbir şey, cevabına varıncaya kadar, bunu yapmam gerektiğini söyledi! - ibrewster
Bunu not et allow-loopback-pinentry aslında varsayılan olarak etkindir. Arch wiki'nin neden bu kadar açık bir şekilde söz ettiğinden emin değil. Kaynak: gnupg.org/documentation/manuals/gnupg/Agent-Options.html - jlh
Teşekkürler @JodiTheTigger, bir süre bu cevabı arıyorum! - aceinthehole
Son olarak, iyi bir keder. Doğrulamak için, Win7 gpg 2.2.4 için, bu çalışır: echo thepassword | gpg --pinentry modu loopback --batch - passphrase-fd 0 --decrypt dosyaları * .pgp - Slashback
Son zamanlarda bunu çözmem gerektiğine göre, kendimi de içine çekmeye değer olabileceğini düşündüm.
Eğer dosyaları çözüyorsanız kylehuff'ın yanıtı çok iyidir, ancak borulama gibi giriş / çıkış yönlendirme gereksiniminiz varsa, burada bir0şifreyi geçmek için dosya tanıtıcı.
Özel kullanım durumlarının dışında, özel anahtar parolanızı kaydetmenin genellikle kötü bir fikir veya kötü güvenlik uygulaması olarak görüldüğü konusunda uyarılırsınız. -Ayrıca, parolanızın artık bu yöntemle erişilememesi için tanımlayıcıyı kapatmayı lütfen unutmayın.- Sıklıkla, bu kullanım durumlarında özellikle parola olmayan korumalı anahtarları kullanmak için önerdim ancak bu tamamen sizin tercihinizdir . Yukarıdaki kodu beğenirseniz, o zaman ben de hata ayıklama komut dosyasını kontrol etmek isteyebilirsiniz anahtar üretimi daha az yaygın kullanılan gpg dosya tanımlayıcı seçeneklerini bile kapsadığı için katılımsız veya katılımsız.
Düzenlemeler / güncellemeler
Bu yüzden toplu şifre çözme işlemlerinde hata ayıklama işlemi yaptım ve dosya tanımlayıcılarının otomatik olarak kapanacağını veya belki de GnuPG tarafından otomatik olarak kapatıldığını gösterecek kanıtları var. Yapımı kontrol et 152 hemen önce, ham günlüklerin altındaki tüm yol diff çekler, şifrelenmiş verinin ilk bloğunu göreceksiniz yemek yedi Parola, geçerli bir parola olmadan sonraki iki veri bloğunu terk eder. Bu işlemdeki ilgili betikler; ilk önce script_decrypt.sh komut dosyası, test anahtarının parolasını dosya tanıtıcısına ayarlar 9 Yukarıdaki örneklerde gösterildiği gibi Yardımcı komut dosyası Bu dosya tanıtıcıdan yararlanacak şekilde çağrılır ... bu korkak bir kullanım durumudur, ancak hikayenin ahlaki, GnuPG dosya tanıtıcıları ile uygulamak istediğiniz toplu şifre çözme işlemlerinin ne yapması gerektiğini muhtemelen göz önünde bulundurmalıdır. Dosya tanımlayıcılarının yeniden açılmış olması için yukarıda belirtilen adımlar bütün bir işlev olarak özetlenmiştir. Gelecek birkaç seferde yardımcı senaryoyu yeniden yazacağım. Travis-Cl daha büyük kütükler oluşturmak 152 Dosya tanımlayıcılarının kapanacağı yerde bir çözüm bulup bulmadığımı ...
... bu yüzden işleri halletmek için sadece iki deneme yaptık, inşadaki farkı görün 154 hem şifreli dosya hem de ham giriş günlüğü eşleşmesi. Varsayıldığı üzere dosya tanımlayıcıları ilk kullanımdan sonra GnuPG ya da bir alt kabuktan sonra boşaltılarak, şifre çözme işleminin gerçekleşmesi için her şifre çözme komutundan önce parolanın atanması gerekir.
Umarım hepiniz için değerliydi.
GPG4win / gpg 2.2.3 kullanımı: kullanmak passphrase-fd 0 ve komut istemini atlayın, aşağıdaki işlerin çalıştığını onaylayabilirim:
ÇALIŞIYOR bir cazibe gibi!!!! - samash
Bahar güvenliği-çekirdek eklentisi ile bağımlılıklar sorunu Java'da iddia kullanmak iyi bir uygulama mıdır? Bir sınıf ve yöntemleri bildiren ancak üye olmayan C ++ Üstbilgi dosyası? Maddeyi Programlayıcı olarak RecyclerView içinde tıklamak REST API - dosya (yani görüntüler) işleme - en iyi uygulamalar POST isteklerinde neden "İçerik Uzunluğu: 0"? Birden Fazla Dosyadan Proses Girişine AWK Kullanmak