كيفية تخزين كلمة المرور عكسية مع بيثون على لينكس؟

StackOverflow https://stackoverflow.com/questions/1001744

سؤال

أولا، سؤالي هو: لا حول تجزئة كلمة المرور ولكن تشفير كلمة المرور. أنا بناء تطبيقات سطح المكتب التي تحتاج إلى authentificate المستخدم إلى خدمة طرف ثالث. لتسريع عملية تسجيل الدخول، أريد أن أعطي المستخدم الخيار لحفظ أوراق اعتماده. منذ أن كنت بحاجة الى كلمة السر لauthentificate له في الخدمة، فإنه لا يمكن تجزئته.

وفكرت باستخدام وحدة pyCrypto وتنفيذ السمكة المنتفخة أو AES لتشفير بيانات الاعتماد. المشكلة هي مكان تخزين المفتاح. أنا أعرف بعض التطبيقات تخزين مفتاح مباشرة في شفرة المصدر، ولكن بما أنني الترميز تطبيق مفتوح المصدر، وهذا لا يبدو وكأنه حل فعال للغاية.

وهكذا كنت أتساءل كيف، على لينكس، هل تنفيذ المستخدم مفاتيح معينة محددة أو نظام لزيادة أمان كلمة المرور تخزينها.

إذا كان لديك أفضل حل لهذه المشكلة من استخدام pyCrypto ومفاتيح النظام / المستخدم محددة، لا تتردد في المشاركة فيها. كما قلت من قبل، تجزئة ليست حلا، وأنا أعرف تشفير كلمة المرور عرضة، ولكن أريد أن أعطي الخيار للمستخدم. باستخدام غنوم-حلقة مفاتيح ليست خيارا سواء، لأن الكثير من الناس (وأنا منهم) لا يستخدمونه.

هل كانت مفيدة؟

المحلول

وتشفير كلمات السر لا حقا شراء لك المزيد من مجموعة كبيرة من حماية تخزينها في نص عادي. أي شخص قادر على الوصول إلى قاعدة البيانات ربما أيضا لديه حق الوصول الكامل إلى أجهزة خادم الويب.

ولكن، إذا كان فقدان الأمن مقبولة، وكنت حقا بحاجة إلى هذا، فما استقاموا لكم فاستقيموا توليد ملف مفتاح جديد (من مصدر جيد للبيانات عشوائية) كجزء من عملية التثبيت واستخدام هذه. من الواضح تخزين هذا المفتاح كما آمن ممكن (اغلاق أذونات الملف الخ). استخدام مفتاح واحد جزءا لا يتجزأ من مصدر ليست فكرة جيدة - ليس هناك سبب لماذا يجب أن يكون المنشآت منفصلة نفس المفاتيح

نصائح أخرى

PAM . يمكنك جعل وحدة نمطية تلقائيا إلغاء تشفير المفتاح عند تسجيل دخول المستخدم فيها وهذا هو داخليا كيفية عمل GNOME-حلقة مفاتيح (إن أمكن). يمكنك حتى كتابة وحدات PAM في بيثون مع pam_python .

تم تصميم كلمة المرور الآمن من قبل بروس شنير ومفتوحة المصدر. انها ويندوز، ولكن يجب أن تكون قادرا على رؤية ما يقومون به، وربما إعادة استخدامها.

http://www.schneier.com/passsafe.html

http://passwordsafe.sourceforge.net/

واقرأ هذا: <لأ href = "http://chargen.matasano.com/chargen/2009/7/22/if-youre-typing-the-letters-aes-into-your-code-youre-doing هتمل "يختلط =" نوفولو noreferrer "> إذا قمت بكتابة AES في التعليمات البرمجية، وكنت أفعل ذلك الخطأ.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top