给大家的福利
零基础入门
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
同时每个成长路线对应的板块都有配套的视频提供:
因篇幅有限,仅展示部分资料
网络安全面试题
绿盟护网行动
还有大家最喜欢的黑客技术
网络安全源码合集+工具包
所有资料共282G,朋友们如果有需要全套《网络安全入门+黑客进阶学习资源包》,可以扫描下方二维码领取(如遇扫码问题,可以在评论区留言领取哦)~
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
“公众号场景”是指用户在微信内进入商家的公众号内进行支付
“PC网站场景”是用户在网站中展示一个二维码,用户进行扫描
1.3 小程序支付
在小程序中下单并且进行支付
1.4 Native支付
商户展示支付二维码,用户扫一扫完成支付的模式,这种方式适用于pc网站
之前提到的JSAPI支付也适用于pc网站的情景
Native支付是用户扫描二维码后直接展示由商家指定的的支付金额
JSAPI支付是用户扫描二维码后需要由用户自己去输入一个支付金额
1.5 APP支付
是指商户通过在移动端独立的APP应用程序中集成微信支付模块从而完成支付流程的一种方式。
这种支付方式我们需要有一个APP,例如向美团
1.6 刷脸支付
用户在刷脸设备前通过摄像头刷脸,然后识别身份后进行的一种支付方式,适用于线下实体场所的一个收银场景
二、接入指引
2.1 获取商户号
我们接下来都用PC端进行练习
下面是接入流程,在上面的页面往下翻
之后根据步骤填写信息即可
完成后进行登录,就可以看到后台页面了
后台中会有一个登录账号,这个账号就是我们的商户id
2.2 获取AppID
我们下面进行第三步“绑定场景”,在这个步骤中我们需要一个AppId
将AppId和刚刚申请到的商户号进行关联
怎么申请AppID?我们需要申请一个微信公众号
在此处进行注册
账号的类型选择服务号
按照下面的步骤进行填写
等待一到两个工作日后,我们就可以将此步骤获取到AppId与上一个步骤获取到的商户号进行绑定
在页面的首页,找到菜单栏当中的设置与开发
2.3 绑定商户号与AppId
进入到网址:https://pay.weixin.qq.com/
下面的截图是视频中的截图
此步骤完成后,在公众号这边会收到一个申请绑定的消息,点击同意即可
2.4 获取秘钥和证书
重新回到商户平台微信支付 - 中国领先的第三方支付平台 | 微信支付提供安全快捷的支付方式 (qq.com)
选择“账户中心”
之后选择左侧菜单栏中“安全中心”下的“API安全”
之后我们会看到三个参数
API秘钥对应V2版本的API
API v3秘钥对应V3版本的API
2.4.1 申请API秘钥
API秘钥对应V2版本的API
API v3秘钥对应V3版本的API
API秘钥:专门针对V2版本的API设置的秘钥。
如果是第一次设置,后面就是一个设置按钮,如果不是第一次,后面就是一个修改按钮
APIV3秘钥:如果我们想接入的版本是APIv3版本,就需要设置APIv3秘钥(与设置API秘钥一个样)
如果是一次的话,后面的按钮时设置,不是第一次的话,后面的按钮是修改
我们可以借助一个随机密码生成器生成随机密码 - 密码生成器 - 密码批量生成器 (bmcx.com)
2.4.2 申请API证书
如果我们接入的是APIv3这个版本,在所有的API接口当中,我们都需要去使用这个API证书
如果我们接入的是APIv2版本的话,只需要在一些高级接口,比如说退款、企业红包、企业退款等等接口当中使用我们的API证书,在基本的支付流程中是不需要使用API证书的
如何申请证书?
之后按照要求填写即可
下载一个证书工具,下载完后进行解压,安装
填写信息的时候注意,商户名称要和营业执照的名称保持一致
将下面的请求串复制到我们的商户平台中
也就是粘贴到下面的框框中
之后会生成一个证书串,进行复制
然后再打开证书工具,粘贴找下面的位置,点击下一步
现在我们就可以查看证书文件
也就是下面的这种压缩包,一定要妥善的保管起来
三、支付安全
3.1 对称加密与非对称加密
实现机密性最常用的手段就是加密,只有有特殊钥匙(密钥)的人才能对加密的文本进行解密
明文:加密前的消息
密文:加密后的文本
解密:使用密钥还原明文的过程
加密算法是公开的,但是密钥是保密的
密钥:一个字符串,度量单位是bit,如密钥长度128个bit位,就是16字节的二进制串
按照密钥的使用方式,加密可以分为两大类:对称加密和非对称加密
对称加密:加密和解密的时候使用的密钥是同一个,是对称的,只要保证了对称的安全性,那通信过程就可以说具有了机密性
AES加密算法:密钥长度128、192或256,安全强度很高,性能很好,应用最为广泛的加密算法
加密分组模式:将明文分组加密,微信支付中使用AEAD_AES_256_GCM
非对称加密:有两个密钥,一个公钥publicKey,一个私钥privateKey。公钥可以公开给任何人使用,而私钥必须是严格保密的
使用公钥加密后只能使用私钥解密,反过来,私钥解密后也只能公钥解密
RSA加密算法:最著名的非对称加密算法
3.1.1 优缺点
对称加密
- 优点:运算速度快
- 缺点:秘钥需要信息交换的双方共享,一旦被窃取,消息会被破解
非对称加密
- 优点:私钥严格保密,公钥任意分发,黑客获取公钥无法破解密文
- 缺点:运算速度非常慢
3.2 身份认证
有了对称加密与非对称加密后,离安全性还差的挺远
Pat、Doug、Susan三个人有Bob的私钥
Susan发信与Bob收信的时候
如果Bob也想给Susan写信,这个时候Susan也要有自己的公钥和私钥,然后将公钥分给他的朋友们
假如我们使用私钥加密,公钥解密会出现什么效果呢?
Bob用自己的私钥对信进行了加密,那Susan、Doug、Pat三个人都可以对Bob的信进行解密
私钥加密,公钥解密并不是为了实现加密
Bob用私钥加密的信Susan用公钥解开,这表明Susan能够确认这封信确实是Bob发出的,而不是别人
私钥加密,公钥解密的作用其实就是为了身份验证
3.3 数字签名
Bob决定给Pat写一封不加密的信件,但是要保证Pat收到的信没有被篡改过,也就是说要保证信息的完整性
实现完整性的手段主要是摘要算法,也就是常说的散列函数、哈希函数
- Bob写完信之后先用摘要算法生成信件原文的摘要MessageDigest
- Bob将摘要附在信件原文的下面,一起发送给pat
- Pat收到信之后也是两个步骤,Pat使用和Bob一样的摘要算法,加密信件的原文,得到信件的摘要
- Pat将加密后的摘要和Bob在原文中附加的摘要做一个对比,如果一致说明信件是没有被篡改过的
但是有一个漏洞,如果信件被黑客截获,并且黑客直接修改了原文,然后生成新的摘要,附加在原文的下面,伪装成原信件和原摘要
此时Pat是判断不出来的
因此摘要算法不具有机密性
如何真正保证数据无法被篡改?
一定要加入秘钥,确保信息的机密性
具体的流程如下
- Bob写完信后先用摘要算法生成信件的摘要
- Bob使用自己的私钥将将摘要加密,加密后的结果称之为数字签名
- Bob将数字签名附在信的原文下面,一起发给Pat
- Pat收信后,取下数字签名,用Bob的公钥解密得到信件的摘要
- Pat使用和Bob一样的摘要算法加密信件原文,得到信件的摘要
给大家的福利
零基础入门
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
同时每个成长路线对应的板块都有配套的视频提供:
因篇幅有限,仅展示部分资料
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!