ዝርዝር ሁኔታ:
ቪዲዮ: የ Python ደህንነት ምስጠራ/ዲክሪፕት ሶፍትዌር - 3 ደረጃዎች
2024 ደራሲ ደራሲ: John Day | [email protected]. ለመጨረሻ ጊዜ የተሻሻለው: 2024-01-30 07:32
በዚህ አስተማሪ ውስጥ በአንዳንድ ቀላል ፓይዘን እንዴት የኢንዱስትሪ ደረጃ AES ን በመጠቀም ፋይሎችዎን ደህንነት መጠበቅ እንደሚችሉ አሳያችኋለሁ።
መስፈርቶች
- ፓይዘን 3.7
- PyAesCrypt ቤተ -መጽሐፍት
- ሃሽሊብ ቤተ -መጽሐፍት
እነዚህ ቤተ -መጽሐፍት ከሌሉዎት ፣ በመተየብ በቀላሉ መጫን ይችላሉ-
pip3 ጫን hashlib
pip3 PyAesCrypt ን ይጫኑ
ተርሚናል ውስጥ (ወይም ሲኤምዲ)
አስቀድመው እነዚህ ሊኖሯቸው ይገባል
- የዘፈቀደ ቤተ -መጽሐፍት
- ቤተ -መጽሐፍት
- የስርዓት ቤተ -መጽሐፍት
እኔ OS X ን እጠቀማለሁ ፣ ግን በፋይሎች ዱካዎች (OS X: /፣ Windows
እባክዎን ያስተውሉ -በተወሰኑ ብልሽቶች ምክንያት በኮዱ ውስጥ ያሉት ጥሰቶች በሆነ ምክንያት አይታዩም። በሚታየው ኮድ ውስጥ ምንም አመላካቾች አይኖሩም ፣ ሆኖም እነሱ በመጨረሻ ባያያዝኳቸው የ Python ፋይሎች እና በተዘጉ ስዕሎች ውስጥ ይገኛሉ። በመግቢያው እጥረት ምክንያት አይሰራም ምክንያቱም ኮዱን በቀጥታ ከሚታየው ጽሑፍ በቀጥታ አይውሰዱ።
ሁሉም ጥገኞች ከተጫኑ ወደ ደረጃ 1 እንሂድ።
ደረጃ 1 - የማዋቀሪያ ፋይልን መጻፍ
ይህንን በጣም አስተማማኝ ከሚያደርጉት ነገሮች አንዱ የይለፍ ቃሉን ለመፈተሽ ሃሽ መጠቀም ነው። የማዋቀሪያ ፋይል (የእኔን የማዋቀር saessafe.py እየጠራሁ ነው) ወደሚከተለው ይሄዳል
- ለይለፍ ቃል አቃፊ እና ዱሚ ፋይሎችን ይፍጠሩ
- የይለፍ ቃሉን ያዘጋጁ
- የፋይሉን ቁጥር ያዘጋጁ
- የይለፍ ቃሉን ደብቅ
በመጀመሪያ ፣ ጥገኞቻችንን ወደ ሀገር ውስጥ እናስገባለን-
ከ sys ማስመጣት *
አስመጣ os
በዘፈቀደ ማስመጣት
ሃሽሊቢን ማስመጣት
በመቀጠል የይለፍ ቃል ሃሽ እና ዱሚ ፋይሎችን ለማስቀመጥ አቃፊ እንፈጥራለን-
ሞክር: ካልሆነ os.path.exists ('ዴስክቶፕ/safesetup'):
os.mkdir ('ዴስክቶፕ/safesetup/')
ከ OSError በስተቀር
ማተም ("አቃፊ መፍጠር ላይ ስህተት")
ይህ ኮድ safesetup የሚባል አቃፊ ይፈጥራል (እስካሁን ከሌለ)።
ከዚህ በኋላ የይለፍ ቃሉን እናዘጋጃለን ፣ እና በ 1 እና በ 100 መካከል የዘፈቀደ ቁጥርን ወደ ዱሚ ፋይሎች ለማሰስ እንደ መንገድ እንሄዳለን-
ዓለም አቀፍ የይለፍ ቃል የይለፍ ቃል = argv [1]. ኮድ ('utf-8')
n = random.randint (1, 101)
አሁን የእኛ የይለፍ ቃል እና የፋይል ቁጥራችን ስላለን ፣ በአስተማማኝ ሁኔታ ውስጥ 99 ዱሚ ፋይሎችን እና የይለፍ ቃላችንን ሃሽ የያዘ አንድ እውነተኛ ፋይል እንፈጥራለን።
ለ x በክልል (101): ከሆነ (x! = n):
f = ክፍት (("ዴስክቶፕ/safesetup/"+str (x)), "w+")
ረ ዝጋ ()
ሌላ
የይለፍ ቃል = hashlib.sha256 (የይለፍ ቃል).ሄክስዲስት ()
f = ክፍት (("ዴስክቶፕ/safesetup/"+str (x)), "w+")
f. ይፃፉ (የይለፍ ቃል)
ረ ዝጋ ()
አትም (n)
እውነተኛው ፋይል ኢንቲጀር n የሆነ ሁሉ ይባላል። ይህ ፋይል የ sha256 ስልተ ቀመሩን በመጠቀም ከታጠበ በኋላ የይለፍ ቃላችንን ይ containsል (ይህ ሃሽ ስልተ -ቀመር በስውር ምንዛሬዎች ፣ በተለይም በ Bitcoin ውስጥ በሰፊው ጥቅም ላይ ውሏል)።
ልክ እንደ የይለፍ ቃሉ አስፈላጊ ስለሆነ n ምን እንደሆነ ያስታውሱ (በኮንሶሉ ውስጥ ይታተማል)።
ለዝግጅት ፕሮግራማችን የሚያስፈልገን ያ ብቻ ነው ፣ ስለዚህ አሁን ወደ ምስጠራ/ዲክሪፕት ፕሮግራም እንሸጋገራለን።
ደረጃ 2 የኢንክሪፕሽን/ዲክሪፕት ፋይል
የዋናው ፋይል የማዋቀሪያ ክፍል ጥገኞቹን ከውጭ ያስገባል ፣ የገባውን የይለፍ ቃል ያጥባል ፣ እና የገባውን የፋይል ቁጥር በመጠቀም እውነተኛውን የይለፍ ቃል ሃሽ ያወጣል።
በመጀመሪያ ፣ ጥገኛዎች -
ከ sys ማስመጣት *ማስመጣት os
pyAesCrypt ያስመጡ
ሃሽሊቢን ማስመጣት
በመቀጠል ፣ የገባው የይለፍ ቃል ሃሽሽ -
የይለፍ ቃል = argv [1]. ኮድ ('utf-8') የይለፍ ቃል = hashlib.sha256 (የይለፍ ቃል).hexdigest ()
በመጨረሻም ፣ የታሸገ የይለፍ ቃል መልሶ ማግኘት -
file_key = str (argv [2]) ሃሽ = ክፍት (("ዴስክቶፕ/safesetup/" + file_key), ("r +"))። ያንብቡ ()
የኢንክሪፕሽን ፋይል ሁለተኛው ክፍል ሀሾቹን ያወዳድራል ፣ የንፅፅሩን ትክክለኛነት ይወስናል ፣ እና የመረጡት ፋይልዎን ኢንክሪፕት ለማድረግ ወይም ዲክሪፕት ለማድረግ የ AESCrypt Python ቤተ -መጽሐፍትን ይጠቀማል። ይህ በጣም ትልቅ የኮድ ቁራጭ ነው ፣ ግን እኔ እሰብረዋለሁ-
ከሆነ (የይለፍ ቃል == ሃሽ): ማተም (“የይለፍ ቃል ተቀባይነት አግኝቷል”)
ቋት መጠን = 64 * 1024
ክዋኔ = str (ግብዓት ("ፋይሎችን ሰርስረው እያወጡ ወይም ኢንክሪፕት ያደርጋሉ? (r ወይም e)"))
ከሆነ (ክወና == 'r'):
file_name = str (ግቤት ("ለማውጣት ፋይል:"))
pyAesCrypt.decryptFile ((file_name + ".aes") ፣ የፋይል_ስም ፣ የይለፍ ቃል ፣ ቋት መጠን)
os.remove ((file_name + ".aes"))
elif (ክወና == 'ሠ') ፦
file_name = str (ግቤት ("ለማመስጠር ፋይል:"))
pyAesCrypt.encryptFile (ፋይል_ስም ፣ (ፋይል_ስም + +.aes”) ፣ የይለፍ ቃል ፣ ቋት መጠን)
os.remove (የፋይል_ስም)
ሌላ
ማተም ("ስህተት: ትክክል ያልሆነ ግቤት")
ሌላ
ማተም ("መዳረሻ ተከልክሏል")
የመጀመሪያው ከሆነ መግለጫው የታሸጉ የይለፍ ቃሎች ይዛመዱ እንደሆነ ይወስናል። እነሱ ካደረጉ ፣ ከዚያ ፋይሎችን ኢንክሪፕት ማድረግ ወይም ኢንክሪፕት የተደረጉ ፋይሎችን መልሰው መፈለግዎን ይጠይቃል። በግቤትዎ ላይ በመመስረት የቀረበውን ፋይል ኢንክሪፕት ያደርጋል ወይም ዲክሪፕት ያደርጋል። የፋይሉን ስም እንዲሰጡ ሲጠየቁ ፋይሉ ልክ እንደ ፓይዘን ፕሮግራም በተመሳሳይ ማውጫ ውስጥ ካልሆነ መንገዱን መግለፅዎን ያረጋግጡ። ፕሮግራሙ ፋይሉን በቀድሞው ሁኔታ ይሰርዛል ፣ ኢንክሪፕት የተደረገበት.aes ፋይል ይተካዋል ፣ ወይም ዲክሪፕት በማድረግ እና በዋናው ፋይል ይተካዋል።
ለወደፊቱ ፣ የ Python OpenCV ቤተ -መጽሐፍትን በመጠቀም የፊት መታወቂያን ለማካተት ይህንን ማዘመን እችላለሁ ፣ ግን ለአሁን የይለፍ ቃላት በቂ ይሆናሉ።
ደረጃ 3 - የፋይሎች አሠራር
የማዋቀሪያ ፋይሉን ለማሄድ የሚከተሉትን ደረጃዎች ይከተሉ
1. ተርሚናል ውስጥ ይተይቡ
python3 ማውጫ/setupname.py ይለፍ ቃል (ማውጫ ፣ የማዋቀሪያ ስም እና የይለፍ ቃል በየራሳቸው እሴቶች በመተካት)
2. ተርሚናሉ የፋይል ቁጥርዎን ያወጣል። ይህንን ጠብቅ።
የኢንክሪፕሽን/ዲክሪፕት ፕሮግራምን ለማስኬድ የሚከተሉትን ደረጃዎች ይከተሉ
1. ተርሚናል ውስጥ ይተይቡ
python3 ማውጫ/filename.py የይለፍ ቃል filenumber (ማውጫ ፣ የፋይል ስም ፣ የይለፍ ቃል እና የፋይለሰቡን በየራሳቸው እሴቶች በመተካት)
2. ተርሚናሉ ከዚያ የይለፍ ቃልዎን ይቀበላል ወይም አይቀበልም። ውድቅ ከተደረገ ፣ እንደገና ይሞክሩ እና ትክክለኛዎቹን እሴቶች መተየብዎን ያረጋግጡ። አንዴ መዳረሻ ከተሰጠ ፣ ተርሚናሉ አንድ ፋይል ኢንክሪፕት ማድረግ ወይም ፋይል ሰርስሮ ማውጣት ይፈልግዎታል። ፋይልን ኢንክሪፕት ለማድረግ ፣ e ን ይተይቡ እና ኢንክሪፕት የተደረገ ፋይልን ለማግኘት ፣ r ን ይተይቡ።
3. ከዚያ የፋይሉን ስም እንዲያቀርቡ ይጠየቃሉ። ያስታውሱ የፋይሉን ማውጫ እንዲሁም ስሙን ፣ እና እንዲሁም የፋይል ቅጥያውን። ሆኖም ፣ አንድ ፋይል ዲክሪፕት እያደረጉ ከሆነ ፣ ኮዱ የዚያ መለያ ስለሆነ የቅጥያውን.aes ክፍል አይፃፉ።
4. ፕሮግራሙ ከዚያ የቀረበውን ፋይል ኢንክሪፕት ያደርጋል ወይም ዲክሪፕት ያደርጋል ፣ እና ፋይሉን በቀድሞው ሁኔታ ይሰርዛል (ኢንክሪፕት የተደረገ ወይም ዲክሪፕት የተደረገውን ፋይል ይዞ ይቆያል)።
ቮላ! ይህንን ወደ አስተማሪው በጣም ስላደረጉት እናመሰግናለን ፣ የኮድ ትምህርቶችን ማንበብ በጣም አዝናኝ ነገር እንዳልሆነ አውቃለሁ። የ Python ፋይሎች በዚህ ደረጃ ውስጥ ተዘግተዋል ፣ ለእዚህ ምት መስጠት ለሚፈልጉ። በድጋሚ ፣ ለንባብ አመሰግናለሁ ፣ እና ለወደፊቱ የኮድ ሙከራዎችዎ መልካም ዕድል እመኝልዎታለሁ።
የሚመከር:
እንደ ISU ተማሪ ነፃ ሶፍትዌርን እንዴት ማውረድ እንደሚቻል (ማይክሮሶፍት ፣ አዶቤ እና ደህንነት ሶፍትዌር 24 ደረጃዎች
እንደ ISU ተማሪ (ማይክሮሶፍት ፣ አዶቤ እና ደህንነት ሶፍትዌር - ለ Adobe - ወደ ደረጃ 1 ይሂዱ - ለ Microsoft - ወደ ደረጃ 8 ይሂዱ - ለደህንነት ወደ ደረጃ 8 ይሂዱ ለ Azure ወደ ደረጃ 16 ይሂዱ።
ለ PLC ደህንነት የገመድ አልባ ደህንነት ቁልፍ 6 ደረጃዎች (ከስዕሎች ጋር)
ለ PLC ደህንነት የገመድ አልባ ደህንነት ቁልፍ - ይህ ፕሮጀክት ለአደገኛ የማምረቻ ተቋማት ተጨማሪ የደህንነት ንብርብር ለመፍጠር IoT ን እና (በመጨረሻም) ሮቦቶችን ለመጠቀም የእኔ ጽንሰ -ሀሳብ ማረጋገጫ ነው። ይህ ቁልፍ የምልክት መቆጣጠሪያን ጨምሮ በርካታ ሂደቶችን ለመጀመር ወይም ለማቆም ሊያገለግል ይችላል
አንድ ንክኪ የሴቶች ደህንነት ደህንነት ስርዓት 3 ደረጃዎች
አንድ ንክኪ የሴቶች ደህንነት ደህንነት ስርዓት - አንድ ንክኪ ማንቂያ 8051 ማይክሮ መቆጣጠሪያን በመጠቀም የሴቶች ደህንነት ስርዓት በዛሬው ዓለም የሴቶች ደህንነት በጣም ሀገር ውስጥ በጣም አስፈላጊ ጉዳይ ነው። ዛሬ ሴቶች ተረበሹ እና ተቸግረዋል እና አንዳንድ ጊዜ አስቸኳይ እርዳታ ሲያስፈልግ። የሚፈለግ Locati የለም
ስልክዎን እና መግብርዎን እንዴት ደህንነት እና ደህንነት እንደሚጠብቁ - 4 ደረጃዎች
ስልክዎን እና መግብርዎን እንዴት ደህንነቱ የተጠበቀ እና ደህንነቱ የተጠበቀ - ሁሉንም ማለት ይቻላል ከጠፋ ሰው (በእርግጥ የተጋነነ)። ስለዚህ ፣ የቀደመው ዓረፍተ ነገሬ እንደተናገረው ፣ እኔ በጣም ዘግናኝ ነኝ። የሆነ ነገር ከእኔ ጋር ካልተያያዘ ፣ እሱን የማስወገድ ትልቅ ዕድል አለ ፣ መርሳት የሆነ ቦታ አለ
የይለፍ ቃል የዩኤስቢ ድራይቭ በውጫዊ ምስጠራ ከባች ፋይል ጋር - 8 ደረጃዎች
የይለፍ ቃል የዩኤስቢ ድራይቭን ከደብዳቤ ፋይል ጋር ምስጠራን በማውጣት: አንድ ተጠቃሚ በመኪና ውስጥ የይለፍ ቃል እንዲያስቀምጥ የማይፈቅድለት እና በፈቃዱ ሊቀይሩት የሚችለውን የባለቤት ፋይል የሚያሳይ ይህ እኔ ያደረግሁትን ፕሮግራም በቀላሉ እንዴት እንደሚጠቀሙበት ያሳየዎታል።