课程分类

课程介绍
课程目录
用户评论
课程介绍
课程目录
用户评论

你将获得

  • 掌握某些知识点
  • 学会某些技巧(或思路)

教学服务

  • icon

    1v1专属答疑服务

  • icon

    BAT专家面试辅导

讲师介绍

  • 捷帝科技创始人,华为认证HDE全球开发专家,华为HarmonyOS开发者创新大赛导师,南京大学全日制双硕士,近二十年c++跨平台研发经验,领导开发过大量的c++虚拟仿真,计算机视觉,嵌入式图像处理,云安全审计项目,虚拟化安全迁移,中国排联比赛鹰眼系统和高速云摄像机,精确室内定位软硬件。

  • 课程详情

    课程简介
        随着”新基建“的推行,其中涉及到的工业互联网、物联网、人工智能、云计算、区块链,无一不是与安全相关,所有数据的存储、传输、签名认证都涉及到密码学技术,所以在这样的大环境下再结合我多年安全开发经验,设计出这门课程。
        因为密码学技术在新基建中的重要性,所以使其成为底层开发人员所必备的技能。特别是现在的区块链技术是全面应用密码学,大数据技术和人工智能技术也要解决隐私安全问题。所以现在学习相关技术是非常必要的技术储备,并且可以改造现有的系统,提升其安全性。
    课程学习目标
    了解DES算法原理
    VS2019创建C++项目,并导入openssl库
    学会OpenSSL DES算法加解密接口
    加密文件并做PKCS7 Padding 数据填充
    解密数据并做数据填充解析
    课程特点
        面向工程应用
        市面上的一些密码学课程和密码学的书籍,很多都是从考证出发,讲解算法原理并不面向工程应用,而我们现在缺少的是工程应用相关的知识,本课程从工程应用出发,每种技术都主要讲解其在工程中的使用,并演示工程应用的代码。
        从零实现部分算法
        课程中实现了base16编解码 ,XOR对称加解密算法,PKCS7 pading数据填充算法,通过对一些简单算法的实现,从而加深对密码学的理解。
        理论与实践结合
        课程如果只是讲代码,同学并不能理解接口背后的原理,在项目设计中就会留下隐患,出现错误也不容易排查出问题。
        如果只讲理论,比如对密码学的一些研究,对于大部分从事工程应用的同学并没有必要,而是理论与实践结合,一切为了工程实践。
        代码现场打出
        代码不放在ppt而是现场打出,更好的让学员理解代码编写的逻辑,老师现场敲出代码正是展示出了工程项目的思考,每个步骤为什么要这么做,考虑了哪些异常,
        易学不枯燥
        课程为了确保大部分人开发者都学得会,理解算法原理(才能真正理解算法特性),学会工程应用(接口调用,但不局限接口调用,理解接口背后的机制,并能解决工程中会出现的问题),阅读算法源码但不实现密码算法,,并能将密码学投入到实际工程中,如果是想学习具体的加密算法实现,请关注我后面的课程。
    课程用到的技术
        课程主要演示基于 VS2019 C++,部分演示基于ubuntu 18.04 GCC makefile
        如果没有装linux系统,对本课程的学习也没有影响
        课程中的OpenSSL基于最新的3.0版本,如果是openss 1.1.1版本也支持,再低的版本不支持国密算法。
     课程常见问题
    课程讲解用的什么平台和工具?
        课程演示主要在windows,基于VS2019 ,一些项目会移植到Linux在ubuntu18.04上
    我不会Linux能否学习本门课程?
        可以的,课程主要在Windows上,Linux部分只是移植,可以暂时跳过,熟悉了Linux再过来看
    我不会C/C++ 语言是否能学习本门课程?
        至少要会C语言,C++特性用得不多,但做了一个封装,可以预习一些C++基础。
    会不会讲算法实现,会不会太难学不会?
        课程偏工程应用,具体的AES,椭圆曲线、RSA等算法只通过图示讲原理,一些简单hash算法会读一些源码,并不去实现,课程中会单独实现简洁的XOR对称加密和base16算法(代码量不大易懂)。其他的应用我们都基于OpenSSL3.0的SDK调用算法。
    课程提供源码和PPT吗?
        课程中所有讲解的源码都提供,课程的上课的ppt也提供,PPT提供pdf版,只可以用于学习,不得商用,代码可以用于商用软件项目,涉及到开源系统部分,需要遵守开源的协议,但不得用于网络教学。
    要观看全部内容请点击c++实战区块链核心密码学-基于openssl
    https://ke.qq.com/course/2737429?tuin=10eec75