适合人群:
有C/C++基础想要进行实战 ,
C++程序员想要进行安全技术储备,
企业入职培训,
大学生做论文添加安全功能,
学习计划:
保证一定的学习强度, 每周学习一章内容,
原理和代码演示可以看两遍,第二遍跟着演示编写代码
每周根据自己的工作情况,设计一个相关知识点需求,用本章节知识实现,出现问题再查看课程中的代码示例。
课程目标:
能够学习密码学知识,能够进入到安全领域 能够开发出一个简化的安全套接字https协议的web服务器
课程简介:
课程简介
课程包含密码学和区块链的核心技术,从图示原理讲解,到工程代码演示。内容包括Base64,Base58(比特币钱包地址),单向散列hash值(消息指纹)的MD5,SHA1,SHA2(挖矿算法),SHA3,国密散列算法SM3和Merkle可信树(比特币交易链),对称分组加密的DES,3DES,AES,国密对称SM4,非对称(公钥加密)的RSA,和椭圆曲线EC,国密椭圆曲线SM2,另外包含消息认证码HMAC,数字签名RSA-DSA,ECDSA(比特币用椭圆曲线签名),秘钥交换算法ECDH等。综合应用SSL/TLS安全通信和HTTPS协议实现。
随着”新基建“的推行,其中涉及到的工业互联网、物联网、人工智能、云计算、区块链,无一不是与安全相关,所有数据的存储、传输、签名认证都涉及到密码学技术,所以在这样的大环境下再结合我多年安全开发经验,设计出这门课程。
因为密码学技术在新基建中的重要性,所以使其成为底层开发人员重要的技能。特别是现在的区块链技术是多面应用密码学,大数据技术和人工智能技术也要解决隐私安全问题。所以现在学习相关技术是非常重要的技术储备,并且可以改造现有的系统,提升其安全性。
课程特点
面向工程应用
市面上的一些密码学课程和密码学的书籍,很多都是从考证出发,讲解算法原理并不面向工程应用,而我们现在缺少的是工程应用相关的知识,本课程从工程应用出发,每种技术都主要讲解其在工程中的使用,并演示工程应用的代码。
从零实现部分算法
课程中实现了base16编解码 ,XOR对称加解密算法,PKCS7 pading数据填充算法,通过对一些简单算法的实现,从而加深对密码学的理解。
理论与实践结合
课程如果只是讲代码,同学并不能理解接口背后的原理,在项目设计中就会留下隐患,出现错误也不容易排查出问题。
如果只讲理论,比如对密码学的一些研究,对于大部分从事工程应用的同学并没有必要,而是理论与实践结合,一切为了工程实践。
代码现场打出
代码不放在ppt而是现场打出,更好的让学员理解代码编写的逻辑,老师现场敲出代码正是展示出了工程项目的思考,每个步骤为什么要这么做,考虑了哪些异常,
易学不枯燥
课程为了确保大部分人研发者都学得会,理解算法原理(才能真正理解算法特性),学习工程应用(接口调用,但不局限接口调用,理解接口背后的机制,并能解决工程中会出现的问题),阅读算法源码但不实现密码算法,,并能将密码学投入到实际工程中,如果是想学习具体的加密算法实现,请关注我后面的课程。
课程用到的技术
课程主要演示基于 VS2019 C++,部分演示基于ubuntu 18.04 GCC makefile
如果没有装linux系统,对本课程的学习也没有影响
课程中的OpenSSL基于**的3.0版本,如果是openss 1.1.1版本也支持,再低的版本不支持国密算法。
课程介绍
课程目录
往期学员作品
课程介绍
课程目录
往期学员作品
讲师介绍
课程详情
温馨提示
- 请勿私下交易请勿在平台外交易。与机构和老师私下交易造成的任何损失及纠纷,腾讯课堂不承担任何责任
- 听课说明
1、电脑:访问腾讯课堂官网 ke.qq.com 查看我的课表或下载win/mac客户端听课
2、手机/平板:下载腾讯课堂APP, 进入学习页面听课