TLS 지원 범위
포트원 v1 API의 TLS 지원 범위 및 설정 가이드를 확인할 수 있습니다.
2024년 9월 1일부터 포트원을 이용하는 고객님들의 개인정보 및 결제정보를 더욱 안전하게 보호하기 위해 v1 API 서버(api.iamport.kr)의 TLS 버전 및 Cipher Suite 지원 범위가 변경됩니다.
변경사항 요약
- HTTP 평문 통신에 대한 지원이 중단됩니다.
- TLS 1.0, 1.1 버전에 대한 지원이 중단됩니다.
- 보안성이 떨어지는 일부 Legacy Cipher Suite 들에 대한 지원이 중단됩니다.
Protocol | Cipher Suite | 2024-09-01 전 | 2024-09-01 이후 |
---|---|---|---|
HTTP | N/A | O | X |
TLSv1.0 | (omitted) | ||
TLSv1.1 | (omitted) | ||
TLSv1.2 | AES256-SHA | O | X |
AES128-SHA | |||
AES128-GCM-SHA256 | |||
AES128-SHA256 | |||
AES256-GCM-SHA384 | |||
AES256-SHA256 | |||
ECDHE-ECDSA-AES128-SHA | |||
ECDHE-RSA-AES128-SHA | |||
ECDHE-RSA-AES256-SHA | |||
ECDHE-ECDSA-AES256-SHA | |||
ECDHE-ECDSA-AES128-SHA256 | O | O | |
ECDHE-RSA-AES128-SHA256 | |||
ECDHE-ECDSA-AES256-SHA384 | |||
ECDHE-RSA-AES256-SHA384 | |||
ECDHE-ECDSA-AES128-GCM-SHA256 | |||
ECDHE-RSA-AES128-GCM-SHA256 | |||
ECDHE-ECDSA-AES256-GCM-SHA384 | |||
ECDHE-RSA-AES256-GCM-SHA384 | |||
TLSv1.3 | TLS-AES-128-GCM-SHA256 | O | O |
TLS-AES-256-GCM-SHA384 | |||
TLS-CHACHA20-POLY1305-SHA256 |
TLS 버전 및 Cipher Suite 업그레이드 가이드
포트원은 TLS 1.3 으로의 업그레이드를 권장합니다.
Java 6
Java 6은 기본적으로 TLS 1.2를 지원하지 않습니다.
JDK 6u121 버전부터는 TLS 1.2를 지원하지만 default TLS 버전은 여전히 1.0일뿐더러 Java 6의 JCE(Java Cryptography Extension) Provider가 타원곡선 암호화 알고리즘을 지원하지 않기때문에 완전 순방향 비밀성이 보장되지 않아 여전히 Legacy Cipher Suite를 써야합니다.
따라서, Java 6에서 TLS 통신을 안전하게 하려면 아래 두 방법 중 하나를 택해야 합니다.
Java 7
Java 7의 경우 TLS 1.2를 지원하기는 하나 default TLS 버전은 여전히 1.0입니다.
뿐만 아니라 JDK 버전에 따라 포트원에서 허용하는 Cipher Suite 조건인 "Forward secrecy 지원"과 "SHA-1 미사용"을 만족하는 Cipher Suite를 지원하지 않기도 합니다. 본 가이드에서는 Java 7에서 포트원 보안 규격에 맞는 TLS 버전 및 Cipher suite 설정에 대한 방법 3가지를 제공합니다.
Footnotes
-
"TLS 1.0 and TLS 1.1 - Chrome Platform Status". chromestatus.com. Retrieved 2024-03-25. ↩
-
Bright, Peter (2018-10-17). "Apple, Google, Microsoft, and Mozilla come together to end TLS 1.0". Retrieved 2024-03-25. ↩
-
Gaëtan Leurent; Thomas Peyrin (2020-01-05). "SHA-1 is a Shambles - First Chosen-Prefix Collision on SHA-1 and Application to the PGP Web of Trust" (PDF). ↩