มีความปลอดภัยมากกว่าที่อื่นหรือไม่?
มีความปลอดภัยมากกว่าที่อื่นหรือไม่?
คำตอบ:
id_rsa.pub
และid_dsa.pub
เป็นกุญแจสาธารณะและid_rsa
id_dsa
หากคุณถามในความสัมพันธ์กับSSH
, id_rsa
เป็นอาร์เอสที่สำคัญและสามารถใช้กับโปรโตคอล SSH 1 หรือ 2 ในขณะที่id_dsa
เป็นDSAที่สำคัญและสามารถนำมาใช้กับโปรโตคอล SSH 2. ทั้งสองมีความปลอดภัยมาก แต่ DSA ดูเหมือนจะ มาตรฐานในปัจจุบัน (สมมติว่าลูกค้า / เซิร์ฟเวอร์ทั้งหมดของคุณรองรับ SSH 2)
อัปเดต:เนื่องจากสิ่งนี้ถูกเขียนขึ้น DSA จึงแสดงให้เห็นว่าไม่ปลอดภัย ข้อมูลเพิ่มเติมมีอยู่ในคำตอบด้านล่าง
SSHใช้คู่คีย์สาธารณะ / ส่วนตัวดังนั้น
คีย์ส่วนตัวRSAid_rsa
ของคุณ(ตามจำนวนเฉพาะ) ซึ่งปลอดภัยกว่าคีย์ส่วนตัวDSAของคุณ(ตามเลขชี้กำลัง) เก็บคีย์ส่วนตัวของคุณให้ปลอดภัยและแบ่งปันคีย์ของคุณและสาธารณะในวงกว้างid_dsa
id_rsa.pub
id_dsa.pub
DSA มีพารามิเตอร์ที่คาดเดาได้หากตัวสร้างตัวเลขสุ่มของคอมพิวเตอร์ของคุณเป็นพาร์ย่อยซึ่งจะเปิดเผยคีย์ลับของคุณ ECDSA (DSA อัพเกรดโค้งรูปไข่) จะมีความเสี่ยงในทำนองเดียวกัน แม้ว่าจะมีตัวเลขสุ่มที่ดี แต่ DSA ก็มีข้อกังวลด้านความแข็งแกร่งอื่น ๆ ( พบได้ใน Diffie-Hellman )
OpenSSH สร้างที่ไม่ปลอดภัยคีย์บิต 1024 ( วิธีแก้ปัญหา )และตอนนี้ปิดการใช้งาน DSA โดยค่าเริ่มต้น
การเข้ารหัสเส้นโค้งรูปไข่ช่วยเพิ่มความซับซ้อนด้วยขนาดคีย์ที่เล็กลง Ed25519 (ขึ้นอยู่กับความซับซ้อนของเส้นโค้งวงรีแบบจำลองเครื่องบิน ) เป็นการนำไปใช้งานที่ต้องการเนื่องจากสันนิษฐานว่าไม่มีการแทรกแซง (เอกสารที่รั่วไหลแสดงให้เห็นว่าNSA ของสหรัฐอเมริกาทำให้มาตรฐานการเข้ารหัสลับอ่อนลง )
น่าเสียดายที่ Ed25519 ยังค่อนข้างใหม่ซึ่งต้องใช้OpenSSH 6.5หรือGnuPG 2.1 (ดูรายการทั้งหมด )
ขนาดคีย์ RSA 4096 บิตควรมีความซับซ้อนเทียบเท่ากับ Ed25519
Ed25519 ยังคงเป็นที่ต้องการของ RSA เนื่องจากกังวลว่า RSA อาจเสี่ยงต่อความกังวลด้านความแข็งแกร่งเช่นเดียวกับ DSA แม้ว่าการใช้ประโยชน์จาก RSA นั้นคาดว่าจะยากกว่ามาก
rsa ถือว่าปลอดภัยกว่า
ไม่มีอีกแล้ว (พฤษภาคม 2020 สิบปีต่อมา) ด้วยOpenSSH 8.2ตามรายงานของJulio
การแจ้งเตือนการเลิกใช้งานในอนาคต
ตอนนี้เป็นไปได้ที่1 ที่จะทำการโจมตีแบบเลือกคำนำหน้ากับอัลกอริทึมแฮช SHA-1 ในราคาต่ำกว่า 50K ดอลลาร์สหรัฐ
ด้วยเหตุนี้เราจะปิดการใช้งาน "SSH-RSA" อัลกอริทึมลายเซ็นที่สำคัญของประชาชนที่ขึ้นอยู่กับ SHA-1 โดยเริ่มต้นในการเปิดตัวในอนาคตอันใกล้
(โปรดดู " SHA-1 is a Shambles: First Chosen-Prefix Collision on SHA-1 and Application to the PGP Web of Trust " Leurent, G and Peyrin, T (2020))
อัลกอริทึมนี้ยังคงใช้กันอย่างแพร่หลายแม้ว่าจะมีทางเลือกอื่นที่ดีกว่าซึ่งเป็นเพียงอัลกอริธึมลายเซ็นคีย์สาธารณะที่เหลือซึ่งระบุโดย SSH RFC ดั้งเดิม
ทางเลือกที่ดีกว่า ได้แก่ :
อัลกอริธึมลายเซ็น RFC8332 RSA SHA-2 rsa-sha2-256 / 512
อัลกอริทึมเหล่านี้มีข้อได้เปรียบในการใช้คีย์ประเภทเดียวกันกับ "ssh-rsa
" แต่ใช้อัลกอริทึมแฮช SHA-2 ที่ปลอดภัย
สิ่งเหล่านี้ได้รับการสนับสนุนตั้งแต่ OpenSSH 7.2 และถูกใช้เป็นค่าเริ่มต้นแล้วหากไคลเอนต์และเซิร์ฟเวอร์รองรับอัลกอริทึมลายเซ็น ssh-ed25519
ได้รับการสนับสนุนใน OpenSSH ตั้งแต่รุ่น 6.5อัลกอริทึม RFC5656 ECDSA: ecdsa-sha2-nistp256 / 384/521
สิ่งเหล่านี้ได้รับการสนับสนุนโดย OpenSSH ตั้งแต่รุ่น 5.7หากต้องการตรวจสอบว่าเซิร์ฟเวอร์ใช้อัลกอริทึมคีย์สาธารณะ ssh-rsa ที่อ่อนแอสำหรับการตรวจสอบความถูกต้องของโฮสต์หรือไม่ให้ลองเชื่อมต่อหลังจากลบ
ssh-rsa
อัลกอริทึมออกจากรายการที่อนุญาตของ ssh (1):ssh -oHostKeyAlgorithms=-ssh-rsa user@host
หากการตรวจสอบคีย์โฮสต์ล้มเหลวและไม่มีคีย์โฮสต์ประเภทอื่นที่รองรับให้ใช้งานซอฟต์แวร์เซิร์ฟเวอร์บนโฮสต์นั้นควรได้รับการอัพเกรด
OpenSSH รุ่นในอนาคตจะเปิดใช้งาน
UpdateHostKeys
ตามค่าเริ่มต้นเพื่อให้ไคลเอนต์โยกย้ายไปยังอัลกอริทึมที่ดีขึ้นโดยอัตโนมัติ ผู้ใช้อาจพิจารณาเปิดใช้ตัวเลือกนี้ด้วยตนเอง
ใช่ rsa ถือว่าปลอดภัยกว่า
ในเดือนตุลาคม 2014 OpenSSH 7 (ค่าเริ่มต้นของ Ubuntu 16.04LTS) ได้ปิดใช้งานการรองรับ DSA เริ่มต้น ถือเป็นสัญญาณที่ชัดเจนว่า DSA ไม่ใช่วิธีที่แนะนำอีกต่อไป
https://www.gentoo.org/support/news-items/2015-08-13-openssh-weak-keys.html
หนึ่งใช้DSAและเป็นหนึ่งในการใช้อาร์เอส