ionCube Logo
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 


 
Post new topic   Reply to topic    ionCube Forum Index -> ionCube PHP Encoder

General questions on encoder

Author Message
MikeR



Joined: 23 Aug 2005
Posts: 4

PostPosted: Tue Aug 23, 2005 7:16 am    Post subject: General questions on encoder Reply with quote

I need to buy a source code encruption product in the next couple of days and was wondering if someone could summarize the differences between a couple of the products out there.

Could someone give me a general idea of how the Ioncube encoder differs from the Source Guardian encoder? I'm also curious as to what needs to be done for a script installation with the loader files for the Ioncube encoder.

After looking at both sites and checking out the products, they both seem very similar in most respects. They both offer similar locking features and use a loader file. Is the code that's output different in some way? Could someone please explain and/or summarize the basic differences between Ioncube and Source Guardian? What advantage(s) do I get with the Ioncube encoder?

Let me mention that money isn't an issue, I'm more than willing to pay extra for a higher level of security for my script. (I have looked at the Zend encoder but their pricing is a bit over my threshold of pain.)
Back to top
View user's profile Send private message
liaison
ionCube Support


Joined: 16 Dec 2004
Posts: 2788

PostPosted: Tue Aug 23, 2005 11:39 am    Post subject: Reply with quote

Hi

At the basic level, products from our main competitor (Zend), ourselves, and SG are similar. All use compiled code encoding, giving good security and acceptable performance, particularly when the Loader is installed into the php.ini file. SG and ourselves have a significant advantage over Zend by supporting dynamic install of Loaders on many systems, as additional modules such as Zend Optimiser tend not to be installed onto servers. In other words, on average, there are fewer times when shared hosting customers need to ask their host to install components for them when installing SG or ionCube scripts than Zend ones.

However, once you look beyond the basic features, this is where differences emerge. With our products we concentrate on adding value, and from the outset 3 years ago, had a vision that goes far beyond offering mere encoding features that are found elsewhere. Most things become aparant as soon as you start to work with the evaluations, but here are some things to consider. You'll also find views from customers in our forum, such as in the threads below.

http://forum.ioncube.com/viewtopic.php?t=121
http://forum.ioncube.com/viewtopic.php?t=134
http://forum.ioncube.com/viewtopic.php?t=136

Firstly, you may also notice that whilst SG Loaders are about 40 to 50K in size, Zend Optimiser and the ionCube Loaders are closer to 200 or 300K in size. This, of course, isn't that they're written less efficiently than the SG ones, nor that the SG ones are bad, but is because the Loaders are more sophisticated, having execution engines built into the Loaders for increased security, and other features such as a powerful Loader API are packed in. This doesn't make the SG Loaders bad, but other products go further.

In terms of features, and particularly if you purchase the upgraded Special Edition GUI, the ionCube product has many features that take it to a level far beyond other products. As one of our customers said for us, "Version 6 leaves the competition in the dust!" Smile

Not all features are going to be useful to everybody, but some of the ones (some in the SE GUI) that mark a distinction and that can increase productivity are:

* Built in FTP and archiving support. An encoded folder is probably not what you want as your final target. Let the Encoder handle archiving (e.g. tar.gz, zip) and FTP to a remote server if you need it.

* Integration with IPF, our installer creator system. This is a big leap beyond giving a ZIP file to a customer. With just one click in the Encoder, you can go straight from your source files to a self contained windows executable that can deploy your encoded application to a target server anywhere in the world. With most users running windows clients, distributing your product as a windows executable provides the easiest and most professional way for your customer to install your application onto their remote servers. Purchased together, IPF and the Encoder also qualifies for a special discount!

* Dynamic fields and environment variables. This is an innovative and unique concept that allows you to customise your Encoder GUI for easy to use repeat encoding or license generation. When setting up your project, you can put a ? in many fields to indicate that the value is unknown until actual encoding time, or when generating a license file for your products. Adding a ? into fields creates a new part of the main GUI with fields that prompt for input. You can also use other notations to change the prompts and ordering of fields in the dynamically created GUI if you need to.

Environment variables let you customise field values based on other settings. For example, you may want to prompt for order number and email address when encoding your project, and to have that information recorded at the start of each encoded file, and to have an output zip file created where the order number is part of the file name. This is incredibly powerful, but also extremely easy to do. You would just create environment variables for order number and email address. Use ? for the values as they're dynamic, and set the fields such as target archive file to be based on the environment variable. e.g.

C:\products\my-project-{order number}.zip

* AutoEncoder. For many users, having setup their project, they want to encode or generate licenses often. There's no need for the main GUI, they just want to click, encode, and get on with their next piece of work. With that in mind, the Encoder has integration with Windows Explorer, and you can right click on a project file to trigger encoding. This displays a different, much simpler GUI, that simply lets you encode or generate licenses and quit. Of course, any dynamic fields are there too.

