INTP 개발자
close
프로필 배경
프로필 로고

INTP 개발자

  • 분류 전체보기 (392) N
    • Java (54)
      • 소개 (2)
      • 기본 문법 및 OOP (9)
      • Java API (0)
      • Java 응용 프로그래밍 (0)
      • Java 8+ (0)
      • Java 외부 라이브러리 (0)
    • Spring (0)
      • Spring Core (0)
      • Spring Web (0)
      • Spring Data (0)
      • Spring Infra (0)
    • Docker (1) N
    • Messaging & Event (3)
      • EDA(Event Driven Architectu.. (2)
      • Kafka (1)
    • CS (17) N
      • Architecture (1) N
      • Newtwork (0)
      • OS(Operating System) (0)
      • Algorithms (0)
      • 면접 준비 (7)
      • 네트워크 (2)
      • HTTP (6)
      • 알고리즘 (1)
    • Web (13)
    • AWS (6)
    • Spring Framework (33)
    • Spring Boot (10)
    • Spring Data (22)
      • JPA (14)
      • Query DSL (7)
      • Redis (1)
    • Spring Security (9)
    • Spring Batch (4)
    • MyBatis (10)
    • Front-End (51)
      • JS (27)
      • Vue.js (17)
      • React (5)
      • JQuery (0)
      • d3.js (2)
    • DBMS (24)
      • SQL, RDBMS (16)
      • MongoDB (5)
      • Redis (3)
    • Kafka (3)
    • 리눅스 (Linux) (4)
    • 디자인 패턴 (3)
    • VCS (8)
    • API (0)
    • TOOL (3)
    • Reading Book (28)
      • 이펙티브 자바 (11)
      • Clean Code (10)
      • 1분 설명력 (4)
      • HOW TO 맥킨지 문제해결의 기술 (3)
    • C# (4)
    • NSIS (6)
    • JSP & Servlet (65)
      • 개념 (42)
      • 실습 (23)
    • ETC (11)
  • 홈
  • 태그
RSA를 이용하여 페이로드(ex. 비밀번호) 암호화하기 (Vue.js / Spring Boot)

RSA를 이용하여 페이로드(ex. 비밀번호) 암호화하기 (Vue.js / Spring Boot)

0. 상황 Vue.js에서 아이디(userId)와 비밀번호(userPassword)를 입력하여 로그인을 해봅니다. 개발자 모드(F12)를 켜서 페이로드를 살펴보면 다음과 같이 사용자가 입력한 아이디와 비밀번호를 바로 확인할 수 있습니다. 보안을 위해 비밀번호(userPassword)를 암호화하여 요청하고 싶습니다. 이때 우리는 바로 전 포스팅에서 생성한 비대칭 키 RSA를 사용할 것입니다. 1. Vue.js에서 RSA 공개키로 암호화 JavaScript 라이브러리인 jsencrypt를 사용하여 암호화를 수행할 것입니다. 이를 위해 먼저 jsencrypt를 설치해줍니다. npm install jsencrypt 그런 다음, Vue.js 컴포넌트에서 RSA 공개키로 암호화를 수행하는 코드를 작성합니다. 저는 ..

  • format_list_bulleted Web
  • · 2024. 3. 12.
  • textsms
OpenSSL을 통해 RSA 공개키, 개인키 생성하기

OpenSSL을 통해 RSA 공개키, 개인키 생성하기

1. OpenSSL 설치하기 Windows: https://slproweb.com/products/Win32OpenSSL.html 혹은 https://code.google.com/archive/p/openssl-for-windows/downloads 등에서 OpenSSL을 다운로드하여 설치하면 됩니다. Mac: brew install openssl 2. openssl.exe 파일 위치로 이동하기 openssl-0.9.8k_X64\bin\openssl.exe 위치로 이동해줍니다. 3. private_key 생성 1) private_key.pem 생성 openssl-0.9.8k_X64\bin> openssl genrsa -out private_key.pem 1024 생성된 private_key.pem (PK..

  • format_list_bulleted Web
  • · 2024. 3. 12.
  • textsms
웹 보안을 위한 XSS, CSRF 방어

웹 보안을 위한 XSS, CSRF 방어

XSS: Cross-Site Scripting XSS는 공격자가 악의적인 스크립트를 웹 페이지에 삽입하는 공격입니다. 해당 스크립트 코드는 게시판이나, 이미지, 웹 메일 등에 삽입될 수 있습니다. 삽입된 스크립트는 사용자의 브라우저에서 실행되며, 공격자에게 사용자의 정보를 노출하거나 악의적인 행동을 수행할 수 있습니다. 공격자가 위와 같은 악의적인 스크립트를 취약한 웹 페이지에 삽입합니다. 사용자가 해당 페이지를 열면, 악의적인 스크립트가 실행되어 예상치 못한 동작을 수행합니다. XSS는 사용자가 웹 사이트를 신용하여 악의적인 스크립트를 클릭한 경우로, 주로 사용자(클라이언트)를 대상으로 한 공격입니다. XSS 해결 1: 이스케이프 처리 XSS 취약점은 웹 어플리케이션 사용자로부터 입력받은 데이터 값을 ..

  • format_list_bulleted Web
  • · 2023. 11. 13.
  • textsms
CORS(Cross-Origin Resource Sharing) 이해와 해결 방법

CORS(Cross-Origin Resource Sharing) 이해와 해결 방법

CORS CORS (Cross-Origin Resource Sharing)는 'Cross-Origin Resource Sharing'의 약어로, 웹 보안 메커니즘 중 하나입니다. 이 메커니즘은 웹 브라우저에서 실행되는 웹 페이지가 다른 웹사이트(출처)에서 데이터를 요청할 때 발생할 수 있는 보안 정책 중 하나입니다. 서로 다른 출처(origin) 간에 데이터 공유하려하면 이를 제한하는 보안 메커니즘(SOP, Same-Origin Policy)에 의해 CORS 오류가 발생하게 됩니다. 이러한 CORS 에러를 해결하기 위해선 CORS를 설정하여, 출처가 다른 서버 간의 리소스 공유를 허용해주어야합니다. 출처(Origin): Protocol + Hostname(Domain) + Port · 도메인(Hostna..

  • format_list_bulleted Web
  • · 2023. 9. 18.
  • textsms
웹 데이터 저장: 로컬 스토리지, 세션 스토리지, 쿠키

웹 데이터 저장: 로컬 스토리지, 세션 스토리지, 쿠키

웹 어플리케이션은 사용자 데이터를 저장하고 관리하는데 다양한 방법을 제공합니다. 그중 클라이언트 측에서 데이터를 저장하고 관리하기 위한 방법으로 `로컬 스토리지(Local Storage)`, `세션 스토리지(Session Storage)` 그리고 `쿠키(Cookies)`가 있습니다. 로컬 스토리지 (Local Storage) 로컬 스토리지는 브라우저에서 데이터를 영구적으로 저장하는데 사용됩니다. 이 데이터는 브라우저를 종료해도 유지되며, 사용자의 로컬 환경에서 접근이 가능합니다. 주로 사용자 설정과 같은 데이터를 저장하는데 유용합니다. 데이터는 문자열로 저장됩니다. 브라우저마다 별도로 유지되며, 도메인간에 공유되지 않습니다. 저장 용량은 일반적으로 5~10MB이고, 브라우저마다 다를 수 있습니다. 세션 ..

  • format_list_bulleted Web
  • · 2023. 9. 18.
  • textsms
Jar와 War의 차이(spring initializr packaging)

Jar와 War의 차이(spring initializr packaging)

JAR와 WAR은 자바 프로그램 및 관련 자원을 패키지하고 배포하기 위한 파일 형식입니다. 프로젝트 생성시 `Packaging` 옵션에서 JAR 혹은 WAR를 선택하여 해당 형식으로 어플리케이션 패키징하여 배포할 수 있습니다. JAR (Java Archive) 확장자: .jar JAR 파일은 자바 클래스 파일, 리소스 파일 (이미지, 설정 파일 등) 및 라이브러리(JAR 파일 자체 또는 외부 라이브러리)를 하나의 아카이브 파일로 패키징합니다. 일반적으로 JAR 파일은 자바 클래스 파일과 그 클래스들이 사용하는 이미지, 설정 파일, 텍스트 파일, 라이브러리 등을 포함합니다. 이것은 다른 프로그램에서 재사용되거나 실행될 수 있도록 도와줍니다. 예를 들어, 다른 사람이 만든 유용한 코드 조각을 JAR 파일로 ..

  • format_list_bulleted Web
  • · 2023. 9. 1.
  • textsms
  • navigate_before
  • 1
  • 2
  • 3
  • navigate_next
공지사항
전체 카테고리
  • 분류 전체보기 (392) N
    • Java (54)
      • 소개 (2)
      • 기본 문법 및 OOP (9)
      • Java API (0)
      • Java 응용 프로그래밍 (0)
      • Java 8+ (0)
      • Java 외부 라이브러리 (0)
    • Spring (0)
      • Spring Core (0)
      • Spring Web (0)
      • Spring Data (0)
      • Spring Infra (0)
    • Docker (1) N
    • Messaging & Event (3)
      • EDA(Event Driven Architectu.. (2)
      • Kafka (1)
    • CS (17) N
      • Architecture (1) N
      • Newtwork (0)
      • OS(Operating System) (0)
      • Algorithms (0)
      • 면접 준비 (7)
      • 네트워크 (2)
      • HTTP (6)
      • 알고리즘 (1)
    • Web (13)
    • AWS (6)
    • Spring Framework (33)
    • Spring Boot (10)
    • Spring Data (22)
      • JPA (14)
      • Query DSL (7)
      • Redis (1)
    • Spring Security (9)
    • Spring Batch (4)
    • MyBatis (10)
    • Front-End (51)
      • JS (27)
      • Vue.js (17)
      • React (5)
      • JQuery (0)
      • d3.js (2)
    • DBMS (24)
      • SQL, RDBMS (16)
      • MongoDB (5)
      • Redis (3)
    • Kafka (3)
    • 리눅스 (Linux) (4)
    • 디자인 패턴 (3)
    • VCS (8)
    • API (0)
    • TOOL (3)
    • Reading Book (28)
      • 이펙티브 자바 (11)
      • Clean Code (10)
      • 1분 설명력 (4)
      • HOW TO 맥킨지 문제해결의 기술 (3)
    • C# (4)
    • NSIS (6)
    • JSP & Servlet (65)
      • 개념 (42)
      • 실습 (23)
    • ETC (11)
최근 글
인기 글
최근 댓글
태그
  • #servlet
  • #jsp
  • #mybatis
  • #회원 관리
  • #이펙티브 자바
  • #querydsl
  • #환경 세팅
  • #Java
  • #JDBC
  • #게시판
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바