BACKEND/Security(3)
-
RSA, 제대로 이해하기 (1)
안녕하세요. 오늘은 요즘에 딥하게 빠져버린 암호학 중 필수 개념인 RSA (textbook-RSA)에 대해 알아보고자 합니다. **************** INDEX ***************** RSA? ✔️ Key Generation ✔️ Key Distribution ✔️ Encryption ✔️ Decryption Effective En/Decryption - square-and-multiply - CRT Attack - CCA - Broadcast attack ******************************************** 📚 RSA? RSA는 전 세계에서 가장 많이 사용되는 공개키 암호 알고리즘입니다. 오랜시간 지속해서 사용하고 있는 아주 중요한 알고리즘이라 꼭..
2021.10.14 -
CRT, Modulo Operation
***************** INDEX ***************** 👾 모드연산 🤖 Chinese Remainder Theorem ******************************************** 모드연산 암호학에서 빠질 수 없는 모드연산을 기본으로 암호학에서 사용하는 수학적인 기법들을 알아보고자 합니다. 이 포스팅은 모드연산을 기본적으로 알고 있다는 가정하에 작성하겠지만, 그래도 모드연산을 가볍게 훑고만 가겠습니다. 모드연산? 나눗셈을 해서 나머지를 구하는 연산. 바늘이 하나밖에 없는 시계연산 $A \bmod B = C$ 모드연산에서 기본적으로 $B$가 동일하면 합산 가능합니다. ex) $(2 \bmod 5) + (4 \bmod 5) = (2+4) \bmod 5 = 1$ ✔️ 모드..
2021.09.22 -
PRNG, 제대로 이해하기
***************** INDEX ***************** 🎲 Random Number 🎫 Randomness ⚛️ Entropy 🔗 RNG 🎟 PRNG ******************************************** Random Number ? 난수는 예측 불가능성을 만족하기 위해 무작위하게 생성되는 값을 말합니다. 이름에서 알 수 있듯이 정말 랜덤한 값을 뜻하죠. 암호학에서 난수는 굉장히 중요한 요소입니다. 아래와 같은 상황에서 사용하곤 합니다. 1. 대칭키 자체, 공개키 암호에서의 개인키 2. 블록암호 운용모드 - 초기화 벡터(IV), 카운터(CTR) 생성 3. 패스워드 기반 암호 - 솔트(Salt) 생성 그런데, 사용되는 난수들은 정말 랜덤할까요? 아주 예전에 C언..
2021.09.16