zoukankan      html  css  js  c++  java
  • Base64加密 解密

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace CommonLib {
      public class Decryptions {
        /// <summary>
        /// Base64解密
        /// </summary>
        /// <param name="encode">解密采用的编码方式,注意:其与加密时采用的编码方式一致</param>
        /// <param name="result">待解密的密文</param>
        /// <returns></returns>
        public static string DecodeBase64(Encoding encode, string result) {
          var decode = string.Empty;
          byte[] bytes = Convert.FromBase64String(result);
          try {
            decode = encode.GetString(bytes);
          } catch {
            decode = result;
          }
          return decode;
        }
    
        /// <summary>
        /// Base64解密,采用utf8编码方式解密
        /// </summary>
        /// <param name="result">待解密的密文</param>
        /// <returns>解密后的明文</returns>
        public static string DecodeBase64(string result) {
          return DecodeBase64(Encoding.UTF8, result);
        }
      }
    }
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace CommonLib {
      public class Encryptions {
    
        /// <summary>
        /// Base64加密
        /// </summary>
        /// <param name="encode">加密采用的编码方式</param>
        /// <param name="source">待加密的明文</param>
        /// <returns></returns>
        public static string EncodeBase64(Encoding encode, string source) {
          var enStr = string.Empty;
          byte[] bytes = encode.GetBytes(source);
          try {
            enStr = Convert.ToBase64String(bytes);
          } catch {
            enStr = source;
          }
          return enStr;
        }
    
        /// <summary>
        /// Base64加密,采用utf8编码方式加密
        /// </summary>
        /// <param name="source">待加密的明文</param>
        /// <returns></returns>
        public static string EncodeBase64(string source) {
          return EncodeBase64(Encoding.UTF8, source);
        }
    
      }
    }
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace CommonLib {
      public class Mode {
        /// <summary>
        /// 获取所有支持的加密解密方式
        /// </summary>
        /// <returns></returns>
        public static List<string> GetModeList() {
          List<string> encriptTypeList = new List<string>() {
           "默认","utf-8","utf-7","ascii","unicode","utf-32"
          };
          return encriptTypeList;
        }
    
        /// <summary>
        /// 根据字符串,获取加密解密方式
        /// </summary>
        /// <param name="mode"></param>
        /// <returns></returns>
        public static Encoding GetMode(string mode) {
          Encoding m = Encoding.UTF8;
          switch (mode) {
            case "默认":
            case "utf-8":
              m = Encoding.UTF8;
              break;
            case "utf-7":
              m = Encoding.UTF7;
              break;
    
            case "ascii":
              m = Encoding.ASCII;
              break;
    
            case "unicode":
              m = Encoding.Unicode;
              break;
    
            case "utf-32":
              m = Encoding.UTF32;
              break;
            default:
              return m;
    
          }
          return m;
        }
      }
    }
  • 相关阅读:
    Mac nginx 简单文件服务器
    cocos-lua
    Sublime Text 3 快捷键精华版
    VS中dumpbin工具的使用
    【2022新教程】Ubuntu server 20.04如何安装nvidia驱动和cuda-解决服务器ssh一段时间后连不上的问题
    linux如何将一个正在运行的进程转入到后台执行且中断shh连接不被kill掉
    Ubuntu如何修改默认python版本-sudo和不用sudopython不一致怎么办
    Ubuntu中virtual enviroment在sudo下无效怎么办?
    时间复杂度为O(1)的抽样算法——别名采样(alias sample method)
    Luke技术小站公告板
  • 原文地址:https://www.cnblogs.com/Jeely/p/11721306.html
Copyright © 2011-2022 走看看