Phương thức: privatekeysign

Khám phá một khoá riêng tư đã gói rồi ký thông báo do ứng dụng cung cấp.

Yêu cầu HTTP

POST https://BASE_URL/privatekeysign

Thay thế BASE_URL bằng URL cơ sở.

Tham số đường dẫn

Không có.

Nội dung yêu cầu

Nội dung yêu cầu chứa dữ liệu có cấu trúc sau:

Biểu diễn dưới dạng JSON
{
  "authentication": string,
  "authorization": string,
  "algorithm": string,
  "digest": string,
  "rsa_pss_salt_length": integer,
  "reason": string,
  "wrapped_private_key": string
}
Trường
authentication

string

JWT do nhà cung cấp danh tính (IdP) xác nhận người dùng là ai. Xem phần mã thông báo xác thực.

authorization

string

JWT khẳng định rằng người dùng được phép khám phá khoá cho resource_name. Xem phần mã thông báo uỷ quyền.

algorithm

string

Thuật toán dùng để mã hoá Khoá mã hoá dữ liệu (DEK) trong phương thức mã hoá phong bì.

digest

string

Chuỗi đại diện thông báo được mã hoá Base64. Chuỗi đại diện của DER đã mã hoá SignedAttributes. Giá trị này không được thêm vào. Kích thước tối đa: 128B

rsa_pss_salt_length

integer

(Không bắt buộc) Độ dài dữ liệu ngẫu nhiên cần sử dụng, nếu thuật toán chữ ký là RSASSA-PSS. Nếu thuật toán chữ ký không phải là RSASSA-PSS thì trường này sẽ bị bỏ qua.

reason

string (UTF-8)

Chuỗi JSON truyền qua cung cấp thêm ngữ cảnh về thao tác. JSON được cung cấp phải được dọn dẹp trước khi hiển thị. Kích thước tối đa: 1 KB.

wrapped_private_key

string

Khoá riêng tư được gói mã hoá bằng base64. Kích thước tối đa: 8 KB.

Định dạng của khoá riêng tư hoặc khoá riêng tư được gói sẽ tuỳ thuộc vào việc triển khai Dịch vụ danh sách kiểm soát truy cập khoá (KACLS). Ở ứng dụng khách và phía Gmail, tệp này được coi là một blob mờ.

Nội dung phản hồi

Nếu thành công, phương thức này sẽ trả về một chữ ký được mã hoá base64.

Nếu thao tác không thành công, trả lời lỗi có cấu trúc bị trả về.

Biểu diễn dưới dạng JSON
{
  "signature": string
}
Trường
signature

string

Chữ ký được mã hoá base64.

Ví dụ:

Ví dụ này cung cấp một yêu cầu và phản hồi mẫu cho privatekeysign .

Yêu cầu

{
  "wrapped_private_key": "wHrlNOTI9mU6PBdqiq7EQA...",
  "digest": "EOBc7nc+7JdIDeb0DVTHriBAbo/dfHFZJgeUhOyo67o=",
  "authorization": "eyJhbGciOi...",
  "authentication": "eyJhbGciOi...",
  "algorithm": "SHA256withRSA",
  "reason": "sign"
}

Phản hồi

{
  "signature": "LpyCSy5ddy82PIp/87JKaMF4Jmt1KdrbfT1iqpB7uhVd3OwZiu+oq8kxIzB7Lr0iX4aOcxM6HiUyMrGP2PG8x0HkpykbUKQxBVcfm6SLdsqigT9ho5RYw20M6ZXNWVRetFSleKex4SRilTRny38e2ju/lUy0KDaCt1hDUT89nLZ1wsO3D1F3xk8J7clXv5fe7GPRd1ojo82Ny0iyVO7y7h1lh2PACHUFXOMzsdURYFCnxhKAsadccCxpCxKh5x8p78PdoenwY1tnT3/X4O/4LAGfT4fo98Frxy/xtI49WDRNZi6fsL6BQT4vS/WFkybBX9tXaenCqlRBDyZSFhatPQ=="
}