인증서
HTTP vs HTTPS (feat. 대칭키, 공개키)
1. HTTP란? 1) 개요 HTTP(HyperText Transfer Protocol)는 두 네트워크 장치 간 하이퍼텍스트 전송을 위한 프로토콜이다. 주로 웹 브라우저와 서버가 웹 페이지(HTML) 문서를 주고 받을때 사용된다. HTML (HyperText Markup Language) 태그를 사용해 하이퍼텍스트로 이루어진 문서 또는 데이터를 구조화한 형식 응용 계층 프로토콜로서 TCP/IP를 사용하며 80번 포트를 사용한다. 전송 과정에서 평문으로된 데이터가 제3자에게 노출될 수 있어 보안에 취약하다. 2) 특징 A. 서버-클라이언트 구조 클라이언트가 요청하면 서버가 응답하는 단방향 통신이다. 서버가 먼저 클라이언트에게 요청 메시지를 보낼 수 없다. B. 무상태성 (Stateless) 서버는 클라이언..
[IOS] API 통신에서 겪은 SSL 인증서 및 ATS 관련 이슈에 대하여
출시 프로젝트에서 공공데이터포털의 투어 API를 사용했다. HTTPS를 지원하는 API 서비스였기 때문에 출시 과정에서 문제없이 ATS를 사용할 수 있을 거라고 생각했지만 결국 보안 관련 이슈를 겪게됐고 문제의 원인과 해결 방법을 작성한 글이다. 1. 이슈를 겪게된 과정 나는 공공데이터포털에서 제공하는 오픈 API 서비스를 출시 앱에 사용하기 위해서 Alamofire를 통해 제공되는 URL로 네트워크 요청을 시도했는데 아래 콘솔 메시지가 출력됐다. Result : FAIL Error : Error Domain=NSURLErrorDomain Code=-1200 "An SSL error has occurred and a secure connection to the server cannot be made." ..