보안
요청 서명과 변조 탐지
앱과 서버 사이의 통신 프로토콜을 직접 설계한다면, 전송 중에 내용이 바뀌었다는 것을 서버가 어떻게 알아챌 수 있게 하겠습니까? HTTPS를 이미 쓰고 있다는 전제입니다.
면접관은 이 답을 어떻게 들을까요? 넘어갈지, 더 물어볼지, 떨어뜨릴지 알려 주고, 걸리는 문장은 콕 집어 줘요. 점수는 그대로예요.
앱과 서버 사이의 통신 프로토콜을 직접 설계한다면, 전송 중에 내용이 바뀌었다는 것을 서버가 어떻게 알아챌 수 있게 하겠습니까? HTTPS를 이미 쓰고 있다는 전제입니다.
요청 본문·주요 헤더를 정규화해 HMAC(또는 기기 개인키 서명)으로 서명하고 헤더에 싣는다. 서버는 같은 방식으로 재계산해 불일치면 변조로 거부한다. HTTPS는 경로 중간자를 막지만 종단(프록시·변조된 앱)까지는 못 막으므로 서명이 보완한다.