إنشاء كلمة مرور عشوائية قابلة لإعادة الإنتاج من بذرة
ينشئ هذا المولّد كلمة المرور نفسها كلما قدّمتم البذرة والطول وخيارات مجموعات المحارف نفسها.
شغّل الأداة مجانًا
يمكنكم تفعيل الأحرف الكبيرة أو الصغيرة أو الأرقام أو الرموز بأي تركيبة، وتحتوي النتيجة حتماً على محرف واحد على الأقل من كل مجموعة مفعّلة. صُممت الأداة لبيانات الاختبار القابلة لإعادة الإنتاج والعروض التوضيحية وعمليات الترحيل وإجراءات الإعداد التي تتطلب نتيجة ثابتة. ولأن من يعرف البذرة يستطيع إعادة إنشاء كلمة المرور الحتمية، استخدموا بذرة سرية عالية العشوائية إذا كانت النتيجة ستحمي حساباً حقيقياً.
اختاروا إعدادات تعبّر عن السياسة كاملة
ابدؤوا بالطول المطلوب، ثم فعّلوا حصراً مجموعات المحارف التي يقبلها النظام المستهدف. تغطي الأحرف الكبيرة والصغيرة الأبجدية المعتادة، وتضيف الأرقام الخانات العشرية، بينما تضيف الرموز علامات ASCII الشائعة. يضع المولّد محرفاً واحداً على الأقل من كل مجموعة مفعّلة قبل ملء المواضع المتبقية من المجموعة الموحّدة. ثم يعيد ترتيب النتيجة بطريقة حتمية حتى لا تظهر المحارف الإلزامية دائماً في مواضع يسهل توقعها. إذا فُعّلت أربع مجموعات، فيجب ألا يقل الطول عن 4، وإلا استحال رياضياً الوفاء بالشرط. ويؤدي تعطيل جميع المجموعات أيضاً إلى خطأ إدخال واضح بدلاً من نتيجة فارغة أو مضللة. بهذه القواعد تصلح الاستجابة كبيانات اختبار ملتزمة بسياسة محددة، ولا تحتاجون إلى فحص النتيجة وإعادة الطلب حتى تظهر جميع الفئات مصادفةً. يضيف الطول عادةً مقاومة أكبر من متطلبات معقدة لعلامات الترقيم. فإذا كان النظام المستهدف يقبل بيانات اعتماد أطول، فاختاروا طولاً وافياً وفعّلوا فقط المجموعات التي يدعمها بصورة موثوقة.
افهموا المقصود بالتوليد الحتمي
ليست البذرة بيانات وصفية للزينة، بل تهيّئ سلسلة شبه عشوائية صغيرة مستقلة عن المنصة، وتُشتق منها كل الاختيارات اللاحقة. لذلك ينتج الإدخال المتطابق مخرجاً متطابقاً عند تكرار الطلب وفي المتصفحات وبيئات الخادم المدعومة. ويؤدي تغيير نص البذرة أو الطول أو خيار واحد لمجموعة محارف إلى تغيير مسار التوليد، وعادةً ما تتغير كلمة المرور بكاملها. تفيد هذه الخاصية في الاختبارات الآلية والشروح واللقطات وأمثلة البنية التحتية القابلة للتكرار، حيث تجعل العشوائية غير المنضبطة النتائج غير مستقرة. لكنها ترسم أيضاً حداً أمنياً مهماً: الحتمية لا تعني تعذر التنبؤ من الناحية التشفيرية. فمن يكتشف البذرة والإعدادات أو يخمّنها يستطيع إعادة إنشاء كلمة المرور. لا تستخدموا معلومات علنية، مثل عنوان بريد إلكتروني أو اسم مشروع أو السنة الحالية، كبذرة لبيانات اعتماد حقيقية. في الإنتاج، قدّموا بذرة سرية ذات عشوائية كافية واحموها كما تحمون كلمة المرور الناتجة، وفكّروا في مدير كلمات مرور تشفيري عندما لا تكون قابلية الإعادة مطلوبة. لا تتصل هذه القدرة بالشبكة ولا تقرأ الساعة أو أي مصدر عشوائي.
ادمجوا النتائج وتحققوا منها وأعيدوا إنتاجها بأمان
أرسلوا الطول والبذرة والخيارات المنطقية الأربعة في طلب واحد. تتضمن الاستجابة كلمة المرور المنشأة وطولها المؤكد وأسماء مجموعات المحارف المستخدمة. يتيح تسجيل هذه الإعدادات بجانب حالة اختبار غير حساسة لمطوّر آخر إعادة إنتاج البيانات نفسها بدقة من دون نسخ أسرار منشأة إلى الشفرة المصدرية. وفي تجارب الترحيل، يمكن لبذرة ثابتة إنشاء بيانات اعتماد مؤقتة متسقة بين البيئات؛ استخدموا نطاق بذور منفصلاً لكل حالة حتى لا تتشارك حسابات غير مرتبطة النتيجة نفسها. التحقق صارم عمداً: يجب أن يكون الطول عدداً صحيحاً بين 1 و256، وأن تكون البذرة نصاً غير فارغ، وكل خيار مقدّم قيمة منطقية، مع تفعيل مجموعة واحدة على الأقل وطول يتسع لجميع المجموعات المفعّلة. تحدد الأخطاء الشرط المخالف ولا تعيد كلمة مرور جزئية. تبلغ كلفة الأتمتة عبر API مقدار $0.002 لكل طلب، بينما يستطيع المتصفح تنفيذ المنطق النقي نفسه محلياً. إذا استخدمتم النتيجة كسِر حقيقي، فتجنبوا تسجيل الطلب أو الاستجابة، وانقلوها عبر قنوات محمية فقط، وبدّلوها عند الاشتباه في كشفها، واحموا البذرة بالعناية نفسها.
حالات الاستخدام
بيانات ثابتة للاختبارات الآلية
أنشئوا كلمات مرور ملتزمة بالسياسة وتبقى متطابقة بين جولات الاختبار واللقطات وأجهزة المطورين من دون تثبيت القيمة النهائية في الشفرة.
تجارب ترحيل قابلة للتكرار
ولّدوا بيانات اعتماد مؤقتة متسقة أثناء اختبار الترحيل أو الاستيراد مراراً قبل الانتقال إلى بيئة الإنتاج.
أمثلة توثيق قابلة لإعادة الإنتاج
استخدموا بذرة موثقة للحفاظ على ثبات نتائج الشروح وأمثلة API مع عرض جميع خيارات مجموعات المحارف.
الأسئلة الشائعة
هل يعيد الإدخال نفسه كلمة المرور نفسها دائماً؟
نعم. تستخدم الخوارزمية البذرة والإعدادات المقدمة فقط، من دون شبكة أو ساعة أو مصدر عشوائي، ولذلك يعيد الإدخال المتطابق المخرج نفسه.
هل تحتوي كلمة المرور على كل نوع محارف مفعّل؟
نعم. يُختار أولاً محرف واحد على الأقل من كل مجموعة مفعّلة، ثم تُملأ المواضع المتبقية ويُعاد ترتيب النتيجة كاملة.
ماذا يحدث عند تعطيل جميع مجموعات المحارف؟
يفشل الطلب مع خطأ إدخال غير صالح، لأنه لا يمكن إنشاء كلمة مرور من مجموعة محارف فارغة.
هل يمكن اختيار طول قصير مع عدة مجموعات؟
يمكن ذلك فقط إذا كان الطول مساوياً لعدد المجموعات المفعّلة أو أكبر منه. تُرفض القيمة الأقصر لأنها لا تستطيع استيفاء جميع الشروط.
هل تصلح كلمة المرور الحتمية لحساب حقيقي؟
تصلح فقط مع بذرة سرية يصعب تخمينها. يستطيع من يملك البذرة والإعدادات إعادة إنشائها؛ استخدموا مديراً تشفيرياً إذا لم تحتاجوا إلى قابلية التكرار.
ما كلفة طلب API؟
تبلغ كلفة كل طلب API مقدار $0.002. ويمكن لإصدار المتصفح تنفيذ المنطق النقي نفسه محلياً.
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/web/password-generate \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"length":20,"seed":"release-2026"}'const res = await fetch("https://api.kit.forhosting.com/web/password-generate", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"length": 20,
"seed": "release-2026"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/web/password-generate",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"length": 20,
"seed": "release-2026"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/web/password-generate", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"length":20,"seed":"release-2026"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"length":20,"seed":"release-2026"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/web/password-generate", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"length": 20,
"seed": "release-2026"
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "web.password_generate",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الحدود
timeout_sec | 30 |
max_crawl_pages | 25 |
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |