일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 소프트맥스 함수
- flag
- 우분투
- 리뷰
- 아파치
- C언어
- 책
- 딥러닝
- FastAPI
- 파이썬
- Python Challenge
- Python
- PHP
- Apache2
- CTF
- 코딩
- AdaGrad
- 순전파
- 설치
- PICO CTF
- sgd
- 백준
- 기울기
- 오차역전파법
- HTML
- 신경망
- picoCTF
- 신경망 학습
- PostgreSQL
- 역전파
Archives
- Today
- Total
Story of CowHacker
PicoCTF 10번 문제 ( Mind your Ps and Qs ) 본문
728x90
안녕하세요 Cowhacker입니다.
https://play.picoctf.org/practice/challenge/162
picoCTF
play.picoctf.org
PicoCTF 10번 문제 풀어 보겠다.
Ps와 Qs를 염두하라?
의역으로는
의 제목인 10번 문제다.
RSA에서 소문자 e 값은 문제가 있다, 하지만 N은 어떨까? 너는 해독할 수 있는가?
라고 하는 거 같다.
values를 설치했다.
확장자를 txt로 바꾸고
열어봤다.
RSA암호다.
https://ko.wikipedia.org/wiki/RSA_%EC%95%94%ED%98%B8
RSA 암호 - 위키백과, 우리 모두의 백과사전
RSA 암호는 공개키 암호시스템의 하나로, 암호화뿐만 아니라 전자서명이 가능한 최초의 알고리즘으로 알려져 있다. RSA가 갖는 전자서명 기능은 인증을 요구하는 전자 상거래 등에 RSA의 광범위한
ko.wikipedia.org
위에 표시해둔 대로
Python코드로 머리를 싸매 싸매 싸매....
었다.
후..

from factordb.factordb import FactorDB # 인수 분해 라이브러리다.
import gmpy2 # 부동 소수점 및 복합 소수점 게산을 하는 라이브러리에 대한 지원을 추가합니다.
c = 843044897663847841476319711639772861390329326681532977209935413827620909782846667
n = 1422450808944701344261903748621562998784243662042303391362692043823716783771691667
e = 65537
test = FactorDB(n) # n에 대해 인수 분해를 하는 구간이다.
test.connect() # 인수 분해 값을 unpack하는 구간이다.
p, q = test.get_factor_list() # p 와 q한테 인수 분해 한 값을 주는 구간이다. 즉, p와 q를 구하는 구간이다.
n2 = (p-1)*(q-1) # n2 즉 n값을 구하는 구간이다. ( 한번더 n을 구하는 이유는 공개된 e의 값이 한없이 적은 수기 때문에 한번더 e의 값을 구하기 위함이다. )
d = gmpy2.invert(e, n2) # ( gmpy2 = 큰 수를 계산 할수 있게 하는 녀석이다. ) e와 n2로 역원을 통해 d를 구한느 구간이다.
m = pow(c, d, n) # c의 d제곱한 값에 n으로 나누어 m을 구하는 구간이다.
print("bytevalue:",m) # m의 값을 출력하는 구간이다.
print(bytearray.fromhex(format(m,'x'))) # 바이트 값을 문자로 변환해 출력하는 구간이다.
저기서 n2!
n을 한번더 구한 이유는 e의 값이 적다는 이유도 있지만
문제의 핵심 내용이기에 한 번 더 구해본 거다.!!!
flag를 구했다.
10번 문제 풀었다.
R eal !!
S tres 받는 문제..
A ... 다신 이런 문제는..ㅠㅜ
728x90
'공부 > PicoCTF' 카테고리의 다른 글
PicoCTF 12번 문제 ( Tab, Tab, Attack ) (1) | 2022.04.03 |
---|---|
PicoCTF 11번 문제 ( Static ain't always noise ) (2) | 2022.03.14 |
PicoCTF 9번 문제 ( GET aHEAD ) (5) | 2022.02.02 |
PicoCTF 8번 문제 ( Stonks ) (2) | 2022.01.31 |
PicoCTF 7번 문제 ( Transformation ) (2) | 2022.01.08 |
Comments