Fungsi EnclaveUnsealData (winenclaveapi.h)
Mendekripsi objek besar biner terenkripsi (blob).
Sintaks
HRESULT EnclaveUnsealData(
[in] const VOID *ProtectedBlob,
[in] UINT32 ProtectedBlobSize,
[out] PVOID DecryptedData,
[in] UINT32 BufferSize,
[out] UINT32 *DecryptedDataSize,
[out, optional] ENCLAVE_IDENTITY *SealingIdentity,
[out, optional] UINT32 *UnsealingFlags
);
Parameter
[in] ProtectedBlob
Penunjuk ke data yang disegel untuk tidak disegel. Data ini dapat disimpan baik dalam rentang alamat enklave atau dalam ruang alamat proses host
[in] ProtectedBlobSize
Ukuran data yang disegel ke unseal, dalam byte.
[out] DecryptedData
Penunjuk ke buffer tempat data yang tidak terenkripsi harus ditempatkan. Data ini dapat disimpan baik dalam rentang alamat enklave atau dalam ruang alamat proses host. Jika parameter ini adalah NULL
, hanya ukuran data yang didekripsi yang dihitung.
[in] BufferSize
Ukuran buffer tempat parameter DecryptedData menunjuk, dalam byte. Jika DecryptedData adalah NULL
, BufferSize harus nol. Jika DecryptedData bukan NULL
, dan jika ukuran data yang didekripsi lebih besar dari nilai ini, kesalahan akan dikembalikan.
[out] DecryptedDataSize
Penunjuk ke variabel yang menerima ukuran aktual data yang didekripsi, dalam byte.
[out, optional] SealingIdentity
Penunjuk opsional ke buffer yang harus diisi dengan identitas enklave yang menyegel data. Jika pointer ini adalah NULL
, identitas enklave penyegelan tidak dikembalikan.
[out, optional] UnsealingFlags
Penunjuk opsional ke variabel yang menerima nol atau lebih dari bendera berikut yang menjelaskan objek besar biner terenkripsi.
Nilai | Makna |
---|---|
ENCLAVE_UNSEAL_FLAG_STALE_KEY1 |
Data dienkripsi dengan kunci kedaluarsa. Kunci penyegelan diputar saat diperlukan untuk keamanan, dan sistem hanya dapat mempertahankan sejumlah kunci tetap yang baru-baru ini diketahui. Enklave yang menentukan bahwa data dienkripsi dengan kunci basi harus mengenkripsi ulang data dengan kunci saat ini untuk meminimalkan kemungkinan kunci yang digunakan untuk mengenkripsi data tidak lagi dipertahankan dalam daftar kunci. |
Nilai kembali
Jika fungsi ini berhasil, fungsi akan mengembalikan S_OK. Jika tidak, kode kesalahan HRESULT akan dikembalikan.
Keterangan
Enklave yang memanggil EnclaveUnsealData harus memenuhi kriteria yang sesuai dengan nilai ENCLAVE_SEALING_IDENTITY_POLICY yang ditentukan oleh enklave yang menyegel data dengan memanggil EnclaveSealData.
EnclaveUnsealData harus dipanggil dari dalam enklave, dan hanya didukung dalam enklave yang memiliki jenis enklave ENCLAVE_TYPE_VBS .
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 10, versi 1709 [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2016 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | winenclaveapi.h |
Pustaka | Vertdll.lib |
DLL | Vertdll.dll |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk