目前比较流行的非对称加密算法有两种:RSA算法和ECC算法。RSA算法基于大整数因子分解问题,其数学原理简单,在工程应用中比较容易实现,但它的单位安全强度相对较低。ECC基于椭圆曲线上离散对数计算问题,数学原理较复杂,在工程应用中比较难实现,但它的单位安全强度相对较高。RSA算法和ECC算法的密钥长度对比如表1所示。
由表1可知,使用1024位RSA算法与使用160位ECC算法具有相同的安全强度,使用2048位RSA算法与使用210位ECC算法具有相同的安全强度,ECC算法所需存储空间比RSA算法小很多。
目前在数字签名领域RSA算法使用较为广泛,随着计算机网络的迅速发展,ECC算法也已经有了一定程度的应用。ECC算法由于其抗攻击性强、占用存储空间小和加密速度快等优势开始受到人们越来越多的重视,其应用前景也将会更加广阔。
飞天诚信科技股份有限公司的Rockey8加密锁均支持RSA算法和ECC算法进行数字签名和验签,其中RSA算法支持1024位、2048位和4096位密钥长度,ECC算法支持192位和256位密钥长度,签名使用哈希算法支持SHA1、SHA256、MD5和SM3等常用哈希算法。