저는 NIST와 PCI가 3DES의 사용과 사용 중단 / 불허에 대해 말하는 것을 잘 알고 있으며 AES가 실제 권장 표준이라는 것도 알고 있습니다. 소프트웨어 및 하드웨어 암호화를위한 것입니다.
나는 가장 확실한 선택 인 AES를 선택할 수있을 때 여전히 3DES를 선택하는 많은 회사를보고 있습니다. 왜 그렇게 생각하세요? 누군가가 AES보다 3DES를 선택할 수있는 기술적 이유가 있습니까?
댓글
- 보통 가장 설득력있는 이유 : " 이전 버전과의 호환성 ".
- 예, 가장 논리적 인 답변 인 것 같습니다. 하지만 AES가 제품이나 프로세스의 호환성을 변경하는 기술적 부채보다 더 중요하지 않아야합니까?
- 1993 년이기 때문에
- 같은 이유로 사람들이 여전히 SHA-1을 사용하거나 무결성 또는 암호를위한 MD5까지도 ..
- @franpen : 모든 것 ' 절충점
답변
제 생각에는 AES보다 3DES를 선택할 이유가 전혀 없습니다.
특히 소프트웨어 인 경우에는 3DES 성능이 항상 끔찍했습니다. 또한, 대부분의 CPU는 오늘날 AES 가속기와 함께 제공되므로 AES가 훨씬 더 빠릅니다.
그러나 슬프게도 변경 관리 는 어렵습니다. 특정 스마트 카드 또는 하드웨어 모듈은 AES를 지원하지 않지만 3DES를 지원합니다. 하드웨어 변경을 피할 수 있다면 3DES가 실제로 손상되지 않았으므로 계속 사용할 수 있습니다.
또한 대부분의 소프트웨어 개발 팀에는 암호화 애호가 / 암호화 전문가가 없으며 계속 진행할 수 있습니다. 그들이 익숙하거나 그들의 시스템이 기반을 둔 좋은 오래된 알고리즘을 사용합니다. 반드시 좋은 이유는 아니지만 변경은 어렵습니다. 특히 소프트웨어와 관련하여 변경이 어렵 기 때문에 대부분의 경우 사람들은 이전 버전과의 호환성이나 기타 그러한 것들을 방해하는 변경을 피하는 것을 선호합니다.
주의하십시오. 오늘날에도 똑같은 이유로 2 키 3DES를 찾을 수 있습니다!
이론적 인 측면에서 3DES는 64 비트 블록을 제공하므로 오늘날의 높은 처리량 데이터 전송 프로토콜에는 적합하지 않습니다. 블록 충돌로 이어질 수 있기 때문에 AES는 128 비트 블록으로 안전합니다.
이 주제에 대해서는 3DES가 안전한지 여부에 대한 자세한 내용은 제 답변 을 참조하십시오.
댓글
- 놀라운 답변이었습니다. 감사합니다. 하지만 한 가지 질문 : 예를 들어 POS와 같이 AES를 지원하지 않는 ' 하드웨어가 있다면 데이터를 암호화하기 위해 해당 하드웨어를 업데이트하는 것이 좋습니다. AES-128? 3DES가 아직 고장 나지 않았더라도 ' 그 비용은 가치가 있습니까?
- 대부분 해당 POS의 위협 모델에 따라 달라집니다. 대부분은 공격의 예상 비용, 업그레이드의 예상 비용 및 공격의 경우 예상 손실에 따라 달라집니다. 실제 보안은 슬프게도 이론적 암호화만큼 우아하지 않으며 일반적으로 많은 절충안을 기반으로합니다. . 3DES는 ' 향후 수십 년 동안 무차별 대입 공격에 의해 깨지지 않는 IMO를 획득했습니다. 그리고 POS가 많은 양의 트래픽을 생성하고 있는지 의심합니다. 따라서 이론적 인 돌파구가 없다면 (가능성이 없을 것 같음), 이는 여전히 시간이 있음을 의미합니다 …
- 예, 시간이 ' 있지만 대부분의 애플리케이션은 ' TLS와 함께 3DES를 사용하는 것을 본 적이 있습니다. ' 결론을 마치면 취약해질 수 있습니다. 또한 3DES가 안전한지 여부에 대한 답변에서 NIST가 여전히 권장한다고 말했지만 NIST 자체에서 3DES가 더 이상 사용되지 않는다고 말 했으므로 현재는 적용되지 않습니다. ' 이 모든 것을 염두에두고, 저는 대부분의 경우 AES에가는 비용이 그만한 가치가 있다고 생각합니다. 특히 기밀 정보를 다룰 때.
- ' 여전히 사실인지 모르겠지만 약 5 년 전 신용 카드 네트워크의 일부는 단일 DES로 보호되었습니다. 은행은 단말기 교체 비용이 너무 높다고 판단하고 그대로 두었습니다 (새 POS 단말기는 AES를 지원하는 경향이 있지만 오래된 것들은 ' t).
- @franpen : 왜? 그들은 POS 단말기 비용이 얼마나되는지 알고, 설치하는 데 드는 비용을 알고 있으며, 사이버 사기로 인해 얼마나 손해를 보는지 알고 있습니다. 그런 다음 비즈니스 결정을 내립니다.