计算机安全与可靠性实验之加密与解密

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介:
文章作者:冰血封情 [E.S.T]
信息来源:邪恶八进制安全小组 ([url]www.eviloctal.com[/url]

其实这个查不多是学校的网络安全实验的实验报告 本次实验其实主要是要研究一下简单的密码加密解密算法 首先根据老师的要求我写了一个异或加密解密的程序 程序主要实现用异或的方式对明文文本进行加密和密文文本的解密 是对称的算法 程序如下:
#i nclude <stdio.h>
#i nclude <stdlib.h>
int main(int argv, char *argc[])
{
       char ch;
       int key = 4;  //密钥
       FILE *fp1, *fp2;
       if(argv != 3)  //参数不是3就打印使用方法
       {
              printf("Parameter error!\n");
              printf("Usage: code.exe <infile> <outfile>\n");
              exit (0);
       }
       if((fp1 = fopen(argc[1], "r")) == NULL)  //打开读入
       {
              printf("Error open %s!\n", argc[1]);
              printf("Please check the file...\n");
              exit (0);
       }
       if((fp2 = fopen(argc[2], "w")) == NULL)  //打开输出
       {
              printf("Error open %s!\n", argc[2]);
              printf("Please check the file...\n");
              exit (0);
       }
       while((ch = fgetc(fp1)) != EOF)
       {
              printf("%c ", ch);
              ch = ch ^ key;  //加解密过程
              printf("%c\n", ch);
              fputc(ch, fp2);
       }
       printf("Success encrypt!\n");
       fclose(fp1);
       fclose(fp2);
       return 0;
}
程序十分简单意在演示 你可以使用自己的复杂点的算法 比如和该字母ASCII后多少位字母再进行异或就可以使加密更强健 使用的时候 程序会提示你
Usage: code.exe <infile> <outfile>

按照说明使用 比如将如下的明文:
I L0ve CuiE!

加密后成如下的样子:
M$H4ra$GqmA%

同样的方法可以解密 这就是一个简单的异或对称加密程序 当然我这里是内置了密钥key的 你也可以让用户自己输入密钥 也是一样的
好了现在我们来做第二个程序:给出明文和密文 求密钥
也就是一个暴力破解的过程 我们这里使用穷举
仍然假设给出的明文密文如上 我们现在来破解他得到密钥 我们的意图是假设已经知道密钥在数字0到1000之间 现在我们来进行逐一穷举 程序如下:
#i nclude <stdio.h>
#i nclude <stdlib.h>
int main(int argv, char *argc[])
{
       char ch1, ch2;
       int key;
       FILE *fp1, *fp2;
       if(argv != 3)  //参数不是3就打印使用方法
       {
              printf("Parameter error!\n");
              printf("Usage: code.exe <enfile> <defile>\n");
              exit (0);
       }
       if((fp1 = fopen(argc[1], "r")) == NULL)  //打开读入
       {
              printf("Error open %s!\n", argc[1]);
              printf("Please check the file...\n");
              exit (0);
       }
       if((fp2 = fopen(argc[2], "r")) == NULL)  //打开输出
       {
              printf("Error open %s!\n", argc[2]);
              printf("Please check the file...\n");
              exit (0);
       }
       ch1 = fgetc(fp1);
       ch2 = fgetc(fp2);
       printf("%c ", ch1);
       printf("%c\n", ch2);
       for(key = 0; key < 1000; key ++)  //穷举
       {
              if(ch2 == (ch1 ^ key))  //判断
              {
                     printf("Success Brute Force!\n");
                     printf("The Key is %d\n", key);
                     break;
              }
       }
       
       fclose(fp1);
       fclose(fp2);
       return 0;
}
这个程序的用法是 把明文密文的第一个字符放在两个不同的文件里 然后执行程序 程序自己进行穷举核对 一旦爆出密钥立刻终止循环 打印成功消息和破解出来的密钥
至于非对称加密其实也一样的道理 关键是算法 算法有了语句好办 这次实验就这么短个简单的东西...
插曲:
做第一个小练习的时候还遇见了一个文件末尾判断的问题 在使用EOF和feof();的时候出现的 其实是文件指针的指向地址的问题 还是非常感谢偶们小组的 Bideyore参与讨论给出指导分析

















本文转自loveme2351CTO博客,原文链接:http://blog.51cto.com/loveme23/8383  ,如需转载请自行联系原作者


相关文章
|
28天前
|
存储 安全 API
如何对 API 进行安全加密?
对API进行安全加密是保障数据安全和系统稳定的重要措施
134 56
|
2月前
|
安全 网络安全 区块链
网络安全与信息安全:构建数字世界的防线在当今数字化时代,网络安全已成为维护个人隐私、企业机密和国家安全的重要屏障。随着网络攻击手段的不断升级,从社交工程到先进的持续性威胁(APT),我们必须采取更加严密的防护措施。本文将深入探讨网络安全漏洞的形成原因、加密技术的应用以及提高公众安全意识的重要性,旨在为读者提供一个全面的网络安全知识框架。
在这个数字信息日益膨胀的时代,网络安全问题成为了每一个网民不可忽视的重大议题。从个人信息泄露到企业数据被盗,再到国家安全受到威胁,网络安全漏洞如同隐藏在暗处的“黑洞”,时刻准备吞噬掉我们的信息安全。而加密技术作为守护网络安全的重要工具之一,其重要性不言而喻。同时,提高公众的安全意识,也是防范网络风险的关键所在。本文将从网络安全漏洞的定义及成因出发,解析当前主流的加密技术,并强调提升安全意识的必要性,为读者提供一份详尽的网络安全指南。
|
3月前
|
存储 SQL 安全
网络安全与信息安全:守护数字世界的坚盾在这个高度数字化的时代,网络安全和信息安全已经成为个人、企业乃至国家安全的重要组成部分。本文将深入探讨网络安全漏洞、加密技术以及安全意识的重要性,旨在为读者提供一个全面的网络安全知识框架。
随着互联网技术的飞速发展,网络安全问题日益凸显。从个人信息泄露到企业数据被盗,再到国家安全受到威胁,网络安全事件层出不穷。本文将从网络安全漏洞的定义与分类入手,探讨常见的网络攻击手段;随后深入解析加密技术的原理及其在保护信息安全中的作用;最后强调提升公众与企业的安全意识的重要性,并提出具体的建议。通过综合运用这些知识点,我们可以更好地构建起一道道坚固的防线,守护我们的数字世界。
|
2月前
|
存储 安全 5G
|
2月前
|
安全 算法 网络安全
网络安全与信息安全:守护数字世界的坚盾在这个高度数字化的时代,网络安全和信息安全已成为全球关注的焦点。无论是个人隐私还是企业数据,都面临着前所未有的风险和挑战。本文将深入探讨网络安全漏洞、加密技术以及安全意识的重要性,旨在为读者提供实用的知识,帮助构建更加安全的网络环境。
【10月更文挑战第4天】 在数字化浪潮中,网络安全与信息安全成为不可忽视的议题。本文通过分析网络安全漏洞的类型与成因,探讨加密技术的原理与应用,并强调提升安全意识的必要性,为读者提供一套全面的网络安全知识框架。旨在帮助个人和企业更好地应对网络威胁,保护数字资产安全。
135 65
|
2月前
|
存储 安全 前端开发
端到端加密:确保数据传输安全的最佳实践
【10月更文挑战第12天】端到端加密(E2EE)是确保数据传输安全的重要手段,通过加密技术保障数据在传输过程中的隐私与完整性,防止第三方窃听和篡改。本文介绍E2EE的工作原理、核心优势及实施步骤,并探讨其在即时通讯、文件共享和金融服务等领域的应用,强调了选择加密协议、密钥管理、数据加密及安全接口设计的重要性,旨在帮助企业和开发者有效保护用户数据,满足数据保护法规要求。
|
2月前
|
安全 数据安全/隐私保护 CDN
阿里云国际站:海外视频安全的DRM
阿里云国际站:海外视频安全的DRM加密
|
2月前
|
安全 数据安全/隐私保护 CDN
阿里云海外视频安全的DRM
阿里云海外视频安全的DRM加密
|
3月前
|
人工智能 供应链 安全
网络安全与信息安全:构建数字世界的坚固防线在当今数字化时代,网络安全已成为维护个人隐私、企业机密和国家安全的重要基石。本文旨在探讨网络安全漏洞、加密技术及安全意识等关键领域,通过深入浅出的方式,引导读者理解网络安全的核心要素,并分享实用的防护策略,共同守护我们的数字世界。
随着互联网技术的飞速发展,网络安全威胁日益凸显,成为全球关注的焦点。本文聚焦网络安全的三大核心议题——网络安全漏洞、加密技术与安全意识,旨在揭示它们之间的相互关联与重要性。通过剖析真实案例,展现网络攻击的复杂性与破坏力;解析加密技术的原理与实践,强调其在保护数据安全中的关键作用;同时,倡导提升公众安全意识,构建多层次的网络安全防护体系。本文不仅为专业人士提供技术参考,也旨在提高普罗大众的网络安全认知,共同筑牢数字世界的安全防线。
170 10
|
3月前
|
SQL 安全 算法
网络安全与信息安全的守护之道在数字化时代,网络安全和信息安全已成为企业和个人不可忽视的重要议题。本文将探讨网络安全漏洞、加密技术以及安全意识等方面的知识,帮助您建立更安全的网络环境。
随着互联网技术的飞速发展,网络安全问题日益凸显,如何保护个人及企业的敏感信息成为亟待解决的难题。本文从网络安全漏洞、加密技术和安全意识三个方面展开,详细介绍了当前面临的主要安全威胁及应对策略,旨在提升公众的安全意识和防护能力。
40 1