JWT (JSON Web Token)는 웹에서 사용자 인증 및 정보 전송을 위해 사용되는 개방형 표준이다. 분산 시스템, API 인증 및 사용자 인증에 자주 사용된다.JWT의 구성JWT는 세 부분으로 구성되어 있다.1. 헤더 (Header): 토큰의 종류와 서명 알고리즘 정보 2. 페이로드 (Payload): 토큰에 담고자 하는 실제 데이터 (예: 사용자 정보) 암호화되지 않아서 쉽게 디코딩 가능 3. 서명 (Signature): 토큰의 무결성을 보장하기 위해 사용. 비밀 키나 공개/비공개 키 페어를 사용하여 생성각 부분은 base64url로 인코딩되어 .(점)으로 구분된 하나의 문자열로 결합JWT의 전체적인 흐름1. 로그인:사용자가 로그인하면 서버는 사용자의 정보를 확인한 후 JWT 토큰을 생성한다.이..
백엔드
AWS의 클라우드 서비스 중 EC2(Elastic Compute Cloud), EBS(Elastic Block Store), ELB(Elastic Load Balancer)에 대해 알아보고 그 연관관계를 살펴보기 EC2 (Elastic Compute Cloud)AWS에서 제공하는 `가상 서버 서비스`로, EC2 인스턴스를 통해 애플리케이션을 실행하고 데이터를 처리할 수 있음. 서버 인스턴스를 `시작하거나 종료`할 수 있으며, `필요한 리소스 만큼만 비용 지불`따라서 사용자가 얼마만큼의 크기, 용량이 사용되는지 미리 알 수 없을때 (예측할 수 없는 데이터 처리 및 산술적으로 볼 수 없는 크기의 데이터가 몰려올 때) 사용하는 편리한 서비스! 클라우드란? 더보기클라우드란 데이터를 저장하고 처리하는 서버나 애..
MVC 패턴 소프트웨어 개발을 위한 `프로젝트 아키텍처` 설계에서 자주 사용되는 디자인 패턴 중 하나애플리케이션의 구조를 명확하게 분할하여 각 구성요소의 역할 정의 -> 세가지 주요 구성 요소로는 모델(Model), 뷰(View), 컨트롤러(Controller)가 있음 1. Model데이터와 `비즈니스 로직`을 관리한다. ⇒ `데이터`와 관련된 부분View, Controller에 대한 의존을 가지지 않는다.ex) 사용자의 정보, 상품의 목록, 주문 내역 등2. ViewModel의 데이터를 사용해 시각적인 화면을 구성하는 역할이다. ⇒ 사용자에게 보여지는 부분 (`사용자 인터페이스`)Model과 의존성 가질수도, 안가질수도 있다. Controller에는 의존성 Xex) 웹 페이지, 모바일 앱 화면, 대시 ..
프로젝트 아키텍처`소프트웨어 개발 프로젝트의 기본적인 구조` 프로젝트의 요구사항을 충족시키기 위해 `시스템의 구성 요소와 그 관계`를 정의하고, 이러한 요소들이 어떻게 `상호작용`하는지를 설명하는 설계도.즉, 프로젝트 아키텍처는 건물을 짓기 위한 청사진과 같으며, 이를 통해 개발자들은 각자의 역할을 명확히 이해하고, 시스템의 전체적인 모습을 파악할 수 있음 프로젝트 아키텍처의 필요성명확한 구조 제공:프로젝트 아키텍처는 시스템의 전체 구조를 명확하게 정의한다. 이를 통해 팀원들이 시스템의 구성 요소와 상호 작용을 명확하게 이해할 수 있게 한다.효과적인 의사소통 촉진:프로젝트 아키텍처 문서는 프로젝트 이해관계자 간의 공통 이해를 촉진한다. 이를 통해 개발팀, 관리팀, 고객 모두가 동일한 목표와 방향을 공유할..
ECMAScriptEcma International(정보통신을 위한 비영리 표준 기구)에 의해 정의된 ECMA-262라는 기술 규격에 의해 정의 된 `범용 스크립트 언어`의 표준`JavaScript의 표준 사양을 정의하는 언어` (+) 스크립트 언어와 범용 프로그래밍 언어더보기더보기스크립트 언어(scripting language): `응용 소프트웨어를 제어하는 언어`로 `독립적으로 사용`할 수 있으며, 컴파일 없이 실행가능한 언어. 사용자가 직접 프로그램을 의도에 따라 동작함ex) JavaScript, Python, 셸(Shell) 스크립트범용 프로그래밍 언어(general-purpose programming language): 다양한 도메인의 소프트웨어를 개발하기 위해 설계된 프로그래밍 언어ex) H..
KEY키(key)는 DB에서 데이터를 어떤 식으로 정의할지, 규칙을 정하는 값.DB에서 조건을 만족하는 레코드를 찾거나 순서대로 정렬할 때 레코드를 서로 구분할 수 있는 기준이 되는 속성데이터를 목록별로 정리하여 나타낸 테이블에는 행과 열(row/column)이 존재하는데 여기서 column을 의미 유일성: 하나의 키값으로 유일하게 식별할 수 있는 성질최소성: 키를 구성하는 속성들 중 꼭 필요한 최소한의 속성들로만 키를 구성하는 성질 1. 기본키(Primary Key)최소성과 유일성을 만족하는 키중복값이 있을 수 없고, NULL 값 또한 가질 수 없다. "테이블에 저장된 행을 식별할 수 있는 유일한 값이어야 한다."따라서 테이블 안에서 유일하게 각 행을 식별할 수 있는 키이다.ID학번이름전공학년122김가..