SSL 인증서에 어떤 RSA 키 길이를 사용해야합니까?


95

CSR을 생성하는 중이며 내 RSA 키에 가장 적합한 길이가 어느 것인지 궁금합니다.

물론 384는 아마도 너무 약하고 16384는 아마도 너무 느릴 것입니다.

인증서 수명에 따라 사용해야하는 키 길이에 대한 합의가 있습니까?

편집 : 대부분의 사람들과 마찬가지로 나는 내 키가 합리적으로 강하기를 바랍니다. NSA가 2019 년에 제 열쇠를 깰 수 있을지 걱정하지 않습니다. 정상적인 비즈니스 (예 : 전자 상거래 사이트)를 계획 할 때 모범 사례가 무엇인지 알고 싶습니다.

답변:


102

2020 년부터 RSA 키는 2048 비트 여야합니다.

1024 비트

  • 1024 비트 RSA 인증서는 더 이상 사용되지 않으며 브라우저에서 허용되지 않습니다.
  • Firefox 는 2014 년에 1024 비트 RSA 인증서 허용을 중단했습니다.
  • 인증 기관은 2014 년 이전에 1024 비트 RSA 인증서 제공을 중단했습니다. GlobalSign 또는 Comodo 통지를 참조하십시오 .
  • 1024 비트 키는 작은 데이터 센터 (아마 몇 달 안에 수천 개의 CPU 또는 수백 개의 GPU)에서 크랙 될 수 있기 때문에 더 이상 사용되지 않습니다. 많이 보일지 모르지만 큰 조직이나 정부의 손이 닿을 수 있습니다.

2048 비트

  • 2048 비트 RSA 인증서는 현재 허용되는 표준입니다.
  • CA에서 제공하고 소프트웨어에서 사용하는 기본 기준입니다.
  • 결국 너무 금이 갈 것입니다. 언제인지 모르지만 수십 년이 걸릴 수 있습니다.
  • 크기를 두 배로 늘리면 크래킹하는 데 훨씬 더 많은 컴퓨팅 성능이 필요합니다. 1024에 비해 RSA 2048이 얼마나 강력한 지 질문을 참조하십시오 .

4096 비트

  • 다음 단계는 4096 비트 RSA 인증서입니다.
  • 광범위하게 사용 가능하고 지원됩니다. 모든 주요 CA는 Let 's encrypt를 포함하여 2048 비트 및 4096 비트 RSA를 모두 제공 할 수 있습니다. .
  • 계산 비용은 키 크기에 비례하지 않습니다. 4096은 2048의 두 배가 아니라 처리 속도가 10 배 정도 느립니다. 성능 영향을 고려하지 않고 맹목적으로 인증서를 4096 비트로 업그레이드하지 마십시오. .
  • "웹"은 4096 비트에 대한 하드웨어 비용을 감당할 수 없기 때문에 대부분 2048 비트 인증서에 남아 있습니다. 엄청난 트래픽과 하드웨어 공간을 가진 Google, CloudFlare, NetFlix와 같은 대규모 행위자를 고려하십시오.

3072 비트

  • 3072 비트는 문제가 아닙니다. 4096 비트로 바로 이동합니다.
  • 3072 비트 암호화를 수행하는 것은 전적으로 가능합니다. 단지 소프트웨어가 실제로이를 구현, 지원 및 광고하지 않을뿐입니다.
  • 역사적으로 2010 년부터 2015 년까지 4096의 추가 계산 비용이 이상적이지 않은 사용 사례를 위해 3072를 출시하려는 시도가있었습니다. 사라졌지 만 (빠른) 3072의 장점을 전파하는 오래된 기사가 여전히 있습니다.

특별한

  • RSA는 1977 년에 처음 공개되었으며 거의 ​​50 년이 지난 후에도 여전히 강력합니다. 더 빠른 컴퓨터를 따라 잡으려면 비트 수를 늘리면됩니다.
  • 타원 곡선을 기반으로 한 공개 키 암호화를위한 또 다른 방법이 있습니다. ECDSA (1992)를 참조하십시오.
  • 사용자와 공격자의 용량 사이에는 큰 단절이 있습니다. 웹 서버 또는 모바일 클라이언트에는 하나의 (저전력) CPU가 있습니다. 공격자는 전체 데이터 센터를 가질 수 있습니다. 참고로 새로 구축 된 AWS 데이터 센터는 약 60,000 개의 서버를 호스팅합니다.
  • 하나의 모바일 장치가 몇 초에 걸쳐 일부 수학을 계산할 수 있다는 것은 놀랍습니다. 수백만 대의 컴퓨터가 평생 추측 할 수 없었던 것입니다.

13
다른 한편으로는 "256 비트는 영원히 작동 할 것"이고 다른 한편으로는 "1024 비트가 이미 쓰레기"라는 차이점은 대칭 알고리즘 과 비대칭 알고리즘 의 차이 와 각각에 사용되는 키의 종류 때문입니다. 주어진 "동등한 보안 수준"을 사용하면 대칭과 비대칭의 키 길이에 대해 매우 다른 원시 숫자를 볼 수 있습니다.
Ti Strga 2014

