Boston Key Party CTF 2014 Crypto 200
来源:互联网 发布:管家婆软件下载地址 编辑:程序博客网 时间:2024/06/05 13:35
MITM II: Electric BoogalooCrypto : 200Chisa and Arisu are trying to tell each other two halves of a very important secret! They think they're safe, because they know how cryptography works---but can you learn their terrible, terrible secret? They're available as services at 54.186.6.201:12346 and 54.186.6.201:12345 respectively.http://bostonkeyparty.net/challenges/mitm2-632e4ecc332baba0943a0c6471dec2c6.tar.bz2
没什么可讲的,纯实现题。。。
#!/usr/bin/python# -*- coding: utf-8 -*-import base64import sysimport SocketServerimport mitmlibimport socketclass Person(object):def __init__(self, ip, port):self.s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)self.s.connect((ip, port))print "connected to %s" % ipdef gen_share(self):self.secretshare, self.publicshare = mitmlib.mkshare()def send_share(self):self.s.sendall(str(self.publicshare[0]) + "," + str(self.publicshare[1]))def recv_share(self):got = self.s.recv(2048).split(',')self.partpubshare = tuple([int(got[0]), int(got[1])])self.aeskey = mitmlib.mksecret(self.secretshare, self.partpubshare)def recv_check(self):msg = self.s.recv(400)#print msgcheck = mitmlib.decrypt(self.aeskey, msg)#print checkreturn checkdef send_enc(self, msg):self.s.send(mitmlib.encrypt(self.aeskey, msg))def recv_secret(self):return mitmlib.decrypt(self.aeskey, self.s.recv(400))def send_magic(self, magic):self.s.send(magic)def recv_magic(self):magic = self.s.recv(50)print magicif __name__ == '__main__':arisu = Person('54.186.6.201', 12345)chisa = Person('54.186.6.201', 12346)chisa.send_magic("アリスです")chisa.recv_magic()arisu.recv_magic()arisu.send_magic("千佐だよ")arisu.gen_share()chisa.gen_share()arisu.recv_share()arisu.send_share()chisa.send_share()chisa.recv_share()cnt = 0while cnt < 19:cnt += 1print cntcheck_a = arisu.recv_check()chisa.send_enc(check_a)check_b = chisa.recv_check()arisu.send_enc(check_b)secret = arisu.recv_secret()print secretchisa.send_enc(secret)print chisa.recv_secret()
0 0
- Boston Key Party CTF 2014 Crypto 200
- Boston Key Party CTF 2014 Crypto : 200
- Boston Key Party CTF 2014 Crypto 100
- Boston Key Party CTF 2017: prudentialv2-50
- 【Writeup】Boston Key Party CTF 2015(部分题目)
- ctf-crypto
- 【CTF-Crypto】PlayFair密码
- 越南CTF的crypto 100
- CTF密码学(Crypto)一些在线解密网站
- Crypto++
- Crypto++
- Crypto
- CRYPTO
- Crypto
- Crypto++
- bosten key party 2017 memo writeup
- java.lang.NoClassDefFoundError: org/apache/hadoop/crypto/key/KeyProvider
- Boston 旅游
- java与Go的交流
- 黑马程序员-----接口
- 关于oracle查找字符串和截取字符串
- Android自定义照相机 预览拍照 切换前后置摄像头
- Eclipse开发J2EE
- Boston Key Party CTF 2014 Crypto 200
- 如何去替换arraylist中对应索引中的数据
- Python easy_install 遇到“ImportError: No module named pkg_resources”错误
- [Leetcode] - Simplify Path
- think in java第二章学习
- C++ Primer 中文版第五版错误(持续更新中)
- android高分段进阶攻略(4)android模拟点击
- iOS兵器谱
- rails 之 i18n