Jump to content
Tuts 4 You

DaLvIkSoN#1 - KeyGenMe!


xSRTsect
Go to solution Solved by Jasi2169,

Recommended Posts

Difficulty : 1
Language : Java compiled to Dalvik Byte-Code
Platform : Android
OS Version : API level >=19.
Packer / Protector : None

Description :

This should be the start of a Android reversing series.

-> You should code a keygen, preferrably to be able to run inside Android (no self-keygens).

Screenshot :

 

Solvers:

-> Jasi2169

->crystalboy

dalvik1.zip

Edited by xSRTsect
Link to comment
Share on other sites

fairylovehn127
  public boolean isOk(String paramString1, String paramString2)
  {
    IncrementalChange localIncrementalChange = $change;
    if (localIncrementalChange != null) {
      return ((Boolean)localIncrementalChange.access$dispatch("isOk.(Ljava/lang/String;Ljava/lang/String;)Z", new Object[] { this, paramString1, paramString2 })).booleanValue();
    }
    String str1 = "";
    String str2 = "";
    String str3 = "";
    String str4 = "";
    byte[] arrayOfByte1 = dksn.st0n3(paramString1.getBytes());
    byte[] arrayOfByte2 = dksn.st0n3(arrayOfByte1);
    byte[] arrayOfByte3 = dksn.st0n3(arrayOfByte2);
    byte[] arrayOfByte4 = dksn.st0n3(arrayOfByte3);
    for (int i = 0; i < 16; i++)
    {
      if ((i % 5 == 0) && (i != 0)) {
        str1 = str1 + "-";
      }
      StringBuilder localStringBuilder1 = new StringBuilder().append(str1);
      Object[] arrayOfObject1 = new Object[1];
      arrayOfObject1[0] = Integer.valueOf(0xFF & arrayOfByte1[i]);
      str1 = String.format("%X", arrayOfObject1);
      if ((i % 5 == 0) && (i != 0)) {
        str2 = str2 + "-";
      }
      StringBuilder localStringBuilder2 = new StringBuilder().append(str2);
      Object[] arrayOfObject2 = new Object[1];
      arrayOfObject2[0] = Integer.valueOf(0xFF & arrayOfByte2[i]);
      str2 = String.format("%X", arrayOfObject2);
      if ((i % 5 == 0) && (i != 0)) {
        str3 = str3 + "-";
      }
      StringBuilder localStringBuilder3 = new StringBuilder().append(str3);
      Object[] arrayOfObject3 = new Object[1];
      arrayOfObject3[0] = Integer.valueOf(0xFF & arrayOfByte3[i]);
      str3 = String.format("%X", arrayOfObject3);
      if ((i % 5 == 0) && (i != 0)) {
        str4 = str4 + "-";
      }
      StringBuilder localStringBuilder4 = new StringBuilder().append(str4);
      Object[] arrayOfObject4 = new Object[1];
      arrayOfObject4[0] = Integer.valueOf(0xFF & (arrayOfByte3[i] ^ arrayOfByte4[i]));
      str4 = String.format("%X", arrayOfObject4);
    }
    return paramString2.equals(str1 + "-" + str2 + "-" + str3 + "-" + str4) == true;
  }

 

Link to comment
Share on other sites

here it is i solved (i have coded keygen already but i will upload with some code changes 2mrow) i mean i will edit my post

image.png

 

image.png

Edited by Jasi2169
Link to comment
Share on other sites

  • Solution

here is keygen attached

image.png

nice challenge,i like gold when comes to android n .net :)

Bug :- about and verify buttons has same onclick event listener ,both leads to same event so one button shud be removed (used alertdialog builder api for about just suggestion )

zippyshare download :- http://www102.zippyshare.com/v/ivB501oT/file.html

mirror is attached

DaLvIkSoN#1 - KeyGenMe Keymaker By Jasi2169.apk

  • Like 4
Link to comment
Share on other sites

I am glad you enjoyed the challenge. There will be more, and the difficulty level should increase.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...