Frequently Asked Questions

Yes, and the Encryption tool itself is encrypted. Which means, no one gets to see how it works. 

You'll be licensed to use it on your own private hosts for a specific period of time.  And after that period of time expires, the Encryption tool will no longer work.  However, the scripts that were encrypted with the Encryption tool during the period when the Encryption tool license was valid, will continue to work for as long as they were configured to be.

To renew your license for the Encryption tool so you can continue to protect additional scripts, visit the home page or click any of the green boxed options to the right of this page for a (30-Day) License.

All of our Encryption tools (Shell, Perl, Ruby, Python, Nodejs, Php and Rcode) allows you to:

	1. Encrypt and Obfuscate as many scripts as you want from the command line
		- All you really have to do is run one simple command, with arguments passed to it

	2. Avoid having to copy and paste sensitive scripts to an external website
		- Sensitive scripts can be:
			- Any script with usernames and passwords stored in it
			- Any script containing proprietary information you don't want to make public

	3. Set expiration dates on all scripts encrypted
		- Expiration dates prevent the usage of your scripts after a predetermined time
			- You can set your protected scripts to auto self destruct upon expiration

	4. Encrypt the same file or script each time it is updated

	5. Be able to use your encrypted scripts on most UNIX OSes
		- This portability ensures you never have to require your users to compile
		  a script for any specific OS
			- Works on Linux, AIX and Macs

	6. Get email notifications whenever attempts are made to modify or make copies of your script

	7. Encrypt and obfuscate not just shell scripts but ruby, perl, python, command line nodejs
           and php scripts as well

	8. Encrypt multiple scripts and files with a simple one liner and a list file
		- Avoid time consuming or complicated procedural steps!
		- Encrypt multiple scripts at once, using our newly developed menu driven interface

	9. Free Support: Reach out to us at [ Support@EnScryption.com ] if you require technical assistance

       10. Restrict the usage of your scripts to specific users
		- Ensure even root can't run a script owned by you!
		- Give only a specific list of users access to use your scripts
		- Get alert notifications whenever an unauthorized user attempts to use your scripts
			-We will generate the notifications on all attempted nefarious activities

       11. Limit the usage of your scripts to specific hosts / servers
		- Ensure even if your script gets in the hands of the wrong people,
		  they wont be able to run it if they're not on the right host.
Credit Card (Visa/Mastercard/Maestro-Laser/Amex)
Paypal (Discover cards are accepted by Paypal)
EUR/USD Cheque/Check
Wire/Bank Transfer
Question:

I have a script that I want to give to a friend. I don't want them to have access to the code, just the functionality. If I buy the 30 day license does that mean the script I send him will stop working after 30 days?

Answer:

No. The 30 day license allows you to encrypt as many scripts as you want for a period of 30 days. During those 30 days, you can set the expiration date of your scripts to be as long or short as you need them to be.

After the 30 days have expired, the scripts you encrypted during the time when the license was valid, will continue to work for as long as you configured them to be.  Only thing is, you will not be able to encrypt any additional scripts after the 30 day license has expired.

For example; you can encrypt a script today and set the expiration date of the script to be 400 days from now.  However, 31 days from now, if you try to encrypt another script or the same script again, you wont be able to.  The script you encrypted previously that was set to expire 400 days from now, will continue to work until those 400 days have passed.
Upon payment verification, we will immediately generate the latest version of the Encryption tool for you and will send you the download link.  

Unless requested otherwise, the download link will be sent to the email address of the account that payment was made with.
No. You do not need to encrypt the scripts on the server or host they will run on. That's the beauty of our Encryption method.  There's no need to encrypt your scripts for each OS.

You can encrypt a script on any Mac, Ubuntu or Red Hat system and then be able to run the encrypted script on other Unix systems. So far, scripts that were encrypted by us have been tested and verified to work on Ubuntu, Red Hat, Cent OS, AIX and Embedded (watered-down) Unix systems...i.e. busybox. 

