文件加密程序

本文介绍了一种基于文件逐字节与密码异或方式的简单加密方法,通过该方法可以对文件进行加密并使用相同的步骤进行解密。这种方法在确保数据安全性的同时,提供了简便的操作流程。

//采用文件逐字节与密码异或方式对文件进行加密,当解密时,只需再运行一遍加密程序即可 

int encryption(char *in_fname, char *pwd, char *out_fname)
{
    FILE *fp_1, *fp_2;
    register char ch;
    int i = 0, pwd_length = 0;
 
    fp_1 = fopen(in_fname, "rb");
 
    if (fp_1 == NULL) {
        fprintf(stderr, "cannot open in-file: %s.\n", in_fname);
        return -1;
    }
 
    fp_2 = fopen(out_fname, "wb");
 
    if (fp_2 == NULL) {
        fprintf(stderr, "cannot open out-file: %s.\n", out_fname);
        return -1;
    }
 
    pwd_length = strlen(pwd);
 
    while ( (ch = fgetc(fp_1)) != EOF)
        fputc(ch ^ pwd[i > pwd_length ? i = 0 : i++], fp_2);
 
    fclose(fp_1);
    fclose(fp_2);
 
    return 0;
}
网上找的文件加密程序,还是没看懂
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值