Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 1423|Odgovoriti: 0

[Angular] Enostavno šifriranje z zamegljevanjem kotne kode

[Kopiraj povezavo]
Objavljeno 23. 12. 2024 ob 11:06:14 | | |
Če ste kdaj morali napisati dejanski projekt, obstajajo varnostne skrbi — ali pa bi morale biti. Z napredkom tehnologije lahko v kratkem času napišemo osupljive, zmogljive in zmogljive sisteme, a to pomeni tudi, da postajajo zlonamerni ljudje in tehnologije močnejši in težje premagljivi. Zato je danes bistveno zaščititi pred vsemi pogostimi ranljivostmi pri razvoju sistemov.

Angular skrbi za veliko varnosti že takoj: ima svoj sistem spremenljive zaščite in funkcije sanitizacije, ki preprečujejo zlonamerno uporabo vaše aplikacije. Druga funkcija je stiskanje kode.

Minimizacija in zmeda

Stiskanje kode je tehnika, ki zmanjša velikost izvorne kode z odstranitvijo nepotrebnih znakov, kot so presledki in komentarji, s čimer izboljša zmogljivost nalaganja izvorne kode. Ta postopek je pogost v spletnem razvoju za JavaScript, CSS in HTML datoteke, poleg tega pa nekako doda plast varnosti z zamegljevanjem kode. Stisnjena koda je izjemno težko berljiva, zato jo obravnavajo kot nekakšno zamegljenost. Vendar pa lahko orodje dekompresira kodo, da postane berljiva, nato pa jo je mogoče obratno inženirstvovati. Tu pride do zmede.

Poleg kompresije je obfuskacija kode tehnika, ki otežuje razumevanje in povratno inženirstvo izvorne kode. Pogosto se uporablja za zaščito intelektualne lastnine, preprečevanje poseganja in odvračanje od obratnega inženiringa, kar napadalcem otežuje razumevanje logike kode in prepoznavanje morebitnih ranljivosti. Pretvarja berljivo kodo v bolj zapletene in redke različice, ne da bi spremenil njeno funkcionalnost. Orodja za zamegljevanje kode lahko prav tako dodajo mrtvo kodo, da zavajajo napadalce, kar otežuje razumevanje programske kode.

No, zamenjajmo našo aplikacijo Angular, če se vam zdi uporabna.

Webpack obfuscator

Angular med pakiranjem uporablja Webpack in ima svoje privzete nastavitve za pakiranje modulov, ki jih razvijate. To bomo izkoristili in prilagodili, kako Webpack pakira Angular aplikacije. Najprej namestite naslednje pakete:


javascript-obfuscator: Zmogljiv brezplačen JavaScript obfuscator z različnimi funkcijami za zaščito vaše izvorne kode.

medtem ko ga webpack-obfuscator uporablja kot vtičnik za zagotavljanje funkcionalnosti Webpacku. JavaScript obfuscator kodo najdete tukaj, vtičnik Webpack obfuscator pa tukaj.Prijava do hiperpovezave je vidna.

Nato ustvarite custom-webpack.config.js datoteko s prilagojeno konfiguracijo, ki jo želimo uporabiti med postopkom združevanja. Tukaj je preprost primer:


Lahko ponudite veliko različnih konfiguracijskih možnosti za vtičnike, webpack-obfuscator za natančno nastavitev zmedenega izhoda. To je najpreprostejši način za dodajanje debugProtection v svojo kodo, kar otežuje uporabo konzole za spremljanje spremenljivk in funkcij vaše aplikacije.

Opomba: Drugi v WebpackObfuscatorParametri polja so datoteke, ki izključujejo zamegljenost

Do zdaj smo nastavili konfiguracijo za Webpack. Zdaj ga moramo uporabiti. Potrebujemo tudi drugo odvisnost:


To nam bo pomagalo integrirati naš prilagojen graditelj spletnih paketov z Angularjem, da bomo še vedno lahko gradili strukture z uporabo Angularja. Ko je paket nameščen, moramo le angular.json spremeniti datoteko. Poiščite atribut build in dodajte naslednje:


Z zamenjavo builderfrom z @angular-devkit/build-angular:browser z @angular-builders/custom-webpack:browser lahko še vedno gradimo za brskalnik, a lahko zdaj vbrizgamo svojo prilagojeno konfiguracijo spletnega paketa. Lastnost po meriWebpackConfig nastavi referenco na datoteko, da jo lahko uporablja Angular.

Če je vse pravilno nastavljeno, bi morali vaši ukazi za gradnjo delovati brez težav, rezultat pa bo zmedena Angular aplikacija!

Pomanjkljivost

Vendar pa upoštevajte, da ima ta metoda slabosti glede velikosti embalaže. Zamegljevanje kode otežuje inženiring nazaj kode, vendar način, kako deklarira spremenljivke, porabi več znakov, kar povzroči povečanje velikosti paketa – skoraj v nasprotni smeri kot minimizacija kode.

To je to. Poskrbite, da ga uporabljate namensko in se naučite, kako odpraviti pomanjkljivosti te tehnologije!

Izvirno:Prijava do hiperpovezave je vidna.
Referenčni:Prijava do hiperpovezave je vidna.




Prejšnji:Pokličite Alibaba Cloud OpenAPI API, da pridobite uporabo strežnika
Naslednji:.NET/C# je optimiziran z zmogljivostjo StackExchange.Redis
Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com