吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1507|回复: 5
收起左侧

[求助] C# 程序续写

[复制链接]
lizf2019 发表于 2020-11-27 21:19
程序源代码:工程 下载:https://k-n.lanzoux.com/i5dRjiu7zrc
[C#] 纯文本查看 复制代码
using System;
using System.IO;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Encryptionanddecryption
{
    public partial class Form1 : Form
    {
        string publicKey = "WvJ2hkXoDhFRAkBB";    //密钥随便改为相同长度的
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            bool isA= FileHelper.IsRunAsAdmin();
            if (isA==false)
            {
                MessageBox.Show("请以管理员身份运行!");
                Application.ExitThread();
                System.Environment.Exit(System.Environment.ExitCode);
                System.Threading.Thread.CurrentThread.Abort();
                Process.GetCurrentProcess().Kill();
                return ;
            }
            label1.Text = FileHelper.GetNetworkAdpaterID(true);
            if (label1.Text == "机器码")
            {
                Application.ExitThread();
                System.Environment.Exit(System.Environment.ExitCode);
                System.Threading.Thread.CurrentThread.Abort();
                Process.GetCurrentProcess().Kill();
            }
        }

        private void button1_Click(object sender, EventArgs e)
        {
            if (File.Exists(@"D:\key.kps"))
            {
                File.Delete(@"D:\key.kps");//判断 密钥文件是否存在,存在就把他删了
            }
            byte[] key = FileHelper.GetKey(FileHelper.GetNetworkAdpaterID(false));//根据机器码生成秘钥
            string key1 = Encoding.Default.GetString(key);//把byte转成string
            key1 = FileHelper.Encrypt(publicKey, key1);//把秘钥加密一下
            File.WriteAllText(@"D:\key.kps", key1);//写入秘钥文件
            key1 = FileHelper.Decrypt(publicKey, key1);//解密秘钥下面要用

            string path;
            OpenFileDialog dialog = new OpenFileDialog();
            dialog.Multiselect = false;   //不允许多选
            dialog.Title = "选择要加密的文件";  //窗口标题
            dialog.Filter = "*.*|*.*";   //选择所有文件
            if (dialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                path = dialog.FileName;  //获取要加密文件路径
            }
            else
            {
                MessageBox.Show("没有选择文件!");
                return;
            }

            

            byte[] fileB = FileHelper.FileToByte(path);
            string fileS = Encoding.Default.GetString(fileB);
            string[] a = new string[fileS.Length + 1];
            int i = 0;
            foreach (char s in fileS)
            {
                i++;
                a[i] = FileHelper.Encrypt(key1, s);
            }
            string ssss = string.Join(string.Empty, a);
            FileHelper.ByteToFile(Encoding.Default.GetBytes(ssss), path + ".已加密");

            int index = this.dataGridView1.Rows.Add();
            dataGridView1.Rows[index].Cells[0].Value = path;

            dataGridView1.Rows[index].Cells[1].Value = FileHelper.GetFileType(path);

            if (File.Exists(path + ".已加密"))
            {
                dataGridView1.Rows[index].Cells[2].Value = "已加密完成";
            }
            else
            {
                dataGridView1.Rows[index].Cells[2].Value = "加密失败";
            }
        }



以上代码为一个C#的文件加密解密器
image.png
加密已经写好,求大佬帮助完善下解密部分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| lizf2019 发表于 2020-11-27 21:26
欢迎各位大佬发表高见!
鄢知鱼之乐 发表于 2020-11-27 21:35
xiaosaohuo11 发表于 2020-11-27 21:58
lamjiarong 发表于 2020-11-27 22:38
回去研究一下,大家探讨一下!

免费评分

参与人数 1吾爱币 -1 收起 理由
lizf2019 -1 1

查看全部评分

sonofbeach 发表于 2020-11-28 23:33
2019和2020都是你吗
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-26 10:34

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表