[Plugin] Ultimate Script Protection Kit
#1

INTRODUCTION
This plugin provides a way to protect your .amx and even .pwn script with few simple lines. Basicly it works on a key-lock system. You need to set your PASSKEY and your hidden function name in the source code of the plugin and then compile it and use it. Editing of the passkey and the hidden functions name is super-easy and it dosen't require any pre-made knowleges.


HOW TO USE IT
1. Download the source code.
2. Open the source code with your C++ editor (I recommend Visual Studio 2010 Express which is FREE)
3. Edit marked lines to your personal choice. Everything you need to know about edithing those is commented in the code.
4. Compile it.
5. Add USPK.dll that you compiled in the "plugins" folder in your server(if you don't have one, make it).
6. Open you'r "server.cfg" and after "plugins <your plugin names>" add "USPK". If you don't have the line than just add "plugins USPK" in a new row.
7. Open you'r script and add a native as shown under:
pawn Код:
native CheckUSPK(string[]);
If You want to use your hidden function (to protect your .pwn) replace "CheckUSPK" with the function name you defined in the plugin source code.
8. Use it. (some examples given under)

EXAMPLE 1:
Under OnGameModeInit
pawn Код:
if(CheckUSPK("nokey") == 1)
{
     print("USPK KEY CORRECT");
}
else
{
     print("USPK KEY INCORRECT");
}
As you can see from this example CheckUSPK function(it is also true for your defined hidden function) returns 1 if the key is true, and 0 if it isn't.


DOWNLOADS:
EXAMPLE PLUGIN BUILD (this is just for test, if you want a secure script you need to compile it with your data) PASSKEY: nokey HIDDEN FUNCTION NAME: CreateDinamicObject (it is only 1 letter different from a function that most streamers use)
SOURCE CODE (download this and follow the inctructions if you want a secure script)


NOTES:
This is my first plugin so be direct and tell me if I have some mistakes or you have a suggestion, bug fix, an idea.[/size]
Reply
#2

Nice work, dude! Can I set my password to something really long, example:

Код:
Kad si sretan pljesni dlanom ti o dlan.
Kad si sretan pljesni dlanom ti o dlan.
Kad si sretan i kad ћeliљ s drugim djelit sreću svu
Kad si sretan pljesni dlanom ti o dlan.

Kad si sretan prstima pucketaj ti.
Kad si sretan prstima pucketaj ti.
Kad si sretan i kad ћeliљ s drugim djelit sreću svu
Kad si sretan prstima pucketaj ti.

Kad si sretan koljena potapљaj ti.
Kad si sretan koljena potapљaj ti.
Kad si sretan i kad ћeliљ s drugim djelit sreću svu
Kad si sretan koljena potapљaj ti .

Kad si sretan lupi nogama o pod.
Kad si sretan lupi nogama o pod.
Kad si sretan i kad ћeliљ s drugim djelit sreću svu
Kad si sretan lupi nogama o pod.

Kad si sretan ti ponovi ovo sve.
Kad si sretan ti ponovi ovo sve.
Kad si sretan i kad ћeliљ s drugim djelit sreću svu
Kad si sretan ti ponovi ovo sve.
Will it work? :lol
Reply
#3

nice!!

The message you have entered is too short. Please lengthen your message to at least 8 characters.
Reply
#4

Quote:
Originally Posted by Luka P.
Посмотреть сообщение
Nice work, dude! Can I set my password to something really long, example:

Код:
Kad si sretan pljesni dlanom ti o dlan.
Kad si sretan pljesni dlanom ti o dlan.
Kad si sretan i kad ћeliљ s drugim djelit sreću svu
Kad si sretan pljesni dlanom ti o dlan.

Kad si sretan prstima pucketaj ti.
Kad si sretan prstima pucketaj ti.
Kad si sretan i kad ћeliљ s drugim djelit sreću svu
Kad si sretan prstima pucketaj ti.

Kad si sretan koljena potapљaj ti.
Kad si sretan koljena potapљaj ti.
Kad si sretan i kad ћeliљ s drugim djelit sreću svu
Kad si sretan koljena potapљaj ti .

Kad si sretan lupi nogama o pod.
Kad si sretan lupi nogama o pod.
Kad si sretan i kad ћeliљ s drugim djelit sreću svu
Kad si sretan lupi nogama o pod.

Kad si sretan ti ponovi ovo sve.
Kad si sretan ti ponovi ovo sve.
Kad si sretan i kad ћeliљ s drugim djelit sreću svu
Kad si sretan ti ponovi ovo sve.
Will it work? :lol
Passkey limit is 200 charachters, but you can easily enlage it in the code.
Reply
#5

Let's assume I don't have a Visual Studio...
EDIT: Nevermind, I'm going to download VS or something.
Reply
#6

wtf, MSVCR100D.dll not found?.
Reply
#7

Will try it soon, but what does it basicly do, prevent samp-server.exe to be executed or something? unless you know the password?
Reply
#8

Nope.. you must have both the plugin and the script to be able to run the gamemode
Reply
#9

Quote:
Originally Posted by playbox12
Посмотреть сообщение
Will try it soon, but what does it basicly do, prevent samp-server.exe to be executed or something? unless you know the password?
Thats the beauty of it. You can do whatever you want with it script-side.

Quote:
Originally Posted by AndriusZ*
Посмотреть сообщение
wtf, MSVCR100D.dll not found?.
Found something just by ******ing it. http://digital-prodigy.com/forum/showthread.php?t=3895
Reply
#10

Brilliant. I'm going to test it out.
Reply
#11

I just got a great idea. Its kinda similar to encrypting the string. But I need some time to work it out in my head and actualy make it.

After some calculation i realised that with this system the stealer would have 1:700 chance of making an indentical plugin even if he has the line with the text.
Reply
#12

EDIT: Too many bugs! Sorry..........
Reply
#13

I don't see why not. But I have changed the concept a lot so its only 256 combinations now. I had some holes in the last concept. Basicly user will split the string in 16 pieces. And he will define the combination in the plugin.

EXAMPLE:
CheckUSPK("1","2","3","4","5","6","7","8","9","10" ,"11","12","13","14","15","16");
And now in the plugin the user will make a combination:
fistp = params[7];
secondp = params[2];
.
.
.

And this will make the script foul-proof on the password discovery side. I just need a concept for the script itself, concretly the possebility that stealer removes the line from the script.
Reply
#14

Oh, fuck. That didn't come to my mind. Should i even try to fix this? Becouse whatever I do with this, it will still be manipulatible unless i don't provide the source code and then it dosent have a use.

Sorry, i didn't realise the point in the code up there.
Reply
#15

Then this is pretty much an dead end. I might as well start working on something that donesn't include security directly. I could encrypt the AMX but what's the point if they can steal the plugin the same way they did with the AMX.

But on the good side, at least i learned the basics of making SA:MP plugins so i can go on with the learning.
Reply
#16

Wow this is Amazing!
Reply
#17

works for those untrustful server hosts.
Reply
#18

Hey there, I'm a little confused on what this actually does. Is this some kind of DeAMX like by ZeZombia?
Reply
#19

Quote:
Originally Posted by The Toni
Посмотреть сообщение
Hey there, I'm a little confused on what this actually does. Is this some kind of DeAMX like by ZeZombia?
Wondering the same thing, could you explain a li'l bit more? I'm too interested

This forum requires that you wait 120 seconds between posts. Please try again in 23 seconds.

Interest needs to wait 23 seconds, more important things to do first D:
Reply
#20

but how 2008 complier?
Reply


Forum Jump:


Users browsing this thread: 17 Guest(s)