当前位置:首页 » 密码管理 » 随机数加密

随机数加密

发布时间: 2022-05-27 11:04:02

加密模块如何配合随机数使用

随机数主要是用来生成AES的密钥,然后根据AES的配置128/256或者是多少将输入数据进行分块加密,最后输出加密的数据,并保存密钥。
SOC芯片的话,里面一般都有一个cpu(可编程控制器),你需要编程来控制上面说的过程,同时密钥的保存是一个很重要的事情,如果你这个产品有输入设备的话,最好是将这些密钥保存到一个密钥库里面,然后用一个用户的口令来加密这个密钥库。

② 为什么采用随机数可避免重放攻击

单独的随机数不能避免重放攻击,随机数一般会和签名加密技术,后台验证技术混合以提高破解和重放难度。

重放攻击(Replay Attacks)又称重播攻击、回放攻击或新鲜性攻击(Freshness Attacks),是指攻击者发送一个目的主机已接收过的包,来达到欺骗系统的目的,主要用于身份认证过程,破坏认证的正确性。

从重放攻击的定义上我们可以看到,重放攻击提交给服务器的数据是曾经有效的,如何防止这种数据,对特定信息给与一个特定的随机数,并且这个随机数保存在服务器内,在验证了用户信息前,首先会对随机数进行验证,如果发现提交的随机数和服务器保存的不同则,该条信息无效通过这种方法来防止重放攻击。

常用的防御重放攻击,不会直接暴露随机数,一般随机数会用在MD5,HASH(数字签名)上,比如在对有效值进行MD5加密时添加随机数,如用户名为test,密码为test的MD5加密过程可能为MD5("test","test",随机数),这样在直接传输时不会暴露出随机值,黑客在提交重放攻击时系统发现MD5签名和系统签名计算后不同则,可被认定为重放攻击。

当然矛和盾是一种存在的,有可能该值刚好又一次的分配给了该用户,可能会重放攻击成功,但这个概率在科学计算上可以被视为0,而且随着随机数的位数的提高,概率会不断降低。

③ 用于加密的key,16位以上随机数怎么做

B.图灵奖
我们学院的墙壁上到处贴的都是那些老头,天天看呀。。。

④ C#如何产生一个long型随机数,并对这个随机数进行MD5加密,求详细代码,非常感谢

//得到随机数
public n randomnum()
{
long n = (long)Math.Floor((new Random()).NextDouble() * 1000000000D);
return n;

}
//md5加密
public static string MD5Encrypt(string pToEncrypt)
{

MD5 md5 = new MD5CryptoServiceProvider();
byte[] data = Encoding.Default.GetBytes(pToEncrypt);
byte[] md5data = md5.ComputeHash(data);
md5.Clear();
string str = "";
for (int i = 0; i < md5data.Length - 1; i++)
{
str += md5data[i].ToString("x").PadLeft(2, '0');
}
return str.ToUpper();
}
//base64 加密
public String getBASE64(String src) {
if (src == null) {
return null;
}
byte[] b = src.getBytes();
BASE64Encoder encoder = new BASE64Encoder();
return encoder.encode(b);
}

⑤ SM4,AES加密模块对随机数的产生有哪些要求

随机数主要是用来生成AES的密钥,然后根据AES的配置128/256或者是多少将输入数据进行分块加密,最后输出加密的数据,并保存密钥。
SOC芯片的话,里面一般都有一个cpu(可编程控制器),你需要编程来控制上面说的过程,同时密钥的保存是一个很重要的事情,如果你这个产品有输入设备的话,最好是将这些密钥保存到一个密钥库里面,然后用一个用户的口令来加密这个密钥库。

⑥ 怎样用RSA,DES等做成随机数生成器 能用到现成的类吗

最简单的办法,用DES去加密一个随机数,或者GUID就行了嘛
现成的类有啊
System.Security.Cryptography.DES 就是加密类。
用它去加密Random.NextBytes,再用Random.Next做DES的key就行了
如果不需要数字型的随机数,那直接用GUID就行了,永远不会重复。
public static string DESRandomString(){
System.Security.Cryptography.DES des = System.Security.Cryptography.DES.Create();
DateTime dt = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, 0, 0, 0, 0);
TimeSpan ts = DateTime.Now - dt;
Random ran = new Random(ts.Milliseconds); //用当时的毫秒数做随机种子避免出现固定的随机序列
des.GenerateIV();
des.GenerateKey(); //自动生成加密的密钥和种子,如果你要能解密这个随机数的话,可以自己指定IV和Key.
System.Security.Cryptography.ICryptoTransform trans = des.CreateEncryptor();
Byte[] content = new Byte[8] ; //这个数组的长短决定了你结果的长短
ran.NextBytes(content) ; //产生随机数
content = trans.TransformFinalBlock(content, 0, content.Length); //加密
return Convert.ToBase64String(content); //返回base64形式的随机字串
// return BitConverter.ToString(content).Replace("-", string.Empty); //返回HEX形式的字串
}

