ฉันมีไดเรกทอรีที่มีไฟล์. gpg หลายไฟล์ทั้งหมดถูกเข้ารหัสด้วยข้อความรหัสผ่านเดียวกัน ฉันจะถอดรหัสได้ทั้งหมดโดยไม่ต้องใส่วลีรหัสผ่านซ้ำแล้วซ้ำอีก?
ฉันมีไดเรกทอรีที่มีไฟล์. gpg หลายไฟล์ทั้งหมดถูกเข้ารหัสด้วยข้อความรหัสผ่านเดียวกัน ฉันจะถอดรหัสได้ทั้งหมดโดยไม่ต้องใส่วลีรหัสผ่านซ้ำแล้วซ้ำอีก?
คำตอบ:
ดูเหมือนว่าสิ่งนี้จะหลอกลวงได้:
gpg --decrypt-files *.gpg
ในกรณีที่วันหนึ่งคุณต้องการบรรทัดเพื่อเขียนสคริปต์การแก้ปัญหา
#!/usr/bin/env bash
_dir="/some/directory"
_paraphrase=( "$@" )
Decrypt(){
_pass=( "$@" )
for _file in $(ls "${_dir}"); do
case "${_file}" in
*.gpg)
echo "${_pass[*]}" | gpg --always-trust --passphrase-fd 0 --decrypt ${_file} --output ${_file%.gpg*}
;;
esac
done
unset _pass
}
Decrypt "${_paraphrase[*]}"
unset _paraphrase
คล้ายกับการทำงานด้านบนเสียดสีในสคริปต์ GnuPG ของฉันที่ต้องถอดรหัสโดยไม่ต้องมีปฏิสัมพันธ์กับมนุษย์ อย่างไรก็ตามคำตอบที่ได้รับการยอมรับ
gpg --decrypt-files *.gpg
มีความปลอดภัยมากกว่าเพราะ GnuPG เป็นแอปพลิเคชันเดียวที่จัดการรหัสผ่านของคุณ