Hash 哈希值在 BT 下载中怎么用来检验电影视频是否下载完整无误? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
jbwoo

Hash 哈希值在 BT 下载中怎么用来检验电影视频是否下载完整无误?

  •  1
     
  •   jbwoo 2023 年 7 月 18 日 1649 次点击
    这是一个创建于 1007 天前的主题,其中的信息可能已经有所发展或是发生改变。
    BG 是昨天用 qBittorrent 下了一部电影,结果看的时候发现一共有三处存在几秒钟的画面停滞卡顿/跳跃,最开始在想是压制时出错、解码问题还是电脑问题....直到有位大佬告诉我可以用哈希值检验,这是我第一次听说这个概念。Info hash 相当于一个唯一标识,用下载出来的文件的 hash 值与源文件 hash 值对比看是否相同,则判断下载的文件是否有误。

    有趣的是,在这个过程中我偶然发现了造成画面跳跃的原因是在下载进度 99.8%时我对文件名进行了修改,导致 qb 显示文件丢失,而我以为整个电影已经下载完成。在把文件名称改回去然后继续下载到 100%时,重新打开视频发现已经变得流畅完整,之前的画面停滞跳跃问题不存在了。

    但是,再次对视频进行 hash 哈希值计算得到的数值仍然与源文件不同。这里我这个小白其实充满了问号,也是查了很多仍然不解。我先用 mac 终端 shasum -a 1 .....等这样的指令计算出了单个视频的 md5 ,sha1 ,sha256 ,sha512 值,然后用软件 fHash 一键计算,同样得到单个视频的这些 hash 数值,两个方法对应相同,且都与原来的 info hash 不同。
    我在想到底是单测视频文件的 hash 值,还是测种子文件下载出来的整个文件夹的 hash 值(除了视频,还有海报、字幕、截图等文件)?

    但问题是不管是用 mac 终端指令还是 fHash 软件都不能检测整个文件夹的 hash 值,分别显示:...is a directory/ cannot open a directory....本小白全然懵逼,之前的步骤全靠网上搜索和询问他人,到这一步已是山穷水尽了。
    求问各位大佬,到底是单测视频文件的 hash 值(但是为啥与源文件不同?)还是测整个文件夹?我个人的理解是应该要测整个文件夹,但是整个文件夹能测吗,是我操作错误还是本就不能测整个文件夹?
    8 条回复    2023-07-19 12:46:41 +08:00
    wdssmq
        1
    wdssmq  
       2023 年 7 月 18 日
    BT 软件在相应任务上右键,有个「强制重新校验」

    基于 BT 协议制作的种子,只能同样基于 BT 协议来校验。。

    制作种子时可以选择是否启用 DHT ,分块大小等选项,会决定最终生成的 hash ,这些数据都记录在 .torrent 文件里,BT 下载工具会按同样的入参计算 hash 来对比
    jbwoo
        2
    jbwoo  
    OP
       2023 年 7 月 18 日
    感谢大佬回复,我是小白有些专业术语不太懂,请问点了那个强制重新校验之后咋弄呀,它重新校验了以后我好像没看到哪里发生变化。
    ysc3839
        3
    ysc3839  
       2023 年 7 月 19 日 via Android
    Info Hash 是 BT 种子的 hash ,也是磁力链接的那个 hash ,这个 hash 只能用来校验种子本身的数据,下载后的文件需要用种子里面的分块数据来校验。
    选择重新校验后会自动重新下载校验未通过的部分,如果没动静说明校验通过了。
    jbwoo
        4
    jbwoo  
    OP
       2023 年 7 月 19 日
    @ysc3839 原来是这样,感谢大佬!所以不存在将下载出来的文件的 hash 与 info hash 去做对比这一说吗?
    ysc3839
        5
    ysc3839  
       2023 年 7 月 19 日 via Android
    @jbwoo 是的
    jbwoo
        6
    jbwoo  
    OP
       2023 年 7 月 19 日
    @ysc3839 那这种前后对比 hash 判断文件完整性的一般是应用在什么情况呀
    ysc3839
        7
    ysc3839  
       2023 年 7 月 19 日 via Android
    @jbwoo 主要是用于做种的情况,验证文件是否符合种子,不做种的话一般不需要验证,除非怀疑文件可能损坏。
    mokiki
        8
    mokiki  
       2023 年 7 月 19 日 via Android
    bt 文件分块 hash 用的是 sha1
    有三种可能,bt 客户端垃圾,被版权商攻击,原种文件就是有问题。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     6114 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 42ms UTC 06:10 PVG 14:10 LAX 23:10 JFK 02:10
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86