在.net中Rijndael和TripleDES的比较

C#常用加密类DES、MD5、RC2、Rijndael、RSA、TripleDES C#常用加密类包含DES、MD5、RC2、Rijndael、RSA、TripleDES 立即下载
2008-9-15  ganton
今天,我对使用Rijndael和TripleDES那一个算法有些疑惑,据我所知Rijndael比TripleDES要快些,但是在.net开发过程中有些信息让我知道在2.0中TripleDES却比Rijndael快,
为了证明其正确性,我将做一个测试。测试的结果是他们的效率基本一样。

我测试的电脑,内存2G,cpu 酷睿双核E8400 3Ghz,.net 3.5。下面是测试代码:
using System;
using System.IO;
using System.Security.Cryptography;
using System.Diagnostics;

namespace AESvsTripleDES
{
    class Program
     {
         static void Main(string[] args)
         {
            double rijndaelResult;
           double tripleDesResult;

           using (SymmetricAlgorithm algorithm = Rijndael.Create())
             {
              rijndaelResult = RunTest(algorithm);
           }
 
            using (SymmetricAlgorithm algorithm = TripleDES.Create())
             {
                 tripleDesResult = RunTest(algorithm);
             }
 
             Console.WriteLine("Rijndael Result = " + rijndaelResult.ToString());
             Console.WriteLine("TripleDES Result = " + tripleDesResult.ToString());
             Console.Read();
        }
  
        private static double RunTest(SymmetricAlgorithm algorithm)
         {
           using (MemoryStream ms = new MemoryStream())
          {
                using (ICryptoTransform transform = algorithm.CreateEncryptor())
                {
                    using (CryptoStream cs = new CryptoStream(ms, transform, CryptoStreamMode.Write))
               {
               byte[] data = new byte[8192];
                 Random r = new Random(255);
                for (int i = 0; i < data.Length; i++)
                 {
                     data[i] = (byte)r.Next();
                     }
                       Stopwatch sw = new Stopwatch();
 
                      sw.Start();
                        for (int i = 0; i < 10000000; i += data.Length)
                         {
                             cs.Write(data, 0, data.Length);
                         }
                        sw.Stop();
                        return sw.ElapsedMilliseconds;
                    }
                }
             }
         }
     }
 }

原文地址: http://devblog.antongochev.net/2008/09/15/rijndael-vs-tripledes-in-net-performance/



加密解密源码(DES,RC2,Rijndael,TripleDES,MD5) 本程序是本人综合一些加密解密算法,写成的加密解密算法类 其中包括对字符串加密解密、文件加密解密 加密方法有:DES,RC2,Rijndael,TripleDES,C#与java默认的DES加密算 法接口,MD5加密算法 vs2008 C# 源码 立即下载

相关推荐

文件、字符串加密解密(DES,RC2,Rijndael,TripleDES,MD5)

本程序是本人综合一些加密解密算法,写成的加密解密算法类 其中包括对字符串加密解密、文件加密解密 加密方法有:DES,RC2,Rijndael,TripleDES,C#与java默认的DES加密算 法接口,MD5加密算法 vs2008 C# 源码

[.net core学习] .net core中的Rijndael取代方法

The difference (in .NET) between Rijndael and AES is that Rijndael allows the block size to change, but AES does not. Since RijndaelManaged's default block size is the same as the AES block siz...

aifangzsrxp4574的专栏 222

asp.net TripleDES加密、解密算法

加密,使用密码产生加密算法的公钥,并使用TripleDES对密码进行加密。解密,使用密码产生加密算法的公钥,并使用TripleDES对加密数据进行解密。

.NET TripleDES加密、解密

using System;using System.Security.Cryptography;using System.Text;namespace Lib{ /// /// TripleDes加密、解密byte[]、string /// public class TripleDesEncrypt { ///

polarissky的专栏 1360

大专非科班拿下汇丰外包Java岗:我的TEKSystem面试全流程复盘(含IKM笔试真题)

本文详细记录了一位非科班大专生成功通过TEKSystem面试,拿下汇丰银行Java外包岗位的全过程。从IKM全英文笔试到技术面试,作者分享了7个关键转折点的实战经验,包括简历优化、技术考点、英语面试策略及薪酬谈判技巧,特别适合初级Java开发者参考。

weixin_30074763的博客 393

硬件工程师必备核心知识点

硬件设计是一项系统化工程活动,涉及元器件选型、电源设计、信号完整性、EMC和PCB工艺等多个环节

硬核科技 338

加密解密

应同事所邀把ASP.NET(C#)常用数据加密和解密方法列出供大家参考,特此发布出来,希望对大家有点帮助。数据虽来源于网络,系仰天一笑悉心整理。 ASP.NET(C#)常用数据加密和解密方法汇总 一、 数据加密的概念 1、 基本概念 2、 基本功能 3、 加密形式 二、 数据加密的项目应用和学习 1、...

xiangkuifu的博客 1205

SecureCRT 9.0最新版安装与激活全攻略(附驱动识别技巧)

本文提供SecureCRT 9.0最新版的详细安装与激活指南,并重点解析了嵌入式开发中串口连接的硬件驱动识别技巧。内容涵盖从安全获取软件、解决USB转串口驱动兼容性问题,到配置SSH与串口会话的完整流程,旨在帮助开发者和工程师高效部署并精通使用这款终端仿真利器。

star的博客 410

3DES算法

本文基于.NET的C#实现3DES算法的加密和解密过程。可以用在加密软件、加密狗等。

路过 654

PCB设计之ODB++文件格式详解

ODB++(Open Database++)是一种广泛应用于PCB(印制电路板)设计和制造领域的开放数据交换格式。它由Valor Computerized Systems(现为Siemens EDA的一部分)开发,旨在替代传统的Gerber文件格式,提供更完整、结构化的制造数据,从而优化PCB设计到生产的流程。ODB++通过结构化数据整合了PCB设计到制造的全流程信息,显著提高了生产效率和准确性。尽管存在一定的兼容性挑战,但其在复杂项目和高可靠性场景中的价值不可替代。

ZZcppc的博客 1万+

DA14531-蓝牙温度传感器-真实案例

传感器低功耗系统功能需求: 1)平时为关机状态,通过GPIO管脚唤醒,霍尔器件触发拉低IO唤醒系统。 2)唤醒后,进入BLE广播状态,等待主机连接,若一分钟无被主机连接,则进入关机状态。 3)连接后(0.1mA),每秒上报一次温度值,同时主机可以读取设备读电池电量。 4)连接断开后,1分钟后,设备进入关机(1uA)。 5)LED灯在连接时点亮,断开灭,低电量时会闪,提示闪烁。

hejinwu1314的博客 856

国家宝藏——SM国密算法

- --首先先放几张图偶然见在国家宝藏节目看到了SM算法,由于名字奇特,所以倍感好奇于是百度了一波。其实就是国家密码局认定的国产密码算法。名字为SMX(X=1,2,3,4……)当然这个名字的由来没有你们想象的那么邪恶,或许他只是一个优秀的人名缩写吧,比如说宋明旭什么的……这样的国产国密算法有很多种,其中SM1、SM4、SM7、祖冲之密码(ZUC)是对称算法;SM2、SM9是非对称算法;SM3是哈希...

九日王朝 2万+

C++幂运算全解析:std::pow()函数详解与实战指南

本文详细介绍了C++标准库中的std::pow()函数,包括其基本用法、数学定义和多种重载形式。重点分析了该函数在科学计算、图形处理等领域的实际应用,并提供了性能优化方案如快速幂算法和预计算表。文章还探讨了精度控制、错误处理等关键问题,最后通过一个完整计算器实现展示了综合应用。std::pow()作为基础数学函数,合理使用能显著提升计算效率和代码可靠性。

专注现代C++实战,从核心语法到高性能编程,助力开发者深入掌握系统级编程精髓。 340

.NET中加密和解密的实现方法

对称算法在加密和解密数据时使用相同的密钥和初始化矢量,典型的有DES、 TripleDES和Rijndael算法,它适用于不需要传递密钥的情况,主要用于本地文档或数据的加密。不对称算法有两个不同的密钥,分别是公共密钥和私有密钥,公共密钥在网络中传递,用于加密数据,而私有密钥用于解密数据。.NET使用强大的随机密钥设置了提供程序的实例,选择自己的密钥是比较危险的,接受计算机产生的密钥是一个更好的选择,文中的代码使用的是计算机产生的密钥。需要将数据通过网络发送时,首先使用接收的公共不对称密钥加密对称密钥。

