전체 글 16

Diffie-Hellman (디피-헬만) 키 교환

배경 :Diffie Hellman 알고리즘은 1976년 발표된 비밀키 교환 방법입니다.이산 로그 문제에 대해 그 안전성을 두고 있는 알고리즘입니다. 이산 로그 문제이산 로그 문제에 대해 알아보기 전에 일단 수식에 대해 이해해 보겠습니다.y = g^x (mod p)위 사진에서 뒤에 나오는 Mod 연산자는 모듈러 연산이라고 합니다. 나누기를 한 나머지 값을 뜻합니다.그럼 y는 g에 x제곱한 값을 p로 나눈 나머지 값이라는 겁니다.여기서 g, x, p를 알고 있으면 y를 구하는 건 쉽지만, 만약 y, g, p를 알고 있어도 x를 알기 어렵다는 특징을 말합니다. Diffie-Hellman 키 교환 : 암호화는 크게 비대칭키와 대칭키 암호화 알고리즘.현대 암호화는 키를 가지고 암복호화를 진행합니다. 암호화와 복호..

TIL 2024.09.10

블록체인과 비트코인

블록체인블록체인(Blockchain)은 분산 컴퓨팅 기술을 기반으로 한 데이터 위변조 방지 기술입니다. 이 기술은 비즈니스 네트워크 내에서 정보를 투명하게 공유할 수 있도록 하는 데이터베이스 메커니즘입니다. 기존 방식은 하나의 중개기관을 두고 여러 기기들이 연결됩니다.하지만!!  기존 방식을 넘어선 블록체인 기술은 데이터를 누구나 볼 수 있게 하고, 모든 참여자가 서로의 무결성을 보장합니다.블록체인 기술은 데이터를 '블록'이라는 소규모 데이터 단위로 나누고, 이 블록들을 체인 형태로 연결합니다. 이 데이터들은 P2P 방식을 기반으로 한 분산 데이터 저장 환경에 저장되며, 누구라도 임의로 수정할 수 없고 누구나 변경 결과를 열람할 수 있는 분산 컴퓨팅 기술입니다.간단히 말해, 블록체인은 P2P 방식 기반으..

TIL 2024.08.31

런타임 데이터 영역

자바 가상 머신 JVM의 런타임 데이터 영역은 자바 애플리케이션을 실행할 때 사용되는 데이터들이 저장되는 메모리 공간입니다. 런타임 데이터 영역은 크게 다섯 가지 영역으로 나뉘어집니다.메서드 영역 ( Method Area )힙 영역 ( Heap )스택 영역 ( Stack )PC 레지스터 ( Program Counter Register )네이티브 메서드 스택 ( Native Method Stack )여기서 또 크게 2가지로 나눌 수 있습니다. Thread를 공유하는 영역과 공유하지 않는 영역Thread가 공유하지 않는 역영 ( Java )PC 레지스터 영역스택 영역네이티브 메서드 스택Thread가 공유하는 영역 ( Java )힙 영역메서드 영역 ( ~ Java 7 )메타스페이스 영역 ( Java 8 ~ )..

백엔드 2024.08.14