皮皮网

皮皮网

【ffmpeg源码读懂要多久】【人人彩票app源码】【http状态检测源码】c源码加密

时间:2024-11-20 16:45:52 分类:时尚

1.关于C语言的加密
2.c语言实现密码加密
3.c 语言常用的码加密加密算法——MD5

c源码加密

关于C语言的加密

       'a'的ASC码是

       'b'的ASC码是

       'c'的ASC码是

       ... ...

       'z'的ASC码是

       æ˜Žæ–‡å’Œå¯†æ–‡ç›¸å¯¹åº”

       å¦‚明文:"abc"

        密文:"zyw"

       å½“ch1 = 'a'时,ch2 = 'z'

       ch1 - = + - ch2

        - = + - = 0

       å½“ch1 = 'b'时,ch2 = 'y'

       ch1 - = + - ch2

        - = + - = 1

       å½“ch1 = 'c'时,ch2 = 'w'

       ch1 - = + - ch2

        - = + - = 2

       ch1 - = + - ch2这实际上是明文与密文的对应关系,也就是他的算法

       ä½ å¯ä»¥å¯¹æ˜Žæ–‡åŽ»è®¾å®šä¸€ä¸ªå¯¹åº”关系,就可以得到不同的密文

c语言实现密码加密

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

        int sum = 0, i;

        if (enc) {

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

        psw[i] -= ;

        sum += psw[i];

        }

        psw[6] = (unsigned char) sum;

        psw[7] = 0;

           }

        else {

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

        sum += psw[i];

        psw[i] += ;

        }

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

        printf("Bad password\n");

        psw[0] = 0;

        return psw;

        }

        else {

        psw[6] = 0;

        }

        }

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

        unsigned char t = psw[i];

        psw[i] = psw[5-i];

        psw[5-i] = t;

        }

        return psw;

       }

       int main()

       {

        unsigned char psw[];

        scanf("%s", psw);

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

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

        return 0;

       }

c 语言常用的加密算法——MD5

       在C语言中,常用的码加密加密算法主要包括AES、RSA、码加密MD5、码加密SHA-1及Base编码。码加密ffmpeg源码读懂要多久

       AES加密算法是码加密人人彩票app源码一种对称加密算法,广泛应用于数据加密。码加密通过OpenSSL库在C语言中实现AES加密。码加密

       RSA加密算法为非对称加密算法,码加密使用两把不同的码加密密钥进行加密与解密,是码加密最成熟且常用的非对称加密算法。同样使用OpenSSL库在C语言中实现RSA加密。码加密

       MD5算法作为加密散列函数,码加密http状态检测源码产生位散列值,码加密广泛应用于C语言中。码加密通过OpenSSL库实现MD5加密。

       SHA-1算法全称为Secure Hash Algorithm 1,bitcoin86 源码用于数字签名、验证、消息摘要等,C语言中通过OpenSSL库实现SHA-1加密。家共享app源码

       Base编码虽非加密算法,但用于隐藏信息,C语言中通过OpenSSL库进行Base编码与解码。

       实现这些算法时通常利用OpenSSL库,因其提供了高效实现,避免了重复开发。

       MD5算法在C语言中的实现示例如下:

       #include

       #include md5.h>

       int main() {

       char *str = "Hello, world!";

       unsigned char digest[MD5_DIGEST_LENGTH];

       MD5((unsigned char*) str, strlen(str), digest);

       printf("MD5 hash of \"%s\": ", str);

       for (int i = 0; i < MD5_DIGEST_LENGTH; i++) {

       printf("%x", digest[i]);

       }

       printf(" ");

       return 0;

       }

       通过OpenSSL库中的MD5函数,传入字符串与长度,将结果存储在数组中,然后打印数组内容即为MD5散列值。