導航:首頁 > 文檔加密 > 字元串加密

字元串加密

發布時間: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 不是加密演算法,是單向的,就是說經過這個演算法計算得到的結果不可能反推回原始值

閱讀全文

與字元串加密相關的資料

熱點內容
phpsql單引號 瀏覽:84
英雄聯盟壓縮壁紙 瀏覽:450
辦公app需要什麼伺服器 瀏覽:626
安卓伺服器怎麼獲得 瀏覽:806
空調壓縮機冷媒的作用 瀏覽:779
淘寶app是以什麼為利的 瀏覽:655
java提取圖片文字 瀏覽:922
我的世界手機版指令復制命令 瀏覽:33
java判斷字元串為數字 瀏覽:924
androidrpc框架 瀏覽:488
雲伺服器essd和ssd 瀏覽:522
家用網關的加密方式 瀏覽:1
怎麼從ppt導出pdf文件 瀏覽:971
換汽車空調壓縮機軸承 瀏覽:845
平板怎麼登錄安卓端 瀏覽:195
圖像拼接計演算法 瀏覽:255
怎麼打開飢荒伺服器的本地文件夾 瀏覽:291
usb掃描槍編程 瀏覽:673
博易大師手機app叫什麼 瀏覽:663
刮眼影盤解壓方法 瀏覽:966