AppExpert

示例 11:无填充操作的基于策略的 RSA 加密

在执行 RSA 加密之前,PKEY_PEM_NO_填充 () 策略函数使用 RSA 算法,无填充操作。除了使用 RSA_NO_填充方法而不是 RSA_PKCS1_PEM () 函数之外,策略函数的工作原理与 PKEY_PEM () 函数一样。pkey 参数是一个带有 PEM 编码 RSA 公钥的文本字符串。类似于 PKEY_ENT_PEM (),您可以为密钥使用策略表达式。

您可以使用重写策略来实现该功能。为此,您必须完成以下任务:

  1. 添加 RSA 公钥作为策略表达式。
  2. 创建重写操作。

使用 Citrix ADC 命令接口进行基于策略的 RSA 加密

通过使用 Citrix ADC 命令接口,完成以下任务以配置基于策略的 RSA 加密。

使用 Citrix ADC 命令接口添加无填充策略表达式的 RSA 公钥

add expression rsa_pub_key_4096 '"-----BEGIN RSA PUBLIC KEY-----" + "MIICCgKCAgEArrwBldKd48xrpOSRPMrg+eNAO0ODU6t5b/WYQLdElqNv7WpefBrA" + "nwI2s619gEU1r4zoLqL7l5ALtt5Z+F0JBYfOzBzOky0GtEJ5iX5GP4QxT65J3nHH" + "4MTF3acmjvXxclmaKXEFlaVIzW7FTr3Luw/CnOjflAB403Q6F9VBVvQmOVYWnqoI" + "+0q1VIg6Q1pAcvdKBiOf85BBofE5EIbZ/1Jt0CdbsV568l+8ve7BnSUncFHoRR3O" + "/VfSsDuNWZf7n3RNMzxEuIA72UGPzNYFQzvcPOdzd0aN7jAXw0mgC/NSvKzGKHlo" + "mUYYBzlVQdDMZWnd6jSzsBRXSXxsNEy/RuXwplrA5epo7JdCoMkfeI4vUXm6MNr8" + "TQdFqIc1pdnOsbRf9ec62XbcfR7P8CDTsmLSaagx3rjenPdB+LTWKw2VUF+YONIg" + "jM3fyFef9ovVhLhS5HvMqFGs8P75W+d7BOIbIu3EngACiEJOpYSsETD4WgPK6Iyv" + "j6cxsLeYMtElTb0fBIIqysCHdmjF3M1lqdqp4dKs3+W798GJZYM5MxZKUzrBi0Xu" + "e7GtSh2aimsfQureUD+0z0RN2umeDsYcA1ghXMclDP+jLS1lnrv0Yvo+TKcm9b8G" + "uR/drbCrCsGyWFW+bsAu3AWz9S6TePurP5unRmNNvXpH5DRgsYl3d50CAwEAAQ==" + "-----END RSA PUBLIC KEY-----"

使用 Citrix ADC 命令界面为无填充策略表达式添加重写操作

add rewrite action rsa_encrypt_act insertHttpHeader encrypted 'HTTP.REQ.HEADER("plaintext").PKEY_ENCRYPT_PEM_NO_PADDING(rsa_pub_key_4096)

使用 GUI 进行基于策略的 RSA 加密,无填充选项

GUI 使您能够完成以下任务:

若要使用 GUI 将无填充操作的 RSA 公钥添加为策略表达式,请执行以下操作

  1. 登录 Citrix ADC 设备,然后导航到配置 > AppExpert > 高级表达式
  2. 在详细信息窗格中,单击添加将 RSA 公钥定义为高级策略表达式。
  3. 在“创建表达式”页面中,设置以下参数:
    1. 表达式名称。高级表达式的名称。
    2. 表达式。使用表达式编辑器将 RSA 公钥定义为高级表达式。 注意:策略表达式中的最大字符串长度为 255 个字符。对于任何超过 1024 位的密钥,您必须将密钥分解成较小的块,并将这些块连接在一起作为“chunk1”+“chunk2”+…
    3. 评论。表达式的简要描述。
  4. 单击创建

要使用 GUI 添加重写操作,请执行以下操作

  1. 登录 Citrix ADC 设备并导航到配置 > AppExpert > 重写 > 操作
  2. 在详细信息窗格中,单击添加以添加重写操作。
  3. 创建重写操作”屏幕中,设置以下参数:
    1. 名称。重写操作的名称。
    2. 类型。选择操作类型作为 INSERT_HTTP_HEADER。
    3. 使用操作类型插入标头。输入需要重写的 HTTP 标头的名称。
    4. 表达式。与操作关联的高级策略表达式的名称。
    5. 评论。重写操作的简要描述。
  4. 单击创建
示例 11:无填充操作的基于策略的 RSA 加密