Goed, we gaan wegstrepen; wat voor type query is het?quote:
Dit is wat ik ook doe, met als bijkomstige dienst dat ik ook verzegelde servers verhuurdequote:Op woensdag 23 mei 2007 23:49 schreef Tuvai.net het volgende:
Of een applicatie maken die op JOUW server draait waar mensen inloggen. Dat is de strategie van het bedrijf waar ik nu voor werk. Die hebben in feite zelf de servers en de software, altijd binnen handbereik, en alle klanten kunnen er gebruik van maken zonder dat iemand de broncode in z'n handen krijgt.
Daar is weer serverside een compare voor nodig die je er simpelweg uit kan slopen als je een beetje scripting kennis hebt. Ik zat zelf ook die kant op te denken. Vanaf mijn eigen domein elke dag een license file pushen met daarin een hash alogaritme. Je kan dan voor elke installatie een andere hash verzinnen.... Maar wederom het probleem, je moet serverside die hash gaan vergelijken.quote:Op woensdag 23 mei 2007 23:49 schreef Tuvai.net het volgende:
Swets: Elk klant een soort van ID Key / Productcode meegeven en bij installatie door een soot van white list gaan die checkt of het wel een legale versie is die geïnstalleerd word?
Ja elke variant waarbij je controlle over de server hebt is perfect, maar.... not an option. Het is ook meer hypothetisch he. Ik neem ook aan dat ik niet de enige ben met dit 'probleem' en IEMAND zal toch wel eens een werkbare waterdichte oplossing bedacht hebben?quote:Of een applicatie maken die op JOUW server draait waar mensen inloggen. Dat is de strategie van het bedrijf waar ik nu voor werk. Die hebben in feite zelf de servers en de software, altijd binnen handbereik, en alle klanten kunnen er gebruik van maken zonder dat iemand de broncode in z'n handen krijgt.
Ehm, nee. De enige 'veiligheid' die tot nu toe geldt heet 'closed source' en dat noemen ze ook wel 'security through obscurity'quote:Op donderdag 24 mei 2007 08:17 schreef Swetsenegger het volgende:
[..]
Ik neem ook aan dat ik niet de enige ben met dit 'probleem' en IEMAND zal toch wel eens een werkbare waterdichte oplossing bedacht hebben?
Het is goed om even te zien hoe PHP nu eigenlijk werkt. Als je een PHP bestand uitvoert gaat het door de volgende stappen:quote:Op donderdag 24 mei 2007 08:49 schreef WyriHaximus het volgende:
Goed ik hoor de klok en heb geen idee waar de klepel precies is maar is ioncube encoder iets om naar te kijken? http://www.ioncube.com/sa_encoder.php
Mjah, dus veel verder dan ergens ver weg gestopt een hashcode vergelijken, en die file misschien obfuscaten kom ik niet.quote:Op donderdag 24 mei 2007 08:22 schreef JeRa het volgende:
[..]
Ehm, nee. De enige 'veiligheid' die tot nu toe geldt heet 'closed source' en dat noemen ze ook wel 'security through obscurity'dat ze voor spelletjes vage shit hebben bedacht als geforceerde foutjes op de CD of DVD en voor applicaties een licentieactivatie met hardwarekoppeling en 5MB aan omzeilende code wil niet zeggen dat het veilig is, en/of dat je het voor je PHP app kunt gebruiken
Dé veiligste manier is alsnog de hele boel intern draaien. Vrijwel elke manier om het te beveiligen in PHP is net zo veilig als de closed source oplossing, minus dat het open source is.Zolang je alle functionaliteit echter bij jouw kant neerlegt, heb je er ook volledige controle over.
Ik zat nog te denken aan remote activatie waarbij je per klant een ander essentiëel deel van de applicatie laat downloaden (zo essentiëel dat alleen de activatie nog werkt). Piracy zul je niet echt kunnen voorkomen, maar door slim watermarks (whitespace? eventueel in de output) achter te laten kun je er eventueel wel achterkomen wie het is geweest.quote:Op donderdag 24 mei 2007 09:00 schreef Swetsenegger het volgende:
[..]
Mjah, dus veel verder dan ergens ver weg gestopt een hashcode vergelijken, en die file misschien obfuscaten kom ik niet.
Ook nog een ideequote:Op donderdag 24 mei 2007 09:02 schreef JeRa het volgende:
[..]
Ik zat nog te denken aan remote activatie waarbij je per klant een ander essentiëel deel van de applicatie laat downloaden (zo essentiëel dat alleen de activatie nog werkt). Piracy zul je niet echt kunnen voorkomen, maar door slim watermarks (whitespace? eventueel in de output) achter te laten kun je er eventueel wel achterkomen wie het is geweest.
Als dat niet het geval is hoef je je nergens druk om te makenquote:Op donderdag 24 mei 2007 09:04 schreef Swetsenegger het volgende:
[..]
Goed, niet dat ik verwacht dat iemand mijn apps wil jatten
quote:Op donderdag 24 mei 2007 09:00 schreef JeRa het volgende:
[..]
Het is goed om even te zien hoe PHP nu eigenlijk werkt. Als je een PHP bestand uitvoert gaat het door de volgende stappen:
1) De PHP parser leest je script, controleert het op syntaxfouten e.d.
2) De PHP parser zet vervolgens je script om naar PHP opcodes (compileren, dit is net zoiets als een Java .class)
3) Vervolgens voert de PHP "virtual machine" de opcodes uit
Als je je bestanden codeert met zo'n encrypter, dan voert ie vantevoren stap 1 en 2 al uit. Eventueel combineert ie dit met licenties en encryption. In dat geval worden er deze stappen uitgevoerd:
1) De Encrypter leest je bestand in en controleert evt. licenties e.d.
2) De Encrypter decodeert je bestand naar PHP opcodes
3) Vervolgens voert de PHP "virtual machine" de opcodes uit
De oplettenden zullen al hebben gezien dat je in beide gevallen voor stap 3 dezelfde opcodes moet hebben voor hetzelfde scriptnu is het punt dat die opcodes echt niet heel moeilijk zijn, en dat als iemand wil hij je scripts kan decoderen en strippen van de 'veiligheidsfeatures'. En dat is onveilig aan alle (voor zover ik gezien heb) PHP encrypters.
Hoop het wel .. snuffelenquote:Op donderdag 24 mei 2007 09:58 schreef Tuvai.net het volgende:
Toch inderdaad wel jammer dat PHP het beschermen van broncode zo vermoeilijkt. Dat vind ik aan ASP.NET weer hartstikke handig, dat je een .DLL`etje hebt waar alleen je programma verder iets mee kan. Wellicht krijgt PHP ook nog iets dergelijks in de toekomst?
Van: http://www.phphacks.com/content/view/49/33/quote:Op donderdag 24 mei 2007 10:11 schreef WyriHaximus het volgende:
[..]
Hoop het wel .. snuffelen
* WyriHaximus gaat info over PHP6 zoeken
quote:* The register_globals, safe_mode and various quotes options will be removed.
* The ereg extension is removed, while the XMLReader, XMLWriter and Fileinfo extensions are added to the core, and by default are on.
* Another addition I find particularly exciting is that APC (Alternative PHP Cache) will be added to the core, though will be off by default. APC can provide serious performance benefits.
* All E_STRICT messages will be merged into E_ALL, another positive change that will encourage good programming practice.
* ASP style <% tags will no longer be supported.
* Addition of new 64-bit integers. The current integer type remains as is, 32 or 64-bit dependent on the platform.
* Use of foreach with multi-dimensional arrays, for example foreach($array as $k => list($a, $b)).
* A new switch in php.ini will allow you to disable Unicode semantics (by default they will be on).
* There will also be various string improvements related to Unicode.
* The microtime() function will return the full floating point number, rather than microseconds unix_timestamp, as at present, probably making the function more readily useful.
* The {} notation for string indexes will no longer be supported, while the [] version will get added to substr() and array_slice() functionality.
* FastCGI will always be enabled for the CGI SAPI, and will not allow it to be disabled.
* The ancient HTTP_*_VARS globals will no longer be supported.
* var will alias public. var was permitted with PHP4 classes, but in PHP 5 this raised a warning. In PHP 6 var will simply be an alias for public, so no warning is necessary.
* The ze1 compatibility mode, which tried to retain PHP 4 behavior but had some bugs, will be removed.
* Dynamic functions will no longer be permitted, to be called with static syntax.
Nog meer info hier maar niks over OPcode beveiliging: http://www.php.net/~derick/meeting-notes.htmlquote:Op donderdag 24 mei 2007 10:17 schreef WyriHaximus het volgende:
[..]
Van: http://www.phphacks.com/content/view/49/33/
[..]
Wil dat zeggen dat je per sé <?php ?> moet gaan gebruiken in plaats van <? ?>? Da's een niet zo prettige verandering voor mij, ben inmiddels al jaren gewend om <? ?> te gebruiken.quote:* ASP style <% tags will no longer be supported.
Nee je kunt <% en %> niet meer gebruiken ipv <?php en ?> en <? en ?>quote:Op donderdag 24 mei 2007 10:26 schreef Tuvai.net het volgende:
[..]
Wil dat zeggen dat je per sé <?php ?> moet gaan gebruiken in plaats van <? ?>? Da's een niet zo prettige verandering voor mij, ben inmiddels al jaren gewend om <? ?> te gebruiken.
1 2 3 4 5 6 7 | foreach ($wii as $waa){ echo $waa['wuu']; } ?> |
CTRL Zquote:Op donderdag 24 mei 2007 10:41 schreef Geqxon het volgende:
Of je vernaggeld heel je code qua variabele namen middels een "Replace all" in je teksteditor.
[ code verwijderd ]
quote:Op donderdag 24 mei 2007 10:41 schreef Geqxon het volgende:
Of je vernaggeld heel je code qua variabele namen middels een "Replace all" in je teksteditor.
[ code verwijderd ]
:Y)
1 2 3 4 5 6 7 | foreach ($waa as $waa){ echo "wie".$waa; } ?> |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |