---
title: 使能KAE加解密
description: "下文介绍在不修改现有业务代码的前提下使能KAE的详细操作步骤。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengwebs/ecosystemEnable/Tomcat/kunpengtomcat_05_0020.html
sourcePath: /source/zh/kunpengwebs/ecosystemEnable/Tomcat/kunpengtomcat_05_0020.html
indexId: 25500b45fec61721f9c0c8e54c5f1ad68ebbee4a2b595d81b31d91f40ef9ac6372
---
# 使能KAE加解密

下文介绍在不修改现有业务代码的前提下使能KAE的详细操作步骤。

1. 修改Java安全配置文件。

  a. 打开“$JAVA_HOME/jre/lib/security/java.security”文件。
    1 vi $JAVA_HOME/jre/lib/security/java.security

  b. 按“i”进入编辑模式，注释以下内容：
    1 2 3 4 5 6 7 8 9 security.provider.1=sun.security.provider.Sun security.provider.2=sun.security.rsa.SunRsaSign security.provider.3=sun.security.ec.SunEC security.provider.4=com.sun.net.ssl.internal.ssl.Provider security.provider.5=com.sun.crypto.provider.SunJCE security.provider.6=sun.security.jgss.SunProvider security.provider.7=com.sun.security.sasl.Provider security.provider.8=org.jcp.xml.dsig.internal.dom.XMLDSigRI security.provider.9=sun.security.smartcardio.SunPCSC

    添加以下内容，以添加KAE Provider，并设置为最高优先级。 1 2 3 4 5 6 7 8 9 10 11 security.provider.1=org.openeuler.security.openssl.KAEProvider security.provider.2=sun.security.provider.Sun security.provider.3=sun.security.rsa.SunRsaSign security.provider.4=sun.security.ec.SunEC security.provider.5=com.sun.net.ssl.internal.ssl.Provider security.provider.6=com.sun.crypto.provider.SunJCE security.provider.7=sun.security.jgss.SunProvider security.provider.8=com.sun.security.sasl.Provider security.provider.9=org.jcp.xml.dsig.internal.dom.XMLDSigRI security.provider.10=sun.security.smartcardio.SunPCSC security.provider.11=sun.security.mscapi.SunMSCAPI

    修改后截图如下：

  c. 按“Esc”键退出编辑模式，输入:wq!，按“Enter”键保存并退出文件。
2. 基于毕昇JDK的KAE Provider特性使能KAE加解密。

  a. 配置KAE环境变量。

    1. 打开“/etc/profile”文件。
      1 vi /etc/profile

    2. 按“i”进入编辑模式，添加以下内容。
      1 export OPENSSL_ENGINES=/usr/local/lib/engines-1.1

    3. 按“Esc”键退出编辑模式，输入:wq!，按“Enter”键保存并退出文件。
    4. 使配置生效。
      1 source /etc/profile

  b. 配置KAE Provider。

    1. 打开“$JAVA_HOME/jre/lib/kaeprovider.conf”文件。
      1 vi $JAVA_HOME/jre/lib/kaeprovider.conf

    2. 按“i”进入编辑模式，添加以下内容，使能RSA硬件加速。
      1 2 3 4 kae.rsa=true kae.log=true kae.rsa.useKaeEngine=true kae.libcrypto.useGlobalMode=true

    3. 按“Esc”键退出编辑模式，输入:wq!，按“Enter”键保存并退出文件。
3. 构建并启动Spring Boot Web服务。

  a. 打开“/home/tomcat-test-01/src/main/resources/application.properties”文件。
    1 vi /home/tomcat-test-01/src/main/resources/application.properties

  b. 按“i”进入编辑模式，添加以下SSL配置。
    1 2 3 4 5 6 7 8 server.port=8443 # 指定端口为8443 server.ssl.enabled=true # 使用HTTPS协议 server.ssl.key-store=classpath:server.p12 # 证书路径 server.ssl.key-store-type=PKCS12 # 证书类型 server.ssl.key-store-password=123456 # 配置证书密码 server.ssl.ciphers=ECDHE-RSA-AES256-GCM-SHA384 server.ssl.protocol=TLS server.ssl.enabled-protocols=TLSv1.2

  c. 按“Esc”键退出编辑模式，输入:wq!，按“Enter”键保存并退出文件。
  d. 构建可执行的JAR文件。
    1 2 cd /home/tomcat-test-01 mvn clean package -Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true

  e. 启动Spring Boot Web服务。
    1 java -jar target/tomcat-test-01-0.0.1-SNAPSHOT.jar

4. 验证KAE硬件加速是否使用成功。

  a. 查看KAE日志。
    1 2 cd /home/tomcat-test-01 cat kae.log

    如果日志显示KAE已被使用，则表示Tomcat使用KAE硬件加速成功。

  b. 观测KAE硬件队列。
    1 watch -d cat /sys/class/uacce/hisi_*/available_instances

    通过浏览器访问Tomcat服务器的IP地址和端口（HTTPS协议，端口8443），观察此命令的输出是否发生变化。如果发生了变化，表示Tomcat使用了KAE硬件加速资源。

    可以看到，访问IP地址后，有一个硬件队列的可用实例数从256减少到了255。
