导航:首页 > 文档加密 > 字符串加密

字符串加密

发布时间:2022-01-18 14:19:20

㈠ C++ string字符串如何加密

C++ string类重载了[]运算符,因此,可以象数组一样方便的引用string中的每一个元素,进行数据修改。如,字符串简单加密方法,A-B, B-C, C-D。。。Z-A的实现代码如下:

#include<iostream>
#include<string>
usingnamespacestd;
intmain()
{
strings;
cin>>s;//输入字符串
for(inti=0;i<s.length();i++)//遍历字符串s.length()为输入串的长度
{
if(s[i]>='A'&&s[i]<'Z')//处理A-Y
s[i]+=1;
elseif(s[i]=='Z')//处理Z
s[i]='A';
//非大写字符,不处理
}
cout<<s<<endl;//输出字符串
return0;
}
运行结果:
AsDfGXyZ
BsEfHYyA

㈡ C语言字符串加密

#include <stdio.h>

encode(char * s)
{
char * x = s;
if (!x) return;
while(*x) {
(*x) += (char)2;
x++;
}
}

main()
{
char a[80];
scanf("%s", a);
encode(a);
printf(a);
}

㈢ 超长字符串如何加密

可以用DES或3DES加密,速度还是比较快的

㈣ 字符串加密

#include <stdio.h>
#include <stdlib.h>
void replace(char *src, int n)
{
char *s = src;
n = n % 26;
while(*s != 0)
{
*s = *s + n;
if(*s > 'Z') *s -= 26;
s++;
}
}
void disorder(char *s, char *key)
{
int len = 0 , i = 0;
char *tmp;
while(s[len++] != 0);
tmp = (char*)malloc(sizeof(char) * (len));
while(i < len) tmp[i] = s[i++];
for(i = 0; i < len - 1; i++)
{
s[i] = tmp[key[i] - '0' - 1];
}
free(tmp);
}
void main()
{
int n;
char str[100], key[100];
printf("input <str n order >: ");
//请合法输入eg. AXZ 2 231
scanf("%s%d%s", str, &n, key);
replace(str, n);
printf("str = %s\n", str);
disorder(str, key);
printf("str = %s\n", str);
}

㈤ 用C语言对字符串加密

没看懂是什么意思?输出的是后几位的字母及数字,到底输出多少?加密算法是什么??

㈥ 关于java中字符串加密

字符串加密的话 MD5现在用的最多,
数字类型的 一般是 DES 加密算法

㈦ C语言 字符串加密

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
intmain(void)
{
charc[100];
intk;
intlen,i,temp;

scanf("%s",c);
scanf("%d",&k);

len=(int)strlen(c);
k=k%26;

for(i=0;i<len;i++)
{
if(c[i]>='a'&&c[i]<='z')
{
if(c[i]+k>'z')
{
temp='z'-c[i];
temp=k-temp-1;
c[i]='a'+temp;
}
else
{
c[i]+=k;
}
}
elseif(c[i]>='A'&&c[i]<='Z')
{
if(c[i]+k>'Z')
{
temp='Z'-c[i];
temp=k-temp-1;
c[i]='A'+temp;
}
else
{
c[i]+=k;
}
}
else
{
/*donothing*/
}
}

printf("%s ",c);

return0;
}

㈧ 如何判断字符串的加密方式

首先,Base64算不上是一种加密算法。

Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,它的目的是用ASCII中定义的可见字符去表示任意的二进制数据。之所以要这样做,是因为计算机中很多数据是只能通过可见字符去传输的(比如我们的网站网址,比如一些面向字符的网络协议如SMTP等),但是这些情景有时由需要去传输二进制数据。基于这样的需要,诞生了Base64.
简单来讲,Base64就是用下列总计64个字符:
A-Z
a-z
0-9
+
/
去表示二进制数据。二进制数据以字节为组,一个字节8bit存在256个状态,而一个Base64字符只有64个状态。机智的人们于是规定,用每4个Base64字符去表示3个二进制字节,因为:

64 * 64 * 64 * 64 = 256 * 256 * 256

因此,Base64字符串的长度必然是4的整数倍。此外,由于二进制的字节数不一定是3的整数倍,所以Base64字符串在结尾是可能有空的。这些空的状态,Base64引入第65个字符去表示:

=

这也是为什么Base64很多都是以=或==结尾的。但是注意,也存在不以=或==结尾的Base64,只要编码的二进制字节数恰好被3给整除。

总结

一般情况下,一个合法的Base64,有着以下特征:

字符串的长度为4的整数倍。
字符串的符号取值只能在A-Z, a-z, 0-9, +, /, =共计65个字符中,且=如果出现就必须在结尾出现。

㈨ 如何对文本/字符串加密解密

加密解密的算法都没错,错的是解密程序里的文件操作方法。rewind(fp)没有必要。因为fp已经被close了。一般不推荐同时对一个文件又读又写,因为这样会导致很多缓冲区同步的问题。比如:fputc()和getc()之间,必须要调用fflush(fp);即使这样,还是会有问题。比如回车,getc()可能会返回两个字符,\n和\a。但是用fputc()写入的时候,分别写入\n和\a会把第二行第一个字符覆盖掉。正确的做法是:先把解密的数据保存到字符串里,全部结束之后,一次性把解密完的字符串写到文件里去。voidmain(){charch,name[30];charcontent[1000];intn=0;FILE*fp;printf("name:\a");gets(name);fp=fopen(name,"r+");if(fp==NULL){printf("Nofile:%s!\n\a",name);return;}ch=getc(fp);while(ch!=EOF){if((isalpha(ch))!=0){if((ch>='a'&&ch='A'&&ch<='D'))ch=ch+22;elsech=ch-4;}content[n++]=ch;ch=getc(fp);//ch=getc(fp);}content[n]=0;rewind(fp);fprintf(fp,"%s",content);fclose(fp);printf("%sok\a\n",name);printf("content:%s\n",content);printf("\n");}

㈩ 使用md5怎么给一串字符串加密

md5 不是加密算法,是单向的,就是说经过这个算法计算得到的结果不可能反推回原始值

阅读全文

与字符串加密相关的资料

热点内容
服务器一直崩应该用什么指令 浏览:916
cm202贴片机编程 浏览:723
php构造函数带参数 浏览:174
解压电波歌曲大全 浏览:336
为啥文件夹移到桌面成word了 浏览:858
命令符的安全模式是哪个键 浏览:758
编程中学 浏览:956
单片机求助 浏览:992
ug加工侧面排铣毛坯怎么编程 浏览:271
程序员有关的介绍 浏览:736
支付宝使用的什么服务器 浏览:210
安卓看本地书用什么软件好 浏览:921
经传软件滚动净利润指标源码 浏览:522
萤石云视频已加密怎么解除 浏览:574
一命令四要求五建议 浏览:30
qq文件夹迁移不了 浏览:19
液体粘滞系数测定不确定度算法 浏览:332
轻栈源码 浏览:426
把图片压缩到500k 浏览:35
命令你自己 浏览:369