zoukankan      html  css  js  c++  java
  • 基于c#的windows基础设计(学习日记1)【关于异或运算】

      第一次接触异或运算,总体来说比哈希算法简单的多,无论是理解还是代码的难易度,唯一不好的是在固定了密钥之后,随机性就小了很多,所以安全性比起哈希算法还是有所差距。

    原理在网站上很多都有所以就不再赘述了。程序的正确性尚不可知,不管了。

    直接贴代码:

    static void Main(string[] args)
    {
             int i,n;
             string s_result=null, s_text, s_key;
             char ch;
             Console.WriteLine("请输入需要加密的字符串:");
             s_text = Console.ReadLine();
             Console.WriteLine("请输入加密的密钥:");
             s_key = Console.ReadLine();
           i f (s_text.Count() != s_key.Count())//判断长度是否相等
            {
              Console.WriteLine("加密字符串和字符串长度不等!");
            }
           else
          {
              for (i =0;i<= s_key.Length - 1; i++)//第一层循环把密钥的数字提取出来
          {
                  n = s_key[i] - '0';
                 for (i = 0; i <= s_text.Length - 1; i++)//把字符类型转换为char
         {
                s_result = (char)(s_text[i] ^ n)+s_result;//进行异或运算
             }
              }
              Console.WriteLine("加密后的字符串是:{0}",s_result);//输出结果
             }
              Console.ReadKey();
             //System.ApplicationI
           System.Environment.Exit(0);
    }

  • 相关阅读:
    Redis的特点
    JavaScript语言和JQuery技术
    学习javaDay13
    学习JavaDay12
    学习JavaDay11
    学习JavaDay10
    学习JavaDay09
    学习JavaDay08
    java的语法基础(二)
    java语法基础(一)
  • 原文地址:https://www.cnblogs.com/shichina/p/7498727.html
Copyright © 2011-2022 走看看