biyusr的专栏 971

GitHub 国内加速完全指南(最新):镜像、代理与优化技巧

在国内使用 GitHub 时,经常遇到 clone 慢、打开仓库卡、GitHub Actions 不稳定 等问题。下面是整理好的 GitHub 国内镜像和加速方法大全,高效使用 GitHub。

moton2017的博客 1万+

深入理解 ABAP 中的 Fast Data Access:从 @itab 到 FOR ALL ENTRIES 的性能关键路径

ABAP性能优化的关键在于理解Fast Data Access(FDA)机制,它连接了应用服务器的内表与数据库运算。FDA允许将内表数据推送到数据库进行筛选、聚合等操作,是SELECT...FROM@itab语法的基础。开发者需注意:1)该语法可能在内置引擎或数据库执行;2)仅当SQL能力超出ABAP范围时才建议使用;3)需通过CL_ABAP_DBFEATURES检查数据库支持情况。合理使用FDA可优化批量数据处理,但滥用可能导致性能下降。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1270

.NET中的加密解密:私钥加密(对称加密):AES、DES、RC2、Rijindael、TripleDES

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Security.Cryptography;using System.IO;namespace Sample_CUI{ namespace Encryption_And

Jie 800

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

.NET下的加密解密大全(2):对称加密

本博文列出了.NET下常用的对称加密算法,并将它们制作成小DEMO,希望能对大家有所帮助。 公共代码 static byte[] CreateKey(int num) { byte[] result = new byte[num]; Random rand = new Random();

GhostHouse 8740

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

.net下可逆的加密算法

.Net提供了许多可你的加密算法,总有一种适合你的加密需求。java中也有同类算法的实现,可以和.Net相互操作。网上的加密算法的文章很多,好用的却没有几个。MS上有一篇关于可逆加密算法实现的文章写得不错。估计是外国人写的,不支持中文。另外,他的结构也不是很符合我们常用的需求。我对他进行了一些改进,使它具有中国特色。using System;using System.Security.Cryp

亮剑的专栏 2601

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

.NET中的密码学--对称加密

在。net之前,使用非托管的Win32APIs加密解密数据是一件非常痛苦的事情。为了这个加密解密的目的,。NET配置了一组类(和命名空间)。现在你有很多类可以使用每种不同的算法保护你的数据。在。NET里面Crypttography命名空间下又定义了3种类型的加密方法。他们是AsymmetricAlgorithm,SymmetricAlgorithm和HashAlgorithm.所有的这些...

a785842114的博客 177

.net加密解密学习总结

.NET中的DES加密解密 http://blog.csdn.net/pan_junbiao/article/details/7032700   System.Security.Cryptography名字空间包含了实现安全方案的类,例如加密和解密数据、管理密 钥、验证数据的完整性并确保数据没有被篡改等等。   加密和解密的算法分为对称(symmetric)算法和不对称(asy

bcbobo21cn的专栏 1999

dot Net中的加密和解密

 http://info.52z.com/news/data/0741116467692858A95FC83HEJ5DA1.html  .NET将原来独立的API和SDK合并到一个框架中,这对于程序开发人员非常有利。它将CryptoAPI改编进.NET的System.Security.Cryptography名字空间,使密码服务摆脱了SDK平台 的神秘性,变成了简单的.NE

393

.net中C#命名空间System.Security.Cryptography简记

.net中C#命名空间System.Security.Cryptography简记前言System.Security.Cryptography==核心步骤代码==加密算法对称加密算法DESTripleDESAES/RijndaelRC2RC4具体使用方法加密网络数据非对称加密算法RSADSA加密哈希算法(散列算法)MD5SHA-1RIPEMD160SHA-256/384/512参考链接官方介绍链接 前言 最近在看加密相关的文章,这里做个总结记录,为了以后使用。文中主要使用AES/Rijndael算法举例。其

天富儿的博客 6379

.net加密

Microsoft .NET 中的简化加密 http://www.51cto.com/specbook/15/3407.htm 1.SHA1 using System.Security.Cryptography; SHA1CryptoServiceProvider sha1=new SHA1CryptoServiceProvider(); string encryptedStrin

白马酒凉 558
上一篇: 仿火狐123邮件登录
下一篇: USB-KEY原理简要说明
andycode
博客等级 码龄17年 12粉丝 80原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值