Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Silverlight and Obfuscation

I am fairly new with silverlight and I really find it cool. I have a question about how it runs the code client-side tho..

Say for example, I have a site that calculates a certain amount based on user inputted amounts. This of course I would love to do client-side. The catch though, is that the formula used for the calculation is proprietary and a trade secret. If I put this formula client-side using SL, will it be safe? Or can it be reflected?

like image 271
Edu Lorenzo Avatar asked Jan 16 '09 12:01

Edu Lorenzo


People also ask

What are obfuscation methods?

Obfuscation is an umbrella term for a variety of processes that transform data into another form in order to protect sensitive information or personal data. Three of the most common techniques used to obfuscate data are encryption, tokenization, and data masking.

What is a obfuscation tool?

Application obfuscation tools protect the application code as the increasing use of intermediate language representations (such as Java and . NET) enables hackers to easily reverse-engineer IP embedded in software.

Should you code obfuscate?

Debugging information can be used by hackers to reverse engineer a program's source code, so it's wise to obfuscate debug information by changing line numbers and file names.

What is obfuscation file?

Crashes and ANRs on Android produce a stack trace, which is a snapshot of the sequence of nested functions called in your program up to the moment it crashed. These snapshots can help you identify and fix any problems in the source.


2 Answers

If you want to keep algorithms secret, don't push it to the client side. No form of obfuscation or protection is ever perfect.

Also, when you have calculations on the client side, you should always check the results on the server, rather than just assuming they're correct. Assume that the client is compromised.

like image 141
Marcus Downing Avatar answered Oct 26 '22 22:10

Marcus Downing


Silverlight pushes the XAP file to the client. The XAP file is simply a zip file containing your .NET assemblies, which can then be unzipped and reflected against. The company I work for (PreEmptive Solutions) markets Dotfuscator, which can obfuscate Silverlight assemblies. Right now you have to unzip the xap, obfuscate and zip them back in, but we're working on improving the workflow.

like image 31
mletterle Avatar answered Oct 26 '22 23:10

mletterle