[nycphp-talk] Website Data Encryption tools
David Krings
ramons at gmx.net
Sun Apr 6 17:09:28 EDT 2008
Joe Leo wrote:
> Well, you could wrap everything into PHP and use one of these PHP
> obfuscators.
>
> Well, I am not much of a php/programmer and don't know how and what it
> means to "wrap everything into php".
I mean that you need to use PHP to output static page content if you want to
encode / obfuscate everything.
> Still, I wonder why you want to do that? Do you distrust your
> hosting company that much? In that case I'd look for a different
> provider.
>
>
> Well, I am just looking into a solutions to encrypt data. The question
> as to why I would want to do that is not the question - But, thanks for
> asking.
Well, the reason for me asking is that there may be a better approach than
taking the big hammer. I speak from experience as I often use(d) the big
hammer and everything was a nail.
> What are you trying to protect and who are you protecting it against?
>
> I'm looking to protect data/information that could be the software code
> and/or customer's client info.. Protection should be from anyone who
> does not need to have access to the website data or the DB... Of course,
> data will be shown to users (web client) who has been given access to
> view this data from the application.
So who is your hoster? Every thought about self-hosting or having the customer
run the server? Any chance that this might work via intranet rather than
internet, because then you probably want to add SSL to the pages. I do not
know if that is difficult to do. But keep in mind, anything that is accessible
via internet is not what I'd consider entirely secure.
I don't see why you need to protect the software code. PHP is server side only
and the client doesn't see anything from your PHP code.
And yes, it is assumed that legitimate users are allowed to see information,
otherwise the whole setup would be quite pointless.
> What I am interested in is to find the most effective and most secure
> way to upload my website & db to remote host and the data is fully
> protected by encryption.
As mentioned above, hosting something offsite and have it be available through
the internet is IMHO not secure. Taking stuff can be made more difficult, but
most secure....well, I leave that up to the experts, but I have my doubts -
see Hannaford, TJX, etc.
> I will look into the ionCube suggested earlier - Though this seems to be
> a PHP only base solution. From what I gather, a product like TrueCrypt
> could be better as I can encrypt an entire volume or folder and it's
> done - Regardless of type of code or application that exist or being
> encrypted.
Again, comes down to the hosting service that you have. Do you have that much
access and rights to the server that you can just go ahead and run services
that encrypt and decrypt entire folders?
>
> I know many software type companies package there software where either
> partially or fully the code is encrypted and protected. This is the
> similar type of solution I guess I am looking for.
Nah, most companies distribute binaries that make it difficult enough for
people like me to re-engineer the code. But look at the open source security
applications. Their code is freely available. Security through obscurity is
one of the worst approaches.
I don't want to rain on your parade, but taking into account that you are "not
much of a php/programmer" you may want to take a step back and think this over
if that application is indeed that critical and demands such secrecy that code
and database have to be encrypted. I play around with PHP for about five years
now and I don't think that I'd be capable of writing a secure application. I'm
not saying that you are not capable of that, but I have the impression that
you think slapping some encryption onto something makes it secure.
I am also wondering a bit about your statement that you want "to find the most
effective and most secure way to upload my website & db to remote host". So
are you worried about encryption during uploading or about encryption while
executing the scripts on the server and serving up content - or both? What
other security measures did you include? Kaptchas? Multiple time-limited
passwords? Multiple access levels? Effective session management to kick people
out of the system after a few minutes of inactivity? Or even other means such
as biometrics as identification? Your own certificate?
Also, does it have to be a web client? I'd guess there are way more and way
better means to encrypt data when working with fat clients. Also, which
database engine do you plan to use? Does that database engine have means to
encrypt entire tables or data sets?
And what do you do for client security? There is not much gained when your
server is like Fort Knox, but the users can access the application from any
client on any network and then do so from theit favourite internet cafe,
leaving the PC unattended while getting another beer. So you want to at least
restrict the IP address (ranges) that are allowed to get even to the login page.
Sorry for asking that many questions, but I think those and many more
questions need to be asked and sufficiently answered.
David
More information about the talk
mailing list