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

對字元串加密3位

發布時間:2022-05-03 16:49:41

❶ 該程序實現字元串加密,加密方法是把每個ASCII碼字元的最低三位二進制數取反。如輸入:IPTV則輸出:NWSQ

#include <stdio.h>
#include <conio.h>
void main()
{
char str1[20],str2[20];
int i=0;
printf("Please input a string:\n");
scanf("%s",str1);
while(str1[i]!='\0')//判斷是否到字元串結尾
{
str2[i]=str1[i]^7;//與7(00000111)異或操作可以實現最低三位二進制數取反
i++;
}
str2[i]='\0';//添加字元串結束標志
printf("\n Source string: %s,\n Target string: %s\n", str1,str2);
getch();
}
只說一個字元I,其ASCII為73,二進制為1001001,編碼後為1001110,為78,對應N,其他類推

❷ 用c語言把字元串加密,包括字母和數字,向後偏移三位,需要運用到函數。幫忙改一下錯啊。。

#include<stdio.h>
void sec(char str[]);
void main()
{
char str[10];
int i=0;
printf("input 10 chars:\n");
for(i=0;i<10;i++)
scanf("%c",&str[i]);//<————這里輸入的時候你寫的不對!
sec(str);
for(i=0;i<10;i++)
printf("%c",str[i]);
}
void sec(char str[])
{
int i;
for(i=0;str[i]!='\0';i++)
{
char x=str[i];
if((x>='a'&&x<='z')||(x>='A'&&x<='Z')||(x>='0'&&x<='9'))
x=x+3;
str[i]=x;//<————————這里要把轉換完的x再賦給str[i]
}
}

❸ 輸入一個字元串(包括數字),以3為密鑰對字元串進行加密並輸出

#include<stdio.h>
voidfun(char*s,charx){while(*s){*s^=x;s++;}}
voidmain(){charstr[256],x;
printf("請輸入字元串:");gets(str);
printf("請輸入密鑰:");scanf("%d",&x);
fun(str,x);printf("加密後的字元串[%s] ",str);
fun(str,x);printf("解密後的字元串[%s] ",str);
}

❹ 字元串加密

#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);
}

❺ vb對字元串加密(偏移3位)

Private Sub Command1_Click()
Dim a() As String, b() As Integer, n As Integer
n = Len(txtinputbox)
Print n
ReDim a(n)
ReDim b(n + 3)
For i = 1 To n
a(i) = Mid(txtinputbox, i, 1)
b(i) = Asc(a(i)) + 3

If b(i) > Asc("Z") And b(i) < Asc("a") Then b(i) = Asc("A") + b(i) - Asc("Z") - 1
If b(i) > Asc("z") Then b(i) = Asc("a") + b(i) - Asc("z") - 1
a(i) = Chr(b(i))
codelabel.Caption = codelabel.Caption & a(i)
Next
End Sub

❻ C語言實現將字元串進行加密處理,每個字元的加密規則是,將其轉換為對應的ASCII碼加3後對應 的字元輸出

輸入的是英文字元的話,直接加3就可以,但是如果是中文字元的話,如果直接高位和地位加3也可以,但是解密的時候就有一個不確定的存在,因為中文字元的ascii編碼是有0xfe這樣的存在,加上3的話就到時候還原就變得不確定。所以如果是中文字元加密的話,應該把兩個ascii碼轉合並為兩個位元組無符號類型,然後再加3。

❼ 對字元串加密 偏移3位 c語言,幫忙看看有什麼錯啊

輸出用%s的話,用不著0到10循環,一個printf("%s",a);就行了
%s表示輸入字元串,那麼a[10]只能接收9個字元。因為還有一個隱含的字元串結束符。
偏移那段不能0到10循環,而應該判斷是否已處理到了字元串結尾。

#include<stdio.h>
main()
{
char a[10];
int i ;
printf("input 9 chars:\n");
scanf("%s",a);
for(i=0;a[i]!='\0';i++)
{
if('x'<=a[i]&&a[i]<='z'||'X'<=a[i]&&a[i]<='Z')
a[i]-=23;
else
a[i]+=3;
}
printf("%s",a);
}

❽ 在程序中如何將字元串常量進行加密

首先,要對這個常量字元串進行加密。
然後,加密用的密碼(密鑰)需要進行特殊處理。
比如:要保護字元串123456,用密鑰13579進行加密。
密鑰13579的16進制數組形式為:{0x31, 0x33, 0x35, 0x37, 0x39, 0x00}
你可以對這個數組進行數據干擾。比如:高位亂填數據(因為你知道是3),低位都加/減某數值:
變為了:{ 0xA3, 0xF5, 0x67, 0xD9, 0x3A, 0x00 }
你在代碼中對每一位進行恢復:
*p &= 0x0F, *p |= 0x30, *p -= 0x02,如此得到你的原始密碼:13579;
反匯編看到的你的密鑰串為:0xA3, 0xF5, 0x67, 0xD9, 0x3A, 0x00。
不知道你思路的話,只能碰運氣猜啦。

在上面兩種干擾方法基礎上,你甚至還可以把高低位調換,這樣就又加了一層干擾信息。
別人想破解也得好好猜一會了。

❾ [高分]C語言對字元串的加密和解密

char
ch,name[30],over;
FILE
*fp;
printf("請輸入要加密的文件名(正確的做法是:先把解密的數不知道,你想要什麼樣的加密演算法
AES不錯。不過AES是對16個位元組長度加密,要是不是16的倍數,處理有點麻煩據保存到字元串里,全部結束之後,一次性把解密

閱讀全文

與對字元串加密3位相關的資料

熱點內容
組管理命令 瀏覽:979
海南高德司機端是什麼app 瀏覽:861
pid命令 瀏覽:886
一天一圖學會python可視化 瀏覽:309
魔獸編輯文本命令串 瀏覽:497
android中view繪制 瀏覽:798
安卓機內存刪除怎麼恢復 瀏覽:329
Qt環境的編譯軟體放到linux 瀏覽:214
聯創列印系統怎麼連接伺服器 瀏覽:935
杭州行政命令 瀏覽:160
如何查找伺服器日誌 瀏覽:801
加密的鑰匙扣怎麼寫 瀏覽:579
文件夾更新不了怎麼辦 瀏覽:475
壓縮機指示燈亮是什麼原因 瀏覽:956
什麼app訂酒店半價 瀏覽:765
中老年解壓神器 瀏覽:243
訊飛語音ttsandroid 瀏覽:468
腰椎壓縮性骨折術後能坐車嗎 瀏覽:507
python類裝飾器參數 瀏覽:350
均線pdf微盤 瀏覽:792