เข้ารหัสและเซ็นชื่อด้วยรหัสลับเฉพาะ


20

ฉันมีคีย์สมาร์ทการ์ด OpenPGP (YubiKey NEO) รวมถึงคีย์ลับเฉพาะที่ติดตั้งในพวงกุญแจ GnuPG ของฉัน

ฉันต้องการเข้ารหัสและเซ็นชื่อไฟล์ด้วยกุญแจของการ์ดไม่ใช่กุญแจในพวงกุญแจของฉัน ฉันจะระบุคีย์ที่ฉันต้องการลงชื่อด้วยได้อย่างไร?

หากรหัสลับของระบบไฟล์ของฉันคือDEADBEEFและรหัสสมาร์ทการ์ดของฉันคือDEADBEE5ฉันจะเซ็นชื่อด้วยคีย์นั้นได้อย่างไร

คำตอบ:


11

คุณควรระบุ--default-key:

gpg -s --default-key DEADBEE5 input > output

และตรวจสอบภายหลังด้วย

gpg -d < output | head -1

จากgpg manหน้า ( --signส่วน):

คีย์ที่จะใช้สำหรับการเซ็นชื่อจะถูกเลือกตามค่าเริ่มต้นหรือสามารถตั้งค่าได้ด้วยตัวเลือก --local-user และ --default-key


gpg: conflicting commandsเมื่อฉันพยายามเข้ารหัสและลงนาม
Naftuli Kay

@NaftuliTzviKay ขออภัย --sign-key สำหรับการเซ็นชื่อคีย์อื่นด้วยคีย์เฉพาะ ฉันอัปเดตคำตอบ (และทดสอบก่อนเวลานี้)
Anthon

--default-*ทำให้รู้สึกเล็กน้อยในบรรทัดคำสั่ง ตัวเลือกเหล่านี้ใช้สำหรับไฟล์ปรับแต่ง
Hauke ​​Laging

1
ความแตกต่างระหว่าง--local-userและ--default-keyคือว่า--local-userจะให้ข้อผิดพลาดหากคุณระบุคีย์ที่ไม่มีอยู่ ด้วย--default-keyมันจะไม่สนใจคีย์ที่ไม่มีอยู่และใช้คีย์แรกในพวงกุญแจ
wisbucky

15

คีย์การเซ็นชื่อถูกเลือกด้วย-u/ --local-user:

gpg --local-user 0xDEADBEE5 --sign file

ตัวเลือกนี้สามารถให้ได้หลายครั้งเพื่อรวมลายเซ็นของหลายคีย์:

gpg --local-user 0xDEADBEE5 --local-user 0x12345678 --sign file

ตามหน้า man การใช้--local-userเหมือนกับการใช้--default-userในคำตอบของฉัน
Anthon

1
@ อันธพาลมันนำไปสู่ผลลัพธ์เดียวกัน ไม่ได้หมายความว่า--default-*ควรจะแนะนำสำหรับการใช้งานนี้ ฉันอยู่ในรายชื่อผู้รับจดหมาย GnuPG มาหลายปีแล้ว ฉันไม่เคยเห็นอะไรแบบนั้นมาก่อน
Hauke ​​Laging

ดีใช่ดูเหมือนว่าปัญหาขึ้นมาครั้งเดียวใน GnuPG ผู้ใช้และที่คุณที่หนึ่งที่ให้คำตอบกับคุณอ่านหน้าคน ;-) สำหรับฉันการระบุตัวเลือกด้วย-keyชื่อจะให้ความรู้สึกที่เหมาะสมมากกว่าเมื่อฉันต้องการใช้คีย์เฉพาะกว่าการระบุบางอย่างด้วย-userYMMV
Anthon

4
ฉันคิดว่า @Athon มีความหมาย--default-keyในความคิดเห็นของเขาด้านบน การทำงานกับสิ่งนั้นความแตกต่างอย่างหนึ่งระหว่าง--local-userและ--default-keyในประสบการณ์ของฉันก็คือความล้มเหลวครั้งแรกถ้าไม่มีคีย์การจับคู่ในขณะที่สองจะกลับไปที่คีย์อื่น ๆ สำหรับเหตุผลที่ฉันต้องระวังมากของการวาง--default-keyในสคริปต์
Jack O'Connor

ฉันทดสอบและยืนยันความคิดเห็นของ @ JackO'Connor ด้วย gpg 2.2.4 คนที่--default-keyพูดว่าIf there is no secret key available for any of the specified values, GnuPG will not emit an error message but continue as if this option wasn't given.
wisbucky
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.