ssh-keygen -t
(dsa|ecdsa|ed25519|rsa|rsa1)을 사용하여 생성할 수 있는 다양한 유형의 키를 알고 싶습니다 . 다양한 유형이 있으므로 각 유형은 다른 유형에 비해 특정한 장점을 가지고 있다고 생각합니다. 정말? 이것들은 무엇입니까? RSA가 기본 유형이므로(문제 39321), 이것이 가장 안전한가요? 하나인지최대안전한?
답변1
"가장 안전한" 알고리즘은 없습니다. 알고리즘이 엄청난 수학적 혁신이나 수십억 년의 컴퓨팅 성능이 필요한 지점에 도달하면 강도 비교는 의미가 없게 됩니다.
RSA는 일반적이기 때문에 일반적입니다. 모든 구현이 RSA를 지원하는 것은 오랫동안 존재해왔기 때문에 모든 구현은 계속해서 상호 운용성을 위해 RSA를 제공합니다.
RSA충분히 큰 키 크기를 선택하면 안전합니다. 1024는 깨지지 않지만 몇 년 안에 NSA 수준의 공격자가 크랙할 수 있습니다. 2048(현재 OpenSSH 버전의 기본 크기 ssh-keygen
)은 중기적으로 안전합니다. 의. (RSA1은 약점이 있어 더 이상 사용해서는 안 되는 SSH 프로토콜의 이전 버전입니다. 어쨌든 거의 멸종되었습니다.)
DSA1024비트 키로 제한됩니다. 일반적으로 서로 다른 알고리즘의 키 크기를 비교하는 것은 불가능하지만 DSA와 RSA의 장점은 거의 동일합니다. OpenSSH는 1024비트 키만 지원합니다. 이는 이전 DSA 표준(FIPS 186-2)의 최대 크기이고 SSH 프로토콜이 업데이트되지 않았기 때문입니다. DSA-1024는 약한 것으로 간주되어 어느 정도 더 이상 사용되지 않습니다.오픈SSH 7.0서버 구성에서는 기본적으로 비활성화되어 있습니다(SSH 프로토콜에서 사용되는 경우 DSA 키라고 함 ssh-dss
).
eCDSA동일한 수준의 보안에 대해 RSA 또는 DSA보다 훨씬 빠르고 키가 더 작은 최신 알고리즘 제품군입니다. ECDSA 지원은 RSA보다 덜 널리 퍼져 있습니다. 그 이유 중 하나는 그것이 더 새롭고 부분적으로는 효율적인 구현 기술이 특허를 받았기 때문입니다. OpenSSH에서 지원하는 모든 키 크기는 안전합니다.
Ed25519ECDSA의 새로운 대안입니다. 최종 사용자의 경우 ECDSA에 비해 큰 이점이 없습니다(구현자의 경우 특허 침해 위험이 적음). 그러나 최신 버전이므로 아직 이를 지원하지 않는 시스템에 연결하고 싶을 수도 있습니다. ECDSA의 경우는 그렇지 않을 것입니다.
따라서 기본 RSA는 괜찮지만 성능이 낮은 컴퓨터(예: 저가형 스마트폰, 라우터 등)를 사용하는 경우 지원되는 경우 ECDSA(또는 Ed25519)를 선호하세요.
답변2
온라인에도 비슷한 답변이 있습니다정보 보안 Stackexchange 사이트. 실제 업무에서는 모든 사람이 자신의 의무를 수행해야 합니다.
- RSA는 보편적이며 어디에서나 작동해야 합니다.
- 최근 openssh(7.1)에서는 DSA가 비활성화되어 있으며 주간 난수 생성기를 사용하면 성능이 더 나빠질 수 있습니다.
- ECDSA는 계산 비용이 덜 들지만 오늘날의 컴퓨터에서는 차이를 느끼지 못할 것입니다. 단점은 키 길이가 고정되어 있다는 것입니다(DSA와 동일).
- ED25519는 덜 일반적이지만 국가 기관의 백도어를 포함해서는 안 됩니다.소스 질문
- RSA1은 이전 SSHv1 프로토콜의 RSA 키로, 더 이상 사용되지 않으며 최신 서버에서 허용해서는 안 됩니다.
답변3
다른 답변을 바탕으로 2019년 현재 ED25519는 널리 사용되고 지원되고 있습니다. 제가 팔로우하는 대부분의 전문가는 ECDSA보다 더 나은 옵션이라고 생각합니다(국가 보안 기관의 백도어가 없다고 생각되기 때문입니다).
요약하면 ECDSA는 완전히 신뢰할 수 없으며 RSA 1은 더 이상 사용되지 않습니다. DSA는 더 이상 사용되지 않습니다. RSA(v2)는 더 이상 사용되지 않습니다. 기대하고 계시다면 남은 건 ED25519 뿐입니다.
문제로 인해 ED25519를 사용할 수 없는 경우 더 큰 키 크기(4096비트)를 갖춘 RSA v2로 대체합니다.
이것은 매우 좋은 토론입니다.
https://security.stackexchange.com/questions/50878/ecdsa-vs-ecdh-vs-ed25519-vs-curve25519
나는 특히 이 답변을 좋아합니다.
https://security.stackexchange.com/a/53387/37051
~에서Ed25519 소개, 속도상의 이점과 보안상의 이점이 있습니다. 가장 흥미로운 보안 이점 중 하나는 여러 가지 부채널 공격에 면역된다는 점입니다.
- 비밀 배열 인덱스가 없습니다. 소프트웨어는 RAM의 비밀 주소에서 데이터를 읽거나 쓰지 않습니다. 주소 패턴은 완전히 예측 가능합니다. 결과적으로 소프트웨어는 캐시 타이밍 공격, 하이퍼스레딩 공격 및 CPU 캐시를 통한 주소 유출에 의존하는 기타 부채널 공격으로부터 면역됩니다.
- 비밀 분기 조건은 없습니다. 소프트웨어는 비밀 데이터를 기반으로 조건부 분기를 수행하지 않습니다. 점프 패턴은 완전히 예측 가능합니다. 따라서 해당 소프트웨어는 분기 예측 장치를 통해 정보 유출에 의존하는 부채널 공격에 취약하지 않습니다.
답변에서브라이언 민턴