2023-12-09から1日間の記事一覧
#redpwnctf2021 #!/usr/local/bin/python3 from Crypto.Util.number import * from Crypto.PublicKey import DSA from random import * from hashlib import sha1 rot = randint(2, 2 ** 160 - 1) chop = getPrime(159) def H(s): x = bytes_to_long(sha1(s)…
#justCTF_2020 #!/use/bin/env sage from sys import exit from hashlib import sha256 FLAG = open('./flag.txt').read() ec = EllipticCurve(GF(2**255-19), [0, 486662, 0, 1, 0]) p = ec.order() ZmodP = Zmod(p) G = ec.lift_x(9) ha = lambda x: x if …
EllipticCurveにおいて、であるようなもの、flobenious traceが1であるような曲線。このような曲線に対しては、SSSAAttackやSmart Attackによって、離散対数問題が多項式時間で解ける 楕円曲線の位数がであるとき、そのようなをanomalous primeといい、また…
#UTCTF https://ctftime.org/task/7803 Public Key 569581432115411077780908947843367646738369018797567841 Can you decrypt Jacobi’s encryption? def encrypt(m, pub_key): bin_m = ''.join(format(ord(x), '08b') for x in m) n, y = pub_key def encry…
#CDT #SVP #LLL
#TG:HACK2019 Handle this flag with care. It is from the 64 wizards and witches based in the Land of Encoding. VEcxOXtiZV9jYXJlZnVsX3doZW5fZHJvcHBpbmdfdGhlX2Jhc2V9 $ echo 'VEcxOXtiZV9jYXJlZnVsX3doZW5fZHJvcHBpbmdfdGhlX2Jhc2V9' | base64 -d TG…
#TAMUCTF19 https://ctftime.org/task/7712 My knapsack has a hole in it Cipher text: 11b90d6311b90ff90ce610c4123b10c40ce60dfa123610610ce60d450d000ce61061106110c4098515340d4512361534098509270e5d09850e58123610c9 Public key: {99, 1235, 865, 990…
#sandiegoctf2021
#sandiegoctf2021
#SECCON_CTF_2022_Quals #kurenaif from Crypto.Util.number import * from flag import flag p = getStrongPrime(512) q = getStrongPrime(512) e = 65537 n = p * q phi = (p - 1) * (q - 1) d = pow(e, -1, phi) print(f"n = {n}") print(f"e = {e}") pri…
#rarctf2021 from collections import namedtuple import random def moddiv(x,y,p): return (x * pow(y, -1, p)) %p Point = namedtuple("Point","x y") class EllipticCurve: INF = Point(0,0) def __init__(self, a, b, p): self.a = a self.b = b self.p…
#rtactf from Crypto.Util.number import getPrime, isPrime, inverse import os if __name__ == '__main__': # Plaintext (FLAG) m = int.from_bytes(os.getenv("FLAG", "FAKE{sample_flag}").encode(), 'big') # Generate key p = getPrime(600) q = getPr…
https://ctftime.org/task/7822 #pragyanctf #RSA #Wiener's_Attack Deeraj is experimenting with RSA. He is given the necessary RSA parameters. He realizes something is off, but doesn't know what. Can you help him figure it out? parameters.txt…
#OMH2021CTF jamal.pyとout.txtがもらえる import jamal_secrets from Crypto.Random.random import randrange from Crypto.Util.number import bytes_to_long, inverse, long_to_bytes p = 23913162461506241913954601592637284046163153526897774745274721…
#NevarLANCTF2019 https://ctftime.org/task/7612 3,9,13,15,18,7,20,1,4,14,5,21,6,2,17,10,8,16,12,11,19 JOWWASQLLWEIUSBAESIPL OWWAQAPKEQIOOQDZRDOUE EDEFBWIJMIKMLWECYEIRO DZSDMPWHLALKMELKUWQTW LDDLVIDWOSGINZUKKIZGD ZMHMDWAQYLISBVEPMPBQZ EBGIJQ…
from hashlib import sha256 from Crypto.Util.number import getRandomRange from Crypto.PublicKey import DSA from secret import proof_of_work, flag x = int.from_bytes(flag, 'big') assert x.bit_length() == 247 def baby_proof(): key = DSA.gener…
#LINECTF2022 #uninterested_challenge_list 0xe6b7c5a62d08e0216e1e7ed7948c96b74c0be9cd 0x49e1050393f885117de74e7a02d1091d67faa3d0 0xff07bbee67c3ab910000000000000000 0xe91f3200a87205d18a97bdf3bb3027c9f532c8a4 0x7e7b86c8624c9b597131bb883053b18…
#LINECTF2022 I have generated a RSA-1024 key pair: * public key exponent: 0x10001 * public key modulus: 0xa9e7da28ebecf1f88efe012b8502122d70b167bdcfa11fd24429c23f27f55ee2cc3dcd7f337d0e630985152e114830423bfaf83f4f15d2d05826bf511c343c1b13bef…
#inctf2021 #!/usr/bin/env python3 from BLS import G2ProofOfPossession as bls from secret import data, bytexor, fake_flag, flag from json import loads import sys class Unbuffered(object): def __init__(self, stream): self.stream = stream def…
#inctf2021 #!/usr/bin/env python3 import random import hashlib import os import gmpy2 import pickle from Crypto.Cipher import AES from Crypto.Util.Padding import pad FLAG = open('flag.txt', 'rb').read() class RNG(): pad = 0xDEADC0DE sze = …
Cryptoはかなり簡単という印象だった。 pwnは面白い問題が出題されていたみたい webはguessyな問題が出たっぽい Forensics と Rev は難しい問題が出て、Miscは迷路探索系、OSINTはよく知らないけど1問でた
#HITCON_CTF_2022 from random import SystemRandom from Crypto.Cipher import AES from hashlib import sha256 from secret import flag rand = SystemRandom() def polyeval(poly, x): return sum([a * x**i for i, a in enumerate(poly)]) DEGREE = 128 …
#joseph #downunderctf2021 #!/usr/bin/env sage proof.arithmetic(False) # just makes things faster def get_3m4_prime(N): while True: p = random_prime(2^N - 1, lbound=2^(N-1)) if p % 4 == 3: return p def generate_key(L, n, m): p = get_3m4_pri…
#cyber_apocalypse_ctf_2021 from Crypto.Util.number import getPrime, bytes_to_long from random import randint FLAG = b'CHTB{??????????????????????????????????}' flag = bytes_to_long(FLAG) def keygen(): p, q = getPrime(1024), getPrime(1024) …
#cryptoctf2021 #!/usr/bin/env python3 from Crypto.Util.number import * import sys from flag import flag def tonelli_shanks(n, p): if pow(n, int((p-1)//2), p) == 1: s = 1 q = int((p-1)//2) while True: if q % 2 == 0: q = q // 2 s += 1 else: …
#CrewCTF_2022 import sys import random from hashlib import sha256 from Crypto.Util.number import inverse import ecdsa from secret import FLAG curve = ecdsa.curves.SECP112r1 p = int(curve.curve.p()) G = curve.generator n = int(curve.order) …
略してco-CDH とも それぞれ位数、生成元を持つ群のペア と、その要素 where が与えられたときに、 を計算する問題 のときいわゆる普通のDiffie-Hellman Problem Decisional co-Diffie Hellman Problem 同様にco-DDH 位数の群のペアと、から where を計算し…
https://mcfx.us/archives/279/ https://kimtruth.github.io/2020/02/14/codegate2020-halffeed-crypto/ http://blog.leanote.com/post/xp0int/Halffeed https://balsn.tw/ctf_writeup/20200208-codegatectf2020quals/#halffeed https://github.com/xf1les/c…
#AeroCTF2019 https://ctftime.org/task/7765 Another implementation of the protection of our drawings. Again in Python. This time, we were told that everything is serious. どうやったらこんなに、という読みにくいコードが渡される。解読していく …