2023-04-17[TIL]

jenna·2023년 4월 17일
0

TIL/WIL

목록 보기
17/60

HTTP와 HTTPS

HTTP

: 하이퍼 텍스트 전송 프로토콜으로 인터넷을 작동시키는 역할을 하며, 웹 서버 및 웹 브라우저 상호 간의 데이터 전송을 위한 응용계층 프로토콜

  • 암호화가 되지 않은 평문 데이터를 전송하는 프로토콜
  • 비밀번호나 주민등록번호 등을 주고 받으면 제3자가 정보를 조회가능
    (이 문제를 해결하기 위해 HTTPS가 등장)
  • 데이터가 암호화되지 않아 도청이나 데이터의 변조와 같은 보안 위협에 취약
  • 기본적으로 80번 포트를 사용
  • 서버의 신원을 인증하지 않기 때문에, 보안성이 낮습니다.

HTTPS

: 하이퍼 텍스트 전송 프로토콜 보안으로 표준 HTTP와 동일한 방식으로 서버와 주고받는 데이터가 암호화되기 때문에 웹사이트에 추가적인 보호를 제공합니다. 즉, 개인 데이터를 훔치거나, 해킹하거나 볼 수 없도록 작동

  1. 보안성: SSL(암호화된 보안 소켓 계층) 또는 TLS(전송 계층 보안) 프로토콜을 사용하여 데이터를 암호화하여 보안성을 강화
  2. 암호화: 데이터를 암호화하여 안전하게 전송되기 때문에, 중간에서 데이터를 가로채더라도 암호화된 데이터를 해독 불가
  3. 포트: 기본적으로 443번 포트를 사용합니다. 따라서 HTTPS로 통신하는 경우에는 포트 번호가 다르게 지정되어야 합니다.
  4. 인증서: HTTPS는 SSL 또는 TLS 인증서를 사용하여 서버의 신원을 인증하고, 클라이언트와 서버 간의 안전한 통신을 보장
  5. 검색 엔진 최적화(SEO): HTTPS는 구글 등의 검색 엔진에서 검색 결과에 더 높은 우선순위를 부여하는 등 SEO에 긍정적인 영향을 미칩니다

RESTful API

  • RESTful API는 Representational State Transfer(REST) 아키텍처 스타일을 따라 설계된 웹 서비스의 일종으로, 클라이언트와 서버 간의 통신을 위한 규칙과 원칙을 정의한 것입니다. REST는 네트워크 기반의 소프트웨어 아키텍처로, HTTP 프로토콜을 기반으로 하며, 웹 리소스를 고유한 URI(Uniform Resource Identifier)로 표현하고, HTTP 메소드(GET, POST, PUT, DELETE 등)를 사용하여 리소스에 대한 조작을 수행합니다.

  • RESTful API는 Stateless, Client-Server, Cacheable, Layered System, Uniform Interface 등의 특징을 가지며, 간결하고 확장 가능한 인터페이스를 제공합니다.

RESTful API특징

1.자원 기반 (Resource-based): RESTful API는 자원(데이터, 서비스 등)을 고유한 URI(Uniform Resource Identifier)로 표현하며, 이를 통해 자원에 접근하고 조작할 수 있습니다.

2.HTTP 메서드 활용 (HTTP Method): RESTful API는 HTTP 프로토콜의 다양한 메서드(GET, POST, PUT, DELETE 등)를 활용하여 자원에 대한 CRUD(Create, Read, Update, Delete) 작업을 수행합니다.

3.Stateless (무상태): RESTful API는 각 요청 사이에 상태를 유지하지 않고, 각 요청은 독립적으로 처리됩니다. 이를 통해 서버의 부담을 줄이고 확장성을 높입니다.

4.캐싱 가능 (Cachable): RESTful API는 HTTP의 캐싱 기능을 사용하여 응답을 캐싱할 수 있어, 효율적인 데이터 전송과 성능 향상을 이끌어냅니다.

5.클라이언트-서버 구조 (Client-Server): RESTful API는 클라이언트와 서버가 독립적으로 발전하고 확장될 수 있는 구조를 가지고 있습니다. 이를 통해 각각의 역할과 책임이 분리되어 시스템을 더 유연하게 설계할 수 있습니다.

6.계층화 (Layered System): RESTful API는 다중 계층으로 구성될 수 있어, 시스템의 확장성과 보안성을 높일 수 있습니다.

profile
https://github.com/jennaaaaaaaaa

0개의 댓글