分组密码算法的工作模式

与流密码基于随机种子可以派生出任意长度的伪随机数密钥流用于对明文信息进行异或加密的方式不同,分组密码算法本身通常只能处理固定长度的消息分组。例如AES,SM4等分组密码算法的分组长度均为128比特,这意味着算法本身每次最多只能处理16个字节。网络流量加密和文件加密等场景,均要求处理更长的消息,利用分组密码算法完成信息加密时,必须借助分组密码算法的工作模式,常见的工作模式有ECB、 CBC、CTR、 CFB、 OFB、GCM、CCM、FPE等: – ECB:Electronic Codebook Mode,也即电子密码本模式 – CBC:Cipher Block Chai …

硬件加密卡测试(2):高性能对比测试

这次我们对加密卡进行性能对比测试,通过在不同场景下,对比BC库软算法以及加密卡的表现,来看加密卡的实际运用情况如何。 调用代码不做任何额外优化,均使用JCE方式来调用相关处理过程。 测试环境: 加密卡:SJK1828服务器:Intel(R) Xeon(R) CPU E5-2660 v2 @ 2.20GHz *2 40线程;32GB内存 模拟任务:SM2加签,数据长度4800字节。 实现 并发线程数 任务总数 任务间延迟 执行时间(ms) CPU占用率 TPS BC库软算法 1 50000 0 43616 3.5% 1146 BC库软算法 100 50000 15 8438 20% 5925 B …

硬件加密卡测试(1):设备安装与验证

LINUX下安装设备驱动 操作系统基础信息:centos 7 X64 本次测试加密卡设备:SJK1828(三未信安) 一.编译驱动 1.在root用户权限执行:./INSTALL swcsm.drv2.正常完后会产生文件swcsm.ko 以及Module.symvers文件,Module.symvers文件记录了驱动导出接口(默认不导出)。编译过程如果出错,请参考出错提示信息进行处理。3.加载驱动使用insmod命令,卸载使用rmmod命令。 二.复制动态库 cp libswsds_2008.so_v5.6.9.0_x64 /lib64/libswsds_2008.socp libswsds. …

国密算法家族简介

国密算法是国家商用密码管理办公室指定的一系列的密码标准,即已经被国家密码局认定的国产密码算法,又称商用密码(是指能够实现商用密码算法的加密,解密和认证等功能的技术),保障在金融,医疗等领域的信息传输安全。 国密算法可分为对称算法和非对称算法,对称算法包括了SM1,SM4,SM7,祖冲之密码(zuc),非对称算法包括SM2,SM9。还有SM3是哈希算法,SM1和SM7对外是不公开的,想要调用的话,需要通过加密芯片的接口才可以。 SM1对称密码SM1 算法是分组对称算法,分组长度为128位,密钥长度都为 128 比特,算法安全保密强度及相关软硬件实现性能与 AES 相当,算法不公开,仅以 IP 核 …

RSA算法和SM2算法对比

SM2算法和RSA算法都是公钥密码算法,SM2算法是一种更先进安全的算法,在安全性能、速度性能等方面都优于RSA算法,在我国商用密码体系中被用来替换RSA算法。国家密码管理局于2010年12月17日发布了SM2算法,并要求现有的基于RSA算法的电子认证系统、密钥管理系统、应用系统进升级改造,使用SM2算法。 SM2算法和RSA算法简介 RSA公钥加密算法是美国计算机学家Ron Rivest、AdiShamir和Leonard Adleman于1977年提出,是最早的公钥加密算法之一,在全球范围被广泛使用。随着密码技术和计算机技术的发展,目前1024位RSA算法已经被证实存在被攻击的风险,美国N …