c语言编写的程序,在输入密码时,如何加密?
发布网友
发布时间:2022-04-24 17:53
我来回答
共5个回答
热心网友
时间:2023-10-28 17:06
加密和解密算法是程序编制中的重要一环。试想,如果我们平时使用的腾讯QQ、支付宝支付密码、今日头条账号密码那么轻易就被别人盗取的话,很多不可以预料的事情就会发生!
在现实生活中,我们遇到过太多QQ密码被盗取的情况,有的朋友QQ被盗之后,骗子利用朋友间信任骗取钱财的事情屡见不鲜。支付宝也曾出现过支付宝账户被恶意盗取的事件,对用户利益造成了严重损害!这些在技术上都指向了同一相关问题:软件加密算法的强壮程度。今天,小编利用C语言来简单实现一种加密方法。下面是源代码。
需要说明:程序利用了ascii码值的按照一定规律变换实现加密,对于解密过程,则是加密的逆过程。下面是程序的运行结果。
4190阅读
搜索
编程免费课程300节
初学编程100个代码
java自学一般要学多久
5秒破解excel密码
python必背100源代码
40岁零基础学编程
热心网友
时间:2023-10-28 17:06
前言:当今社会是一个信息社会,你的个人信息和聊天记录极有可能被别有用心的人时时刻刻监视着,那么你想不想实现专属于两个人或一个小圈子的人在社交软件上的交流不被任何其他人读懂呢?
下面就给大家提供一个原理极其简单程序极其容易实现的C语言文字加密小程序的实现算法。
在键盘上录入了"今天晚上我不回家吃饭了",将这串字符的ASCLL码全部加1,打印出来是这样的"掘晚晤市嫌臣假接凑负绿"。怎么样,哈哈哈,是不是看完后丈二和尚摸不着头脑?
所以,用这种算法实现对汉字的加密和翻译绝对隐蔽!汉字在计算机中的编码比较复杂,一个汉字在Windows 10系统下的CodeBlocks编译器里占2个字符的位置,我记得我有做过测试,在Cent OS Linux系统下占3个字符的位置。
然而不管一个汉字占几个字符的位置,对每个字符的ASCLL码做加减乘除的运算和逆运算就可以实现对文字的加密和翻译。
下面向大家展示一下源代码(加密算法为将所有字符的ASCLL码加1,翻译算法为将所有字符的ASCLL码减1):
头文件部分:
主函数部分:
下面向大家展示一下加密与翻译的效果:
思考与提高:仅仅将所有字符的ASCLL码加1就实现对文字信息的加密了,会不会很容易被破译呢?请恕我不是密码学专家,这一点我无法回答,但是直观感觉这样加密确实有点简单。
那么我们就可以对字符进行多种更为复杂的处理,比如给所有字符加上一个正负变换的数列、给所有字符加上斐波那契数列等。总之,直观感觉就是越复杂越不容易被破译。
下面向大家展示一下给所有字符加上一个正负变换的数列的加密算法的源代码:
头文件部分:
主函数部分主要是用来调试的,与上面那个简单加密算法的主函数部分相同。
下面向大家展示一下使用这种复杂加密算法加密与翻译的效果:
用了加密程序后,画风是这样的:
热心网友
时间:2023-10-28 17:07
#include "stdio.h"
#include "
conio.h
"
int main()
{
char tmpc;
int i = 0;
tmpc = ' ';
printf("input password:\n");
for(i = 0; i < 6; i++)
{
tmpc = getch()();
printf("*");
}
printf("\n");
return 0;
}
热心网友
时间:2023-10-28 17:08
#include<stdio.h>
#include<conio.h>
void main()
{
char c;
while(1)
{
c=getch();
if(c=='\r') break;
printf("*");
}
}
热心网友
时间:2023-10-28 17:08
#include void main() { char str[100],*p=str; gets(str); while(*p) { if(*p>='a' && *p<='z' || *p>='a' && *p<='z') { *p+=3; } p++; } printf("%s\n",str);//加密后的字符串 }