Membuka kunci pribadi yang sudah digabungkan, lalu menandatangani ringkasan yang diberikan oleh klien.
Permintaan HTTP
POST https://BASE_URL/privatekeysign
Ganti BASE_URL
dengan URL dasar.
Parameter jalur
Tidak ada.
Isi permintaan
Isi permintaan memuat data dengan struktur berikut:
Representasi JSON | |
---|---|
{ "authentication": string, "authorization": string, "algorithm": string, "digest": string, "rsa_pss_salt_length": integer, "reason": string, "wrapped_private_key": string } |
Kolom | |
---|---|
authentication |
JWT yang dikeluarkan oleh penyedia identitas (IdP) yang menyatakan siapa pengguna. Lihat token autentikasi. |
authorization |
JWT yang menyatakan bahwa pengguna diizinkan membuka kunci untuk |
algorithm |
Algoritma yang digunakan untuk mengenkripsi Kunci Enkripsi Data (DEK) dalam enkripsi envelope. |
digest |
Ringkasan pesan berenkode base64. Ringkasan |
rsa_pss_salt_length |
(Opsional) Panjang salt yang akan digunakan, jika algoritma tanda tangan adalah RSASSA-PSS. Jika algoritma tanda tangan bukan RSASSA-PSS, kolom ini akan diabaikan. |
reason |
String JSON passthrough yang memberikan konteks tambahan tentang operasi. JSON yang diberikan harus dibersihkan sebelum ditampilkan. Ukuran maks: 1 KB. |
wrapped_private_key |
Kunci pribadi gabungan berenkode base64. Ukuran maks: 8 KB. Format kunci pribadi atau kunci pribadi yang digabungkan bergantung pada implementasi Key Access Control List Service (KACLS). Di klien dan di sisi Gmail, hal ini dianggap sebagai blob yang tidak jelas. |
Isi respons
Jika berhasil, metode ini akan menampilkan tanda tangan berenkode base64.
Jika operasi gagal, balasan error terstruktur akan ditampilkan.
Representasi JSON | |
---|---|
{ "signature": string } |
Kolom | |
---|---|
signature |
Tanda tangan berenkode base64. |
Contoh
Contoh ini memberikan contoh permintaan dan respons untuk metode
privatekeysign
.
Permintaan
{
"wrapped_private_key": "wHrlNOTI9mU6PBdqiq7EQA...",
"digest": "EOBc7nc+7JdIDeb0DVTHriBAbo/dfHFZJgeUhOyo67o=",
"authorization": "eyJhbGciOi...",
"authentication": "eyJhbGciOi...",
"algorithm": "SHA256withRSA",
"reason": "sign"
}
Respons
{
"signature": "LpyCSy5ddy82PIp/87JKaMF4Jmt1KdrbfT1iqpB7uhVd3OwZiu+oq8kxIzB7Lr0iX4aOcxM6HiUyMrGP2PG8x0HkpykbUKQxBVcfm6SLdsqigT9ho5RYw20M6ZXNWVRetFSleKex4SRilTRny38e2ju/lUy0KDaCt1hDUT89nLZ1wsO3D1F3xk8J7clXv5fe7GPRd1ojo82Ny0iyVO7y7h1lh2PACHUFXOMzsdURYFCnxhKAsadccCxpCxKh5x8p78PdoenwY1tnT3/X4O/4LAGfT4fo98Frxy/xtI49WDRNZi6fsL6BQT4vS/WFkybBX9tXaenCqlRBDyZSFhatPQ=="
}