If you need to run an encrypted script on any specific flavor of Unix, no matter how unique it is, we will work with you to get it working for that flavor.
1. wget(or curl -O) http://www.EnScryption.com/the-zip-file-of-your-encrypted-script
2. unzip the-zip-file-of-your-encrypted-script
3. cd EnScryption.com
4. ./check_disks.sh (replace this with your script name)
	- the first run of your encrypted script will set it up for you
5. ./check_disks.sh
	- after the previous first run of your script, you can now begin using it as normal

Contact Us if you encounter any issues while attempting to run your encrypted script.
Yes.

What is a menu driven / interactive script?

An example of such a script would be any script that waits for a response:

	What is your name?
	Do you wish to proceed (y/n)?  

Notice how the above prompts are waiting on the user for a response?

Here's how your interactive script must look if it is to be encrypted:

	Example A-
		helloworld.sh:

			#!/bin/sh 
			echo "Hello World"  
			echo -e "The \033[0;31merror\033[0m should be in red..." > /dev/tty
			read x < /dev/tty
			echo $x  
			echo "Now tell me" > /dev/tty
			read y < /dev/tty
			echo $x and $y
 
	Example B-
		random.sh:

			#!/bin/bash 
			echo -n "How many random numbers do you want to generate? " > /dev/tty
			read max < /dev/tty
			for (( start = 1; start <= $max; start++ )) 
			do 
 				echo -e $RANDOM 
			done

Basically, you have to direct all questions being asked in your script to > /dev/tty.
Then, when you go to read the response provided by the user, you read from the same tty as before,
with the < /dev/tty.

Contact us at [ Support@EnScryption.com ] if you need additional help.
There are two reasons an encrypted script wouldn't work:

1.  If the script is an interactive script and wasn't named properly or edited correctly.  
	- To resolve this, please refer to Help A.(above) and follow the instructions laid out in it.

2.  A deliberate attempt was made to tamper with the encrypted script in order to figure out
    how it works. 

	We are quite aware that our encryption methodology is unique and there is absolutely
	nothing like it anywhere else on the internet.  For this reason, there will be those who
	intentionally try to break it apart in order to replicate it or for some other nefarious reason.

	To successfully combat this, we have included sensitivity checks in all scripts encrypted by us. 
	What that means is, whenever our encryption mechanism detects that a user is attempting to
        do things with an encrypted script that he shouldn't be doing, we will automatically cause
        the encrypted script to self destruct.

	We take the security of every script encrypted with us very seriously and we do not tolerate
	any hack attempts to figure out how it works.

	If your script self-destructs, the only way to get it working again is to re-unzip the zip package
	and re-install it.

Contact us at [ Support@EnScryption.com ] if you need additional help.  In your email, please make sure to provide a copy and paste of all the steps (and their results) that you performed.
Yes. If your script was designed to work on embedded or android systems, all you have to do is specify "embedded" or "android" when encrypting it from the command line.  Review the following examples for references to the different ways scripts can be encrypted for use on specific systems.

Example (scripts to be used on regular Unix systems):

  root@virtual# ./generate.sh lcs autogenerate 2d customer support@kinglazy.com /home/jbowman/gather.sh

Example (scripts to be used only on Android Unix systems):

  root@virtual# ./generate.sh lcs android 2d customer support@kinglazy.com /home/jbowman/toperf.sh

Example (scripts to be used only on other systems):

  root@virtual# ./generate.sh lcs embedded 2d customer support@kinglazy.com /home/jbowman/gather.sh

Then copy/scp the bolded encrypted zip file to the system or device you intend to use it on.
Individual Option: This option allows you to encrypt one script at a time. You can encrypt as many scripts as you want, however, they'll need to be encrypted one by one, after each other.

Enterprise Option: This option allows for the encryption of large quantities of scripts. For instance, if you wish to encrypt multiple scripts at a time without having to manually encrypt them all from the command line, this is the option for you.  Additionally, with the enterprise option, you can choose to put all your protected scripts into one zip or tar file, thereby making it quite convenient to deliver or distribute to clients. 