* Dynamic icons. Once you get beyond encoding test projects and onto the real wold of developing, encoding and testing possibly multiple projects, managing and keeping on top of things can become more complex. The integration with Explorer gives dynamic icons that show at a glance whether a file is encoded or not by displaying a different icon. This can make it easier to verify that you've encoded everything that you meant to, and that any files that shouldn't be encoded are not.

* License generation. Version 6 introduces our license file system. This powerful system offers unrivalled flexibility for generating license files for your products. We're also currently bundling both the Windows and Linux license generator with each version, so you can use the Windows Encoder locally to protect your code, and install the Linux license generator on your site (most users have Linux web servers) to programatically generate license files. The Loaders have a powerful API, and an API function inside the Loader can generate license requests. This lets you easily code your application to have a license request feature. The license generator can decode license requests, and lets you easily generate a license from the supplied file. If you use the Windows GUI, then drag drop support makes it quick and easy to take a license request file and produce a license file in a matter of seconds.

These are some of my favourite features, but there's even more to discover. If you haven't yet, the best thing is to download an evaluation. There is a comprehensive user guide, and we're more than happy to assist with any questions on specific features.

Lastly, but not least, we I should mention support. I have no information about other companies to compare, but we endeavour to offer the best possible support for our customers, and based on feedback, for the most part are highly successful with that. We offer the forum, and for specific support a ticket system. Unlike most companies, we also provide telephone contact numbers to our UK headquarters, for our regional offices such as in Japan and Poland, and a toll free number 1-866-IONCUBE in the US. Support is also usually available at weekends. At our expense, we also currently provide free support to the customers of our customers (i.e. yur customers) if they have any questions about getting setup with the Loaders.

I hope that this is helpful, and please feel free to contact sales or support if you need help once evaluating.
_________________
Community Admin
Back to top
View user's profile Send private message
MikeR



Joined: 23 Aug 2005
Posts: 4

PostPosted: Tue Aug 23, 2005 4:08 pm    Post subject: Reply with quote

Thank you; this is exactly the kind of information I was looking for.

I see mentions of a speed increase when using the Ioncube product; is this in reference to the loading time, the execution time, or both? In other words does it make the script load more rapidly, run faster, or both?
Back to top
View user's profile Send private message
liaison
ionCube Support


Joined: 16 Dec 2004
Posts: 2788

PostPosted: Tue Aug 23, 2005 5:10 pm    Post subject: Reply with quote

Potentially a bit of both as the Encoder optimises the compiled code before encoding. Most gains though come the elimination of the parse and compile steps due to precompilation prior to encoding. As people say, your mileage may vary, but with the Loader in the php.ini file, we've always measured speed increases here when benchmarking, and incidentally, typically a much better performance than Zend encoded scripts. When the Loader is installed dynamically there is an unavoidable performance hit due to the calls to dlopen() and dlcose() in PHP triggering the linking and unlinking of the shared library on each request. That applies also to SG. Performance is still respectable though, and installing in the php.ini file is always technically an available option, although the dynamic install can be more convenient.
_________________
Community Admin
Back to top
View user's profile Send private message
MikeR



Joined: 23 Aug 2005
Posts: 4

PostPosted: Wed Aug 24, 2005 3:16 pm    Post subject: Reply with quote

Last question (I think):

I can encode once and then generate license keys, correct? If I do that, is there any way to take a key sent in by an client and interrogate it to find out what options it was given, such as the domain or expiration date?
Back to top
View user's profile Send private message
liaison
ionCube Support


Joined: 16 Dec 2004
Posts: 2788

PostPosted: Wed Aug 24, 2005 4:46 pm    Post subject: Reply with quote

Quote:
is there any way to take a key sent in by an client and interrogate it to find out what options it was given, such as the domain or expiration date


Yes. Both the Windows GUI and licensing command line tool support options for decoding both a license request sent it, and also a license that had previously been issued. With the GUI, after generating a license it is also decoded and displayed to give a chance for visual validation that the license generated does have the settings that are required.

Another important feature worth mentioning is that licenses cannot be generated by other Encoder users and be made to work with your applications. Even if they knew the product license passphrase that you set when setting up your project, an extra level of protection prevents licenses from working unless they were generated by the version of the license generator that was issued to you. The product passphrase itself is useful as this allows you to generate licenses that will only work with your files that have the same passphrase. If you have multiple products, you might exploit this feature to prevent a license file generated for one product being used with another product that a user does not have a license for.
_________________
Community Admin
Back to top
View user's profile Send private message
MikeR



Joined: 23 Aug 2005
Posts: 4

PostPosted: Wed Aug 24, 2005 6:02 pm    Post subject: Reply with quote

Quote:
Yes. Both the Windows GUI and licensing command line tool support options for decoding both a license request sent it, and also a license that had previously been issued. With the GUI, after generating a license it is also decoded and displayed to give a chance for visual validation that the license generated does have the settings that are required.


Outstanding. Source Guardian does not offer this feature, and I think that this along with the other features has helped me make my decision to get Ioncube instead of Source Guardian.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    ionCube Forum Index -> ionCube PHP Encoder All times are GMT + 1 Hour
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum