三种Hash算法对比以及秒传原理

CRC (32/64)   MD5  Sha1

分5个点来说

1.校验值长度

2.校验值类别

3.安全级别

4.应用场景

1).校验值长度

CRC(32/64) 分别是4个字节和8个字节

MD5 16字节 所以长度为108位

sha1 20字节  160位长度

2)校验值类别

一般把CRC叫做校验码

md5和sha1叫做hash值或者散列值,从这里大概可以看出用处不同

3)安全级别

CRC<MD5<Sha1(当然sha1上面还有sha256或者sha512)

但是安全级别高并不是绝对好的,级别越高计算消耗的时间也越高

4).应用场景

CRC一般用于数据传输的校验

md5和sha1一般用于文件的校验或者文件的标志

秒传原理

分几种情况

1.用户上传

有时候用户上传大文件的时候会瞬间完成,这是因为之前有用户上传过相同的文件了,就会免去了这次上传过程

2.离线下载

3.好友分享文件

如何实现呢:

1.文件Hash(md5,SHA1等)

每个文件都计算出hash值,如果文件hash相同就免去上传过程.

转载于:https://www.cnblogs.com/Miracle-boy/p/10608296.html

三种Hash算法对比以及秒传原理.相关推荐

  1. 结构光、双目、ToF——三种3D技术对比

    本文虽然命名为对比文档,但是对比意义不是特别强烈的内容仍不在少数--如三种3D技术的误差等部分--换言之,本文旨在通过对比的形式对三种3D技术的特点和特性进行总结.资料主要来自于网络,部分相关参考文献 ...

  2. Xdelta3 bsdiff Courgette三种差分算法比较

    今天介绍常用的三种差分算法,分别是Xdelta3 bsdiff Courgette. Xdelta3 官网地址: http://xdelta.org 源码地址:https://github.com/j ...

  3. mybatis批量更新数据三种方法效率对比

    探讨批量更新数据三种写法的效率问题. 实现方式有三种, 1> 用for循环通过循环传过来的参数集合,循环出N条sql,需要在db链接url后面带一个参数  &allowMultiQuer ...

  4. 20172328 蓝墨云实验——三种查找算法练习

    20172328 蓝墨云实验--三种查找算法练习 课程:<软件结构与数据结构> 班级: 1723 姓名: 李馨雨 学号:20172328 实验教师:王志强老师 实验日期:2018年10月1 ...

  5. 老生常谈:微博,QQ,淘宝三种开放平台对比

    背景: 最近做一个导购网站(aizher.com)尝试,为了方便用户登陆,分别引入新浪微博,QQ,淘宝三种平台上的开放接口接入系统中. 分别使用了下新浪微博,QQ,淘宝平台三种方式,虽然都是开发平台, ...

  6. 老生常谈:微博,QQ,淘宝三种开发平台对比 笔记

    背景: 最近做一个导购网站(aizher.com)尝试,为了方便用户登陆,分别引入新浪微博,QQ,淘宝三种平台上的开放接口接入系统中. 分别使用了下新浪微博,QQ,淘宝平台三种方式,虽然都是开发平台, ...

  7. 基于内容的推荐java代码_三种推荐算法简介:基于用户的协同过滤、基于物品的协同过滤、基于内容的推荐...

    1.推荐算法 1.1.协同过滤 协同过滤是目前应用最广泛的推荐算法,它仅仅通过了解用户与物品之间的关系进行推荐,而根本不会考虑到物品本身的属性. 可分成两类: 1.基于用户(user-based)的协 ...

  8. pl/sql中三种游标循环效率对比

    pl/sql中三种游标循环效率对比 - Oracle数据库栏目 - 红黑联盟 http://www.2cto.com/database/201307/224636.html 转载于:https://b ...

  9. 如下10种分类算法对比Classifier comparison

    如下10种分类算法对比 names = ["Nearest Neighbors", "Linear SVM", "RBF SVM", &qu ...

最新文章

  1. iOS NSObject对象内存大小
  2. 【数据挖掘】关联规则挖掘 Apriori 算法 ( 关联规则 | 数据项支持度 | 关联规则支持度 )
  3. @Deprecated使用技巧
  4. LeetCode MySQL 1141. 查询近30天活跃用户数
  5. linux的基础知识——网络套接字函数
  6. Java中实现定时任务的3种方法!
  7. vue学习笔记之:为何data是一个方法
  8. 第一阶段冲刺 第八天
  9. 路由算法之距离矢量算法和链路状态算法
  10. Go Revel - Filters(过滤器链)
  11. python 实例化过程_python实例化对象的具体方法
  12. GB28181协议——摄像机语音对讲
  13. uniapp AES加密解密
  14. IT 如何把骨干留住
  15. seo文案策划的一些日常工作内容
  16. python人工智能入门纳米学位_学习笔记(一) - 机器学习纳米学位
  17. GitLab使用CAS服务进行单点登录配置
  18. 计算机打开音乐,怎么让电脑自动开机播放音乐教程 以及自动关机计划任务设置...
  19. c语言小红今年12岁小明13岁,[转载]三年级下“创新思维数学讲义”——年龄问题...
  20. 医美“非标化”埋雷 新氧科技流量变现受制约

热门文章

  1. 懒加载Lazy Loading
  2. 聊一聊Go中channel的行为
  3. spark KafkaRDD的理解
  4. PHP exit函数介绍
  5. PHP三维数组变一维
  6. centos 安装openoffice (办公软件 WPS)
  7. html文档包包含几个基本标记,HTML中包含哪些基本的标记?
  8. Go Web编程--深入学习解析HTTP请求
  9. Redis的应用场景汇总
  10. 深入理解ArrayList