When a client gets the zip or tar file, all that he/she will need to do is simply run the automated script (which is included in all packaged zip/tar files), specify the path to install the scripts (as a parameter) and that's it.  The automation script will take over from that point and will proceed to set everything in place, all in under 30 seconds.
Detailed instructions on how to encrypt a script is included in the encryption package.

If you need to view the encryption process before making a payment, please refer to the following:

## ./generate.sh lcs autogenerate 375d customer Support@EnScryption.com /home/jserver/MIGRATE/postfix.sh

SUCCESS: Code has been successfully generated!
  adding: KingLazySHIELD/README.lcs (deflated 63%)
  adding: KingLazySHIELD/building.sec (deflated 24%)
  adding: KingLazySHIELD/enscryption.type.sh (stored 0%)
  adding: KingLazySHIELD/install.sh (deflated 87%)
  adding: KingLazySHIELD/lgrguaransct.ee.eez (deflated 20%)
  adding: KingLazySHIELD/license.lcs (stored 0%)
  adding: KingLazySHIELD/license.logrobot.postfix.sh (stored 0%)
  adding: KingLazySHIELD/postfix.sh (deflated 16%)
  adding: KingLazySHIELD/stabling.sec (deflated 24%)
SUCCESS: Updated [ /var/tmp/EnScryption.com/SHIELD/_home_jserver_MIGRATE_postfix.sh_kinglazy_dir/customers/paid/Support@KingLazy.com_38700212630710300808102016/KingLazySHIELD/postfix.shellscript.verify_Support@KingLazy.com_38700212630710300808102016.zip ]. Expiration time = [ 1510240090 ( Thu Nov  9 07:08:10 PST 2017 ) ]. Customer Name = [ Support@KingLazy.com ]. Customer ID = [ 38700212630710300808102016 ].

To begin using your encrypted script, simply unzip the generated zip file [ postfix.shellscript.verify_Support@KingLazy.com_38700212630710300808102016.zip ], change directory to the EnScryption.com directory, then run the script: './<your-script>'.

The first run of your encrypted script after unzipping it will set it up on the system you're running it on.

During encryption, here are the parameters to change for your specific requirements:

375d	=	This is where you specify how long the script to be encrypted should be valid for.
		To specify minutes, hours, weeks or months, replace the 'd'
		i.e. 
			30m  = 30 minutes
			3h   = 3  hours
			3d   = 3  days
			3w   = 3  weeks
			3mo  = 3  months


Support@EnScryption.com			=	Replace this email address with yours

/home/jserver/MIGRATE/postfix.sh	=	Specify the absolute path of the script you wish to encrypt

Yes it is safe to install an encrypted script and no, it will not affect anything on your system.  Our installation procedures DO NOT involve tampering with any configurations, libraries or modules that may already exist on your system.  

Our installation mechanism is simple and what it basically does is, through the use of an automated script, it puts the configuration files of your encrypted script in the appropriate place, which would be /var/tmp/EnScryption.com/SHIELDX-<your-scriptname.sh>.

To 'Uninstall' the encrypted script and its configurations from your host, see below -

Example 1: 

	To remove an encrypted script called 'check_disk.sh' from your host, you would run:

		rm -rf /var/tmp/EnScryption.com/SHIELDX-check_disk.sh
		rm <path-to-the-symlink-that-points-to-the-script-directory>

Example 2:

	If you have multiple encrypted scripts under '/var/tmp/EnScryption.com', you could run:

		rm -rf /var/tmp/EnScryption.com/SHIELDX*

Yes you can. Under the Enterprise option, we have an automated, menu driven tool that allows users to complete the encryption and obfuscation of several scripts within seconds.

Click the link below to view a screenshot of this tool:

Menu Driven Shell Script Encryption Automation

Yes, this tool comes with all of our encryption packages (shell, perl, python, php, ruby, rcode, nodejs).
Yes.  After encryption, you can expect your script to behave exactly as it was before it was encrypted. Only difference will be, after encryption, no one will be able to view the actual code.

