如果你写 C++,早晚会遇到这样的需求:给配置文件的敏感字段做对称加密、验证客户端上传的签名、在手写一个简易链式结构时把哈希和公私钥逻辑补齐。这类活儿的难点不在语言本身,而在密码学库怎么调、参数怎么填、出错时怎么定位。这门课处理的就是这一段。

它解决的是哪类工作场景

课程围绕 OpenSSL 在 C++ 项目中的实际接入展开,不是泛泛讲密码学历史。具体会碰到的场景包括:用对称算法保护本地数据、用非对称算法做签名与验签、计算并校验消息摘要、在自定义的区块链式数据结构里把交易哈希、地址生成、区块串联这些环节跑通。

换句话说,它对应的是后端、安全工具、区块链相关岗位里那些「需要自己写而不是调现成接口」的密码学代码。如果你只打算在业务里调用云服务商的加解密 API,这门课的部分内容会偏底层;如果你要自己维护一套加解密模块,它的针对性就比较强。

学完能独立做出什么

按课程推进的节奏,比较现实的预期是:能在一个 C++ 工程里正确引入并初始化 OpenSSL,独立写出对称加解密、摘要计算、RSA 或椭圆曲线的密钥生成与签名验签的可编译代码;遇到接口返回失败时,知道去看错误栈而不是盲改参数。

再往上一层,课程把密码学原语拼进了一个区块链式的演示结构里——区块如何做哈希、交易如何被签名、链上数据如何校验完整性。这部分的价值在于让你看到散装 API 是怎么组合成一个完整流程的,而不是只会孤立地调用单个函数。它不承诺你学完就能去做公链开发,但能让你读懂一个简化链的核心逻辑并自己复现。

资料形态与使用建议

课程以视频讲解为主,按主题分节推进,配套代码和工程文件随章节提供。内容组织上大致是先铺垫 OpenSSL 的环境与基本接口,再逐个展开具体算法,最后落到综合实战。演示环境用的是较新的 OpenSSL 版本配合 Visual Studio 工程,如果你平时在 Linux 或 CMake 下开发,编译环节需要自己做一部分迁移,这一点要有心理准备。

怎么用效率更高

  • 不要只看不敲。密码学接口的参数顺序、长度约定、返回值含义,看一遍记不住,必须自己编译跑通一次。
  • 每学完一个算法,试着把它封装成一个独立的小模块,接口设计成输入输出明确的形式。这个过程比多刷几节视频有用。
  • 遇到编译或链接报错,先确认库版本和头文件路径,再确认调用的接口在当前版本里是否还存在。OpenSSL 跨版本改动不小,这是最常见的坑。
  • 综合实战部分建议在单个算法都跑通之后再进入,否则容易变成照着敲一遍但说不清为什么这么写。

适合什么基础的人

需要你已经能读懂并写出中等难度的 C++ 代码,熟悉指针、类、编译链接的基本流程。完全没写过 C++ 的话,前半部分就会卡住。

密码学基础不是硬门槛。课程从原理讲起,没有要求你先学过数论或信息安全课程,但如果你已经有对称/非对称、哈希、签名的基本概念,吸收速度会明显快一些。

需要提醒的是,如果你的目标只是「了解区块链是什么」,这门课偏工程实现,投入产出比不高;如果你的目标是「能在 C++ 项目里自己写加解密和签名验证」,它给出的接口细节和踩坑提示是能直接用的。建议先看环境搭建和第一个算法那几节,确认自己能跟上节奏,再决定要不要完整投入。

课程目录

课程目录34 集
  • 📁 配套资料 配套资料【公众号:CunWorkNotes】.exe [165.4 MB] 18.使用MD5HashList验证文件完整性定时检测文件修改【公众号:CunWorkNotes】.mp4
  • [43.7 MB] 19.比特币中Merkle可信树基于SHA1算法代码模拟.mp4
  • [62.9 MB] 64.椭圆曲线ECDSA签名和验签原理分析.mp4
  • [11.1 MB] 72.SSLTLS协议介绍【公众号:CunWorkNotes】.mp4
  • [13.7 MB] 15.单项散列函数的应用场景详解和常用算法比特币挖矿消息认证码.mp4
  • [26.1 MB] 21.基于SHA256模拟比特币挖矿代码演示.mp4
  • [19.3 MB] 58.基于OpenSSL的EVP接口的RSA解密【公众号:CunWorkNotes】.mp4
  • [28.4 MB] 34.使用DES的CBC算法替换ECB演示【公众号:CunWorkNotes】.mp4
  • [38.3 MB] 23.使用OpenSSLEVP接口完成SHA3和国密SM3散列生.mp4
  • [49.5 MB] 47.测试12类对称加密算法性能测试类的初始化和测试函数【公众号:CunWorkNotes】.mp4
  • [45.3 MB] 50.RSA非对称加密原理介绍和密钥对生成原理分析【公众号:CunWorkNotes】.mp4
  • [20.1 MB] 45.完成XSec封装加解密演示用AES加解密文件.mp4
  • [41.9 MB] 65.完成椭圆曲线ECDSA的签名和验签EVP代码.mp4
  • [23.5 MB] 3.使用vs2019创建第一个openssl30的测试项目.mp4
  • [23.3 MB] 69.完成椭圆曲线客户端与服务端交换秘钥示例代码.mp4
  • [36.8 MB] 35.使用C封装DES算法实现初始化和密码填充策略.mp4
  • [42.7 MB] 73.TLS握手协议和记录协议详解.mp4
  • [13.9 MB] 77.完成OpenSSL服务端SSL握手调用.mp4
  • [45.1 MB] 53.完成RSA公钥加密数据,并处理填充数据.mp4
  • [39.2 MB] 51.OpenSSL的RSA秘钥对生成代码详解.mp4
  • [46.8 MB] 43.AES算法原理介绍.mp4
  • [15.4 MB] 36.封装DES的ECB算法并实现了PKCS7数据填充协议.mp4
  • [35.8 MB] 8.OpenSSLBIO接口解析.mp4
  • [10.9 MB] 11.Base58_比特币钱包地址_算法分析.mp4
  • [24.1 MB] 13.单向散列函数章节任务说明.mp4
  • [5.4 MB] 20.SHA2原理分析和比特币挖矿模拟原理分析.mp4
  • [17.6 MB] 62.打印支持曲线列表并选择椭圆曲线生成秘钥.mp4
  • [36.7 MB] 31.DES算法原理介绍.mp4
  • [7.5 MB] 49.对称分组加密算法章节总结.mp4
  • [7.3 MB] 48.完成对称加密算法性能测试并将项目移植到Linux.mp4
  • [28.8 MB] 59.签名和验签原理讲解并演示rsa的签名的代码.mp4
  • [34.7 MB] 24.消息认证码HMAC算法介绍和安全分析.mp4
  • [14.9 MB] 44.封装C加密类支持AES和3DES完成初始化.mp4
  • [64.1 MB] …(已达
  • 35 条上限,后续省略) 适合人群 C++开发者 区块链技术爱好者 加密算法研究者 学习收获 掌握C++加密与解密技术 理解OpenSSL库应用 掌握区块链核心密码学 祝您学习愉快! 学有所成,前程似锦!