2013-08-17 10 views
15

तो यह मेरा कोड है और मैं अपना पासवर्ड छिपाना चाहता हूं, लेकिन मुझे नहीं पता कि कैसे। मैंने चारों ओर देखा है और उनमें से कोई भी मेरे कोडिंग में फिट नहीं लग रहा है, यह वर्तमान कोडिंग है। मेरा मतलब है कि मैंने शो = "*" और गेटपास भी देखा है, लेकिन मुझे नहीं पता कि उन्हें इस कोडिंग में कैसे रखा जाए। मैं पाइथन 2.7.3 का उपयोग कर रहा हूँ और एक रास्पबेरी पाई पर कोडिंग कर रहा हूँ।पायथन छुपा कच्चा_इनपुट

ans = True 

while ans: 
    print(""" 
        ------------- 
        | 1. Shutdown | 
        | 2. Items | 
        ------------- 
    """) 

    ans=raw_input(""" 

      Please Enter A Number: """) 

    if ans == "1": 

     exit() 
    elif ans == "2": 


     pa=raw_input(""" 

      Please Enter Password: """) 

     if pa == "zombiekiller": 

      print(""" 
        ---------------- 
        | 1. Pi password | 
        | 2. Shutdown | 
        ---------------- 
      """) 

      pe=raw_input (""" 

      Please Enter A Number: """) 

      if pe == "1": 
       print (""" 

      Pi's Password Is Adminofpi""") 
       import time 
       time.sleep(1) 
       exit() 

      elif pe == "2": 
       exit() 

      else: 
       print(""" 

      You Have Entered An Inccoredt Option. Terminating Programm""") 
       import time 
       time.sleep(1) 
       exit() 

     else: 
       print(""" 

      You Have Entered An Inccorect Password. Terminating Programm""") 
       import time 
       time.sleep(1) 
       exit() 
+0

[getpass.getpass()] (http://docs.python.org/2/library/getpass#getpass.getpass) का उपयोग करें। – falsetru

+0

[पाइथन में कमांड लाइन पासवर्ड इनपुट प्राप्त करने के संभावित डुप्लिकेट] (http://stackoverflow.com/questions/9202224/getting-command-line-password-input-in-python) – IanAuld

उत्तर

0

इनपुट का MD5 हैश लेने के लिए अजगर की hashlib लाइब्रेरी का, और यह लिपि में अपना पासवर्ड का हैश किया संस्करण के खिलाफ की तुलना करें। Here's इसका एक उदाहरण है कि आप इसे कैसे कर सकते हैं।

+5

यह वह नहीं है जिसे उसने पूछा था। वह 'raw_input' के इनपुट को छिपाना चाहता था ... – tamasgal

+0

मुझे उसमें से कोई भी समझ में नहीं आया, मैं –

+0

पर getpass.getpass के साथ प्रयास कर रहा हूं, मुझे यकीन नहीं है कि मैं वास्तव में समझता हूं कि वह वास्तव में क्या चाहता है। क्या वह टर्मिनल में इनपुट छिपाना चाहता है - या प्रोग्राम में पासवर्ड का मूल्य? –

48

getpass इनपुट छुपाता है, सिर्फ इस तरह, मॉड्यूल getpass आयात करने के बाद raw_input बदल देते हैं:

import getpass 
. 
. 
. 
pa = getpass.getpass() 
-1

कभी नहीं एक स्रोत फ़ाइल में उपयोगकर्ता आईडी और पासवर्ड की दुकान, कि सुरक्षा भेद्यता है!

उन्हें एक टेक्स्ट फ़ाइल में संग्रहित करें और पासवर्ड को एन्कोड करने के लिए उन्हें कुछ सममित कुंजी क्रिप्टोग्राफी (कम से कम MD5, या वर्तमान में सुझाए गए न्यूनतम मानक, SHA-3) के साथ एन्क्रिप्ट करें।

: व्यवस्थापक: $ 1 $ dqx/Wdy5 $ QQrH98XjvFBOm6vqu3qN/1 :: व्यवस्थापक: व्यवस्थापक: [email protected]:

अपने कोड में ब्लॉक अपने पढ़ा

परिणाम कुछ ऐसा दिखाई देगा फ़ाइल को डिक्रिप्ट करने के लिए फ़ाइल और उसी एल्गोरिदम का उपयोग करें।

संबंधित मुद्दे