OCPP 보안 프로파일 2 — 충전기와 서버 사이를 TLS와 비밀번호로 잠그기
지금까지 충전기는 평문 WebSocket으로 서버에 붙어 있었다. 시험용 인증서를 만들고 SteVe를 HTTPS로 바꾼 뒤, 보드를 OCPP 보안 프로파일 2(TLS + Basic 인증)로 접속시켰다. 틀린 비밀번호와 평문 접속이 거절되는 것까지 확인했다.
지금까지 충전기는 평문 WebSocket으로 서버에 붙어 있었다. 시험용 인증서를 만들고 SteVe를 HTTPS로 바꾼 뒤, 보드를 OCPP 보안 프로파일 2(TLS + Basic 인증)로 접속시켰다. 틀린 비밀번호와 평문 접속이 거절되는 것까지 확인했다.
충전기와 서버 사이의 네트워크가 끊기면 어떻게 되는지 보려 했다. 그런데 시험을 시작하기도 전에, 서버에 접속은 했지만 등록되지 않는 문제가 나타났다. 원인은 EVerest OCPP 라이브러리의 경쟁 조건이었다. 4줄 패치로 고친 뒤 끊김 시험 네 가지를 모두 통과했다.
title: “OCPP 1.6J 붙이기 — SteVe 시험 서버, 원격 시작·정지, 비상정지 보고 (M8-1~M8-4)” date: 2026-11-05 categories: [embedded, ev-charger] tags: [stm32mp157, everest, ocpp, ...
충전기 보드의 시계가 서버보다 5초 빨랐다. WiFi로 인터넷도 되고 DNS도 되는데 timesyncd는 시간 서버에 요청을 한 번도 보내지 않았다. 원인은 networkd의 온라인 판단에 케이블 없는 유선 포트 하나만 들어 있던 것이었다. 설정 한 줄로 고쳤다.
어제 만든 BSP를 이번에는 실제 EVerest에 붙였다. 첫 실행에서 BSP가 EVerest의 기대와 다르게 동작하는 버그를 하나 고친 뒤, 저항 지그만으로 차량 연결부터 충전, 일시 중지, 종료까지 두 번 돌렸다. 그 전에 레이어와 작업 기록을 펌웨어를 뺀 채 GitHub 비공...