录音笔传输文件自动校验

一、引言

校验文件完整性的重要性:在日常工作和生活中,我们常常需要从网络上获取各种数据,但这些下载的文件是否安全值得商榷;即使是安全的,如果下载不完整,也会导致文件不可用;更糟糕的是,文件可能被篡改,加入了木马、病毒或广告等。因此,下载数据时校验其完整性是非常必要的。

在小编(●—●)参与的项目中,C1、C1Pro和C1Max录音笔分别生成avc、avo和opus格式的音频文件。这些文件可以通过BLE和wifi热点两种方式传输到录音助手app。项目测试需要验证笔端生成的文件完整性以及传输到App后的文件完整性。

二、文件校验与校验方法

1、文件校验

文件校验是指对文件的MD5、SHA1和CRC32值进行检查。

MD5信息摘要算法(MD5 Message-Digest Algorithm)是一种广泛使用的密码散列函数,可以生成一个128位(16字节)的散列值,用于确保信息传输的完整性和一致性。

SHA-1(Secure Hash Algorithm 1,安全散列算法1)是一种密码散列函数,可以生成一个160位(20字节)的消息摘要,通常以40个十六进制数的形式呈现。

CRC(Cyclic redundancy Check)的全称为循环冗余校验,是数据通信领域中最常用的一种查错校验码。CRC32具有极强的检错能力,实现成本低,易于用编码器及检测电路实现。

2、校验值

校验值是一组十六进制数,不区分大小写,仅与文件内容相关。只要文件内容不变,校验值就不会改变。复制/剪切/粘贴、修改文件创建时间/访问时间、修改文件读/写/执行属性等操作都不会影响校验值。

3、在linux环境下校验文件完整性

在Linux下,可以直接使用md5sum、sha1sum和sha256sum命令来计算文件的校验值。

例如:

md5sum /works/Hello.mp3

sha1sum /works/Hello.mp3

sha256sum /works/Hello.mp3

4、在windows环境下校验文件完整性

windows下,可以使用系统自带的certutil命令来计算文件的校验值。

certutil支持的算法包括:MD2、MD4、MD5、SHA1、SHA256、SHA384和SHA512。

certutil的使用方法是:执行“certutil -hashfile 文件名 校验值类型”,即可计算出对应文件的校验值。

例如:certutil -hashfile C:Hello.mp3 MD5

录音笔传输文件自动校验执行结果如图所示,该文件的MD5值为2ffcbdab360aa29d0ebc6aee94c0a625。

录音笔传输文件自动校验

BGremover

Vanceai推出的图片背景移除工具

录音笔传输文件自动校验50

查看详情 录音笔传输文件自动校验

三、笔端传输文件验证,问题解决思路

1、(C1 Max录音笔文件)利用opusinfo获取每个opus文件的信息,并对比笔端文件与App端传输完成后的文件信息。

录音笔传输文件自动校验2、(C1、C1Pro、C1Max)录音笔生成的音频文件传输到App后,进行MD5校验。

MD5的唯一性:不同的输入会生成不同的结果,任何一个字节的改动都会导致MD5值变化。

avc、avo(自研数据类型)和opus文件传输验证

录音笔传输文件自动校验录音笔传输文件自动校验录音笔传输文件自动校验示例:笔端生成的opus音频文件传输到App后进行MD5校验,若校验值一致,则可确认传输后的文件是完整的。

录音笔传输文件自动校验四、自动校验思路及实现

1、批量校验思路

(1). 依次获取App和笔端目录下的音频文件路径(以opus为例);

(2). 通过命令行获取并提取MD5值,存储在对应的列表中;

(3). 对文件校验MD5值存储结果的列表listpen和listapp进行差集运算;

(4). 如果差集非空,则证明MD5校验存在不一致,即传输后的文件存在不一致的情况。

(5). 文件问题定位:App端存储的文件使用时间戳,可以转换为普通时间计时,找到对应的笔端文件。

2、校验结果

求差集示例——MD5校验全部一致,校验通过

录音笔传输文件自动校验录音笔传输文件自动校验求差集示例—MD5校验存在不一致情况

录音笔传输文件自动校验录音笔传输文件自动校验注:参考文章

https://www.php.cn/link/dd823d6e1e3a88daf0873b36aa204369

https://www.php.cn/link/b3ca9f305782d831cfe65fdf7b980b51

https://www.php.cn/link/18dc2aa306574480d292c7b0210f7545

© 版权声明
THE END
喜欢就支持一下吧
点赞6 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容