文档首页 > > 加解密库> 开发指南(KAE加解密)> 安装、升级和卸载> 安装加速引擎软件> 通过rpm包安装加速引擎软件

通过rpm包安装加速引擎软件

分享
更新时间:2020/12/12 GMT+08:00

前提条件

  • 请在指定版本的操作系统上进行rpm方式安装,若无法安装请按源码方式进行安装。
  • rpm工具能正常使用。
  • OpenSSL 1.1.1a或以上版本已正确安装,具体请参见安装OpenSSL

安装步骤

hisi_hpre,hisi_sec2,hisi_rde,hisi_zip驱动软件包依赖于uacce软件包,libkaezip、libkae引擎软件包依赖libwd软件包。

  • 如果仅加速RSA/DH算法建议只需要安装uacce、hisi_hpre 、libwd 、libkae软件包。
  • 如果仅加速AES/MD5/SM3/SM4算法建议只需要安装uacce、hisi_sec2 、libwd 、libkae软件包。
  • 如果仅加速zlib库的压缩算法建议只需要安装uacce、hisi_zip 、libwd、libkaezip软件包。

相关rpm提供算法功能请参考表1

  1. 使用SSH远程登录工具,将加速引擎软件包拷贝到自定义路径下。
  2. 使用SSH远程登录工具,以root帐号进入Linux操作系统命令行界面。
  3. 执行rpm -ivh命令安装加速驱动软件包,如OpenSSL已按上述默认方式进行安装,则可以通过rpm -ivh *.rpm 安装所有加速引擎软件包,否则请按4进行安装。

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    [root@localhost home]# rpm -ivh *.rpm
    Preparing...                          ################################# [100%]
    checking installed modules
    Updating / installing...
       1:uacce-1.0.1-1.centos7.6         ################################# [ 14%]
    modules installed
       2:libwd-1.0.1-1.centos7.6         ################################# [ 29%]
       3:libkae-1.0.1-1.centos7.6        ################################# [ 43%]
    checking installed modules
       4:hisi_hpre-1.0.1-1.centos7.6     ################################# [ 57%]
    modules installed
    checking installed modules
       5:hisi_rde-1.0.1-1.centos7.6      ################################# [ 71%]
    modules installed
    checking installed modules
       6:hisi_sec2-1.0.1-1.centos7.6     ################################# [ 86%]
    modules installed
    checking installed modules
       7:hisi_zip-1.0.1-1.centos7.6      ################################# [100%]
    modules installed
    

  4. 如果已经按3安装rpm软件,请跳过该步骤。以下示例为安装uacce-1.0.1软件包。

    1
    2
    3
    4
    5
    6
    [root@localhost home]# rpm -ivh uacce-1.0.1-1.centos7.6.aarch64.rpm
    Preparing...                          ################################# [100%]
    checking installed modules
    Updating / installing... 
    1:uacce-1.0.1-1.centos7.6             ################################# [100%]
    modules installed
    

    依次安装hisi_hpre,hisi_sec2,hisi_rde,hisi_zip驱动软件包和libwd,libkae引擎软件包。安装libkae引擎软件包时需要通过--prefix指定OpenSSL 引擎的路径,如下:

    1
    2
    3
    4
    [root@localhost home]# rpm -ivh libkae-1.0.1-1.centos7.6.aarch64.rpm      --prefix=/usr/local/openssl/lib/engines-1.1 #即OpenSSL安装路径选择为/usr/local/openssl时
    Preparing...                          ################################# [100%]
    Updating / installing...
       1:libkae-1.0.1-1.centos7.6        ################################# [100%]
    

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

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    [root@localhost rpm]# rpm -ql uacce
    /lib/modules/4.14.0-115.el7a.0.1.aarch64/extra/hisi_qm.ko
    /lib/modules/4.14.0-115.el7a.0.1.aarch64/extra/uacce.ko
    [root@localhost rpm]#
    [root@localhost rpm]# rpm -ql hisi_sec2 hisi_hpre hisi_rde hisi_zip
    /lib/modules/4.14.0-115.el7a.0.1.aarch64/extra/hisi_sec2.ko
    /etc/modproe.d/hisi_sec2.conf
    /lib/modules/4.14.0-115.el7a.0.1.aarch64/extra/hisi_hpre.ko
    /etc/modproe.d/hisi_hpre.conf
    /lib/modules/4.14.0-115.el7a.0.1.aarch64/extra/hisi_rde.ko
    /etc/modproe.d/hisi_rde.conf
    /lib/modules/4.14.0-115.el7a.0.1.aarch64/extra/hisi_zip.ko
    /etc/modproe.d/hisi_zip.conf
    [root@localhost rpm]# [root@localhost rpm]# ls -al /lib/modules/`uname -r`/extra 
    total 3672
    drwxr-xr-x. 2 root root    118 Nov 17 21:56 .
    drwxr-xr-x. 7 root root   4096 Nov 17 21:56 ..
    -rw-r--r--. 1 root root 681104 Nov 12 17:32 hisi_hpre.ko
    -rw-r--r--. 1 root root 618888 Nov 12 17:32 hisi_qm.ko
    -rw-r--r--. 1 root root 844728 Nov 12 17:32 hisi_rde.ko
    -rw-r--r--. 1 root root 729304 Nov 12 17:32 hisi_sec2.ko
    -rw-r--r--. 1 root root 396784 Nov 12 17:32 hisi_zip.ko
    -rw-r--r--. 1 root root 467160 Nov 12 17:32 uacce.ko
    [root@localhost rpm]# ls -al /etc/modprobe.d/  
    total 36
    drwxr-xr-x.   2 root root  140 Nov 17 21:56 .
    drwxr-xr-x. 127 root root 8192 Nov 17 22:14 ..
    -rw-r--r--.   1 root root  166 Oct 30  2018 firewalld-sysctls.conf
    -rw-r--r--.   1 root root   44 Nov 17 21:56 hisi_hpre.conf
    -rw-r--r--.   1 root root   43 Nov 17 21:56 hisi_rde.conf
    -rw-r--r--.   1 root root   61 Nov 17 21:56 hisi_sec2.conf
    -rw-r--r--.   1 root root   43 Nov 17 21:56 hisi_zip.conf
    -rw-r--r--.   1 root root  674 Jul  4  2018 tuned.conf
    [root@localhost rpm]#
    

  6. 重启系统或通过命令行手动依次加载加速器驱动到内核,并查看是否加载成功。如果操作系统是SUSE请先按说明进行操作。

    1
    2
    3
    4
    5
    6
    7
    8
    [root@localhost rpm]# lsmod | grep uacce
    [root@localhost rpm]# modprobe uacce
    [root@localhost rpm]# modprobe hisi_sec2 #加载hisi_sec2驱动时将根据/etc/modprobe.d/hisi_sec2.conf 下的配置文件加载到内核
    [root@localhost rpm]# modprobe hisi_hpre #加载hisi_hpre驱动时将根据/etc/modprobe.d/hisi_hpre.conf 下的配置文件加载到内核
    [root@localhost rpm]# modprobe hisi_rde  #加载hisi_rde驱动时将根据/etc/modprobe.d/hisi_rde.conf 下的配置文件加载到内核
    [root@localhost rpm]# modprobe hisi_zip  #加载hisi_zip驱动时将根据/etc/modprobe.d/hisi_zip.conf 下的配置文件加载到内核
    [root@localhost rpm]# lsmod | grep uacce
    uacce                36864  3 hisi_sec2,hisi_qm,hisi_hpre,hisi_rde,hisi_zip
    
    • 在SUSE操作系统内加载外部驱动需要先配置“/etc/modprobe.d/10-unsupported-modules.conf”,设置“allow_unsupported_modules”的值为“1”
    • 加速器引擎代码包含内核驱动、用户态驱动、KAE引擎和zlib库四个模块。其中内核驱动与用户态驱动为必选项,KAE引擎与zlib库按实际需求选择安装。

