Rozpakowuje opakowany klucz prywatny, a następnie odszyfrowuje klucz szyfrowania treści zaszyfrowany kluczem publicznym.
Żądanie HTTP
POST https://KACLS_URL/privatekeydecrypt
Zastąp KACLS_URL adresem URL usługi listy kontroli dostępu do kluczy (KACLS).
Parametry ścieżki
Brak.
Treść żądania
Treść żądania zawiera dane o następującej strukturze:
| Zapis JSON | |
|---|---|
{ "authentication": string, "authorization": string, "algorithm": string, "encrypted_data_encryption_key": string, "rsa_oaep_label": string, "reason": string, "wrapped_private_key": string } |
|
| Pola | |
|---|---|
authentication |
JWT wydany przez dostawcę tożsamości, który potwierdza, kim jest użytkownik. Zobacz tokeny uwierzytelniania. |
authorization |
JWT potwierdzający, że użytkownik może rozpakować klucz dla
|
algorithm |
Algorytm użyty do zaszyfrowania klucza szyfrującego dane (DEK) w szyfrowaniu kopertowym. |
encrypted_data_encryption_key |
Zaszyfrowany klucz szyfrowania treści zakodowany w base64, który jest szyfrowany kluczem publicznym powiązanym z kluczem prywatnym. Maksymalny rozmiar: 1 KB. |
rsa_oaep_label |
Etykieta L zakodowana w base64, jeśli algorytm to RSAES-OAEP. Jeśli algorytm nie jest RSAES-OAEP, to pole jest ignorowane. |
reason |
Ciąg JSON przekazywany bezpośrednio, który zawiera dodatkowy kontekst operacji. Przed wyświetleniem należy oczyścić podany kod JSON. Maksymalny rozmiar: 1 KB. |
wrapped_private_key |
Opakowany klucz prywatny zakodowany w base64. Maksymalny rozmiar: 8 KB. Format klucza prywatnego lub opakowanego klucza prywatnego zależy od implementacji usługi listy kontroli dostępu do kluczy (KACLS). Po stronie klienta i Gmaila jest to traktowane jako nieprzezroczysta blob. |
Treść odpowiedzi
Jeśli operacja się uda, ta metoda zwróci klucz szyfrujący dane zakodowany w base64.
Jeśli operacja się nie powiedzie, zwracana jest odpowiedź z błędem strukturalnym.
| Zapis JSON | |
|---|---|
{ "data_encryption_key": string } |
|
| Pola | |
|---|---|
data_encryption_key |
Klucz szyfrujący dane zakodowany w base64. |
Przykład
Ten przykład zawiera przykładowe żądanie i odpowiedź dla metody privatekeydecrypt.
Żądanie
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"
}
Odpowiedź
{
"data_encryption_key": "akRQtv3nr+jUhcFL6JmKzB+WzUxbkkMyW5kQsqGUAFc="
}