In other words, if your script was accepting arguments before you encrypted it, you can expect it to continue to accept arguments after encryption.  Also, all exit codes remain the same.  Meaning, whichever exit codes your script was originally programmed to exit in, will remain in tact.  No surprises.

Maybe. Our encryption method has been made intentionally convoluted so no one person, or team of people can understand how it works.  For this reason, it will be very difficult, if not impossible, for us to decrypt an already encrypted script for you. It would be a very time consuming process.

However, if your request is of an urgent nature, we can attempt to perform a decryption process for you.  We promise no guarantee that it will be successful. If we're not able to decrypt your scripts for you, we will refund you back the money paid for the decryption attempt.

Pricing Options (Decryptions Only):

If requesting decryption for a total of no more than 5 scripts, we charge a total flat fee of $49.95. 
If requesting for multiple scripts (over 5), the price is $9.95 per script.

Feel free to contact us at [ Support@EnScryption.com ] if you need additional clarifications.
Currently, our encryption algorithm can be used to protect shell, perl, ruby, python, rcode, command line nodejs and php scripts. Those were the most commonly requested languages for encryption from our customers.

If the script you wish to encrypt and obfuscate is written in a different unlisted language, no worries.  Feel free to contact us at [ Support@EnScryption.com ] and provide the following information:

1. The name of the interpreted language your script is written in
2. A sample code written in this interpreted language
3. How you normally go about running the script from the command line
4. The Unix OS(es) you intend to run the protected/encrypted scripts on

Please note, as of right now, our encryption method is designed and built only for Unix systems.
1). Encrypt your scripts without having to compile them
	- Allows you to run encrypted scripts on most UNIX OSes (mac,linux,aix) without having to recompile
2). Utilize a comprehensive encryption algorithm no one else knows about
	- The program we use to encrypt your scripts isn't running rampant on the internet
		- No one really knows how we encrypted your script because the tool we use belongs to us
		  and is not available anywhere else on the internet.
	- The tool itself is encrypted - Meaning, while you are allowed to use it on your own
          hosts and servers, you will not be able to view how it works. 
		- Any attempt to break it apart to figure out how it works will cause it to self-destruct.
3). License Date Management - Set expiration dates on all scripts you encrypt
4). Prevent duplication of encrypted scripts on the same system
5). Prevent all attempts to modify your protected scripts
	- Any attempt to alter or modify your encrypted script will render it inoperable
		- If you add just one character to an encrypted script, it will stop working. To get it
		  working again, you'd have to reinstall the script.
6). Prevent others from being able to see how your encrypted script works
	- Any attempt to run a debugger (or anything like it) on your protected script to see
	  what it is doing will cause the script to fail!
7. Get notification alerts whenever attempts are made to modify, create copies, or tamper with the
   configurations of a enscryption.com protected script.
8. Know the number of users that are running your script at all times.
Yes. We offer a 90-Day Money Back Guarantee. 

Refunds will be granted under two scenarios:

1. If request was submitted within 60 days of purchase OR

2. If you are actually able to successfully unlock any of our encrypted scripts in under 90 days.

	Under this scenario, to qualify for the refund, we'll need to see proof.

Contact us at [ Support@EnScryption.com ] if you have any questions.
There are no chances of that ever happening! If you are actually able to break into the encrypted script we generate for you, feel free to request a refund.  We'll gladly give it to you.
Yes, it is extremely easy to do.  The Menu Driven Shell Script Encryption Automation that comes with our Enterprise encryption packages, is designed to shield customers from the very technical aspect of the encryption and obfuscation process. 

Through the menu driven interface, you can choose to encrypt multiple scripts specified in either a list file or a directory of scripts.  The encrypted scripts will be packaged into one zip file or tar file, which you can then give to your customers. 

When your customer receives the zip or tar file, all that they'll need to do is unzip or untar the package, and run one simple script to set up the encrypted scripts enclosed in it.
Of course you can. Click on the first box on right column, and copy and paste your code to the space provided to generate an encrypted copy.

Again, if you can actually break into the encrypted script we produce for you, then just don't buy the tool, and if you've already bought it, feel free to request a refund.

