Cái này có an toàn hơn cái kia không?
Câu trả lời:
id_rsa.pub
và id_dsa.pub
là các khóa công khai cho id_rsa
và id_dsa
.
Nếu bạn đang hỏi liên quan đến SSH
, đó id_rsa
là khóa RSA và có thể được sử dụng với giao thức SSH 1 hoặc 2, trong khi đó id_dsa
là khóa DSA và chỉ có thể được sử dụng với giao thức SSH 2. Cả hai đều rất an toàn, nhưng DSA dường như được tiêu chuẩn ngày nay (giả sử tất cả các máy khách / máy chủ của bạn hỗ trợ SSH 2).
Cập nhật: Vì điều này được viết nên DSA đã được chứng minh là không an toàn. Thông tin thêm có sẵn trong câu trả lời bên dưới.
SSH sử dụng các cặp khóa công khai / riêng tư ,
khóa cá nhân RSAid_rsa
của bạn (dựa trên số nguyên tố) cũng vậy, sẽ an toàn hơn khóa riêng DSA của bạn (dựa trên số mũ). Giữ các khóa riêng tư của bạn an toàn và chia sẻ rộng rãi các khóa công khai và của bạn .id_dsa
id_rsa.pub
id_dsa.pub
DSA có một tham số có thể đoán được nếu trình tạo số ngẫu nhiên của máy tính của bạn là mệnh giá phụ, điều này sẽ tiết lộ khóa bí mật của bạn. ECDSA (nâng cấp đường cong elip của DSA) cũng dễ bị tổn thương tương tự . Ngay cả với những số ngẫu nhiên tốt, DSA cũng có những mối quan tâm về sức mạnh khác (những điều này cũng được tìm thấy trong Diffie-Hellman ).
OpenSSH tạo ra các khóa 1024 bit không an toàn ( giải pháp thay thế ) và giờ sẽ tắt DSA theo mặc định .
Mật mã đường cong elliptic cung cấp độ phức tạp tăng lên với kích thước khóa nhỏ hơn. Ed25519 (dựa trên độ phức tạp của các đường cong elip được mô hình hóa bằng máy bay ) là cách triển khai được ưa thích hơn do giả định là thiếu can thiệp (các tài liệu bị rò rỉ cho thấy NSA của Hoa Kỳ làm suy yếu các tiêu chuẩn tiền điện tử ).
Thật không may, Ed25519 vẫn còn khá mới, yêu cầu OpenSSH 6.5 hoặc GnuPG 2.1 (xem danh sách đầy đủ ).
Kích thước khóa RSA là 4096 bit nên có độ phức tạp tương đương với Ed25519.
Ed25519 vẫn được ưa thích hơn RSA do lo ngại rằng RSA có thể dễ bị tổn thương bởi các mối quan tâm về sức mạnh tương tự như DSA, mặc dù việc áp dụng cách khai thác đó cho RSA dự kiến sẽ khó hơn đáng kể.
Có, rsa được coi là an toàn hơn.
Vào tháng 10 năm 2014, OpenSSH 7 (mặc định với Ubuntu 16.04LTS) đã vô hiệu hóa hỗ trợ mặc định cho DSA. Hãy coi đây là một dấu hiệu mạnh mẽ cho thấy DSA không phải là một phương pháp được khuyến khích nữa.
https://www.gentoo.org/support/news-items/2015-08-13-openssh-weak-keys.html
rsa được coi là an toàn hơn.
Không còn nữa (tháng 5 năm 2020, mười năm sau), với OpenSSH 8.2 , như báo cáo của Julio
Thông báo ngừng sử dụng trong tương lai
Giờ đây, có thể 1 thực hiện các cuộc tấn công tiền tố đã chọn chống lại thuật toán băm SHA-1 với giá dưới 50 nghìn USD.
Vì lý do này, chúng tôi sẽ vô hiệu hóa thuật toán chữ ký khóa công khai "ssh-rsa" phụ thuộc vào SHA-1 theo mặc định trong bản phát hành trong tương lai gần .
(Xem " SHA-1 is a Shambles: First Chosen-Prefix Collision on SHA-1 and Application to the PGP Web of Trust " Leurent, G và Peyrin, T (2020))
Thật không may, thuật toán này vẫn được sử dụng rộng rãi mặc dù đã tồn tại các giải pháp thay thế tốt hơn, là thuật toán chữ ký khóa công khai duy nhất còn lại được chỉ định bởi các SSH RFC ban đầu.
Các lựa chọn thay thế tốt hơn bao gồm:
Các thuật toán chữ ký RFC8332 RSA SHA-2 rsa-sha2-256 / 512.
Các thuật toán này có ưu điểm là sử dụng cùng loại khóa với "ssh-rsa
", nhưng sử dụng thuật toán băm SHA-2 an toàn.
Chúng đã được hỗ trợ kể từ OpenSSH 7.2 và đã được sử dụng theo mặc định nếu máy khách và máy chủ hỗ trợ chúng.Thuật toán chữ ký ssh-ed25519.
Nó đã được hỗ trợ trong OpenSSH kể từ bản phát hành 6.5.Các thuật toán ECDSA RFC5656: ecdsa-sha2-nistp256/384/521.
Chúng đã được OpenSSH hỗ trợ kể từ bản phát hành 5.7.Để kiểm tra xem máy chủ có đang sử dụng thuật toán khóa công khai ssh-rsa yếu để xác thực máy chủ hay không, hãy thử kết nối với nó sau khi xóa
ssh-rsa
thuật toán khỏi danh sách được phép của ssh (1):ssh -oHostKeyAlgorithms=-ssh-rsa user@host
Nếu xác minh khóa máy chủ không thành công và không có loại khóa máy chủ được hỗ trợ nào khác, thì phần mềm máy chủ trên máy chủ đó phải được nâng cấp.
Bản phát hành OpenSSH trong tương lai sẽ bật
UpdateHostKeys
theo mặc định để cho phép máy khách tự động chuyển sang các thuật toán tốt hơn.
Người dùng có thể xem xét kích hoạt tùy chọn này theo cách thủ công .