1
2015 년 9 월 현재 업계는 2048 비트 미만의 CSR을 받아들이지 않는 것으로 보입니다. 답변 아래 참조 코모도 지원 기사
angularsen

2
@anjdreas, 2048이 최소값 이라는 것은 사실이지만 CA 기사에서 인용 할 때 매우주의 입니다.
Pacerier

RSA Labs 링크는 현재 404입니다. btw
jocull

1
참고 : 11 년 후 최신 권장 사항 및 참조를 사용하여 답변을 완전히 다시 작성했습니다. 위의 의견은 이전 개정판에 대한 의견입니다.
user5994461

12

많은 고객이 NIST 암호화 표준을 준수해야하므로 NIST Special Publication 800‑57, Recommendation for Key Management Part 1, §5.6 의 지침을 사용합니다 . 대부분의 애플리케이션은 112 비트 보안에 적합하므로 대칭 암호의 경우 3 중 DES (또는 최대 128 비트 AES의 작은 범프)와 RSA의 경우 2048 비트 키에 해당합니다. 대략적인 동등성에 대해서는 표 2를 참조하십시오.

유효하든 그렇지 않든 NIST 간행물을 참조 할 수 있으면 고객이 보안에 대해 더 잘 느끼는 데 도움이됩니다.


이 답변에 언급 된 문서는 키 관리를위한 권장 사항 : 1 부 : 일반 (개정 3)으로 수정되었습니다 . 현재 개정판은 2012 년 7 월
AaA

NIST 페이지가 삭제되고 "정부 자금이 부족하여 csrc.nist.gov 및 모든 관련 온라인 활동은 추후 공지가있을 때까지 사용할 수 없습니다."라는 메시지로 대체 된 것을 확인했습니다.
wu-lee

키 길이 권장 사항을 비교하는이 페이지가 있습니다. keylength.com/en/compare
wu-lee

10

인증 기관은 크기가 2048 비트 미만인 CSR에 서명하지 않으므로 CSR을 2048 비트로 생성해야합니다.


6
[인용 필요]
CodesInChaos 2013 년

2
소스 - answers.ssl.com/877/... - 우리는 가능성이 향후 몇 년 동안 사람들을 전환 할 수 있도록 Affirmtrust / 트렌드 마이크로 같은 일부 CA는 이미 4096 비트 뿌리를 내장하고 있습니다
요기

방금 Comodo를 시도했지만 2048 비트 미만을 허용하지 않습니다 .
angularsen

7

오는 8 월, Microsoft는 최소 1024 비트 RSA 키를 사용해야하는 Server 2003/2008, Win7 등의 패치를 배포 할 예정입니다. 따라서 "최소한의"표준을 만드는 것이 좋습니다.


6

웹 사이트에서 사용되는 SSL 인증서의 경우 Thawte.com 웹 사이트 (2014-07-22 기준)의이 텍스트는 다음 사항에 유의해야합니다.

CA / B (인증 기관 / 브라우저) 포럼에서 설정 한 업계 표준에 따라 2014 년 1 월 1 일 이후에 발급 된 인증서는 키 길이가 2048 비트 이상이어야합니다.


Mouais, Facebook은 여전히 ​​256 키 길이 => b3.ms/XmWn0e1BMYOk
Thomas

Facebook이 RSA를 사용하지 않음을 명확히하기 위해 ECDHE_ECDSA를 사용하므로 키 길이가 더 짧습니다.
Michael

5

새 SSL 인증서를 여러 개 만들어야했는데 위의 답변이 모호하거나 구식 인 것 같아서 만족스럽지 않아서 조금 파헤 쳤습니다. 결론적으로 선택한 답은 "2048 비트 키 ... 더 이상 의미가 없음"을 사용하는 것 입니다.

비트 길이를 4096으로 늘리면 기본적으로 중요하지 않은 보안 업그레이드 를 제공하면서 서버에 잠재적으로 의미있는로드 (기존로드에 따라 다름)가 추가 됩니다.

2048 비트보다 긴 키가 필요한 경우 더 긴 비트 길이가 필요하지 않은 경우 새 알고리즘이 필요합니다.


1

4096은 RSA에 적합하다고 생각합니다.

이 링크 확인

SHA-1 서명의 끝은 새로운 것이 아니지만 Google은 크롬 프로세스를 가속화했습니다. 앞으로 몇 주 안에 SSL 인증서를 확인해야합니다.

이것은 도움이 될 수 있습니다


1
영어 링크도 게시 해 주시겠습니까? 내 독일어는 다소 약합니다.
Wai Ha Lee

기본적으로 RSA 키의 길이는 1024, 2048 또는 3072 비트 만 가능합니다 (PKCS # 1 2.2 및 FIPS 186-4에 따름).
aprelev

Flame 은 공격자가 더 큰 모듈러스보다 해시를 공격 할 것임을 보여주었습니다. SHA-1을 사용하는 경우 해시와 모듈러스가 동등한 보안을 제공하므로 1024 비트 모듈러스를 사용할 수도 있습니다. 1024 비트 모듈러스는 더 큰 4096 모듈러스보다 빠른 작업을 가능하게합니다.
jww

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.