เมธอด: Privatekeydecrypt

ถอดรหัสคีย์ส่วนตัวที่รวมไว้ แล้วถอดรหัสคีย์การเข้ารหัสเนื้อหาที่เข้ารหัสไว้กับคีย์สาธารณะ

คำขอ HTTP

POST https://BASE_URL/privatekeydecrypt

แทนที่ BASE_URL ด้วย URL พื้นฐาน

พารามิเตอร์เส้นทาง

ไม่มี

เนื้อหาของคำขอ

เนื้อความของคำขอมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้

การแสดง JSON
{
  "authentication": string,
  "authorization": string,
  "algorithm": string,
  "encrypted_data_encryption_key": string,
  "rsa_oaep_label": string,
  "reason": string,
  "wrapped_private_key": string
}
ช่อง
authentication

string

JWT ที่ออกโดยผู้ให้บริการข้อมูลประจำตัว (IdP) ซึ่งระบุตัวตนของผู้ใช้ ดูโทเค็นการตรวจสอบสิทธิ์

authorization

string

JWT ที่ยืนยันว่าผู้ใช้ได้รับอนุญาตให้แกะกล่องคีย์สำหรับ resource_name ดูโทเค็นการให้สิทธิ์

algorithm

string

อัลกอริทึมที่ใช้ในการเข้ารหัสคีย์การเข้ารหัสข้อมูล (DEK) ในการเข้ารหัสแบบซองจดหมาย

encrypted_data_encryption_key

string (UTF-8)

คีย์การเข้ารหัสเนื้อหาที่เข้ารหัส Base64 ซึ่งเข้ารหัสด้วยคีย์สาธารณะที่เชื่อมโยงกับคีย์ส่วนตัว ขนาดสูงสุด: 1 KB

rsa_oaep_label

string

ป้ายกำกับ L ที่เข้ารหัส Base64 หากอัลกอริทึมคือ RSAES-OAEP หากอัลกอริทึมไม่ใช่ RSAES-OAEP ระบบจะไม่สนใจฟิลด์นี้

reason

string (UTF-8)

สตริง JSON ที่ส่งผ่านซึ่งให้บริบทเพิ่มเติมเกี่ยวกับการดําเนินการ JSON ที่ระบุควรได้รับการทำให้ปลอดภัยก่อนแสดง ขนาดสูงสุด: 1 KB

wrapped_private_key

string

คีย์ส่วนตัวที่รวมไว้ซึ่งเข้ารหัส Base64 ขนาดสูงสุด: 8 KB

รูปแบบของคีย์ส่วนตัวหรือคีย์ส่วนตัวที่รวมไว้ขึ้นอยู่กับการใช้งานบริการรายการควบคุมการเข้าถึงคีย์ (KACLS) ฝั่งไคลเอ็นต์และฝั่ง Gmail จะถือว่าข้อมูลนี้เป็น Blob ทึบ

เนื้อหาการตอบกลับ

หากสำเร็จ วิธีการนี้จะแสดงคีย์การเข้ารหัสข้อมูล Base64

หากการดำเนินการไม่สำเร็จ ระบบจะแสดงการตอบกลับข้อผิดพลาดที่มีโครงสร้าง

การแสดง JSON
{
  "data_encryption_key": string
}
ช่อง
data_encryption_key

string

คีย์การเข้ารหัสข้อมูลที่เข้ารหัส Base64

ตัวอย่าง

ตัวอย่างนี้แสดงคำขอและการตอบกลับตัวอย่างสำหรับprivatekeydecryptวิธีนี้

ส่งคำขอ

POST https://mykacls.example.org/v1/privatekeydecrypt

{
  "wrapped_private_key": "wHrlNOTI9mU6PBdqiq7EQA...",
  "encrypted_data_encryption_key": "dGVzdCB3cmFwcGVkIGRlaw...",
  "authorization": "eyJhbGciOi...",
  "authentication": "eyJhbGciOi...",
  "algorithm": "RSA/ECB/PKCS1Padding",
  "reason": "decrypt"
}

คำตอบ

{
  "data_encryption_key": "akRQtv3nr+jUhcFL6JmKzB+WzUxbkkMyW5kQsqGUAFc="
}