دوال اشتقاق المفاتيح
اشتق مفاتيح التشفير باستخدام KDF API القياسية.
مقارنة الكود
✕ Java 8
SecretKeyFactory factory =
SecretKeyFactory.getInstance(
"PBKDF2WithHmacSHA256");
KeySpec spec = new PBEKeySpec(
password, salt, 10000, 256);
SecretKey key =
factory.generateSecret(spec);
✓ Java 25
var kdf = KDF.getInstance("HKDF-SHA256");
SecretKey key = kdf.deriveKey(
"AES",
KDF.HKDFParameterSpec
.ofExtract()
.addIKM(inputKey)
.addSalt(salt)
.thenExpand(info, 32)
.build()
);
هل ترى مشكلة في هذا الكود؟ أخبرنا.
لماذا يتفوق الأسلوب الحديث
واجهة برمجية نظيفة
نمط المنشئ بدلاً من مُنشئات KeySpec المحرجة.
دعم HKDF
خوارزمية HKDF الحديثة إلى جانب PBKDF2.
قياسية
واجهة برمجية موحّدة لجميع خوارزميات اشتقاق المفاتيح.
الأسلوب القديم
PBKDF2 يدوي
الأسلوب الحديث
KDF API
منذ JDK
25
الصعوبة
متقدم
دعم JDK
دوال اشتقاق المفاتيح
متاح
أُنهيت في JDK 25 LTS (JEP 510، سبتمبر 2025).
كيف يعمل
توفر KDF API واجهةً قياسيةً لدوال اشتقاق المفاتيح بما فيها HKDF. تستبدل النمط المحرج SecretKeyFactory + PBEKeySpec بواجهة برمجية منشئ نظيفة.
توثيق ذو صلة