목록2025/01/10 (2)
6kittylog

아마도 중간자 공격을 말하는 것 같다. 접속해보면 이렇게 intercept하고 send할 수 있는 형태이다. Alice(개인키 a)meBobshared secret=K1->intercept->send->shared secret=K2shared secret=K1iv, ciphertext이것 역시 K1으로 만들어짐 이러면 구해야 할 값은 K1이다. pow(alice가 처음 보낸 값,alice에게 보낼 때 사용한 key,p)하면 K1을 구할 수 있다. 내가 쓸 key와 내용을 random으로 만들어준다 deriving symmetric keys에서 사용했던 코드 살짝 바꿔서 플래그를 구하면 된다
+/CRYPTO
2025. 1. 10. 06:45
diffie-hellman
cryptohack starter 스테이지 하나씩 풀어보자 정수 modulo N으로 이루어진 set은 덧셈과 곱셈을 포함하여 R이 된다. n=p(소수)일 때, set 내 모든 요소의 역원은 존재한다. 때문에 R은 F가 가능하다. 이 F를 finite field(?) Fp라고 한다. Diffie-Hellman은 큰 소수인 유한체 Fp의 element들로 이루어진다. 문제) p=991과 F(991)의 element g=209가 주어졌을 때, find the inverse element d such that g*d(mod991)=1 파이썬 코드를 짜서 해결하자 for i in range(0,990): res=(i*209)%991 if res==1: print("inverse: %d"..
+/CRYPTO
2025. 1. 10. 04:23