⑦ 加密IC加密方式有哪些

当前推荐的有几种方式,安全性由低到高分别为:
方式一,使用加密芯片内部存储的一些数据(通常芯片唯一ID),在程序执行前或过程中做ID验证,判断是否为合法加密IC,如不合法则禁止操作
优点:操作简单
缺点:安全性很低,一旦被截获,则芯片失效
方式二
与方式一原理相似,但存储在加密芯片中的为密钥(AES
或者
DES,密钥长度8字节或16字节),程序运行前或运行中,取随机数
由加密芯片和程序本身对随机数加密,验证结果是否相同来判断是否合法。
优点:芯片操作简单
缺点:安全性有缺陷,如果MCU端程序被破解,会导致密钥泄露,芯片失效
方式三
可编程类加密芯片,可将MCU端的部分程序移植到加密芯片中,程序运行时由MCU端程序和加密芯片配合来实现完整程序的执行。
优点:安全性高,MCU端被破解不会影响程序安全性,必须破解加密芯片
缺点:开发略显复杂
综上所述:如想要真正的保护程序,还是建议用可编程类的芯片,安全性好,当前的环境下极难被破解。北京有一家公司在做,LKT4105也支持方式一和方式二,可以尝试一下

⑧ 电脑如何产生随机数

电脑产生的随机数称为伪随机数,是通过算法模拟的,看上去和随机数一样,实际上能算出来的数就是可以预见的数(对用户来说不可预见,对电脑则是可预见),不是真正的随机数。

从一个大数“种子”开始重复某种迭代计算,通常是加减乘除加求余,种子可以取系统时间,因为用户不可能精确到微秒控制程序运行,就基本保证了每次生成数值的顺序不同

一般来说如果用数字电路产生的都是伪随机数,但由于循环时间太长可视为随机数。而现在有用模拟电路产生的随机数,主要原理是将热噪声放大,然后编码。

(8)随机数加密扩展阅读

随机数的作用

随机数的使用历史已经有数千年。无论是抛硬币还是摇色子,目的是让随机概率决定结果。电脑中的随机数生成器的目的也是如此——生成随机不可预测的结果。

加密法要求数字不能被攻击者猜到,不能多次使用同样的数字。所以需要一种机制产生攻击者无法预测的数字,这些随机数对加密法至关重要,无论你是加密文件还是访问https协议网站,都需要用到随机数。

根据随机数的生成原理,我们把电脑随机数分为两类:“真”随机数和伪随机数。

要生成一个“真”随机数,电脑会检测电脑外部发生的某种物理现象。比如说,电脑可以测量某个原子的放射性衰变。根据量子理论,原子衰变是随机而不可测的,所以这就是宇宙中的“纯粹”随机性。攻击者永远无法预测原子衰变的发生时间,也就不可能猜出随机值。

⑨ Https 密钥协商中的第三个随机数pre-master-key如何防篡改

Https 密钥协商中的第三个随机数pre-master-key使用对称加密就可以防篡改。

加密密钥能够从解密密钥中推算出来,同时解密密钥也可以从加密密钥中推算出来。而在大多数的对称算法中,加密密钥和解密密钥是相同的,所以也称这种加密算法为秘密密钥算法或单密钥算法。

密钥的作用:

它的最大优势是加/解密速度快,适合于对大数据量进行加密,但密钥管理困难。 非对称密钥,需要使用不同的密钥来分别完成加密和解密操作,一个公开发布,即公开密钥,另一个由用户自己秘密保存,即私用密钥。

热点内容
qq怎么设置空间访问密码 发布:2024-05-09 18:08:13 浏览:640
微信公众号的缓存 发布:2024-05-09 18:08:12 浏览:566
计算机的存储单元中存储的内容 发布:2024-05-09 17:57:24 浏览:626
大众速腾和哪个车配置一样 发布:2024-05-09 17:50:15 浏览:296
数据库未来 发布:2024-05-09 17:44:48 浏览:756
编程考试C 发布:2024-05-09 17:28:58 浏览:573
如何说明电脑配置要求 发布:2024-05-09 17:24:44 浏览:988
sql半角全角 发布:2024-05-09 17:09:57 浏览:846
存储空间软盘排名 发布:2024-05-09 16:56:42 浏览:511
安卓解压汉化 发布:2024-05-09 16:56:42 浏览:911