যদিও ফিলিপের উত্তরটি পুরোপুরি ভাল, তবে কিছুটা আলাদা উপায় আছে যার জন্য লগইন সার্ভার এবং গেম সার্ভারের মধ্যে কোনও সংযোগের প্রয়োজন নেই, যদি এই ধরনের সংযোগটি কঠিন হয় তবে দরকারী।
- লগইন সার্ভারে ব্যবহারকারী সাফল্যের সাথে প্রমাণীকরণ করলে, তাদের উপরের মতো একটি গেম সার্ভারের ঠিকানা এবং একটি লগইন টোকন প্রেরণ করা হয়। তবে এই টোকেনটিতে 2 টি অংশ রয়েছে: লগইন সার্ভারের সময় এবং সেই সংখ্যাটির একটি হ্যাশ প্লাস তাদের ব্যবহারকারীর নাম, তাদের আইপি ঠিকানা, গেম সার্ভারের আইপি ঠিকানা বা আইডি এবং একটি গোপন কী যা কেবলমাত্র আপনি জানেন।
- ক্লায়েন্টটি এই টোকেনটি প্রেরণ করে সরবরাহ করা গেম সার্ভারে লগ ইন করার চেষ্টা করে। লগইন টোকেনের তথ্যের উপর ভিত্তি করে নিজস্ব আইপি ঠিকানা / আইডি এবং গোপন কীটির উপর ভিত্তি করে সার্ভারটি আগের মতো একই হ্যাশ তৈরি করে। যদি এই হ্যাশটি টোকেনের সাথে একটির সাথে মিলে যায় তবে আপনি প্লেয়ারটিকে যথাযথভাবে অনুমোদন করতে পারবেন। তারপরে পরীক্ষা করুন যে তারিখটি খুব বেশি পুরানো নয় (যেমন 1 মিনিটেরও বেশি)।
এটি কাজ করে কারণ:
- তারিখের মেয়াদ শেষ হওয়ার সাথে সাথে এটি অনুলিপি এবং পুনরায় ব্যবহার করা যাবে না।
- এটি গোপন কীটি না জেনে কোনও নতুন লগইন ছাড়া তৈরি করা যায় না।
- এটি অন্য কারও দ্বারা সহজেই বাধা দেওয়া যায় না (উদাহরণস্বরূপ, প্যাকেট স্নিফার সহ) এবং ব্যবহার করা যায় কারণ আসল আইপি ঠিকানাটি এটি তৈরিতে ব্যবহৃত হয়।
- এটি আলাদা অ্যাকাউন্টের জন্য ব্যবহার করা যায় না কারণ ব্যবহারকারীর নামটি হ্যাশের অংশ হিসাবে তৈরি হয়।
- সার্ভারের আইডি / আইপি ঠিকানা হ্যাশের অংশ হিসাবে এটি বিভিন্ন গেম সার্ভারের একযোগে লগইনগুলির জন্য ব্যবহার করা যায় না।
বা আরও সহজভাবে বলতে গেলে, হ্যাশটি নিশ্চিত করে যে প্রেরকের পক্ষে তাদের লগইন টোকেনটি জাল করা প্রায় অসম্ভব এবং তাই টোকেনের তথ্যে বিশ্বাস করা যায়।
যে কোনও সুরক্ষা ওরিয়েন্টেড হ্যাশিংয়ের মতো, আপনি পেতে পারেন এমন সেরা হ্যাশ ফাংশনটি ব্যবহার করুন - এই মুহুর্তে লোকেরা bcrypt, PBKDF2, এবং স্ক্রিপ্ট পছন্দ করতে পারে - এবং নিশ্চিত করুন যে আপনার গোপন কীটি দীর্ঘস্থায়ী যাতে নিষ্ঠুর বল প্রজননকে আরও কম ব্যবহারিক করে তোলা যায়।