.Net常见的几种加密方式
家电修理 2023-07-16 19:17www.caominkang.com电器维修
.Net加密算法主要分为对称算法、非对称算法、哈希算法、随机算法。每种算法都有自己的使用场景,例如 保护隐私(防止查看)、保护完整性(防止更改)、数字签名、生成秘钥、秘钥交换、生成随机数等。
按照不同场景,微软建议使用的算法如下
- 数据隐私Aes
- 数据完整性HMACSHA256、HMACSHA512
- 数字签名ECDsa、RSA
- 密钥交换ECDiffieHellman、RSA
- 随机数生成RandomNumberGenerator
- 从密码生成密钥Rfc2898DeriveBytes
私钥加密也称之为对称加密,因为使用的是相同的秘钥来加密、解密。对称加密是对流执行的,所以可以对大数据进行加密。对称加密速度比公钥加密速度快。对称算法要求创建秘钥和初始化向量(IV),秘钥必须保密、IV可以公开但应定期更改。常见的私钥加密有DES、AES、HMACSHA256、HMACSHA384、HMACSHA512等。
using System;
using System.Collections.Generic;
using System.IO;
using System.Net.Http;
using System.Security.Cryptography;
using System.Text;
namespace Demo
{
class Program
{
static void Main(string[] args)
{
#region 秘钥长度
//16位密钥 = 128位
//24位密钥 = 192位
//32位密钥 = 256位
Aes aes = Aes.Create();
KeySizes[] ks = aes.LegalKeySizes;
foreach (KeySizes k in ks)
{
Console.WriteLine("tLegal min key size = " + k.MinSize);
Console.WriteLine("tLegal max key size = " + k.MaxSize);
Console.WriteLine("tLegal skipsize = " + k.SkipSize);
}
//This sample produces the folloing output:
// Legal min key size = 128
// Legal max key size = 256
// Legal skipsize = 64
#endregion
string original = "Here is some data to encrypt!";
// Create a ne instance of the Aes
// class. This generates a ne key and initialization
// vector (IV).
//using (Aes myAes = Aes.Create())
//{
// var strkey = Convert.ToBase64String(myAes.Key);
// var striv = Convert.ToBase64String(myAes.IV);
/上一篇:C盘满了怎么清理垃圾而不误删? 下一篇:搜狗浏览器打不开网页怎么办?教你一招快速解
空调维修
- 我的世界电脑版运行身份怎么弄出来(我的世界
- 空调抽湿是什么意思,设置抽湿的温度有什么意
- 方太燃气灶有一个打不着火 怎么修复与排查方法
- 夏季免费清洗汽车空调的宣传口号
- 清洗完空调后出现漏水现象
- iphone6能玩什么游戏(iphone6游戏)
- 如何设置电脑密码锁屏(如何设置电脑密码锁屏
- win10删除开机密码提示不符合密码策略要求
- 电脑w7显示不是正版(w7不是正版怎么解决)
- 万家乐z8热水器显示e7解决 怎么修复与排查方法
- 1匹空调多少瓦数(1匹空调多少瓦)
- 安卓手机连接电脑用什么软件好(关于安卓手机
- 电脑网页看视频卡是什么原因(爱拍看视频卡)
- 华帝燃气灶点火器一直响然后熄火怎么办:问题
- 电脑壁纸怎么换(关于电脑壁纸怎么换的介绍)
- 冬天空调的出风口应该朝什么方向(冬天空调风