<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Obfuscate your VBA code</title>
	<atom:link href="http://www.codeforexcelandoutlook.com/blog/2009/10/obfuscate-your-vba-code/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.codeforexcelandoutlook.com/blog/2009/10/obfuscate-your-vba-code/</link>
	<description>Automation and VBA code for Microsoft® Excel and Outlook</description>
	<lastBuildDate>Thu, 11 Mar 2010 21:53:41 -0500</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
	<item>
		<title>By: Ross</title>
		<link>http://www.codeforexcelandoutlook.com/blog/2009/10/obfuscate-your-vba-code/#comment-2156</link>
		<dc:creator>Ross</dc:creator>
		<pubDate>Wed, 28 Oct 2009 15:22:24 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeforexcelandoutlook.com/blog/?p=741#comment-2156</guid>
		<description>That&#039;s not even obfuscated code, they have just done a find and replace, unbelievable, I&#039;m sure they must have sold 0 copies, because anyone who wanted to obfuscate there code must know better than that right!</description>
		<content:encoded><![CDATA[<p>That's not even obfuscated code, they have just done a find and replace, unbelievable, I'm sure they must have sold 0 copies, because anyone who wanted to obfuscate there code must know better than that right!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chandoo</title>
		<link>http://www.codeforexcelandoutlook.com/blog/2009/10/obfuscate-your-vba-code/#comment-2155</link>
		<dc:creator>Chandoo</dc:creator>
		<pubDate>Wed, 28 Oct 2009 12:58:41 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeforexcelandoutlook.com/blog/?p=741#comment-2155</guid>
		<description>looks like the obfuscator is just renaming the variables defined thru dim. it should be fairly straight forward to develop a small program that would take VBA script as input and change the variable names to arbitrary length random strings (hey, we can even use JP&#039;s random data generator :) )

But again, I dont need obfuscator for my code, it is unreadable anyways :P</description>
		<content:encoded><![CDATA[<p>looks like the obfuscator is just renaming the variables defined thru dim. it should be fairly straight forward to develop a small program that would take VBA script as input and change the variable names to arbitrary length random strings (hey, we can even use JP's random data generator <img src='http://www.codeforexcelandoutlook.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  )</p>
<p>But again, I dont need obfuscator for my code, it is unreadable anyways <img src='http://www.codeforexcelandoutlook.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: sam</title>
		<link>http://www.codeforexcelandoutlook.com/blog/2009/10/obfuscate-your-vba-code/#comment-2154</link>
		<dc:creator>sam</dc:creator>
		<pubDate>Fri, 23 Oct 2009 07:44:52 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeforexcelandoutlook.com/blog/?p=741#comment-2154</guid>
		<description>Jon...You are right..just tested ..its the same old Hex Hack once you unpack and apply it on the vbaproject.bin

Really sad to see no improvements... in the security level</description>
		<content:encoded><![CDATA[<p>Jon&#8230;You are right..just tested ..its the same old Hex Hack once you unpack and apply it on the vbaproject.bin</p>
<p>Really sad to see no improvements&#8230; in the security level</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: JP</title>
		<link>http://www.codeforexcelandoutlook.com/blog/2009/10/obfuscate-your-vba-code/#comment-2153</link>
		<dc:creator>JP</dc:creator>
		<pubDate>Fri, 23 Oct 2009 00:29:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeforexcelandoutlook.com/blog/?p=741#comment-2153</guid>
		<description>I use Code Cleaner as well to shrink the overall workbook size, but seeing that bizarre looking code just made me laugh. Maybe I&#039;ll try reselling it myself!</description>
		<content:encoded><![CDATA[<p>I use Code Cleaner as well to shrink the overall workbook size, but seeing that bizarre looking code just made me laugh. Maybe I'll try reselling it myself!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jon Peltier</title>
		<link>http://www.codeforexcelandoutlook.com/blog/2009/10/obfuscate-your-vba-code/#comment-2152</link>
		<dc:creator>Jon Peltier</dc:creator>
		<pubDate>Thu, 22 Oct 2009 19:17:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeforexcelandoutlook.com/blog/?p=741#comment-2152</guid>
		<description>Matthias -

If you&#039;re worried about revealing object types, then you could declare everything as either object or variant, or remove Option Explicit and don&#039;t declare anything.</description>
		<content:encoded><![CDATA[<p>Matthias -</p>
<p>If you're worried about revealing object types, then you could declare everything as either object or variant, or remove Option Explicit and don't declare anything.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jon Peltier</title>
		<link>http://www.codeforexcelandoutlook.com/blog/2009/10/obfuscate-your-vba-code/#comment-2151</link>
		<dc:creator>Jon Peltier</dc:creator>
		<pubDate>Thu, 22 Oct 2009 18:00:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeforexcelandoutlook.com/blog/?p=741#comment-2151</guid>
		<description>You can unlock the VB Project of a 2007 workbook by unpacking it and doing the hex editor thing with the appropriate unzipped part of the file. Or so I&#039;ve been told.</description>
		<content:encoded><![CDATA[<p>You can unlock the VB Project of a 2007 workbook by unpacking it and doing the hex editor thing with the appropriate unzipped part of the file. Or so I've been told.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: sam</title>
		<link>http://www.codeforexcelandoutlook.com/blog/2009/10/obfuscate-your-vba-code/#comment-2150</link>
		<dc:creator>sam</dc:creator>
		<pubDate>Thu, 22 Oct 2009 17:56:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeforexcelandoutlook.com/blog/?p=741#comment-2150</guid>
		<description>&quot;if code security is a dealbreaker, you shouldn&#039;t be developing in the VBA environment&quot;

True upto Excel 2003.
From 2007 AFAIK the Backdoor hack or the hex editor hack wont work. Only thing that will i guess is a &quot;Brute&quot; force...</description>
		<content:encoded><![CDATA[<p>"if code security is a dealbreaker, you shouldn't be developing in the VBA environment"</p>
<p>True upto Excel 2003.<br />
From 2007 AFAIK the Backdoor hack or the hex editor hack wont work. Only thing that will i guess is a "Brute" force&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mathias</title>
		<link>http://www.codeforexcelandoutlook.com/blog/2009/10/obfuscate-your-vba-code/#comment-2149</link>
		<dc:creator>Mathias</dc:creator>
		<pubDate>Thu, 22 Oct 2009 17:48:42 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeforexcelandoutlook.com/blog/?p=741#comment-2149</guid>
		<description>What makes obfuscation weak in the case of VBA, though, is that you are operating mostly with existing objects from the Excel object model, which you can&#039;t rename. The line &quot;Dim dfhlijebhdskpsdrhd as Workbook&quot; is always going to remain fairly transparent, no matter how weird the renaming name for the variable is, and replacing it would take mostly patience. In other languages, where it is standard to roll out your own classes, you can obfuscate both the variable and the class, which makes the technique much more effective. &quot;Dim sdfghebgb as hennasvfkrnf&quot; is unwelcoming...
On the security steps, one step up the dll, you could access the dll as a web service, so that the user never has physical access to the code itself.
Mathias</description>
		<content:encoded><![CDATA[<p>What makes obfuscation weak in the case of VBA, though, is that you are operating mostly with existing objects from the Excel object model, which you can't rename. The line "Dim dfhlijebhdskpsdrhd as Workbook" is always going to remain fairly transparent, no matter how weird the renaming name for the variable is, and replacing it would take mostly patience. In other languages, where it is standard to roll out your own classes, you can obfuscate both the variable and the class, which makes the technique much more effective. "Dim sdfghebgb as hennasvfkrnf" is unwelcoming&#8230;<br />
On the security steps, one step up the dll, you could access the dll as a web service, so that the user never has physical access to the code itself.<br />
Mathias</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jon Peltier</title>
		<link>http://www.codeforexcelandoutlook.com/blog/2009/10/obfuscate-your-vba-code/#comment-2148</link>
		<dc:creator>Jon Peltier</dc:creator>
		<pubDate>Thu, 22 Oct 2009 16:16:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeforexcelandoutlook.com/blog/?p=741#comment-2148</guid>
		<description>Obfuscation is part of a hierarchy of steps you can take to keep your code secure. Each step keeps out a few more hackers than the previous step. In order of increasing security, with arbitrary percentages tacked on, these are:

1. Obfuscate (90% safe)
2. Protect the VB Project (99% safe)
3. Convert to DLL (99.99% safe)
4. Don&#039;t deploy (100% safe)

&quot;VBASafe cleans accumulated junk code&quot;

Export and remove all modules and forms, compile and save, and reimport the modules and forms. This is what Code Cleaner does.

&quot;And making it harder for you to read your own code.&quot;

Nah, you keep your master code in a safe place. You obfuscate your code as the last step in the pre-deployment process.

1. Open in an early version of Excel, like 2000.
2. Use Code Cleaner (http://appspro.com).
3. Compile and save.
4. Obfuscate.</description>
		<content:encoded><![CDATA[<p>Obfuscation is part of a hierarchy of steps you can take to keep your code secure. Each step keeps out a few more hackers than the previous step. In order of increasing security, with arbitrary percentages tacked on, these are:</p>
<p>1. Obfuscate (90% safe)<br />
2. Protect the VB Project (99% safe)<br />
3. Convert to DLL (99.99% safe)<br />
4. Don't deploy (100% safe)</p>
<p>"VBASafe cleans accumulated junk code"</p>
<p>Export and remove all modules and forms, compile and save, and reimport the modules and forms. This is what Code Cleaner does.</p>
<p>"And making it harder for you to read your own code."</p>
<p>Nah, you keep your master code in a safe place. You obfuscate your code as the last step in the pre-deployment process.</p>
<p>1. Open in an early version of Excel, like 2000.<br />
2. Use Code Cleaner (<a href="http://appspro.com" rel="nofollow">http://appspro.com</a>).<br />
3. Compile and save.<br />
4. Obfuscate.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
