Posts
N1CTF 2023 Writeup by Never Stop Exploiting
Crypto e2W@rmup Sovled by: tl2cents ่ฏฆ็ป† wp ๆ›ดๆ–ฐ่‡ณๅšๅฎข https://tl2cents.github.io/ ่ฟ™็งๅฝขๅผ็š„ nonce ็”Ÿๆˆๆ–นๅผๆฅ่‡ชไบŽ Bitcoin ไธญไธ€็ง็ชƒๅ–็ง้’ฅ็š„ๅŽ้—จ ECDSA ็ญพๅใ€‚่ฏฆๆƒ…ๅฏไปฅๅ‚่€ƒ่ฟ™็ฏ‡่ฎบๆ–‡๏ผšthe curious case of the half-half bitcoin ecdsa noncesใ€‚

JustCTF 2022 Writeup by Never Stop Exploiting
Crypto Frosty We could control the public key of verification, so we just let z=c, and make public key equal to the generator. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 from winpwn import * import json import subprocess io = remote('frosty.nc.jctf.pro', 4445) io.recvuntil('hashcash -mb26 ') check = io.recv(8) p = subprocess.Popen('E:\hashcash-0.32-win32-exe\hashcash-0.32-win32-exe\hashcash.exe -mb26 ' + check, shell=True, stdout=subprocess.PIPE) out, err = p.

zer0pts CTF-2022 Writeup
Flag Checker https://blog.cirn09.xyz/2022/03/23/flag-checker/ Zer0TP Every time we register a new username, a secret is generated, and we need to guess out the secret by some side channel attack. Notice that we can rename , so the username is one side channel attacking parameter. Basically, we are presented with a following challenge: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 import os import base64 import zlib import hashlib def func(fld_id, username, secret): assert 4 <= len(username) < 50 token = zlib.