【第21期】观点:人工智能到底用 GPU?还是用 FPGA?

C# 3DES加密及弱密钥处理

翻译 2016年08月29日 14:54:02
3DES加密,以及避过.net弱密钥检测。代码根据网上代码进行的修改
private static byte[] ThreeDES(byte[] key, byte[] str)
        {
            TripleDESCryptoServiceProvider tdsc = new TripleDESCryptoServiceProvider();
            tdsc.Padding = PaddingMode.None;

            byte[] IV = { 0xB0, 0xA2, 0xB8, 0xA3, 0xDA, 0xCC, 0xDA, 0xCC };
            //指定密匙长度,默认为192位
            tdsc.KeySize = 128;
            //使用指定的key和IV(加密向量)
            Type t = Type.GetType("System.Security.Cryptography.CryptoAPITransformMode");
            object obj = t.GetField("Encrypt", BindingFlags.Instance | BindingFlags.Static | BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.DeclaredOnly).GetValue(t);
            MethodInfo mi = tdsc.GetType().GetMethod("_NewEncryptor", BindingFlags.Instance | BindingFlags.NonPublic);
            ICryptoTransform desCrypt = (ICryptoTransform)mi.Invoke(tdsc, new object[] { key, CipherMode.ECB, null, 0, obj });
            tdsc.IV = IV;
            //加密模式,偏移
            tdsc.Mode = CipherMode.ECB;
            
            //进行加密转换运算
            //ICryptoTransform ct = tdsc.CreateDecryptor();
            //8很关键,加密结果是8字节数组
            byte[] results = desCrypt.TransformFinalBlock(str, 0, 8);

            return results;
        }

举报

相关文章推荐

python 3Des 加密

import hashlib; from Crypto.Cipher import DES3 import base64 def create_key(sk):     r=hashlib...

python实现DES加密算法和3DES加密算法

pyDes.py ############################################################################# # ...

python实现DES加密算法和3DES加密算法

############################################################################# # Docu...

python 封装3des加解密库

最近项目需要用到3des加解密,python写的3des加密速度太慢,所以考虑用c/c++完成,项目是在linux部署,而linux中openssl中包括3des加密,而且自己写的肯定没有大神们都用的...

3DES

3DES是继DES容易被破解后的DES加密升级版,它属于对称加密。可指定24位长度的密钥,在java API中也有其实现,代码如下: /** * 3DES 的Java SDK API 实现 * ...

JAVA和C# 3DES加密解密

最近 一个项目.net 要调用JAVA的WEB SERVICE,数据采用3DES加密,涉及到两种语言3DES一致性的问题, 下面分享一下, 这里的KEY采用Base64编码,便用分发,因为Java的B...

[Python]实现DES加密算法和3DES加密算法

pyDes.py ############################################################################# # ...

3DES 加密解密

3DES又称Triple DES,是DES加密算法的一种模式,它使用3条56位的密钥对3DES数据进行三次加密。 由于客户端开发的接口调用容易被扒取,建议采用此方法加密数据传递。 通过动态更新密钥的方...

明明白白使用DES加密算法

                             DES加密算法在很多行业都有着非常广泛的应用,对于初学者,开始很容易被ECB、CBC以及计算MAC搞得困惑不已,下面我将一一...

软件编程常用术语表

收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)