HTTPS, Cookie, 인증/보안

요니·2022년 10월 25일
0

세상에..! 블로그 2주 밀렸다

HTTP

  • Hyper Text Transfer Protocol Secure socket layer
  • HTTP보다 상대적으로 안전한 방법, 데이터 제공자의 신원 보장
  • 암호화하기 때문에 중간자 공격에 상대적으로 안전함
$ brew install mkcert
//homebrew를 통해 mkcert 설치

$ mkcert -install

$ mkcert -key-file key.pem -cert-file cert.pem localhost 127.0.0.1 ::1
//로컬을 인증된 발급기관으로 추가

node.js https 모듈

const https = require('https')
const fs = require('fs')

https
	.createServer(
    {
    	key: fs.readFileSync(__dirname + '/key.pem','utf-8'),
        cert: fs.readFileSync(__dirname + 'cert.pem','utf-8'),
    },
    function (req, res){
    	res.write('HTTPS SERVER SUCCESSFULLY CREATED')
        res.end();
    }
    )
    .listen(3001)

Hashing

  • 어떤 문자열에 연산을 적용하여 다른 문자열로 변환하는것
  1. 모든 값에 대해 해시값을 계산하는데 오래걸리지 않아야 한다
  2. 최대한 해시값을 피해야하며, 모든 값은 고유한 해시값을 가진다
  3. 아주 작은 단위의 변경이라도 완전히 다른 해시값을 가져야한다

내가만든 쿠키......

  • 서버에서 클라이언트에 데이터를 저장
  1. 도메인옵션과 도메인이 일치해야 쿠키 전송 가능
  2. 세부 경로 Path가 일치해야됨
  3. MaxAge는 쿠키의 유효 시간을, Expires는 유효 기간을 정함
  4. Secure = true일때는 HTTPS를 이용하는 경우에만 쿠키 전송 가능
  5. HttpOnly = true 일대ㅐ는 자바스크립트에서 쿠키 접근이 불가함
  6. SameSite
  • Lax: Cross-Origin 요청이면 GET 메소드에서만 쿠키 전송 가능
  • Strict: Cross-Origin이 아닌 SameSite인 경우에만 가능
  • None: 항상 가능
profile
개발자가 될래요

0개의 댓글