C# 通过向每个字母添加字符来加密文本框值

C# 通过向每个字母添加字符来加密文本框值,c#,C#,如何通过向文本框的每个包含字符添加示例字符(65)来加密文本框 例如,如果我的文本框包含单词hello,我想添加H+char(65)、e+char(67)…等等 我想获得某种串行密钥 我正在使用此代码将随机值带入文本框 Guid g = Guid.NewGuid(); string GuidString = Convert.ToBase64String(g.ToByteArray()); GuidString = GuidString.Replac

如何通过向文本框的每个包含字符添加示例字符(65)来加密文本框

例如,如果我的文本框包含单词hello,我想添加H+char(65)、e+char(67)…等等

我想获得某种串行密钥

我正在使用此代码将随机值带入文本框

        Guid g = Guid.NewGuid();
        string GuidString = Convert.ToBase64String(g.ToByteArray());
        GuidString = GuidString.Replace("=", "");
        GuidString = GuidString.Replace("+", "");
        GuidString = GuidString.Replace("/", "");
        textBox1.Text = GuidString;
因此,从这段代码中,我是我的客户,将获取这个串行密钥。u3h2fzjskes47xfsyzmq

所以我想做一个exe,它可以将这个序列键转换成其他字符。
因此,如果我的客户要求我提供序列密钥,他必须给我这个exe已经给他的序列,并将转换后的序列发送给他,当它将粘贴到他的exe中以注册他的产品时。

您应该迭代每个字符串字符,并向其添加相应的值。您可以简单地添加一个数字,然后将该值转换为char。我希望它不会在您的项目中处理任何与加密相关的功能

string stringToEncode = "Hello";
string encodedString = "";

for (int i = 0; i < stringToEncode.Length; i++)
    encodedString += (char)(stringToEncode[i] + 65);
stringToEncode=“Hello”;
字符串encodedString=“”;
for(int i=0;i
序列码主要由数字、大写字母和小写字母组成,有时还包括破折号。这意味着根据ASCII表,每个字符的结果值必须属于指定范围之一:

  • 短跑-45
  • 数字-[48-57]
  • 大写字母-[65,90]
  • 小写字母-[97122]

解决方案看起来并不优雅,但您必须实现自己的字符映射(0代表a,1代表b…25代表z等等),然后将其映射到ASCII,而不是检查任何一对字符a和b(a+b)是否具有有效值。这样,您的+操作后跟%[字母表长度]将始终生成有效值,因为它将是一个

,您的GUID和用户输入的文本如何结合在一起还不清楚。您能否添加输入和所需输出的完整示例?你是想解密生成的结果,还是只是想随机化一个序列密钥?我需要类似的东西。但是我想避免使用所有奇怪的字符*-{}[]等等。或者如果我只能使用字母