安装后检查

  1. 使用rpm -qa | grep查看加速引擎软件包。

    1
    2
    3
    4
    5
    6
    [root@localhost root]# rpm -qa uacce hisi_sec2 hisi_hpre hisi_zip hisi_rde
    hisi_rde-1.0.1-1.centos7.6.aarch64  //显示该格式内容说明安装成功
    hisi_sec2-1.0.1-1.centos7.6.aarch64
    uacce-1.0.1-1.centos7.6.aarch64
    hisi_hpre-1.0.1-1.centos7.6.aarch64
    hisi_zip-1.0.1-1.centos7.6.aarch64
    

  2. 查看虚拟文件系统下对应的加速器设备:

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    [root@localhost rpm]# ls -al /sys/class/uacce/
    total 0
    lrwxrwxrwx. 1 root root 0 Nov 14 03:45 hisi_hpre-2 -> ../../devices/pci0000:78/0000:78:00.0/0000:79:00.0/uacce/hisi_hpre-2
    lrwxrwxrwx. 1 root root 0 Nov 14 03:45 hisi_hpre-3 -> ../../devices/pci0000:b8/0000:b8:00.0/0000:b9:00.0/uacce/hisi_hpre-3
    lrwxrwxrwx. 1 root root 0 Nov 17 22:09 hisi_rde-4 -> ../../devices/pci0000:78/0000:78:01.0/uacce/hisi_rde-4
    lrwxrwxrwx. 1 root root 0 Nov 17 22:09 hisi_rde-5 -> ../../devices/pci0000:b8/0000:b8:01.0/uacce/hisi_rde-5
    lrwxrwxrwx. 1 root root 0 Nov 14 08:39 hisi_sec-0 -> ../../devices/pci0000:74/0000:74:01.0/0000:76:00.0/uacce/hisi_sec-0
    lrwxrwxrwx. 1 root root 0 Nov 14 08:39 hisi_sec-1 -> ../../devices/pci0000:b4/0000:b4:01.0/0000:b6:00.0/uacce/hisi_sec-1
    lrwxrwxrwx. 1 root root 0 Nov 17 22:09 hisi_zip-6 -> ../../devices/pci0000:74/0000:74:00.0/0000:75:00.0/uacce/hisi_zip-6
    lrwxrwxrwx. 1 root root 0 Nov 17 22:09 hisi_zip-7 -> ../../devices/pci0000:b4/0000:b4:00.0/0000:b5:00.0/uacce/hisi_zip-7
    

  3. 查看加速器是否生效,以验证RSA性能为例,命令如下:

    [root@localhost rpm]# cd /usr/local/bin/

    [root@localhost bin]# ./openssl speed rsa2048

    sign verify sign/s verify/s

    rsa 2048 bits 0.001381s 0.000035s 724.1 28601.0

    [root@localhost bin]# ./openssl speed -engine kae rsa2048

    engine "kae" set.

    sign verify sign/s verify/s

    rsa 2048 bits 0.000175s 0.000021s 5730.1 46591.8

    通过RSA性能命令可以看到指定kae引擎之后,RSA的性能得到明显提升。另外,除上述方法,在跑RSA性能命令过程中,可以在新的终端上同时查看hisi_hpre设备的硬件队列资源情况如下,相同的,SM3/SM4算法可以查看hisi_sec2的硬件队列消耗情况。

    [root@localhost ~]# cat /sys/class/uacce/hisi_hpre-*/attrs/available_instances

    256

    255 #从256变为255,说明RSA算消耗了HRPE加速器一个硬件单元队列,说明加速器引擎已生效

    [root@localhost ~]#

  4. (可选)查看zlib库加速器是否生效,用户如果没有安装hisi_zip软件可以忽略该步骤。通过ldd命令查看zlib加速库是否链接到libwd和libkaezip,如果有返回如下信息,说明zlib加速库安装成功。同样的,用户的进程也可以通过ldd 命令查看是否使用libwd和libkaezip。

    1
    2
    3
    4
    5
    6
    7
    [root@localhost /]# ldd /usr/local/kaezip/lib/libz.so.1.2.11
            linux-vdso.so.1 =>  (0x0000ffff80280000)
            libc.so.6 => /lib64/libc.so.6 (0x0000ffff80080000)
            libwd.so.1 => /lib64/libwd.so.1 (0x0000ffff80040000)
            /lib/ld-linux-aarch64.so.1 (0x0000ffff80290000)
            libkaezip.so => /usr/local/kaezip/lib/libkaezip.so (0x0000ffff80830000)
    [root@localhost /]#
    

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!非常感谢您的反馈,我们会继续努力做到更好!
反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

智能客服提问云社区提问