목록분류 전체보기 (214)
각진 세상에 둥근 춤을 추자
암호 키 관리 암호 키 관리는 암호화 시스템의 핵심 요소로 암호화 및 복호화를 위한 대칭키와 비대칭키 생성, 저장, 배포, 교체, 폐기 등의 전체 과정을 포함한다. 암호화 시스템의 보안성은 암호 알고리즘 자체 뿐만 아니라 암호 키를 안전하게 관리하는 방법에 크게 의존한다. 암호 키 관리에는 다음과 같은 주요 단계들이 포함된다. 1. 키 생성: 안전한 암호화를 위해 암호키를 생성하는 과정이다. 주로 난수 발생기를 사용해 예측 불가능한 키를 생성하며, 대칭키 또는 비대칭키로 사용할 수 있다. 2. 키 저장: 생성된 키를 안전하게 저장하는 과정이다. 키는 일반적으로 보안성이 높은 저장소에 저장하거나, 암호화된 형태로 파일에 저장된다. 3. 키 배포: 암호화 통신을 위해 키를 각 당사자에게 안전하게 전달하는..
암호키 생성 과정 1. 사용자 입력: 사용자가 저장하고자 하는 정보, 예를 들어 '12345'를 입력한다.2. 데이터 전송: 사용자는 입력한 정보를 서버로 전송한다. 이때 전송되는 정보는 원본 '12345'이다.3. 서버 암호화 처리: 서버는 수신한 원본 데이터 암호화 작업을 진행한다. 암호화 알고리즘을 통해 '12345'를 보안성이 높은 형태(예시: '$%^#@!@#!')로 변환한다.4. 암호화된 데이터 저장: 서버는 암호화된 값을 생성한 후, 해당 암호화된 값과 사용자를 식별할 수 있는 식별자를 함께 데이터베이스로 전송한다.5. 데이터베이스 저장: 데이터베이스는 암호화된 값과 사용자 식별자를 저장한다. 암호키 생성 방식 1. 난수발생기(Random Big Generator, RGB)를 사용하여 키를..
[이전 게시글 요약]2024.08.22 - [Java] - 개발자 도구 페이로드 평문 패스워드 노출: 클라이언트 측 RSA 암호화를 활용한 로그인 (1) 개발자 도구 페이로드 평문 패스워드 노출: 클라이언트 측 RSA 암호화를 활용한 로그인 (1)스프링 시큐리티 로그인 시 패스워드 노출 문제와 보안 위험성 웹 애플리케이션에서 스프링 시큐리티를 사용해 로그인 기능을 구현할 때, 사용자가 입력한 패스워드가 서버로 전송되기 전에 페this-circle-jeong.tistory.com 로그인 시 클라이언트 측에서 패스워드를 RSA로 암호화하여 서버에 전송하는 방식은 개발자 도구의 네트워크 탭에서 평문 패스워드가 노출되는 것을 방지하는 효과적인 방법이다. 이때 클라이언트가 서버에 공개키를 요청하는 시점은 "로그인..
스프링 시큐리티 로그인 시 패스워드 노출 문제와 보안 위험성 웹 애플리케이션에서 스프링 시큐리티를 사용해 로그인 기능을 구현할 때, 사용자가 입력한 패스워드가 서버로 전송되기 전에 페이로드에서 평문으로 노출되는 문제가 발생한다. 이는 개발환경에서 테스트나 디버깅을 하다 보면 쉽게 확인할 수 있는 부분인데,이러한 평문 패스워드의 노출은 보안에 있어 잠재적인 위험 요소가 될 수 있다. 패스워드 평문 노출 문제점 패스워드가 평문으로 전송된다는 점은, 만약 해당 패킷이 악의적인 접근에 의해 탈취될 경우 사용자의 민감한 정보가 쉽게 유출될 수 있음을 의미한다. 특히, 네트워크 중간에서 패킷을 가로채는 MITM(Man-In-The-Middle) 공격이나 악성 스니핑 도구를 통해 이러한 정보가 악용될 가능성이 있다...
쉘 스크립트(Shell Script)란?리눅스, 유닉스 등과 같은 운영 체제에서 명령어들을 자동으로 실행하기 위해 작성된 스크립트 파일이다. 해당 스크립트 파일은 사용자가 직접 터미널에 입력하는 명령어를 모아놓은 것으로, 한꺼번에 여러 명령어를 실행하거나 반복적인 작업을 자동화할 때 유용하다.쉘 스크립트 파일은 일반적으로 .sh 확장자를 사용한다.예를 들어, 간단한 쉘 스크립트 파일은 다음과 같다.#!/bin/bashecho "Hello, World!""#!/bin/bash" - 스크립트가 bash 쉘에서 실행될 것임을 명시'echo' - "Hello, World!" 라는 문자열을 출력하는 명령어 기본 커맨드 1. 'echo'- 메시지 또는 변수 값을 출력한다.echo "Hello, World!"echo..
1. VM - Edit - Virtual Network Editor 2. Vnet8 - Change Settings 3. 두 옵션의 체크박스를 해제 후 저장 (Apply) 4. 다시 해제했던 두 옵션의 체크박스를 설정 후 저장 (Apply) [실행 성공]
React Native란 페이스북에서 만든 오픈 소스 프렝미워크로, JavaScript와 React를 사용하여 iOS와 Android를 위한 네이티브 애플리케이션을 개발하는 데 사용한다. 윈도우에서 React Native를 설치하는 과정은 맥과 약간 다르다. 1. Node.js 설치먼저 홈페이지에 접속해 Node.js를 설치한다.https://nodejs.org/en/ Node.js — Run JavaScript EverywhereNode.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.nodejs.org 현재 최신 버전은 22.1.0이다.하지만 LTS 버전으로 다운받는다 (LTS: Long Term Support, 오랫동안 지원하..
timedatectl Local Time (현지 시간)시스템이 현재 표시하는 지역 시간 (일반적으로 사용자가 보는 시스템 시간) Universal Time (세계표준시간, UTC)세계표준시간(Coordinated Universal Time, UTC)으로 시스템의 현재 시간을 UTC 표준으로 표시한 것 RTC Time (Real-Time Clock, 실시간 시계)시스템의 하드웨어 시계 또는 실시간 시계의 시간으로 시스템이 꺼져있을 때도 시간을 기록# Local Time (시스템 시간) 출력date RTC time을 Local time으로 설정 timedatectl set-local-rtc 1
1. VMware 실행 후 VM > Settings 2) Options > Shared Folders: Always enabled 체크 후 공유 폴더를 추가한다 3. VMware의 해당 폴더에 가면 공유 폴더가 위치하고 있다. cd /mnt/hgfs
1. JDK(Java Development Kit) 설치 https://www.oracle.com/java/technologies/downloads/#java8-windows Download the Latest Java LTS Free Subscribe to Java SE and get the most comprehensive Java support available, with 24/7 global access to the experts. www.oracle.com java -version 2. 환경변수 설정 1) 윈도우 + R > sysdm.cpl 입력 > 고급 > 환경변수 2) 시스템 변수 > 새로 만들기 변수 이름: JAVA_HOME 변수 값: JDK가 설치된 경로 3) 시스템변수 > Path > ..