- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
会员基础课程01-加密与鉴权
加密
1.1、不可逆加密(Hash加密算法/散列算法/摘要算法)
哈希算法,又称摘要算法、散列算法。它通过一个函数,把任意长度的数据转换为一个长度固定的数据串,算法不可逆。
常见的哈希算法:MD5、SHA1、SHA256
特征:加密后不能反解,相同的算法对同意明文只会生成唯一的密文。
用途:
文件正确性校验:例如下载文件的hash校验,快速检查文件的正确性和完整性。
用户敏感信息储存:例如URS的密码储存和传输均为SHA256。服务端只储存加密后的字符串,对用户密码完全无感知,无法通过查询数据库的方式查看用户的密码,实现了对敏感数据的脱敏。
安全性:因为算法的实现原因,哈希算法有着被破解的可能性(资料1)。目前来讲,MD5、SHA1被认为是存在安全隐患的,SHA256是相对安全的。值得一提的是安全性提升的同时牺牲了速度。
哈希加盐:盐(Salt)就是一段随机生成的字符串。将盐和原始数据连接后进行加密就是加盐的过程。
HMAC:它不是散列函数,而是采用散列函数与共享秘钥一起使用的消息身份验证机制。HMAC(资料2)相当于对原文做了两次加盐处理的哈希过程。
1.2、可逆加密-对称加密
对称加密需要准备一个算法和一个秘钥,使用逆算法对加密数据解密。对于数据的加密与解密使用同一个秘钥。
常见的对称加密算法:AES,DES,3DES
特征:使用秘钥对数据进行加密和解密。算法公开,计算量小,加密速度快,加密效率高。一旦秘钥被泄露,加密数据将不再安全。秘钥的长度固定,但有多个长度可以选择。例如AES常见16、24、32字节。(资料4)
用途:
用户敏感信息储存:一些需要解密的敏感数据的传输,例如手机号、身份证等。
大量数据的加密:一些数据量巨大的场景
安全性:随着计算机算力的提升,DES和使用三个相同秘钥的3DES算法被认为不再安全。AES依然存在被破解的可能性,但以目前计算机的算力来看成本及其可怕(资料3)。
模式:对称加密有不同的使用模式,这些模式可以提高安全性。(资料5)
1.3、可逆加密-非对称加密
非对称加密需要准备一个算法和一对秘钥,这对秘钥由有个公钥和一个私钥组成,秘钥对可以有很多对。使用逆算法对加密数据解密。公钥加密的数据只能由私钥解密,私钥加密的数据只能由公钥解密。通常使用公钥加密私钥解密。
常见的非对称加密算法:RSA,DSA
特征:使用时公开公钥,使用公钥加密私钥解密。非对称加密有很好的安全性,但加密和解密的时间长速度慢,只适合少量数据的加密。以RSA为例,秘钥的长度依然是固定可选的,1024bit以下的秘钥被认为是不安全的。作为交换,秘钥长度越长加密解密速度越慢。
用途:
签名和认证:例如https请求中加入鉴权,用于确保数据未被串改或损坏。
数字证书:例如https中使用的证书。
安全性:1024bit以上秘钥长度的RSA被认为是安全的,但随着计算机算力的提升仍然存在被破解的风险。(资料3)
授权与鉴权
2.1、JWT。
JWT(Json web token)是为了在网络应用环境间传递声明而执行的一种基于json的开放标准,一定程度上可以用来替代session。最常见的用途是身份验证。我们常用的google账号第三方登录的token使用的就是JWT。
构成:一个标准的JWT加密后的字串由三个部分构成。这三个部分被用”.”分隔开,其中Header和Payload部分是使用base64url encoding的明文(资料7)。
Header:用于声明算法规则和令牌的类型。
Payload:有效荷载部分,拥有七个默认字段可供选择,也可以自定义私有字段。
Signature:签名部分
JWT的签名过程:签名时需要三部分:Header明文,Payload明文,本地的秘钥。
声明算法方式,例如Header中声明”alg”:”HS256”,那么签名过程将使用HMAC-SHA256的算法进行签名。
使用encodeBase64Url方法对Header和Payload进行处理,并以”.”为间隔拼接两个字符串。encodeBase64Url(header) + '.' + encodeBase64Url(payload)。注意Base64Url方法和Base64并非完全相同的方法。
用Header中声明的算法和准备好的秘钥对拼接后的字符串进行加密。
同样以”.”为间隔,将加密后的字符串拼接到之前拼接的字符串的后面。
JWT的验证过程:验证需要JWT串,本地的秘钥
解除Header部分读取声明
使用Header中声明的算法和本地秘钥对JWT串前两段的部分进行加密。
对比两个签名,如果完全相同则验证通过。
常用的算法:
HS256:HMAC with SHA-256
RS256:RSA signature w
您可能关注的文档
- 测试日报模板-jira版本.docx
- Testlink转换工具使用.pdf
- 性能测试整理.docx
- 11-去哪儿网服务端自动化测试体系-郑希文.pdf
- 性能测试场景构建模板.docx
- 初级测试工程师笔试题-过期.docx
- 中级测试工程师笔试题.docx
- 模板配置文档.docx
- I设计交流XDC2018-B3-侯永翔.1542597112453.pdf
- 插播材料-UED分享.pptx
- 百科知识竞赛《百科知识竞赛考试试题》模拟考试卷(十).doc
- 百科知识竞赛《百科知识竞赛考试试题》模拟练习卷(二).doc
- 百科知识竞赛《百科知识竞赛考试答案》模拟考试卷(十).doc
- 中国现代有轨电车行业市场运行态势、进出口贸易及发展趋势预测报告.docx
- 中国磁浮交通行业市场集中度、投融资动态及未来趋势预测报告(智研咨询发布).docx
- 智研咨询发布—中国光刻胶行业现状、发展环境及投资前景分析报告.docx
- 智研咨询发布—中国殡葬服务行业市场竞争格局、行业政策及需求规模预测报告.docx
- 中国线上健身行业市场现状及投资态势分析报告(智研咨询).docx
- 中国健身行业市场运行态势及发展趋势预测报告—智研咨询发布.docx
- 最新!中国火锅调味料行业市场运行态势、市场规模及发展趋势研究报告.docx
1亿VIP精品文档
相关文档
最近下载
- 名师工作室引领下教师专业化发展的策略研究论文课题资料(精选三篇).doc
- 2022-2023学年广东省佛山市南海区狮山镇人教版五年级下册期中测试数学试卷(含答案解析).pdf VIP
- 关于成立兼职矿山救护队的通知.doc
- 建设工程施工安全生产费用使用监督实施细则.docx
- 甘肃省嘉峪关市第六中学2021-2021学年八年级物理下学期期中试题 新人教版.docx
- 雅马哈tf5快速入门手册.pdf
- 铁路安全知识及固定煤炭抑尘管理.pptx
- 年产2000万支双黄连口服液生产车间工艺设计.docx
- 我喜欢的植物栽培技术——水培(教案)-2021-2022学年综合实践活动三年级 全国通用.doc
- 航模基础知识空气动力学-图文.pdf
文档评论(0)