{"url":"https://cookies.hatenablog.jp/entry/2018/12/09/212052","image_url":"https://chart.apis.google.com/chart?cht=tx&chl=2%20%5Clg%20n","provider_url":"https://hatena.blog","title":"hxpctf2018 writeup blind","version":"1.0","published":"2018-12-09 21:20:52","author_name":"cookie-s","width":"100%","provider_name":"Hatena Blog","height":"190","categories":[],"blog_title":"cookies.txt\u3000\u3000\u3000\u3000\u3000\u3000.scr","type":"rich","blog_url":"https://cookies.hatenablog.jp/","html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fcookies.hatenablog.jp%2Fentry%2F2018%2F12%2F09%2F212052\" title=\"hxpctf2018 writeup blind - cookies.txt\u3000\u3000\u3000\u3000\u3000\u3000.scr\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","author_url":"https://blog.hatena.ne.jp/cookie-s/","description":"\u306a\u304b\u306a\u304b\u597d\u304d\u306a\u554f\u984c\u3067\u3057\u305f\u3002 \u554f\u984c #!/usr/bin/env python3 import os, random from Crypto.Cipher import AES aes = AES.new(os.urandom(16), AES.MODE_ECB) enc = lambda x: aes.encrypt(x.to_bytes(16, 'big')).hex() dec = lambda y: int.from_bytes(aes.decrypt(bytes.fromhex(y)), 'big') p = 0xfffffed83c17 # |G| = p mul = lambda \u2026"}