Software Obfuscation CodeShield. Symbolic Name Obfuscation import java.io.Serializable; import...
-
Upload
blaise-blair -
Category
Documents
-
view
213 -
download
0
Transcript of Software Obfuscation CodeShield. Symbolic Name Obfuscation import java.io.Serializable; import...
![Page 1: Software Obfuscation CodeShield. Symbolic Name Obfuscation import java.io.Serializable; import MyClass; private class TestClass implements Serializable.](https://reader035.fdocuments.us/reader035/viewer/2022071807/56649dd55503460f94acd3c8/html5/thumbnails/1.jpg)
Software Obfuscation
CodeShield
![Page 2: Software Obfuscation CodeShield. Symbolic Name Obfuscation import java.io.Serializable; import MyClass; private class TestClass implements Serializable.](https://reader035.fdocuments.us/reader035/viewer/2022071807/56649dd55503460f94acd3c8/html5/thumbnails/2.jpg)
Symbolic Name Obfuscation
import java.io.Serializable;
import MyClass;
private class TestClass
implements Serializable
{
private MyClass object;
private int response;
public TestClass (MyClass s, int r) public MyClass getMyClass() {}
public int getResponse(){}
}
import java.io.Serializable;
import yy;
class zy
implements java.io.Serializable
{
private yy yv;
private int vv;
public zy(yy y2, int i3) {}
public yy zx() {}
public int wx() {}
}
![Page 3: Software Obfuscation CodeShield. Symbolic Name Obfuscation import java.io.Serializable; import MyClass; private class TestClass implements Serializable.](https://reader035.fdocuments.us/reader035/viewer/2022071807/56649dd55503460f94acd3c8/html5/thumbnails/3.jpg)
Control Flow Obfuscation
private void myMove(int move, int depth)
{
if(depth % 2 == 1)
applyMove(move, true);
else
applyMove(move, false);
}
private void Wz(int i1, int i2) {
i2 2 % 1; if (!=) goto L24; this; i1; .ZY(1,); goto L30; L24: ZY(i1, 0); L30: return;}
![Page 4: Software Obfuscation CodeShield. Symbolic Name Obfuscation import java.io.Serializable; import MyClass; private class TestClass implements Serializable.](https://reader035.fdocuments.us/reader035/viewer/2022071807/56649dd55503460f94acd3c8/html5/thumbnails/4.jpg)
Advantages
• Easy to use/install
• Cheap
• Provides protection from people not willing to put the work in
• Provides for a legal defense
• May improve performance and reduce code size
![Page 5: Software Obfuscation CodeShield. Symbolic Name Obfuscation import java.io.Serializable; import MyClass; private class TestClass implements Serializable.](https://reader035.fdocuments.us/reader035/viewer/2022071807/56649dd55503460f94acd3c8/html5/thumbnails/5.jpg)
Disadvantages
• Anyone willing to put work into figuring out the code could do it
• May degrade performance and increase code size