Solved

Securing an Excel XLSM file

Posted on 2015-01-22
8
1,509 Views
Last Modified: 2015-01-26
A friend has spent quite a lot of money developing a complex, interactive report based on data downloaded into Excel that will be sold to his clients. We would like to lock down or encrypt the XLSM file so that competitors cannot access the IP but user clients can still manipulate the cube data.

A google search for “secure Excel spreadsheet” brought up products such as DoneEx XCell Compiler (www.doneex.com), Mirage All-In-One Protector (www.mirage-systems.de/landing/all-in-one-protector-lp-en.html), Spreadsheet Sentry (www.spreadsheetsentry.com), XLSafe CORE & VBASafe from DataSafeXL (www.datasafexl.com), XLS Padlock (www.xlspadlock.com), & LockXLS (www.lockxls.com) on the first couple of pages.

Has anyone here had experience with any such products?

If so, can you please tell me your favourite and why you chose it? Points will be split amongst all those who answer those two questions

Thanks very much,

John
0
Comment
Question by:243johnm
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
8 Comments
 
LVL 1

Author Comment

by:243johnm
ID: 40566207
Thanks aikimark, but I don't understand. I added in Excel as a topic, but there isn't much in Help about Zones (http://support.experts-exchange.com/customer/portal/articles/search?q=zones&b_id=44) except an article about Topic Advisors (http://support.experts-exchange.com/customer/portal/articles/1092428-who-are-the-topic-advisors-?b_id=44)...

John
0
 
LVL 26

Accepted Solution

by:
ProfessorJimJam earned 500 total points
ID: 40566305
John,

there are different ways of protecting the VBA code.

i will try to explain it in details. I develop Excel Add-Ins and it was so easy for hackers to steal my work by cracking the VBA protection and unveiling the full code.  i was so disappointed with where i found my work that took months to complete was unfolded in net and i could not do anything about it, but put more security in my Add-Ins.

as you already know, that VBA built-in protection is for no use at all. it can easy be broken,  
another option is blocking the VBA to "project is unviewable" which is done two ways,  by Sharing the workbook in SHared status and then changing it to an Add-In,  this is also not well protected, because some commercial software break this protection too. another option that protects in similar way "project is unviewable"  is by commercial softwares and similarly if it can be protected by commercial software, then it can be broken with similar commerial softwares.

my personal view, the websites you referred, i have used as trial some of them, but again VBA code is still vulnerable.
so, that leaves the followings options.  

using the VBA Obfuscation makes it most likely useless code, if revealed by hackers, however if the activation module of code is not protected by using many shadower lines VBA then even VBA Obfuscation sometimes can be hacked with very advanced hackers. even if they reveal the code, the only benifit they can get is to make the add-in work, however the use of codes will be useless for them, as the Obfuscation cannot be decoded easily. i suggest you read this article here http://www.spreadsheet1.com/excel-vba-code-obfuscation.html    Some of my friends they used this method and they are happy with it.

another option which is a bit advanced for developer, creating COMM Add-ins using VB6  VSTO and compiling your codes in DLL files, which, i personally believe is more protected. to see more details on this option i suggest you read http://www.cpearson.com/excel/creatingcomaddin.aspx

another recent post by Spreadsheet1 website,  they are working to complete the full features Secure ++ Delphi Application for securing your VBA in DLL files. it is in beta version for now, i suggest you read http://www.spreadsheet1.com/secure-vba-compiler-for-microsoft-office-excel.html


finally, i have seen some smart developers used the services of http://www.lockxls.com/product.asp 
i personally, did not use, so i cannot have more say about lockxls  , however you might wanna explore the options.


hope it helps.
0
 
LVL 1

Author Comment

by:243johnm
ID: 40566351
Thanks ProfJimJam, much appreciated! Your previous situation is exactly what we are trying to avoid...

As mentioned in my original post, I will wait a while and see if I get multiple suggestions before closing and awarding points. But yours is certainly an excellent start!

Thanks again,

John
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 45

Expert Comment

by:aikimark
ID: 40566459
@ProfessorJimJam

That was a great comment.  I've bookmarked it and am going to share it with my Microsoft Office User Group.  This month, we presented a "protecting your Access database".  I think a protecting your VBA code (in non-Access applications) presentation is in order.
0
 
LVL 26

Expert Comment

by:ProfessorJimJam
ID: 40566627
@aikimark

Thank you.
0
 
LVL 1

Author Closing Comment

by:243johnm
ID: 40570161
Thanks very much @ProfessorJimJam, your very complete response is much appreciated, A+!

John
0
 
LVL 26

Expert Comment

by:ProfessorJimJam
ID: 40570231
You are most welcome.

thanks for the feedback.
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

When you see single cell contains number and text, and you have to get any date out of it seems like cracking our heads.
Access developers frequently have requirements to interact with Excel (import from or output to) in their applications.  You might be able to accomplish this with the TransferSpreadsheet and OutputTo methods, but in this series of articles I will di…
The viewer will learn how to use a discrete random variable to simulate the return on an investment over a period of years, create a Monte Carlo simulation using the discrete random variable, and create a graph to represent the possible returns over…
This Micro Tutorial will demonstrate the scrolling table in Microsoft Excel using the INDEX function.

730 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question