yorhachq / CiphertextCompiler

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CiphertextCompiler

项目概述:对一段文本的内容进行加密及解密
本项目是大一第一学期某个晚自习时,一时兴起萌生出的想法,当时临近期末,就延后到了寒假开始。在编写过程中,不少地方都是现学现用的,因此肯定存在不成熟的表现。
现仍存几点遗憾之处:1.未能实现汉字的转码;2.未能使用base64编码加密;3.因未能实现创建动态数组从而使用了大数组;
因个人能力有限,定存在不足之处,欢迎批评指正 QQ:3427443198
注意事项:若是复制一段文本,要在输入加密串时粘贴,则该段文本不能含有换行符
项目起始日期:2021/2/11
项目结束日期:2021/2/17

项目初步设计思路:
三层加密先分为三个模块分别编写,之后整合为主程序,三层解密同理
加密与解密主程序整合为最终的加解密工具

用户键入原字符串(待加密)→[一级加密]在原字符串中指定位置(用户输入预设方案编号,进行相应调用)插入指定字符(用户自己输入或尝试调用预设方案)→[二级加密]将新串中每个字符按ASCII码表序号移位(用户输入基准位移量,根据一些参数计算后进行不同程度位移,注意可打印字符码值范围32~126)→[三级加密]将新串转换为16进制数

项目进度日志:
已完成总体思路框架构建(2021/2/11)
已完成一级加密与解密的编写与调试,但未运用文件操作(预设方案),待后期初版全部完成后再进行优化(2021/2/12 15:57)
已完成二级加密的编写与调试,并对极端情况给出了应对方案(2021/2/13 1:00)
已完成二级解密的编写与调试(2021/2/13 23:56)/大年初二,白天一直在外面/
已完成三级加密与解密的编写与调试 (2021/2/14 18:36)
已将一级加密整合到主程序上并调试完成(2021/2/15 2:28)
已将三级加密全部整合到主程序上(2021/2/15 3:42)/上头了,差点通宵/
已完成加密主程序的调试与优化,将数个先前用终止处理的情况优化重写成了循环(2021/2/15 21:54)
将部分使用char get=getchar();←(后接gets()时用这个)的情况优化为了do {get = getchar();} while (get != '\n');←(后接scanf()时用这个)来解决缓冲区问题(在尝试多种清除缓存的方法,效果均不理想后,想到了此方法,经多次验证,可靠性最高);优化了move算法,避免加密时输出乱码;正在美化窗口界面(2021/2/17 12:26)
已完成加密主程序与解密主程序的一体整合,并区别了开发者版本与用户版本(2021/2/17 19:02)
改用memset(void *str, int c, size_t n);来对数组进行初始化,消除了warning C4047(2021/2/17 22:00)
程序图标已挑选并应用,至此,本项目落幕,撒花✿✿ヽ(°▽°)ノ✿(2021/2/17 23:21) 后续可能进行小幅优化改动

About


Languages

Language:C 100.0%