GPG และ GPGSM ใช้ฐานข้อมูลคีย์เดียวกันหรือไม่


6

ฉันต้องการส่งออกหนึ่งในคีย์ GPG ของฉันในฐานะคีย์ / ใบรับรอง PKCS12 gpgไม่สามารถทำสิ่งนี้ได้ แต่เครื่องมือgpgsmคือ อย่างไรก็ตามการป้อนผลตอบแทนgpgsm -o <file> --export-secret-key-p12 <key-id> gpgsm: can't export secret key `<key-id>'ฉันทดสอบgpgsm --list-keysแล้วและก็ไม่ได้อะไรเลย

GPGSM ควรทำงานกับ GPG หรือไม่ ฉันสังเกตว่าในครั้งแรกที่ฉันเรียกใช้ไฟล์ใหม่จะถูกสร้างขึ้นเพื่อมัน ฉันจะสมมติว่าไม่จำเป็นต้องใช้ถ้า GPG ได้รับการเรียกใช้และกำหนดค่าแล้ว ทั้งคู่หมายถึงการเข้าถึงพวงกุญแจเดียวกันหรือไม่ ถ้าเป็นเช่นนั้นฉันจะแก้ไขได้อย่างไร ถ้าไม่ฉันจะส่งคีย์ของฉันจาก GPG และนำเข้าสู่ GPGSM ได้อย่างไร

คำตอบ:


3

มันจะมีประโยชน์มากกว่าที่จะอธิบายว่าทำไมคุณถึงอยากทำอะไรสักอย่างไม่ใช่แค่สิ่งที่คุณต้องการทำ ฉันคาดเดาว่าคุณกำลังพยายามใช้คีย์ PGP ของคุณด้วยการเข้ารหัสหรือลงชื่ออีเมล S / MIME ซึ่งไม่สามารถทำได้จริง ๆ

เพื่อตอบคำถามไม่ใช่ GPG และ GPGSM ใช้รูปแบบและโปรโตคอลที่แตกต่างกันซึ่งเป็นเหตุผลว่าทำไมพวกเขาจึงใช้งานเป็นเครื่องมือแยกต่างหากตั้งแต่แรก GPG เป็นการใช้งานของ OpenPGP ในขณะที่ GPGSM ทำงานร่วมกับ X.509 (ส่วนใหญ่เป็น S / MIME)

ในขณะที่ทั้งคู่ใช้อัลกอริธึมเข้ารหัสลับเดียวกันและในทางทฤษฎีสามารถใช้วัสดุสำคัญเดียวกัน (เช่นพารามิเตอร์ RSA ที่เหมือนกัน) นั่นคือสิ่งที่ความคล้ายคลึงสิ้นสุดลง - คุณไม่สามารถแปลใบรับรองผู้ใช้ OpenPGP เป็นใบรับรอง X.509 โดยตรงดังนั้นคุณจึงไม่สามารถส่งออก ในรูปแบบ PKCS # 12 เช่นกัน

(gpg-agent มีความสามารถในการใช้คีย์ OpenPGP สำหรับการตรวจสอบความถูกต้องของ SSH แต่นั่นเป็นเพราะรูปแบบคีย์ SSH นั้นไม่ได้แนบข้อมูลเมตาดังนั้น "การแปลง" จึงเป็นเพียงการแยกพารามิเตอร์ RSA ในทางตรงกันข้ามใบรับรอง X.509 มี เมตาดาต้าที่เป็นชื่อเรื่องที่ใช้ไวยากรณ์ที่แตกต่างจาก OpenPGP; ชื่อ บริษัท ผู้ออกหลักทรัพย์ซึ่ง OpenPGP ไม่ได้ (อยู่บนพื้นฐานของเว็บของความไว้วางใจ) และการใช้งานที่สำคัญ (ซึ่งเป็นเรื่องยุ่งยากเนื่องจากส่วนใหญ่การใช้งาน OpenPGP ใช้สองปุ่มแยกต่างหากภายในเดียว 'ใบรับรอง' หนึ่งรายการสำหรับการเซ็นชื่อและอีกอันสำหรับเข้ารหัส))


ดังนั้นวิธีการแยกคีย์ RSA / DSA ดิบและนำเข้าได้อย่างไร
Melab

มันมีประโยชน์อย่างไรบ้าง? (แก้ไขคีย์ของคุณเพื่อตั้งค่าวลีรหัสผ่านที่ว่างเปล่า - เอ็กซ์พอร์ต - ความลับ - คีย์ดัมพ์โดยใช้pgpdump -i)
grawity

ฉันสามารถใช้ปุ่มเดียวกัน
Melab

2
@Melab: ซึ่งไม่มีความแตกต่างที่เป็นประโยชน์อย่างสมบูรณ์จากการสร้างคีย์แพร์ใหม่ คุณจะไม่ได้รับค่าใด ๆจากการใช้คีย์จาก cryptosystem อื่น(เช่นจาก PGP ถึง S / MIME)เพราะจะไม่ส่งต่อเมทาดาทาหรือความเชื่อมั่นที่คนอื่น ๆ ทำเครื่องหมายไว้ สิ่งเดียวที่ทำให้ง่ายขึ้นคือการทำให้กุญแจเสียหายเนื่องจากเก็บไว้ในที่อื่นมากกว่า
grawity

1
(โดยทั่วไปครั้งเดียวเท่านั้นที่มีประโยชน์สำหรับโปรแกรมที่เขียนโดยเฉพาะเพื่อทำงานกับสองระบบในคราวเดียวเช่นความสามารถของ GnuPG ในการใช้คีย์ PGP (และดังนั้นสมาร์ทการ์ด PGP) สำหรับการรับรองความถูกต้อง SSH ดังนั้นสิ่งที่คุณแนะนำ หากคุณมีการ์ดดังกล่าวและหากgpgsmรู้วิธีใช้สมาร์ทการ์ด PGP ที่มีใบรับรอง X.509 ซึ่งไม่มี)
grawity

0

ไม่ใช่คำตอบสำหรับคำถามของคุณโดยตรง แต่ CACert ได้เผยแพร่รายการ Wiki ในรายละเอียดสิ่งที่คุณต้องการทำ

โดยพื้นฐานแล้วคุณจะต้องสร้างคำขอลงนามใบรับรองโดยใช้รหัสลับที่คุณส่งออกจากคู่ของคุณและมีใบรับรองที่สร้างโดย CA เช่น CACert

ฉันไม่สามารถส่งออกเป็นรูปแบบไฟล์ p12 บน Windows โดยใช้ gpgsm แต่บน Linux นี่ไม่ใช่ปัญหา

ที่มา: http://wiki.cacert.org/ConvertingPgpKeyToCertificate

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.