全部產品
Search
文件中心

:AsymmetricEncrypt - 使用非對稱金鑰進行加密

更新時間:Jul 29, 2025

使用非對稱金鑰進行加密。

介面說明

注意事項

  • RAM 使用者或 RAM 角色調用該 OpenAPI 需要被授與權限策略詳情,請參見存取控制

  • 本介面可以通過共用網關或專屬網關調用。詳細介紹,請參見阿里雲 SDK

    • 共用網關:通過公網、VPC 網域名稱訪問 KMS,該方式需要開啟公網開關。具體操作,請參見通過公網訪問 KMS 執行個體中的密鑰

    • 專屬網關:通過 KMS 私網地址(<YOUR_KMS_INSTANCE_ID>.cryptoservice.kms.aliyuncs.com)訪問 KMS。

QPS 限制

  • 通過共用網關調用:本介面的單使用者 QPS 限制為 200 次/秒。超過限制,API 呼叫將會被限流,這可能影響您的業務,請合理調用。

  • 通過專屬網關調用:本介面的單使用者 QPS 限制以您 KMS 執行個體的計算效能規格為準。詳細介紹,請參見效能資料

詳細說明

僅支援 UsageENCRYPT/DECRYPT的非對稱金鑰。支援的密碼編譯演算法如下表:

KeySpec

Algorithm

說明

可加密的最大位元組數

RSA_2048

RSAES_OAEP_SHA_256

RSAES-OAEP using SHA-256 and MGF1 with SHA-256

190

RSA_2048

RSAES_OAEP_SHA_1

RSAES-OAEP using SHA1 and MGF1 with SHA1

214

RSA_3072

RSAES_OAEP_SHA_256

RSAES-OAEP using SHA-256 and MGF1 with SHA-256

318

RSA_3072

RSAES_OAEP_SHA_1

RSAES-OAEP using SHA1 and MGF1 with SHA1

342

EC_SM2

SM2PKE

SM2 橢圓曲線公開金鑰加密演算法

6047

本文將提供一個樣本,使用金鑰識別碼 為key-hzz630494463ejqjx**** 、密鑰版本 ID 為2ab1a983-7072-4bbc-a582-584b5bd8****的非對稱金鑰,通過密碼編譯演算法RSAES_OAEP_SHA_1對明文SGVsbG8gd29ybGQ=進行加密。

調試

您可以在OpenAPI Explorer中直接運行該介面,免去您計算簽名的困擾。運行成功後,OpenAPI Explorer可以自動產生SDK程式碼範例。

調試

授權資訊

當前API暫無授權資訊透出。

請求參數

名稱

類型

必填

描述

樣本值

Plaintext

string

要加密的明文,使用 Base 64 編碼。

SGVsbG8gd29ybGQ=

KeyId

string

密鑰的 ID,也可以指定為密鑰別名或密鑰資源名稱(ARN)。關於別名的詳細介紹,請參見管理密鑰別名

說明

訪問其他阿里雲帳號下的密鑰時,必須輸入密鑰 ARN。密鑰 ARN 的格式為acs:kms:${region}:${account}:key/${keyid}

key-hzz630494463ejqjx****

KeyVersionId

string

密鑰版本 ID。密鑰版本的通用唯一識別碼。

說明

您可以調用 ListKeyVersions 介面擷取 KeyVersionId(密鑰版本 ID)。

2ab1a983-7072-4bbc-a582-584b5bd8****

Algorithm

string

密碼編譯演算法。

RSAES_OAEP_SHA_1

DryRun

string

是否開啟 DryRun 模式。

  • true:開啟

  • false(預設值):關閉

DryRun 模式用於測試 API 呼叫,驗證您是否具有相應資源的許可權,以及請求參數是否配置正確。DryRun 模式開啟後,KMS 會始終返回失敗並提示失敗原因。失敗原因包含如下:

  • DryRunOperationError:不配置 DryRun 參數時,請求會成功。

  • ValidationError:請求中指定的參數有誤。

  • AccessDeniedError:您無權在 KMS 資源上執行該操作。

false

返回參數

名稱

類型

描述

樣本值

object

KeyVersionId

string

對明文資料進行加密的主要金鑰版本號碼。

2ab1a983-7072-4bbc-a582-584b5bd8****

KeyId

string

金鑰識別碼。如果請求中的 KeyId 參數使用的是密鑰別名、密鑰 ARN,在響應中也會返回金鑰識別碼。

key-hzz630494463ejqjx****

CiphertextBlob

string

加密後的密文,使用 Base 64 編碼。

BQKP+1zK6+ZEMxTP5qaVzcsgXtWplYBKm0NXdSnB5FzliFxE1bSiu4dnEIlca2JpeH7yz1/S6fed630H+hIH6DoM25fTLNcKj+mFB0Xnh9m2+HN59Mn4qyTfcUeadnfCXSWcGBouhXFwcdd2rJ3n337bzTf4jm659gZu3L0i6PLuxM9p7mqdwO0cKJPfGVfhnfMz+f4alMg79WB/NNyE2lyX7/qxvV49ObNrrJbKSFiz8Djocaf0IESNLMbfYI5bXjWkJlX92DQbKhibtQW8ZOJ//ZC6t0AWcUoKL6QDm/dg5koQalcleRinpB+QadFm894sLbVZ9+N4GVsv1Wbjwg==

RequestId

string

本次調用請求的 ID,是由阿里雲為該請求產生的唯一識別碼,可用於排查和定位問題。

475f1620-b9d3-4d35-b5c6-3fbdd941423d

樣本

正常返回樣本

JSON格式

{
  "KeyVersionId": "2ab1a983-7072-4bbc-a582-584b5bd8****",
  "KeyId": "key-hzz630494463ejqjx****",
  "CiphertextBlob": "BQKP+1zK6+ZEMxTP5qaVzcsgXtWplYBKm0NXdSnB5FzliFxE1bSiu4dnEIlca2JpeH7yz1/S6fed630H+hIH6DoM25fTLNcKj+mFB0Xnh9m2+HN59Mn4qyTfcUeadnfCXSWcGBouhXFwcdd2rJ3n337bzTf4jm659gZu3L0i6PLuxM9p7mqdwO0cKJPfGVfhnfMz+f4alMg79WB/NNyE2lyX7/qxvV49ObNrrJbKSFiz8Djocaf0IESNLMbfYI5bXjWkJlX92DQbKhibtQW8ZOJ//ZC6t0AWcUoKL6QDm/dg5koQalcleRinpB+QadFm894sLbVZ9+N4GVsv1Wbjwg==",
  "RequestId": "475f1620-b9d3-4d35-b5c6-3fbdd941423d"
}

錯誤碼

HTTP status code

錯誤碼

錯誤資訊

描述

400 Rejected.UnsupportedOperation Unsupported operation. 不支援的操作
404 Forbidden.AliasNotFound The specified Alias is not found. 指定的別名找不到
404 Forbidden.KeyNotFound The specified Key is not found. 指定的密鑰不存在。

訪問錯誤中心查看更多錯誤碼。

變更歷史

更多資訊,參考變更詳情