4 начина заштите VBA (Visual Basic for Applications) кода

VBA код који пишете је срце и душа ваше табеле. Заштита VBA кода је нешто што треба урадити како бисте били сигурни да ваш код неће бити украден или коришћен без вашег знања. Овај пост ће покрити неке различите начине заштите вашег VBA кода како би само ВИ могли лако да му приступите.
Зашто би требало да вас занима заштита VBA кода?
VBA је макро језик који се може користити за креирање аутоматизованих задатака или радњи у програмима Excel, Word, PowerPoint. Постоји неколико разлога зашто би требало да заштитите свој VBA код:
- Да бисте заштитили свој VBA код од случајне измене. VBA код је моћан алат за кориснике Excel-а, али може бити и извор фрустрације за оне који га не користе. Ако не обезбедите VBA лозинком, други који користе вашу радну свеску могу приступити коду и правити измене у њему, а да не знају шта заправо раде. Не желите да отклањате грешке у VBA коду јер то може бити мучно – може потрајати сатима да се схвати зашто, а онда још више времена!
- Да бисте заштитили своју интелектуалну својину. VBA код може бити веома вредан неким компанијама. Ако неко други приступи вашој табели и копира функционалности које користите, онда би потенцијално могао да је представи као свој рад и прода је многим компанијама. Заштитите свој вредни изворни код безбедносним мерама. Не олакшавајте никоме крађу или копирање.
- Да бисте се заштитили од људи који користе ваш рад. Ако имате вредан део VBA кода који вам олакшава или чини ефикаснијим рад, онда би можда требало да га заштитите само за личну употребу.
Важно је напоменути да постоји неколико различитих начина заштите вашег VBA кода, али не штите сви ваш код на исти начин. На вама је и шта сматрате да је најбоље за ваше потребе.
#1 Заштита VBA кода лозинком у Excel-у помоћу VBAProject алата
Овај део објашњава како можете користити подешавања заштите VBA пројекта да бисте заштитили свој VBA код од знатижељних погледа и неовлашћених манипулација.
- Ниво безбедности: Слаб; Постоје алати као што су VBA алат за уклањање лозинки који се може користити за откључавање лозинке за неколико минута;
- Тежина: Лако;
- Цена: Бесплатно;
Корак 1. Изаберите „Visual Basic“ из менија „Developer“ у програму Excel.

Корак 2. Да бисте закључали свој VBA пројекат, кликните на „Алати“ у траци, а затим изаберите „VBAProject Properties“.

Након што кликнете на ову ставку менија, требало би да видите следећи дијалошки оквир:

Картица „Опште“ је подразумевано изабрана, али кликните на картицу „Заштита“.
Корак 3. Означите поље „Закључај пројекат за преглед“, а затим два пута унесите лозинку у оба поља и притисните „ОК“.

Корак 4. Сачувајте га и поново отворите Excel датотеку. Моћи ћете да видите да ли је VBA заштита лозинком правилно омогућена тако што ћете двапут кликнути на ваш VBA пројекат. Када заштитите свој VBA пројекат лозинком, то ће спречити било кога да га случајно измени.

#2 Користите VBA обфускацију да бисте заштитили свој макро код
VBA обфускација је вештина чињења вашег VBA кода нечитљивим, али и даље функционалним. Она мења ваше постојеће макрое са више нивоа обфускације што отежава разумевање основне логике. Напредни VBA обфускатори користе бројне напредне технике обфускације, што обрнуто праћење и опоравак чини знатно изазовнијим.
- Ниво безбедности: Средњи; Неко ће и даље моћи да одвоји време и потроши довољно ресурса да поврати код;
- Тежина: Средња; У зависности од нивоа;
- Цена: Бесплатни VBA обфускатор /Премијум;
Можете користити VBA обфускацију заједно са техником број 1, која је да прво закрпите, а затим обезбедите модул лозинком. Имајте на уму да је обфускација неповратна, зато направите резервну копију изворне датотеке пре него што наставите. Такође, запамтите да се не може гарантовати да ће се обфускирани код извршавати без грешака. Молимо вас да га темељно тестирате пре него што га објавите. Користите један део пројекта за обфускацију. Након што је први тест обфускације модула успешан, пређите на други.
#3 Конвертовање VBA кода у библиотеку динамичких веза (DLL)
Компилатори као што су Visual C++ и Visual Basic производе апликације које је тешко крековати. То је због чињенице да се код компајлира у извршне датотеке или датотеке динамичке библиотеке веза. Тако можемо компајлирати и VBA код у датотеку динамичке библиотеке веза, а затим га користити у Excel-у.
- Ниво безбедности: Висок;
- Тежина: Умерена;
- Цена: Бесплатно;
Овај метод заштите се топло препоручује, али није 100% загарантован. Да бисте сазнали како да компајлирате, погледајте упутства на VbaCompiler.com: 10 корака за компајлирање VBA кода у изворни Windows DLL .

#4 Конвертујте VBA у C или C++
Превођење макроа у C или C++ је теже за реверзни инжењеринг него VBA. Ако желите да заштитите свој код, ово је најбољи начин.
- Ниво безбедности: Највиши; Готово је немогуће добити код без права; Али опет, није 100% загарантовано;
- Тежина: Компликовано и дуготрајно; Пошто су VBA и C/C++ толико различити језици, теже је јер ћете морати да уложите много труда.
Закључак
Коришћење макроа је одличан начин за поједностављивање развоја напредних функција. Нажалост, ово излаже ваш код ризику од крађе или копирања од стране других. Чланак разматра методе које можете користити да бисте спречили друге кориснике да украду или мењају ваш VBA код. Имајте на уму да заштита VBA кода није непобедива, али пружа извесну заштиту од случајних нападача.



