首页 资讯 正文

UCK将私钥硬件化 是数字资产安全储存的又一次革新

UCKNetwork 2019年07月19日 08:59

前言:

互联网打通了连接世界的桥梁后,为人们提供超乎寻常便利的同时,也为那些黑客们大开了方便之门。

黑客威胁着互联网安全性但也助推着防御技术的发展。

防火墙的发明能最大限度阻止网络中的黑客访问你的网络,进而阻止他们窃取你的资料。

在区块链领域,安全性更是尤为重要,因为在这里,黑客窃取的就不仅仅是资料了,他们可以利用系统的漏洞,大量盗取人们的数字货币,继而获得巨大的利益,利益驱使下,违纪者们前扑后拥。

在上一篇文章中,我围绕着区块链的安全性,为大家讲解了什么是密钥——公钥与私钥。

而在本篇文章中,我将为大家着重讲解一下,密钥的算法,如下:

RSA算法——目前最流行的公开密钥算法

RSA算法的前三个字母由它的三个发明者Ron Rivest、Adi Shamir和Leonard Adleman 的名字首字母命名,是最常见的非对称加密算法。它可以用于加密,也可以用于数字签名,是目前最流行的公开密钥算法。

RSA安全的第一大基石是大质数分解的难度,RSA的公钥和私钥是一对大质数,从一个公钥和密文恢复明文的难度,等价于分解两个大质数之积,这是众所周知的数学难题。

RSA安全的第二大基石是大数的因子分解,但没有从理论上证明破译RSA的难度与大数分解的难度等价。

RSA算法并非没有缺陷,它无法从理论上确保它的保密性能。不过,RSA从提出到现在20多年里,经历了无数的攻击考验,被普遍认为是目前最优秀的公钥方案之一。

RSA的缺点:

(1) 产生密钥很麻烦,受限于质数产生的技术;

(2)分组长度太大,运算代价高,速度慢。

我们可以通过一个案例来理解RSA算法。

假设孙宇晨要与巴菲特进行加密通信,他该如何生成公钥和私钥呢?

● 选择两个质数

通常是随机选择两个不同的质数,我们可称为p和q。

假设孙宇晨选择了61和53——当然,在实际应用中,这两个质数越大越好,质数越大就越难破解。

● 计算p和q的乘积n

孙宇晨将61与53相乘:

n=61×53=3233

n的长度就是密钥的长度。3233写成二进制是110010100001,一共有12位,那么密钥的长度就是12位。

实际应用中,RSA密钥一般为1024位, 重大场合则为2048位。

● 计算n的欧拉函数Φ(n)

根据公式:

φ(n)=(p-1)(q-1)

孙宇晨算出φ(3233)等于60×52,即3120,实际上就是两个质数分别减1后的乘积。

● 选择一个整数e

这个整数是随机选择的,而且还有个条件,条件是:

1

孙宇晨就在1到3120之间,随机选择了17,实际应用中,常常选择65537。

● 计算e对于Φ(n)的模反元素d

所谓“模反元素”就是指有一个整数d,可以使得e*d被φ(n)除的余数为1,表达式如下:

e*d≡1(modφ(n))

这个式子等价于

e*d-1=kφ(n)

于是找到模反元素d,实质上就是对下面这个二元一次方程求解:

e*x φ(n)y=1

已知e=17,φ(n)=3120,则17x 3120y=1。

这个方程可以用“扩展欧几里得算法”求解,此处省略具体过程。最后,孙宇晨算出一组整数解为(x,y)=(2753,-15),即d=2753。

● 产生公钥和私钥

将n和e封装成公钥,n和d封装成私钥,在孙宇晨的例子中,n=3233,e=17,d=2753,所以公钥就是(3233,17),私钥就是(3233,2753)。

通过完成计算,可以看到RSA的算法过程其实较为简单,关键点的就是两个质数是否足够大。

椭圆曲线密码算法——实用派的加密算法

椭圆曲线是满足一个特殊方程的点集。

我们来看一个椭圆曲线方程:

y2=x3 ax b

在几何层面上,它通常是这样的一个图形,如图所示:

BBsvFGulflr6sMMj6jLqJcxGuCVEZbbPiKrTW7sM.png 

正如我们看到的,一个椭圆曲线通常是满足一个变量为2阶,另一个变量为3阶的二元方程。

照这样定义,椭圆曲线种类繁多,而椭圆曲线密码算法是基于椭圆曲线数学的一种公钥密码算法,其主要的安全性在于利用了椭圆曲线离散对数问题的困难性。

在区块链中,常用的是ECDSA(椭圆曲线数字签名算法),是一种利用椭圆曲线密码(ECC)对数字签名算法(DSA)的模拟。

ECDSA 是在1999年成为ANSI标准的,并在2000年成为IEEE和NIST(美国国家标准 与技术研究院)标准。

椭圆曲线密码算法具有数据加解密、数字签名和身份认证等功能。该技术拥有安全性高、生成公私钥方便、处理速度快和存储空间小等诸多优势。相对于RSA算法,椭圆曲线加密在实际的开发中被使用得更广泛,如比特币就使用了椭圆曲线中的SECP256k1,可提供128位的安全保护。

UCK私钥硬件化——安全性能的革新

UCK在秘钥技术上进行了革新。

我们将私钥通过安全加密算法保管至USBKEY的安全存储区域,这相当于为用户上了双重保险,我们在上一篇文章中为大家讲解过,私钥是一个随机产生的数字,如果我们把公钥比作锁,那么私钥就是打开这把锁的钥匙,在数字货币交易中,所有资金的控制取决于相应私钥的所有权和控制权,私钥的重要性不言而喻。

UCK在传统密钥算法上加入了硬件保护,在极大的增加安全性的同时,在登录或者交易时还可以调用指纹识别,让登录、挖矿与支付变得更加便捷。

后记

不难看出,UCK的在技术上永远领先于业内,不仅仅是领先,用技术的革新来形容会更加贴切。

永远打破传统方式,用更具创意、更先进的技术形式,为用户提供更优质、安全的服务。