python网络分析,加密和解密手段

注:此篇博文不允许转载,详情,源码等,可以添加qq: 1254455173 私聊!

题目

在这里插入图片描述

wireshark验证软件是否加密

没有加密算法截获字符串

  • 首先,运行程序,没有加密算法,运行程序,客户端向服务端发送字符串:计算机网络
    在这里插入图片描述

  • 其次,

  1. 用wireshark工具截获客户端数据包,如下:
    在这里插入图片描述
  2. 将数据字符串保存到本地,用记事本打开,如下,
    在这里插入图片描述
  • 最后,结果分析:分析程序可知,本程序默认采用utf-8格式编码和解码,当用wireshark截获字符串数据包,用记事本打开数据包文件。根据记事本也是默认utf-8格式编码和解码,如果没有加密手段,就可以直接读取其中的内容:计算机网络

有加密算法截获字符串

  • 首先,补充加密和解密代码到程序中,重新运行程序,依然是客户端向服务端发送字符串:计算机网络
    在这里插入图片描述
  • 其次,
  1. 用wireshark工具截获客户端数据包,如下:
    在这里插入图片描述
  2. 将数据字符串保存到本地,用记事本打开,如下,
    在这里插入图片描述
  • 最后,结果分析:分析程序可知,本程序默认采用utf-8格式编码和解码,当用wireshark截获字符串数据包,用记事本打开数据包文件。根据记事本也是默认utf-8格式编码和解码,如果没有加密手段,就可以直接读取其中的内容,可以发现这时读取的内容是乱码。所以成功验证了,这时我们已经添加了加密手段了,必须要用相应的解密手段才能读取出想要的内容!

  • 下面再单独对此字符串,用解密算法进行解密,进一步验证,只有通过对应的解密算法才能,获得想要的字符串内容,如下程序:


def decrypt_string(message):  # 解密函数
        decode_result = ""

        # 将message转换为list
        message_list = message.split("|")
        message_list.remove("") # 移除list中的空元素

        for i in message_list:
            type_ = i[:2]
            char_number = int(i[2:])

            # 按之前加的多余数据一步一步解码
            if type_ == "00":
                char_number = int(char_number / 2 - 13)
            elif type_ == "01":
                char_number = char_number + 23
            elif type_ == "02":
                char_number = char_number - 24
            else:
                char_number = char_number

            decode_result += chr(char_number)

        return decode_result



def main():
    # wireshark 截取下来的字符串
    msg = '0135722|0131616|0126403|0132570|0132453|'

    # 解码函数进行解码
    msg = decrypt_string(msg)

    # 转为 UTF-8 格式输出字符串
    
    
    print(msg)

main()

程序思想很简单,就是将tcp中解码函数单独拿出来,然后对记事本中的文本进行解密操作。

  • 运行结果:
    在这里插入图片描述
  • 结果分析:可以看见成功将加密密文转换成了,想要的字符串,所以进一步验证了,加密手段是成功的

注:此篇博文不允许转载,详情源码等,可以添加qq: 1254455173 私聊!

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值