Also, please note, when you copy and paste or upload your script to our website, you only need to click the "Submit" button once.  It'll take under 5 seconds for the encrypted copy of your plain script to be generated.
Yes.  

Along with other security measures, we allow users to specify how long a script is to be valid for.  After the user specified date, the script will no longer function!
As many as you want.  Please note, every script you encrypt using our free web-based service will expire within a few hours of creation.

To encrypt unlimited scripts and to be able to specify expiration dates on each of those scripts, you'll need to purchase a licensed version of our Encryption tool.
1). Protect sensitive information and intellectual property 
2). Eliminate the ability of others to keep tabs on you, if you work in a lab-like environment
    where everyone has root access
	- Our encryption tool ensures even those with root privileges cant view your scripts
3). Hide passwords that you don't want to make easy for anyone to have access to
4). Sell your scripts to a third party without giving away any proprietary information
5). Get alert notifications - Create clandestine records of all attempts of theft by users of your scripts
	a). Every single script that is obfuscated and encrypted by Enscryption.com is protected under the
            premise that those who run the scripts are simply to run it.  When a user of an encrypted 
            script starts trying to break it apart in an effort to see how it works, a record of each
            attempt will be logged.
		- This record can then be used (by the script owner) as evidence in a court of law
                  if necessary.
Yes. We can encrypt Shell Scripts, Perl Scripts, Ruby Scripts, Python Scripts, Command line NodeJs and PHP Scripts and RScripts (rcode).  You can paste any of these scripts on our home page so you get a feel for how our encryption/obfuscation works.
All scripts that are encrypted through either the 'Upload' or 'Copy and Paste' options provided on the home page are valid for a few hours. 

To extend the expiration date of your scripts beyond a few hours, you'll need to purchase a licensed standalone version of the encryption tool of your choice.

Flexible License Terms:

With our one time, monthly, quaterly, bi-yearly and yearly payment options, you can get the exact Encryption software you need for as long as you need it without making a big up-front investment.  Payments are not recurring.  You only make a payment when you need the tool.
You can:

Purchase and download your own personalized (and encrypted) version of our Encryption tool
	- This option will enable you to avoid submitting any extremely sensitive scripts to our website

	  	- It allows you to encrypt as many scripts as you need, right from your own private host.

Contact us at [ Support@EnScryption.com ] for more information or other options.
Here are your realistic options:

1. Rely on permissions/ownership as your only means of protection

2. Use a compilation / obfuscation method everyone on the internet knows about, which makes your scripts likely to be more hackable!

3. Or use our unique encryption algorithm that ensures no one can easily unveil your protected code 
Yes. However, currently, we can only encrypt standalone scripts - meaning, all the values your nodejs script needs to run must be hard-coded in the script already. The script should not be accepting any input from users. If your script must accept arguments, make it read from a config file instead, a config file that the person running the script would have to update.

We are currently working on a process that will allow for the direct passing of arguments and parameters to an encrypted nodejs script.  As of this writing (December 5th, 2016), that project is still in progress.
There are quite a number of different ways a determined hacker can take to attempt to hack a protected script.  One of such ways is altering the binary files of the programming language your script is written in.  

EnScryption.com is aware of these types of tactics and steps have been taken to combat them effectively.

Whenever an EnScryption.com protected script is run on any Unix system, it does a variety of checks simulteneously.  These checks confirm the validity of all necessary tools needed to run the protected script.  If the EnScryption.com algorithm senses any of the critical tools it needs have been tampered with or simply aren't in the state it expects them to be in, it will refuse to run the protected script and will abort immediately.

If you're not trying to hack the script, or figure out how our algorithm works, feel free to shoot us an email.  In your email, please copy and paste the exact error messages you encountered and the Unix OS your script was run on.
Yes. Your encrypted scripts can run under Android systems.  During encryption of the scripts, simply specify "android" instead of "autogenerate" at the command line.  

To run an encrypted script on an android machine, you can utilize the apps known as "Terminal Emulator" and/or "Root Browser".