主要观点总结
本文记录了一个关于图片存储和加密的问题排查和解决过程。作者所在的项目组遇到了用户在拍摄照片时,会出现照片损坏的问题。经过一系列排查,最终确定是解密算法处理不当导致的。
关键观点总结
关键观点1: 问题现象
用户在拍摄照片时,会出现照片损坏的情况,此问题在线上环境出现了有一段时间了。现象包括不同任务类型都有此问题、1/200的概率稳定出现图片损坏、仅webp格式会出现此问题等。
关键观点2: 排查过程
先熟悉了项目代码,然后制定了排查顺序,包括压制照片时出错、调用AES加密算法时出错、图片格式问题等。排查中发现解密操作存在问题,解密算法的不当处理导致了图片损坏。
关键观点3: 错误原因
解密算法中对空字符串的判断导致问题。在解密二进制图片时,由于图片中也存在'0x00'字节,导致误判为空字符串,从而终止解密流程。
关键观点4: 解决方案
去掉了对空字符串的校验,提前进行校验,避免误判。同时对代码进行了整理,发现了另一个相同问题的处理方法,一并解决了。
关键观点5: 总结
一个问题往往是由多个小的不规范或错误累积而成的。代码写得不规范,留有安全隐患,所有风险问题汇总到一起的时候,就会造成最后的“灾难”。需要提早进行入参校验,有风险意识,解决一个错误时,要看一下有没有相似的错误,可以一并修改。
免责声明
免责声明:本文内容摘要由平台算法生成,仅为信息导航参考,不代表原文立场或观点。
原文内容版权归原作者所有,如您为原作者并希望删除该摘要或链接,请通过
【版权申诉通道】联系我们处理。