- [ IT 기타 ]GET 메소드 요청시 body 를 보낼 수 있을까?2022-08-28 23:58:06안녕하세요. 루루개발자 입니다. 이번에는 GET 메소드로 요청을 보낼 때, body 를 같이 보내는 것이 가능한지 알아보고자 합니다. GET 메소드에 대한 정리글 https://prinha.tistory.com/entry/HTMLWEB-HTTP-Method-GET-POST의-차이 https://kmyjn.tistory.com/541 위 2개 블로그에서 확인해보면 보통 GET 메소드로 요청을 보내면 body 는 비어있는 상태로 전송되는 것이 일반적인 것처럼 보입니다. 현재는 GET 메소드시 body 가 허용된다? https://leedo.me/m/34 좀 더 구글링을 해보니 위 블로그를 발견하였는데, 기존에는 GET 메소드 요청시 body 가 허용되지 않았으나 2014년도 부터는 GET 메소드에 body ..
- [ IT 기타 ]github 에서 서명된 커밋 (gpg) 사용하기2022-08-01 23:41:15안녕하세요! 루루개발자 입니다. 회사 업무를 하다 보면 가끔은 집에 있는 개인 PC 에서 재택으로 일을 하는 경우가 있는데, 그러다보니 git 의 글로벌 설정으로 user.name 과 user.email 을 회사 계정으로 설정해두고 사용하고 있었습니다. 하지만 가끔은 제 개인 레포지토리에 푸쉬를 날릴 때도 있는데, 이 때 실수로 제 회사 계정 정보로 커밋된 정보가 제 개인 레포지토리로 푸쉬 되는 경우가 종종 있었습니다. 이를 방지하기 위해 github 에서 public 으로 공개된 제 개인 레포지토리들의 branch rule 에서 서명된 커밋만 푸쉬가 가능하도록 설정하였고, 이후 서명된 커밋을 이용하는 방법에 대해 공유드리고자 합니다. 1. 개발 PC 에서 gpg 설치하기 우선 커밋할 때 서명을 사용하기..
- [ IT 기타 ]OAuth 2.0 에 대하여2021-11-27 18:06:07안녕하세요. 오늘은 OAuth 2.0 에 대하여 알아보겠습니다. ▣ OAuth 2.0 이해를 위한 용어 정리 1. 인증 (Authentication) - 신원을 확인하는 것 자신이 A 라고 주장하는 고객이 정말로 A 본인이 맞는 것인지 확인하는 것을 뜻합니다. 예를 들어 앱을 통해 계좌를 개설할 때 주민등록증 사진, 이름, 생년월일, 휴대폰인증 등이 요구되는데 이러한 부분이 인증에 해당합니다. 2. 승인 (Authorization) - 권한을 부여하는 것 통제된 자원에 대해 자원의 주인이 클라이언트 접근에 대해 행하는 승낙이나 동의를 뜻합니다. ▣ OAuth 2.0 의 등장 배경 일반적인 인증 방식으로는 아이디와 비밀번호로 로그인 하는 방식이 많이 사용되어 왔습니다. 서버는 클라이언트로부터 아이디와 비밀..
- [ IT 기타 ]OSI 7계층2021-10-27 23:05:57안녕하세요. 이번에는 OSI 7계층에 대해 알아보려고 합니다. ▣ OSI 7계층이 뭐야? OSI 7계층은 국제표준화기구(ISO, International Organization for Standardization)에서 개발한 모델로 네트워크 통신 과정을 7계층으로 나눠 설명한 것입니다. ▣ 왜 7계층으로 나눈거지? 계층을 나눔으로 인해 각 계층은 독립적인 역할을 할 수 있습니다. 네트워크 통신에 문제가 발생했을 경우 어떤 계층에서 문제가 발생했는지 파악할 수 있고 이상이 생긴 계층만 고칠 수 있습니다. ▣ 7계층 종류는? OSI 7계층은 다음과 같이 7계층으로 나뉘어 집니다. Layer 7. 응용 계층 (Application Layer) 최상위 계층으로 애플리케이션(프로그램)이 네트워크에 접근할 수 있게..
- [ IT 기타 ]프로세스(Process)와 스레드(Thread)2021-10-25 21:17:25이번에는 스레드와 프로세스에 대해 자세히 알아보려고 합니다. 하나의 프로세스는 여러개의 스레드를 가질 수 있습니다. ※ 프로세스(Process) - 메모리에 올라와 실행되고 있는 프로그램의 인스턴스 (독립적인 객체) - 운영체제로부터 시스템 자원을 할당받아 작업을 진행 ※ 스레드(Thread) - 프로세스 내에서 실행되는 작업의 단위 - 스레드들은 프로세스에 할당된 메모리, 자원 등을 공유 그림을 표현하면 다음과 같이 표현 할 수 있을 것 같습니다. 출처 https://gmlwjd9405.github.io/2018/09/14/process-vs-thread.html https://ybdeveloper.tistory.com/20 https://goodgid.github.io/What-is-Thread/ h..
- [ IT 기타 ]런타임(Runtime) 이란?2021-10-25 20:17:24Node.js 를 Javascript 런타임이라고 부르곤 합니다. 그렇다면 런타임(Runtime)은 어떤 의미일까요? 런타임이란, 운영체제 위 또는 운영체제 자체에서 실행되면서 특정 프로그래밍 언어가 구동될 수 있는 환경이라고 합니다. 즉 그림으로 표현하자면 다음과 같이 표현할 수 있을 것 같습니다. 출처목록 https://noelyppa.tistory.com/13 https://asfirstalways.tistory.com/99 https://spaghetti-code.tistory.com/35
- [ IT 기타 ]클라이언트와 서버간에 RSA 암호화/복호화를 이용한 통신 과정2021-09-18 23:55:13안녕하세요. 오늘은 클라이언트와 서버간에 RSA 암호화/복호화를 이용하여 통신하는 과정을 리뷰해볼려고 합니다. 사실 이 과정은 https 를 적용하면 http 통신 과정에서 자동으로 이루어지는 내용이긴 하지만 직접 구현한다면 이런 과정으로 구현 할 수도 있다 라는 것을 보여드리고자 리뷰를 하게 되었습니다. 그럼 시작하도록 하겠습니다. :) 1. 랜덤문자열과 타임스탬프가 섞인 32자인 문자를 생성합니다. 이것을 '토큰'이라 명명하겠습니다. 2. 서버에 보낼 데이터들을 aes-256-cbc 알고리즘으로 암호화 합니다. (이 때, 방금 생성한 토큰을 암호화 키로 사용합니다.) 3. 암호화 키로 사용한 토큰을 서버의 비밀키에 대응하는 공개키로 암호화 합니다. 4. 토큰으로 암호화한 데이터와 공개키로 암호화한 토..
- [ IT 기타 ]https 동작 원리에 대하여2021-01-02 21:44:54[ 인증서 발급 과정 ] 1. CA 기관으로부터 SSL 인증서 발급 인증된 CA 기관으로부터 SSL 인증서를 발급 받습니다. (Let's Encrypt, Thawte SSL 등) 발급된 인증서에는 다음과 같은 정보가 있습니다. - 발급대상 (예. example.com) - 발급대상의 공개키 (예. 발급자로부터 인증받은 example.com 의 공개키) - 발급자 (example.com 의 인증서를 발행한 인증기관(CA)) 이러한 인증서의 주요 정보를 모아 SHA256 등의 해쉬 알고리즘을 이용하여 해쉬합니다. 이렇게 해서 나온 해쉬값을 인증서의 Finger Print (지문) 이라고 합니다. 2. 인증서의 발급자 서명(디지털 서명) 인증서 발급자인 인증기관(CA)은 CA에서 소유한 private key(..