20221402-信息安全设计第一周预习报告
第一周预习报告
学习内容
第一章概念复习
我在微信读书上简单阅读了《Windows C/C++加密解密实战》第1、2章,并且借助了微信读书的AI大纲功能了解了每一章节的核心内容
第一章
第一章里主要介绍了密码学简史和一些最基本的密码常识,像五元组和算法分类我都在上学期的信息安全概论、密码学课程中有过一定的了解。
第二章
第二章的内容对我而言比较陌生,靠自己阅读想要理解比较困难,所以我在后面借助了AI阅读,并依靠AI的讲解对密码开发环境的配置有了一定的了解。在下面的软件安装环节也进一步加深了我对openssl和gmssl的理解
参考了预习作业要求中的脚本安装了软件
openssl
可以看到我已经安装成功
安装openssl的过程比较顺利,没有遇到个性化的问题
gmssl
我在安装gmssl的过程中遇到了一些问题
以下是失败图示
可以看到我的代码输入后并没有运行结果,我尝试重新进入ubuntu输入代码
重新进入后我发现是第一次给出的代码不完整,我输入了完整的代码后再次进行尝试,这次可以根据指令输出结果,但是结果显示没有安装成功
最后我询问AI,并且和舍友请教学习后使用了新的代码,成功安装gmssl
最后成功安装两个软件
学习心得
我利用AI分析比对了两个代码的异同,认为可能是以下几个点导致我使用预习要求中的代码安装不成功
1.老师给的代码下载的是一个脚本文件,而AI给我的代码下载的是一个压缩包。可能下载的文件没有执行权限导致我下载脚本文件不成功
2.老师给的代码是依赖脚本内容实现的,而AI给我的代码是通过解压和复制实现的,这不依赖脚本的内容,因而成功率会更高
在安装软件的过程中,我和同学们都遇到了不同的个性化问题,我认为询问AI是解决问题的有效办法,提高了我做作业的效率
AI对学习内容的总结
我给kimi发去了书本资源,并请求kimi给我一个学习总结,最后得到了一个比较简介的概括性学习内容
总结
第1章:密码学概述
密码学基础:介绍了密码学的基本概念,包括密码学的发展历程、分类和应用场景。
加密与解密:解释了加密和解密的基本原理,以及它们在保护信息安全中的作用。
密码学算法:概述了对称加密、非对称加密、散列函数等不同类型的密码学算法。
安全通信:讨论了如何在通信过程中使用密码学技术来保证数据的安全性。
第2章:搭建C和C++密码开发环境
开发环境搭建:详细介绍了如何在Windows操作系统上搭建C/C++开发环境,包括必要的工具和库。
编译器和工具链:讨论了常用的C/C++编译器,如GCC和MSVC,以及如何配置它们用于密码学开发。
加密库:介绍了一些流行的C/C++加密库,如OpenSSL和Crypto++,以及如何将它们集成到项目中。
示例项目:可能包含了一个简单的示例项目,展示如何在C/C++中实现基本的加密和解密操作。
学习总结
理解基础:掌握密码学的基本概念和原理是学习加密解密技术的基础。
实践操作:通过搭建开发环境和实际操作,可以加深对加密解密技术的理解。
工具和库:熟悉并掌握使用加密库和工具是提高开发效率的关键。
安全意识:在学习加密解密技术的同时,也要培养良好的安全意识,了解如何保护数据不被未授权访问。
我对AI总结的反思与补充
可以看到kimi给我的学习总结只是一个简单的框架,并没有总结一些实质性的书籍内容。
我分析了原因,认为可能是自己给AI下达的指令不够具体。
这也说明AI是需要我们训练的,只有给出足够准确具体的指令AI才能得到想要的结果。
AI总结的问题
kimi对书籍的具体内容没有做出一个详细的总结,同时我认为kimi对整体内容的把握也过于简单。
接下来我将就第二章openssl部分自己做出总结补充,以此显示我和kimi对待学习总结思考方式的不同
我的总结与补充
第2章:C/C++密码库OpenSSL和Crypto++
2.2.1 OpenSSL源代码模块结构
OpenSSL的组成:密码算法库、SSL协议库和应用程序。
目录结构:围绕三个功能部分进行规划,其中Crypto目录包含密码算法库的所有源代码,是实现所有密码算法、密钥管理和证书管理的关键部分。
2.2.2 OpenSSL加密库调用方式
调用方式:直接调用、通过加密库接口调用以及通过Engine平台和OpenSSL对象调用。
应用开发:这种架构降低了应用开发的难度,因为它将底层硬件的复杂性与上层应用逻辑分隔开。
反思与补充
就我给出的例子来看,我更倾向于对书籍中的重点知识进行详细的总结,而kimi更倾向于把握整体的框架。
想要用好AI并不是一件简单容易的事,我们需要给AI足够准确的指令和足够长的训练时间。
所以AI不能代替人们思考,我们不能完全依靠AI作业,需要加入自己的思考和理解。
学习思维导图
我参考老师给出的mermaid思维导图,根据自己实际学习情况和kimi对书本内容的总结做了些许修改
基于AI的学习
以下是我利用AI对一些概念进行的学习
openssl加密库调用
markdown的使用
学习实践过程遇到的问题与解决方式
问题一 无法正确下载gmssl
我将源代码和错误情况发送给了AI,Ai给我了一个新的代码。
我将新的代码粘贴到Ubuntu,成功解决了问题。
这一点我在下载gmssl那一部分已经做过了具体分析
问题二 思维导图无法正常显示
在做思维导图部分的作业时,我的思维导图无法正常显示,所以我询问了AI
最后我检查了是否安装了插件,检查了代码的正确程度
最后在思维导图部分成功展示,顺利完成了作业
参考资料
AI工具
kimi
图书
《Windows C/C++加密解密实战》
网站
gmssl官网
openssl