rsa_aes.py 文件源码

python
阅读 20 收藏 0 点赞 0 评论 0

项目:pupy 作者: ru-faraon 项目源码 文件源码
def downstream_recv(self, data):
        try:
            enc=data.peek()
            if self.aes_key is None: #receive aes key
                if len(enc) < self.rsa_key_size/8:
                    return
                cmsg=enc[:self.rsa_key_size/8]
                try:
                    self.aes_key=rsa.decrypt(cmsg, self.pk)
                except rsa.pkcs1.DecryptionError:
                    self.close()
                    return
                data.drain(self.rsa_key_size/8)

                if AES is not None:
                    self.enc_cipher = AES.new(self.aes_key, AES.MODE_CBC, self._iv_enc)
                else:
                    self.enc_cipher = pyaes.AESModeOfOperationCBC(self.aes_key, iv = self._iv_enc)
            super(RSA_AESServer, self).downstream_recv(data)
        except Exception as e:
            logging.debug(e)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号