Extended GCD

2023. 2. 2. 18:36·Wargame/Cryptohack
728x90
반응형

1. intro

2. code 및 분석

2.1.  code

N/A

 

2.2. 분석

확장된 유클리드 호제법을 설명하는 문제이다.

 

결국

p * u + q * v = gcd(p,q)

의 공식을 만족하는 u와 v 중 최소값을 찾는 문제이다.

 

아래 포스팅과 같이 소스코드를 작성해보았고, 이를 적용하였다.

2023.02.02 - [Tips & theory] - Expanded Euclid's Algorithm - 확장된 유클리드 호제법.

 

Expanded Euclid's Algorithm - 확장된 유클리드 호제법.

서론 아직은 이걸 왜 알아야하는지 모르겠지만 일단 하는 공부 ㅋ 확장 유클리드 호제법 공식을 처음 봤을때 최소공배수인가라는 생각을 했고, 퇴근하며 운전하는 동안 머릿속으로 알고리즘을

wyv3rn.tistory.com

 

3. exploit

a = int(input())
a_s = a
b = int(input())
b_t = b

if a < b:
    a,b = b,a
    a_s, b_t = b,a

while 1:
    r = a % b
    if r == 0:
        GCD = b
        break
    a,b = b,r

print('GCD = ', GCD)

r = 0
s = 1
t = -1

while GCD != r:
    r = a_s * s + b_t * t
    if GCD == r:
        break
    if r > 0:
        t -= 1
    else:
        s += 1

print('s = ',s,'t = ',t)

r = 0
s = -1
t = 1

while GCD != r:
    r = a_s * s + b_t * t
    if GCD == r:
        break
    if r < 0:
        t += 1
    else:
        s -= 1

print('s = ',s,'t = ',t)

 

┌[wyv3rn🐲]-(/mnt/c/hacking)
└> python3 solve.py
32321
26513
GCD =  1
s =  18109 t =  -22076
s =  -8404 t =  10245
728x90
반응형
저작자표시 비영리 변경금지 (새창열림)

'Wargame > Cryptohack' 카테고리의 다른 글

Modular Arithmetic 2  (0) 2023.02.03
Modular Arithmetic 1  (0) 2023.02.03
Greatest Common Divisor  (2) 2023.02.01
You either know, XOR you don't  (0) 2023.02.01
Favourite byte  (0) 2023.01.31
'Wargame/Cryptohack' 카테고리의 다른 글
  • Modular Arithmetic 2
  • Modular Arithmetic 1
  • Greatest Common Divisor
  • You either know, XOR you don't
wyv3rn
wyv3rn
아저씨의 흔한 취미. wyv3rn#1249
  • wyv3rn
    think storage
    wyv3rn
  • 전체
    오늘
    어제
    • 분류 전체보기 (500) N
      • To do list (7) N
        • Doing (1) N
        • Complete (6)
      • Diary (35)
      • Tips & theory (77)
      • Kernel Exploit (27) N
        • Theory (15)
        • Exercise (5) N
      • Wargame (313)
        • pwn.college (34)
        • Dreamhack (148)
        • pwnable.kr (15)
        • Lord of Sqlinjection (3)
        • Cryptohack (20)
        • Root me (27)
        • CodeEngn (4)
        • Exploit Education (22)
        • ROP Emporium (8)
        • H4C (10)
        • Hackerchool (22)
      • CTF (41) N
        • Solved (39) N
        • Unsolved (2)
      • Script (0)
  • 블로그 메뉴

    • 홈
    • 방명록
  • 링크

  • 공지사항

    • PWN wargame 모음 (및 느낀점)
    • 비공개 글들에 대해.
    • 뭐라도 하나 얻어가시길...
  • 인기 글

  • 태그

    CANARY
    dreamhack
    tcache
    pwntools
    x86
    RTL
    la ctf
    root
    Buffer Overflow
    libc
    BOF
    hackerschool
    Me
    pwnable.kr
    lob
    32bit
    Format String Bug
    heap
    x64
    FSB
    phoenix
    cryptohack
    root-me
    docker
    rop
    _IO_FILE
    ROOT ME
    exploit education
    vtable
    64bit
  • 최근 댓글

  • 최근 글

  • 250x250
    반응형
  • hELLO· Designed By정상우.v4.10.3
wyv3rn
Extended GCD
상단으로

티스토리툴바