RPM包安装(KAE2.0)

KAE2.0的RPM软件包包括kae-driver、kae-openssl、kae-zip,使用加解密算法需要安装kae-driver和kae-openssl,其他软件包需要根据实际使用的模块和算法不同选择安装。

  • 目前KAE2.0的RPM包是基于指定tag点、特定OS制作的,不具备KAE2.0的最新特性和OS的通用性。
  • 推荐使用源码的方式来安装KAE2.0。如需在其他的OS上通过RPM包方式安装KAE2.0,需要通过以下步骤制作RPM包:
    1. 请先下载KAE2.0源码包,下载路径为:https://gitee.com/kunpengcompute/KAE/tree/kae2/,或通过命令git clone https://gitee.com/kunpengcompute/KAE.git -b kae2下载。
    2. 使用yum install -y make kernel-devel libtool numactl-devel openssl-devel chrpath lz4-devel命令安装相关依赖。
    3. 在KAE源码目录使用sh build.sh rpmpack命令制作RPM包。

前提条件

安装步骤

  1. 使用SSH远程登录工具,以root账号进入Linux操作系统命令行界面。
  2. 将获取到的KAE2.0 RPM软件包拷贝到自定义路径下。
  3. 安装加速驱动软件RPM包kae-driver。

    1
    rpm -ivh kae-driver-2.0.1-1.aarch64.rpm
    
    回显结果如下即表明安装成功。
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    Verifying...                          ################################# [100%]
    Preparing...                          ################################# [100%]
    Preprocessing before installing the driver
    checking installed modules
    uacce modules start to install
    checking installed modules
    hisi_sec2 modules start to install
    checking installed modules
    hisi_hpre modules start to install
    checking installed modules
    hisi_zip modules start to install
    Updating / installing...
       1:kae-driver-2.0.1-1               ################################# [100%]
    installing driver...
    uacce modules installed
    hisi_sec2 modules installed
    hisi_hpre modules installed
    hisi_zip modules installed
    

  4. 安装引擎库软件RPM包kae-openssl。

    1
    rpm -ivh kae-openssl-2.0.1-1.aarch64.rpm
    
    回显结果如下即表明安装成功。
    1
    2
    3
    4
    5
    Verifying...                          ################################# [100%]
    Preparing...                          ################################# [100%]
    Updating / installing...
       1:kae-openssl-2.0.1-1              ################################# [100%]
    installing openssl engine...
    

  5. 查看相关软件是否已正常安装到系统内。

    1. 查看驱动是否安装成功。
      • 查看“/sys/class/uacce”目录下是否存在加速引擎文件系统。
        1
        ll /sys/class/uacce/
        
        回显信息如下所示,表示驱动安装成功。
        1
        2
        3
        4
        5
        6
        lrwxrwxrwx. 1 root root 0 Aug 22 17:14 hisi_hpre-2 -> ../../devices/pci0000:78/0000:78:00.0/0000:79:00.0/uacce/hisi_hpre-2
        lrwxrwxrwx. 1 root root 0 Aug 22 17:14 hisi_hpre-3 -> ../../devices/pci0000:b8/0000:b8:00.0/0000:b9:00.0/uacce/hisi_hpre-3
        lrwxrwxrwx. 1 root root 0 Aug 22 17:14 hisi_sec2-0 -> ../../devices/pci0000:74/0000:74:01.0/0000:76:00.0/uacce/hisi_sec2-0
        lrwxrwxrwx. 1 root root 0 Aug 22 17:14 hisi_sec2-1 -> ../../devices/pci0000:b4/0000:b4:01.0/0000:b6:00.0/uacce/hisi_sec2-1
        lrwxrwxrwx. 1 root root 0 Aug 22 17:14 hisi_zip-4 -> ../../devices/pci0000:74/0000:74:00.0/0000:75:00.0/uacce/hisi_zip-4
        lrwxrwxrwx. 1 root root 0 Aug 22 17:14 hisi_zip-5 -> ../../devices/pci0000:b4/0000:b4:00.0/0000:b5:00.0/uacce/hisi_zip-5
        
      • 通过lsmod查看驱动安装情况来判断驱动是否安装成功。
        1
        lsmod | grep uacce
        
        回显信息如下所示,表示驱动安装成功。
        1
        uacce                  32768  3 hisi_sec2,hisi_qm,hisi_zip
        
    2. 查看UADK框架是否安装成功。
      1
      ll /usr/local/lib/libwd*
      
      回显信息如下,表示安装成功。
       1
       2
       3
       4
       5
       6
       7
       8
       9
      10
      11
      12
      -rwxr-xr-x. 1 root root     961 Aug 22 17:23 /usr/local/lib/libwd_comp.la
      lrwxrwxrwx. 1 root root      19 Aug 22 17:23 /usr/local/lib/libwd_comp.so -> libwd_comp.so.2.5.0
      lrwxrwxrwx. 1 root root      19 Aug 22 17:23 /usr/local/lib/libwd_comp.so.2 -> libwd_comp.so.2.5.0
      -rwxr-xr-x. 1 root root  377872 Aug 22 17:23 /usr/local/lib/libwd_comp.so.2.5.0
      -rwxr-xr-x. 1 root root     973 Aug 22 17:23 /usr/local/lib/libwd_crypto.la
      lrwxrwxrwx. 1 root root      21 Aug 22 17:23 /usr/local/lib/libwd_crypto.so -> libwd_crypto.so.2.5.0
      lrwxrwxrwx. 1 root root      21 Aug 22 17:23 /usr/local/lib/libwd_crypto.so.2 -> libwd_crypto.so.2.5.0
      -rwxr-xr-x. 1 root root  715616 Aug 22 17:23 /usr/local/lib/libwd_crypto.so.2.5.0
      -rwxr-xr-x. 1 root root     907 Aug 22 17:23 /usr/local/lib/libwd.la
      lrwxrwxrwx. 1 root root      14 Aug 22 17:23 /usr/local/lib/libwd.so -> libwd.so.2.5.0
      lrwxrwxrwx. 1 root root      14 Aug 22 17:23 /usr/local/lib/libwd.so.2 -> libwd.so.2.5.0
      -rwxr-xr-x. 1 root root 1342080 Aug 22 17:23 /usr/local/lib/libwd.so.2.5.0
      
    3. 查看KAE引擎是否安装成功。
      1
       ll /usr/local/lib/engines-1.1
      

      回显信息如下,表示安装成功。

      1
      2
      3
      4
      5
      6
      total 5644
      -rw-r--r--. 1 root root 3846524 Aug 22 17:28 kae.a
      -rwxr-xr-x. 1 root root     995 Aug 22 17:28 kae.la
      lrwxrwxrwx. 1 root root      12 Aug 22 17:28 kae.so -> kae.so.2.0.0
      lrwxrwxrwx. 1 root root      12 Aug 22 17:28 kae.so.2 -> kae.so.2.0.0
      -rwxr-xr-x. 1 root root 1967736 Aug 22 17:28 kae.so.2.0.0
      

安装后检查

查看KAEOpensslEngine加速引擎是否生效。

以验证RSA性能为例,验证步骤请参见测试同步RSA性能,通过RSA性能命令可以看到指定KAE引擎之后,RSA的性能得到明显提升。

另外,除上述方法,在执行RSA性能命令过程中,可以在新的终端上同时查看hisi_hpre设备的硬件队列资源情况如下,相同地,SM3/SM4算法可以查看hisi_sec2的硬件队列消耗情况。

1
cat /sys/class/uacce/hisi_hpre-*/available_instances
您也可以通过以下命令每0.1秒刷新一次,实时查看hisi_sec2的硬件队列消耗情况。
1
watch -n 0.1 cat /sys/class/uacce/hisi_hpre-*/available_instances

显示结果从256变为255,说明RSA算法消耗了HPRE加速器一个硬件单元队列,说明KAEOpensslEngine加速引擎已生效。