/* ============================================================================= * server_ca.h - 서버(Cafe24) 루트 CA 인증서 (flash 임베드) * * tls_mbedtls.c 가 mbedtls_x509_crt_parse() 로 이 PEM 을 파싱하여 * 서버 인증서 체인을 검증한다(폐쇄망 → 런타임 CA 다운로드 불가, 펌웨어에 고정). * * 중요(mbedTLS PEM 요구사항): * mbedtls_x509_crt_parse() 는 인자가 PEM 일 때, buflen 에 마지막 NUL 종결자가 * "포함"되어야 한다고 요구한다. 따라서 SERVER_CA_PEM_LEN 은 strlen() 이 아니라 * sizeof(SERVER_CA_PEM) (즉, 종결 NUL 1바이트 포함) 로 정의한다. * * 만료/교체(위험 R3, docs/stm32f407_migration_plan.md): * 루트 CA 가 만료되거나 발급기관이 교체되면 TLS 연결이 불가해진다. * 폐쇄망이라 OTA 로 갱신할 수 없으므로, 만료 시 펌웨어 재빌드/재배포가 필요하다. * 교체 절차는 certs/README.md 참고. * ===========================================================================*/ #ifndef SERVER_CA_H #define SERVER_CA_H #ifdef __cplusplus extern "C" { #endif /* PEM 형식 서버 루트 CA (NUL 종결 C 문자열). */ extern const char SERVER_CA_PEM[]; /* PEM 바이트 길이. **종결 NUL 을 포함**한다(mbedTLS PEM 파싱 요구사항). * 즉 SERVER_CA_PEM_LEN == sizeof(SERVER_CA_PEM). */ extern const unsigned int SERVER_CA_PEM_LEN; #ifdef __cplusplus } #endif #endif /* SERVER_CA_H */