- 2021-03-02
-
回复了主题帖:
混合加密应用方案
LKT加密芯片可以产生随机性很高的会话密钥,还可以支持硬件非对称算法,看拟较完美
- 2021-02-28
-
回复了主题帖:
混合加密应用方案
旋转木偶 发表于 2021-2-27 20:47
混合加密算法是如何实现的?
接收方生成RSA密钥对,将其中的RSA公钥传递给发送方(接收方与发送方建立连接是需要认证的,SSL/TLS协议可以确保RSA公钥的安全完整),然后用RSA公钥对AES密钥进行加密,加密后的结果传递给接收方,接收方用RSA私钥解密后,得到AES密钥,最后使用AES密钥解密,从而达到安全互通数据的目的。
- 2021-02-25
-
发表了主题帖:
混合加密应用方案
加解密算法分为对称算法加密和非对称算法加密。
对称算法:加解密密钥相同要求发送方和接收方在安全通信之前,商定一个密钥。所以密钥的保密性对通信的安全性至关重要。对称加密算法的特点是算法公开、计算量小、加密速度快、加密效率高。
非对称加密算法需要两个密钥:公开密钥(publickey:简称公钥)和私有密钥(privatekey:简称私钥)。公钥与私钥是一对,如果用公钥对数据进行加密,只有用对应的私钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。非对称算法安全性高、加密速度远低于对称算法。
对称算法和非对称算法,各有各的优点,也各有缺点。随着计算机系统能力的不断发展,单独的使用某一种算法或某一类算法已不能满足实际的使用需求。所以混合加密这种方式已成为当前主流加密方案之一。取对称密码之长补公钥密码之不足,取公钥密码之长补对称密码之不足。下面简单介绍下混合加密的应用。
加密流程如下:
使用随机数生成器产生临时会话密钥tmpkey。
用临时会话密钥,将消息转换为密文C1。
使用非对称密钥的公钥加密tmpkey得到密文C2。
C1 || C2组合得到最终的密文C3。
解密流程如下:
分离出C1和C2。
使用非对称密钥的私钥解密C2得到临时会话密钥tmpkey。
用临时会话密钥tmpkey对密文C1解密得到明文消息。
混合加密中,要求会话密钥有较好的随机性;对称算法有足够的密钥长度;非对称算法也要有足够的密钥长度,满足以上条件才能使加密系统更加安全。LKT加密芯片具有真随机数发生器,可以产生随机性很高的会话密钥,还可以支持硬件非对称算法,例如RSA、SM2,对私钥和tmpkey的存储和运算过程起到良好保护作用。
- 2021-02-20
-
回复了主题帖:
我是做方案的,如何控制合作方滥用,不按数量付费呢?
加密芯片有听说过,具体怎么用,有什么样的方案呢?
- 2021-02-17
-
发表了主题帖:
我是做方案的,如何控制合作方滥用,不按数量付费呢?
我是做方案的,如何保证方案不被滥用的,万一合作方超用 滥用却不按照数量付费,该如何控制呢?
- 2021-02-03
-
回复了主题帖:
公钥密码的三大数学问题
有啊,它家芯片挺多的,工业级、民用级
- 2021-01-31
-
回复了主题帖:
公钥密码的三大数学问题
如果放在服务器上面就不需要保护私钥了
- 2021-01-27
-
发表了主题帖:
公钥密码的三大数学问题
公钥密码体制又称公开密钥密码体系,公钥密码体制是现代密码学的最重要的发明和进展,在1976年,Whitfield Diffie和Martin Hellman发表了“New directions in cryptography”这篇划时代的文章奠定了公钥密码系统的基础。公钥密码体制根据其所依据的难题一般分为三类:大素数分解问题类、离散对数问题类、椭圆曲线类。
1:大数因子分解
具体说明:
Ⅰ)给定两个素数p,q,计算乘积p·q=n很容易;
Ⅱ)给定大整数n,求n的素因素p,q使得n=p·q非常困难.
大数因子分解是国际数学界几百年来尚未解决的难题,也是现代密码学中公开密钥RSA算法密码体制建立的基础。《大数因子分解的合数模式特性》从RSA算法存在的不动点中发现了素数因子的分布与特性以及它们之间的连接机制,据此将大数因子分解问题转化为在两个含有素数因子的数之间求公因子问题,将最困难的大数因子分解问题转化为一系列算法的初等数学问题,这无疑是研究大数因子分解的重要成果与进展。
2:离散对数
已知有限循环群G={g∧k∣k=0,1,2,...}及其生成元g和阶n=∣G∣.
Ⅰ)给定整数a,计算元素g∧a=h很容易;
Ⅱ)给定元素h,计算整数x,0≤x≤n,使得g∧x=h非常困难,其难度与RSA中因子分解素数之积的难度有相同的数量级。
3:椭圆曲线
已知有限域F_p上的椭圆曲线点群
E(F_p)={(x,y)∈F_p×F_p∣y²=x³+ax+b,a,b∈F_p}∪{O},
点P=(x,y)的阶为一个大素数.
Ⅰ)给定整数a,计算整数x,使得xP=(x_a,y_a)=Q很容易;
Ⅱ)给定点Q,计算整数x,使得xP=Q非常困难.
例3 P=10823是一个素数,有限域F_p=Z/pZ上的椭圆曲线点群
E(F_p)={(x,y)∈F_p×F_p∣y²=x³+3x+7}∪{O}, ∣E(F_p)∣=100482=2·3·16747.E(F_p)的生成元为P_0=(1,8811).点P=6P_0=(62046,14962)的阶为素数16747.
Ⅰ)给定a=1007,计算aP=(80726,17229)=Q很容易;
Ⅱ)给定点Q=(80726,17229),求整数x使得xP=Q很困难.
综上,理解数学原理可能比较烧脑,但是作为应用者来说,我们其实不需要完全掌握原理,我们只需要记住一点最重要的,即公钥密钥体系中,私钥的安全是最重要的,如果运行环境中没有相应的安全机制保护私钥,就必须使用加密芯片来存储私钥,包括私钥运算也要在加密芯片中执行,否则私钥泄露,整个安全体系就被攻破了。
参考资料:
《简明信息安全数学基础》,陈恭亮,高等教育出版社,2011年1月1日。
- 2021-01-25
-
回复了主题帖:
要做一款体感测温的产品,如何保证新产品的程序安全呢?
那是北京一家国内公司,做得不错,好像算法移植方案,能编程
- 2021-01-22
-
回复了主题帖:
要做一款体感测温的产品,如何保证新产品的程序安全呢?
硬加密有成本,安全性自然也就更好