Բովանդակություն:
Video: Python անվտանգության ծածկագրման/վերծանման ծրագրակազմ. 3 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:49
Այս Instructable- ում ես ձեզ ցույց կտամ, թե ինչպես որոշ պարզ Python- ով կարող եք ապահով պահել ձեր ֆայլերը ՝ օգտագործելով արդյունաբերական ստանդարտ AES- ը:
Պահանջներ:
- Python 3.7
- PyAesCrypt գրադարան
- hashlib գրադարան
Եթե դուք չունեք այս գրադարանները, կարող եք հեշտությամբ տեղադրել `մուտքագրելով.
pip3 տեղադրել hashlib
pip3 տեղադրել PyAesCrypt
տերմինալում (կամ CMD)
Դուք արդեն պետք է ունենաք հետևյալները.
- պատահական գրադարան
- os գրադարան
- համակարգի գրադարան
Ես օգտագործում եմ OS X- ը, բայց դա չպետք է չափազանց նշանակություն ունենա, բացառությամբ ֆայլի ուղիների գծերի շեղումների ուղղության (OS X: /, Windows:)
Խնդրում ենք նկատի ունենալ. Ինչ -որ անսարքության պատճառով ծածկագրում տեղ գտած տեղաշարժերը ինչ -ինչ պատճառներով չեն երևում: Հետևաբար, ցուցադրվող ծածկագրում ոչ մի նահանջ չի լինի, այնուամենայնիվ դրանք առկա են Python ֆայլերում, որոնք ես կցել եմ վերջում և կցված նկարներում: Պարզապես մի վերցրեք ծածկագիրը անմիջապես ցուցադրվող տեքստից, քանի որ այն չի աշխատի նահանջների բացակայության պատճառով:
Եթե ունեք բոլոր կախվածությունները, եկեք անցնենք Քայլ 1 -ին:
Քայլ 1: Կարգավորման ֆայլ գրելը
Գործոններից մեկը, որն այսքան ապահով է դարձնում, գաղտնաբառի ստուգման համար հեշերի օգտագործումն է: Կարգավորման ֆայլը (ես զանգում եմ իմը setupsafe.py) պատրաստվում է ՝
- Ստեղծեք թղթապանակ և ծածկագրի ֆայլեր գաղտնաբառի համար
- Սահմանեք գաղտնաբառը
- Սահմանեք ֆայլի համարը
- Կոտրեք գաղտնաբառը
Նախ, մենք մտադիր ենք ներմուծել մեր կախվածությունները.
sys ներմուծումից *
ներմուծել os
պատահական ներմուծում
ներմուծել hashlib
Հաջորդը, մենք կստեղծենք թղթապանակ `գաղտնաբառի հեշը և կեղծ ֆայլերը պահելու համար.
փորձեք. եթե ոչ os.path.exists ('desktop/safesetup'):
os.mkdir ('աշխատասեղան/safesetup/')
բացառությամբ OSError:
տպել («Թղթապանակ ստեղծելիս սխալ առաջացավ»)
Այս ծածկագիրը կստեղծի մի թղթապանակ, որը կոչվում է safesetup (եթե այն արդեն գոյություն չունի):
Դրանից հետո մենք մտադիր ենք գաղտնաբառ սահմանել և 1 -ից 100 -ի միջև պատահական թիվ ստեղծել ՝ որպես կեղծ ֆայլեր նավարկելու մեր միջոց:
գլոբալ գաղտնաբառ գաղտնաբառ = argv [1].encode ('utf-8')
n = պատահական. անվանում (1, 101)
Այժմ, երբ մենք ունենք մեր գաղտնաբառը և ֆայլի համարը, մենք ստեղծելու ենք 99 կեղծ ֆայլեր safesetup- ի ներսում և մեկ իրական ֆայլ, որը կպարունակի մեր գաղտնաբառի հեշը.
x միջակայքում (101). եթե (x! = n):
f = բաց (("desktop/safesetup/"+str (x)), "w+")
զ. փակել ()
այլ:
գաղտնաբառ = hashlib.sha256 (գաղտնաբառ).hexdigest ()
f = բաց (("desktop/safesetup/"+str (x)), "w+")
զ. գրել (գաղտնաբառ)
զ. փակել ()
տպել (n)
Իրական ֆայլը կոչվում է ինչ էլ որ լինի n թիվը: Այս ֆայլը պարունակում է մեր գաղտնաբառը ՝ sha256 ալգորիթմի միջոցով հեշի ենթարկվելուց հետո (այս հեշ ալգորիթմը լայնորեն օգտագործվում է կրիպտոարժույթներում, հատկապես Bitcoin- ում):
Հիշեք, թե ինչ է n- ն (այն տպվելու է վահանակում), քանի որ այն նույնքան կարևոր է, որքան գաղտնաբառը:
Դա այն ամենն է, ինչ մեզ անհրաժեշտ է մեր տեղադրման ծրագրի համար, ուստի այժմ կանցնենք գաղտնագրման/վերծանման ծրագրին:
Քայլ 2: Գաղտնագրման/վերծանման ֆայլ
Հիմնական ֆայլի կարգավորումների բաժինը ներմուծում է կախվածությունները, խափանում մուտքագրված գաղտնաբառը և առբերում իրական գաղտնաբառի հեշը ՝ մուտքագրված ֆայլի համարի միջոցով:
Նախ, կախվածությունները.
sys ներմուծումից *ներմուծում os
ներմուծել pyAesCrypt
ներմուծել hashlib
Հաջորդը, մուտքագրված գաղտնաբառի հեշինգը.
գաղտնաբառ = argv [1].encode ('utf-8') գաղտնաբառ = hashlib.sha256 (գաղտնաբառ).hexdigest ()
Վերջապես, հեշ գաղտնաբառի որոնում.
file_key = str (argv [2]) hash = open (("desktop/safesetup/" + file_key), ("r +")). կարդալ ()
Գաղտնագրման ֆայլի երկրորդ բաժինը համեմատում է հեշերը, որոշում համեմատության իսկությունը և օգտագործում է AESCrypt python գրադարանը ՝ ձեր ընտրած ֆայլը ծածկագրելու կամ վերծանելու համար: Սա բավականին մեծ կոդ է, բայց ես այն կբաժանեմ.
if (գաղտնաբառ == հաշ): տպել («Գաղտնաբառը ընդունված է»)
բուֆեր Չափը = 64 * 1024
գործողություն = str (մուտքագրում («Դուք ֆայլեր առբերու՞մ եք, թե՞ ծածկագրում եք (r կամ e)»))
եթե (գործողություն == 'r'):
file_name = str (մուտքագրում («Ֆայլ առբերելու համար.»))
pyAesCrypt.decryptFile ((file_name + ".aes"), file_name, գաղտնաբառ, bufferSize)
os.remove ((file_name + ".aes"))
elif (գործողություն == 'e'):
file_name = str (մուտքագրում («Գաղտնագրման ֆայլ.»))
pyAesCrypt.encryptFile (ֆայլի_անուն, [ֆայլի_անուն +..աես »), գաղտնաբառ, բուֆեր Չափ)
os.remove (ֆայլի_անուն)
այլ:
տպել ("Սխալ. սխալ մուտքագրում")
այլ:
տպել («Մուտքը մերժված է»)
Առաջին if հայտարարությունը որոշում է, թե արդյոք համընկնում են hashed գաղտնաբառերը: Եթե նրանք դա անում են, այնուհետև հարցնում են ՝ արդյոք ցանկանում եք ծածկագրել ֆայլերը կամ առբերել կոդավորված ֆայլերը: Կախված ձեր մուտքագրումից ՝ այն կամ ծածկագրելու կամ վերծանելու է տրամադրված ֆայլը: Երբ պահանջվում է տալ ֆայլի անունը, համոզվեք, որ նշեք ուղին, եթե ֆայլը նույն գրացուցակում չէ, ինչ python ծրագիրը: Programրագիրը ջնջում է ֆայլը իր նախկին վիճակում ՝ այն փոխարինելով կոդավորված.aes ֆայլով կամ վերծանելով այն փոխարինելով սկզբնական ֆայլով:
Հետագայում, հնարավոր է, սա թարմացնեմ ՝ Python OpenCV գրադարանի միջոցով դեմքի ճանաչում ներառելու համար, բայց առայժմ գաղտնաբառերը բավական կլինեն:
Քայլ 3: Ֆայլերի շահագործում
Կարգավորման ֆայլը գործարկելու համար հետևեք հետևյալ քայլերին.
1. Մուտքագրեք տերմինալը.
python3 գրացուցակ/setupname.py գաղտնաբառ (գրացուցակի, տեղադրման անվան և գաղտնաբառի փոխարինում իրենց համապատասխան արժեքներով)
2. Տերմինալը դուրս կբերի ձեր ֆայլի համարը: Պահպանեք սա:
Գաղտնագրման/վերծանման ծրագիրը գործարկելու համար հետևեք հետևյալ քայլերին.
1. Մուտքագրեք տերմինալը.
python3 գրացուցակ/filename.py գաղտնաբառի ֆայլ (գրացուցակի, ֆայլի անվան, գաղտնաբառի և ֆայլի համարի փոխարինում իրենց համապատասխան արժեքներով)
2. Այնուհետև տերմինալը կամ կընդունի կամ մերժի ձեր գաղտնաբառը: Մերժման դեպքում նորից փորձեք և համոզվեք, որ ճիշտ արժեքներ եք մուտքագրում: Երբ թույլտվություն տրվի, տերմինալը ձեզ կխնդրի ՝ ցանկանում եք ծածկագրել ֆայլը կամ ֆայլը առբերե՞լ: Ֆայլը ծածկագրելու համար մուտքագրեք e, և կոդավորված ֆայլը առբերելու համար մուտքագրեք r.
3. Այնուհետեւ ձեզանից կպահանջվի տրամադրել ֆայլի անունը: Հիշեք, որ տրամադրեք ֆայլի գրացուցակը, ինչպես նաև անունը, ինչպես նաև ֆայլի ընդլայնումը: Այնուամենայնիվ, եթե դուք գաղտնագրում եք ֆայլը, մի մուտքագրեք.aes- ի ընդլայնման մասը, քանի որ դրա կոդն է դրա պատճառը:
4. Այնուհետեւ ծրագիրը ծածկագրում կամ վերծանում է տրամադրված ֆայլը և ջնջում ֆայլը իր նախկին վիճակում (պահպանելով գաղտնագրված կամ գաղտնագրված ֆայլը):
Վոյա! Շնորհակալություն ուսանելի դարձնելու համար, ես գիտեմ, որ կոդի ձեռնարկներ կարդալը ամենազվարճալին չէ: Պիթոնի ֆայլերը կցված են այս քայլին, ձեզանից նրանց համար, ովքեր ցանկանում են դրան հարված հասցնել: Եվս մեկ անգամ, շնորհակալություն ընթերցման համար, և մաղթում եմ ձեզ հաջողություն ձեր հետագա կոդավորման ձեռնարկներում:
Խորհուրդ ենք տալիս:
Ինչպես տեղադրել Raspbian OS- ն Raspberry Pi- ում ՝ օգտագործելով NOOBS ծրագրակազմ և սմարթֆոն: 6 քայլ
Ինչպես տեղադրել Raspbian OS- ն Raspberry Pi- ում ՝ օգտագործելով NOOBS ծրագրակազմ և սմարթֆոն: Բարև բոլորին: Այսօր այս ձեռնարկում ես ձեզ ցույց եմ տալիս, թե ինչպես հեշտությամբ տեղադրել Raspbian OS- ը Raspberry Pi- ում ՝ օգտագործելով NOOBS ծրագրակազմ և սմարթֆոն
Arduino գրադարան MP3 վերծանման համար. 4 քայլ
Arduino գրադարան MP3- ի վերծանման համար. Արագ միկրոկոնտրոլերների տարածվածության պատճառով, ինչպիսիք են ESP32- ը և ARM M սերիան, MP3- ի վերծանումն այլևս չի պահանջվում կատարել հատուկ սարքավորումներով: Այժմ վերծանումը կարող է կատարվել ծրագրային ապահովման մեջ: Գոյություն ունի հիանալի գրադարան
Ինչպես ներբեռնել անվճար ծրագրակազմ ՝ որպես ISU ուսանող (Microsoft, Adobe և անվտանգության ծրագրակազմ. 24 քայլ
Ինչպես ներբեռնել անվճար ծրագրակազմ որպես ISU ուսանող (Microsoft, Adobe և անվտանգության ծրագրեր. Adobe- ի համար. Գնացեք քայլ 1)
PLC անվտանգության համար անլար անվտանգության կոճակ. 6 քայլ (նկարներով)
PLC- ի անվտանգության համար անլար անվտանգության կոճակ. Այս նախագիծը IoT և (ի վերջո) ռոբոտաշինության օգտագործման հայեցակարգի իմ ապացույցն է `վտանգավոր արտադրական օբյեկտների անվտանգության լրացուցիչ շերտ ստեղծելու համար: Այս կոճակը կարող է օգտագործվել բազմաթիվ գործընթացներ սկսելու կամ դադարեցնելու համար, ներառյալ ազդանշանի վերահսկումը
Կանանց անվտանգության մեկ հպման անվտանգության համակարգ `3 քայլ
Կանանց անվտանգության մեկ հպման անվտանգության համակարգ. Մեկ հպումով ազդանշան Կանանց անվտանգության համակարգ, որն օգտագործում է 8051 միկրո վերահսկիչ: Այսօրվա աշխարհում կանանց անվտանգությունը ամենակարևոր խնդիրն է հենց երկրում: Այսօր կանայք ենթարկվում են անհանգստության և անհանգստության և երբեմն, երբ անհրաժեշտ է շտապ օգնություն: Պարտադիր վայր չկա