c语言实现密码加密

Python015

c语言实现密码加密,第1张

unsigned char* encrypt(unsigned char* psw, int enc) {

int sum = 0, i

if (enc) {

for (i = 0 i < 6 i++) {

psw[i] -= 15

sum += psw[i]

}

psw[6] = (unsigned char) sum

psw[7] = 0

    }

else {

for (i = 0 i < 6 i++) {

sum += psw[i]

psw[i] += 15

}

if ((unsigned char)sum != psw[6]) {

printf("Bad password\n")

psw[0] = 0

return psw

}

else {

psw[6] = 0

}

}

for (i = 0 i < 3i++) {

unsigned char t = psw[i]

psw[i] = psw[5-i]

psw[5-i] = t

}

return psw

}

int main()

{

unsigned char psw[128]

scanf("%s", psw)

printf("encode to:%s\n", encrypt(psw, 1))

printf("decode to:%s\n", encrypt(psw, 0))

return 0

}

#include

#include

main()

{

intkey

charch

printf("\n请输入密钥:")

scanf("%d",&key)

printf("得到对应明文如下:")

while((ch=getchar())!='\r')

(ch+key)>122?putchar(ch-122+33+key):

((ch+key)<33?putchar(ch+122+key):putchar(ch+key))

}

输入输出如下:

请输入密钥:20addse

得到对应明文如下:uxx.y

你先输入一个任意的整数,如20,然后在键盘上输入一段任意的字符如addse

按回车键结束,就会得到结果如:uxx.y

下面是另一组输入输出:

请输入密钥:35asjRYIRER!@#$^^*&

得到对应明文如下:+=4u#luhuDcFG((MI-

具体是如何加密,你应该能看懂,就是用一个三目运算符?:控制。