Jump to content
Tuts 4 You

DaLvIkSoN#1 - KeyGenMe!


Go to solution Solved by Jasi2169,

Recommended Posts

Posted (edited)

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
fairylovehn127
Posted
  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;
  }

 

Posted

My patched apk: http://rgho.st/7QXzv78g5

Password: tuts4you

I use my phone for patching so It's hard to research to make keygen without PC

 

 

Posted

** You should code a keygen **

Posted (edited)

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
  • Solution
Posted

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
Posted

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

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...