C#对文件的字节加密/解密-可逆

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: using System; using System.Collections.Generic; using System.ComponentModel; using System.

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Threading;

namespace 文件加密
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void btn_Encode_Click(object sender, EventArgs e)
        {
            Thread th1 = new Thread(new ThreadStart(EncodingFile));
            th1.Start();
        }
        private void EncodingFile()
        {
            string inf = @txt_source.Text;//源文件地址
            string outf = @txt_des.Text;//目的文件地址
            FileInfo fi = new FileInfo(inf);
            progressBar1.Maximum = (int)fi.Length;
            using (FileStream outstream = new FileStream(@outf, FileMode.Create))
            {
                using (FileStream fs = new FileStream(@inf, FileMode.Open))
                {
                    byte[] bytes = new byte[1024 * 1024 * 10];//10MB
                    int readlength;
                    while ((readlength = fs.Read(bytes, 0, bytes.Length)) > 0)
                    {
                        for (int i = 0; i < readlength; i++)
                        {
                            bytes[i] = (byte)(byte.MaxValue - bytes[i]);
                        }
                       
                        outstream.Write(bytes, 0, readlength);
                       progressBar1.Value += readlength;
                    }
                }
            }
            MessageBox.Show("加密完成,重复此过程即可解密!");
        }
    }
}
 

相关文章
|
2月前
|
C#
基于 C# 编写的 Visual Studio 文件编码显示与修改扩展插件
基于 C# 编写的 Visual Studio 文件编码显示与修改扩展插件
|
4月前
|
安全 Linux 数据安全/隐私保护
python知识点100篇系列(15)-加密python源代码为pyd文件
【10月更文挑战第5天】为了保护Python源码不被查看,可将其编译成二进制文件(Windows下为.pyd,Linux下为.so)。以Python3.8为例,通过Cython工具,先写好Python代码并加入`# cython: language_level=3`指令,安装easycython库后,使用`easycython *.py`命令编译源文件,最终生成.pyd文件供直接导入使用。
153 3
python知识点100篇系列(15)-加密python源代码为pyd文件
|
4月前
|
数据安全/隐私保护 Python
Zipfile学习笔记(二)::通过zipfile模块暴力破解加密的压缩文件
如何使用Python的zipfile模块生成密码表并尝试暴力破解加密的ZIP压缩文件。
84 1
Zipfile学习笔记(二)::通过zipfile模块暴力破解加密的压缩文件
|
4月前
|
存储 安全 算法
C#一分钟浅谈:数据加密与解密技术
【10月更文挑战第3天】在数字化时代,信息安全至关重要。数据加密作为保障信息不被未授权访问的有效手段,通过特定算法将明文转换为密文,确保即使数据被截获也难以解读。本文从基础概念入手,介绍C#中实现数据加密的方法,涵盖对称加密(如AES、DES)与非对称加密(如RSA),并通过具体示例代码演示如何使用`System.Security.Cryptography.Aes`类完成AES加密和解密过程。此外,还强调了密钥管理及安全策略的重要性。
120 4
|
4月前
|
存储 C#
【C#】大批量判断文件是否存在的两种方法效率对比
【C#】大批量判断文件是否存在的两种方法效率对比
83 1
|
5月前
|
人工智能 IDE 开发工具
Python实行任意文件的加密—解密
Python实行任意文件的加密—解密
39 2
|
4月前
|
XML 存储 缓存
C#使用XML文件的详解及示例
C#使用XML文件的详解及示例
206 0
|
4月前
|
IDE 开发工具 数据安全/隐私保护
Python编程实现批量md5加密pdf文件
Python编程实现批量md5加密pdf文件
58 0
|
3月前
|
C# 开发者
C# 一分钟浅谈:Code Contracts 与契约编程
【10月更文挑战第26天】本文介绍了 C# 中的 Code Contracts,这是一个强大的工具,用于通过契约编程增强代码的健壮性和可维护性。文章从基本概念入手,详细讲解了前置条件、后置条件和对象不变量的使用方法,并通过具体代码示例进行了说明。同时,文章还探讨了常见的问题和易错点,如忘记启用静态检查、过度依赖契约和性能影响,并提供了相应的解决建议。希望读者能通过本文更好地理解和应用 Code Contracts。
65 3
|
2月前
|
存储 安全 编译器
学懂C#编程:属性(Property)的概念定义及使用详解
通过深入理解和使用C#的属性,可以编写更清晰、简洁和高效的代码,为开发高质量的应用程序奠定基础。
122 12

热门文章

最新文章