ArrayList가 가변배열이라는 건 알겠는데 한 번 늘 때 얼마나 늘어날까? 궁금해서 알아보았습니다. ArrayList 평소 알고리즘을 풀거나 비즈니스 로직을 개발하다보면 List 인터페이스를 구현한 ArrayList 혹은 LinkedList 클래스를 사용할 때가 많았습니다. 오늘은 문득 ArrayList.add() 라는 메서드를 수행하면 내부적으로 어떤 일들이 일어나는지, 배열 길이를 넘는 데이터를 저장할 때 어떤식으로 가변 동작이 일어나는지 궁금해서 클래스 내부를 한번 들여다보았고 한번 정리해보았습니다. ArrayList Concept 순서가 있는 데이터의 집합으로 ArrayList는 내부적으로 배열을 사용하여 데이터를 연속적으로 저장합니다. 또한 내부가 배열로 이루어져있다보니 길이를 넘어서는 데이..
JWT 정리 Intro 로그인 서비스를 구현하게 된다면 세션방식, 쿠키방식, JWT방식 세 가지를 고려하게 됩니다. 이번에는 JWT방식을 활용하여 로그인 서비스를 구현을 하기 위한 필요한 개념들에 대해 정리를 해보았습니다. 또한 로그인 서비스를 구현하려하면 인증과 인가라는 개념에 대해서도 알고 있어야 하기에 먼저 정의를 해보았습니다. 인증과 인가 각각을 알아보기 이전에 인증과 인가를 되게 비슷하다고 생각을 할 수 있는데 둘은 엄연히 다른 개념이라는 걸 알아야합니다. 둘은 사용자의 정보를 효율적으로 식별하고 전달하는 과정에서 필수적인 일들입니다. 인증 인증은 쉽게 말하면, 로그인입니다. 클라이언트가 주장하는 신원을 확인하는 과정으로 다음과 같은 인증방식이 있습니다. 사용자 ID 및 비밀번호 OAuth SA..
JWT 인증 인가 서비스에 대한 정리가 필요하다 생각하여 작성한 포스팅입니다.공식문서를 기반으로 한 정리 내용입니다.부족한 점에 대한 지적은 언제든지 환영합니다! Introhttps://jwt.io/introduction JWT.IOJSON Web Tokens are an open, industry standard RFC 7519 method for representing claims securely between two parties.jwt.io공식문서에 의하면 JWT란 JSON Web Token의 줄임말로써, 당사자 간에 정보를 JSON 개체로 안전하게 전송하기 위한 간결하고 독립적인 방법을 정의하는 개방형 표준( RFC 7519 )입니다.또한 해당 토큰 정보는 디지털 서명이 되어있으므로 확인하고 신..
letsencrypt 인증서 발급 EC2 리눅스 Cli 환경에서 커맨드로 발급 진행 코드에디터에서 나오는 에서 꺽쇠는 빼셔야 합니다. letsencrypt 설치 sudo apt-get install letsencrypt 현재 웹서버에 SSL 인증서 자동 설치 sudo letsencrypt certonly --standalone -d EX) sudo letsencrypt certonly --standalone -d naver.com 아래는 위 명령어의 동작과정을 나타냄. Let's Encrypt 서버에 연결하여 도메인 소유 확인을 요청합니다. 도메인 소유 확인을 위해 웹 서버 루트 디렉토리에 임시 파일을 생성합니다. 웹 서버를 다시 시작하여 임시 파일을 제공합니다. Let's Encrypt 서버는 임시 파..