Diffie-Hellman Blob Kunci

BLOB digunakan dengan penyedia Diffie-Hellman untuk mengekspor kunci dari, dan mengimpor kunci ke, penyedia layanan kriptografi (Penyedia Solusi Cloud).

Blob Kunci Umum

Diffie-Hellman BLOB kunci publik, ketik PUBLICKEYBLOB, digunakan untuk menukar nilai mod P (G^X) dalam pertukaran kunci Diffie-Hellman. Kunci ini diekspor dan diimpor sebagai urutan byte dengan format berikut.

PUBLICKEYSTRUC  publickeystruc; 
DHPUBKEY dhpubkey;
BYTE y[dhpubkey.bitlen/8]; // Where y = (G^X) mod P

Tabel berikut menjelaskan setiap komponen blob kunci.

Bidang Deskripsi
dhpubkey Struktur DHPUBKEY . Anggota sihir harus diatur ke 0x31484400. Nilai heksadesimal ini adalah pengodean ASCII dari "DH1".
publickeystruc Struktur PUBLICKEYSTRUC .
y Urutan BYTE . Nilai Y, (G^X) mod P, terletak langsung setelah struktur DHPUBKEY , dan harus selalu panjangnya, dalam byte, dari bidang bitlen DHPUBKEY (panjang bit P) dibagi delapan. Jika panjang data yang dihasilkan dari perhitungan mod P (G^X) adalah satu atau beberapa byte lebih pendek dari P dibagi delapan, data harus diisi dengan byte yang diperlukan (dari nilai nol) untuk membuat data memiliki panjang yang diinginkan (format little-endian ).

 

Blob Kunci Privat

Diffie-Hellman BLOB kunci privat, ketik PRIVATEKEYBLOB, digunakan untuk menyimpan informasi publik/privat kunci Diffie-Hellman. Kunci ini diekspor dan diimpor sebagai urutan byte dengan format berikut.

PUBLICKEYSTRUC  publickeystruc; 
DHPUBKEY        dhpubkey;
BYTE            prime[dhpubkey.bitlen/8];
BYTE            generator[dhpubkey.bitlen/8];
BYTE            secret[dhpubkey.bitlen/8];

Tabel berikut menjelaskan setiap komponen blob kunci.

Bidang Deskripsi
dhpubkey Struktur DHPUBKEY . Anggota sihir harus diatur ke 0x32484400. Nilai heksadesimal ini adalah pengodean ASCII dari "DH2".
Generator Urutan BYTE . Generatornya, G.
publickeystruc Struktur PUBLICKEYSTRUC .
Perdana Urutan BYTE . Modul utama, P. Data ini harus selalu memiliki bit paling signifikan dari byte paling signifikan yang diatur ke satu.
rahasia Urutan BYTE . Eksponen rahasia, X.

 

Catatan

Generator dan rahasia harus selalu memiliki panjang yang sama, dalam byte. Jika salah satunya adalah satu byte atau lebih pendek dari yang lain, itu harus diisi dengan jumlah byte nilai nol yang diperlukan untuk membuatnya sama. Baik generator maupun rahasia dalam format little-endian .