Showing posts with label Other. Show all posts
Showing posts with label Other. Show all posts

Thursday, 23 July 2015

How To Protect Java code from decompilation using Java Obfuscator


If you are writing Java classes and distributing them over the Internet, you should know that people can reverse-engineer, disassemble, or decompile your classes into Java source code. One of such decompiler is JAD. In this article we discuss about the usage of JAD to decompile the Java class.
So to make the job of reverse engineers tough, we uses Java Obfuscators to protect out class files and make them difficult to decompile. The process of obfuscation will convert bytecode into a logical
equivalent version that is extremely difficult for decompilers to pick apart. Keep in mind that the decompilation process is extremely complicated and cannot be easily ‘tweaked’ to bypassed obfuscated
code. Essentially the process is as follows:
  1. Compile Java source code using a regular compiler (ie. JDK)
  2. Run the obfuscator, passing in the compiled class file as a
    parameter. The result will be a different output file (perhaps with a
    different extension)
This file, when renamed as a .class file, will be functionally equivalent to the original bytecode. It will not affect performance because a virtual machine will still be able to interpret it.
Let us see some tools that can be used to obfuscate the Java bytecode.

Zelix KlassMaster

Zelix KlassMaster is a utility written in Java that reads and modifies Java class files. KlassMaster views, edits, obfuscates, and unobfuscates. It will run on any platform that supports version 1.1.6
of the Java Virtual Machine. Zelix KlassMaster 2.0 builds on 1.0 by providing a sophisticated name-exclude facility and an advanced script interface called ZKMScript, complete with its own interactive wizard.
Downloadhttp://www.zdnetindia.com/downloads/info/898255.html

Cinnabar Canner

Canner protects your code from reverse engineering by creating a native Windows executable (EXE file) that contains an encrypted version of all of your application’s classes and resources. The contents are decrypted in memory as they are requested by the JVM.
Websitehttp://www.cinnabarsystems.com/canner.html
Downloadhttp://www.cinnabarsystems.com/download.html

Jmangle – The Java Class Mangler

The Jmangle program helps discourage reverse engineering of Java programs and software piracy by allowing the developer to mangle the symbols used in the class file. Long descriptive names for classes,
methods and fields can be replaced by meaningless symbols making it much more difficult to reverse engineer. Jmangle allows the developer to selectively mangle just the classes internal to the application while leaving desired public class, method and field names unmangled.

Features List

– Mangle package, class, method and field names
– Control mangling by access control (e.g., public, protected, private, friendly)
– Control mangling options on a class by class basis
– Strip debugging information
– Insert string tags to secretly mark class files as yours
– Output map of symbols to mangled symbols
– Easy to use graphical user interface, see screenshot.
– Command line interface, useful in Makefiles and build scripts
– Reduces size of strings in class files for better performance
Websitehttp://www.elegant-software.com/software/jmangle/
Downloadhttp://www.elegant-software.com/software/jmangle/download.html

RetroGuard

JavaGuard is a general purpose bytecode obfuscator, designed to fit effortlessly into your regular build and testing process, providing peace of mind that your valuable Java code is more secure against decompilation and other forms of reverse engineering.
Websitehttp://java-source.net/open-source/obfuscators/javaguard

JODE

JODE is a java package containing a decompiler and an optimizer for java. The optimizer transforms class files in various ways with can be controlled by a script file. It supports the following operations:
– Renaming class, method, field and local names to shorter, obfuscated, or unique names or according to a given translation table
– Removing debugging information
– Removing dead code (classes, fields, methods) and constant fields
– Optimizing local variable allocation
Websitehttp://java-source.net/open-source/obfuscators/jode

Sunday, 12 July 2015

Mobile number operator/circle trace APIs

Hello Friends, we have few useful links that may help you for your coding purpose.

Here we have few web-link that will trace your mobile number and will return result in HTML or JSON format.

1)
URL : http://www(dot)findandtrace(dot)com/trace-mobile-number-location
TYPE : POST
HEADER PARAMETER :
             mobilenumber = 9999999999 (mobile number)
             submit = Trace

This will return result in HTML/TEXT format you have to find out from this which operator and circle found for input mobile number.

2) This APIs is used by paytm for mobile number operator trace.
URL : https://catalog(dot)paytm(dot)com/v1/mobile/getopcirclebyrange?number=9999999999
TYPE : GET

This will return JSON data for response, Response example is :
RESPONSE :
{"Operator":"Vodafone","Circle":"Gujarat","product_id":241,"postpaid":false,"source":"mnp","status":true}

3)
URL : http://www(dot)tracephonenumber(dot)in/
TYPE : POST
HEADER PARAMETER :
        number = 9999999999


* THIS APIs ARE THIRD PARTY APIs FOUND AT THE TIME OF R&D. THIS POST IS TESTED AS ON POST DATE AND MAY NOT WORK IF WEB-URL OWNER CHANGE THERE CONFIGURATION

* THIS POST IS ONLY FOR EDUCATION USE ONLY

Tuesday, 19 May 2015

Where and how-much Java technology used

What’s going on in Java these days?

Last year, we tackled two particular challenges that really matter to productive software organizations: software quality (got bugs?) and the predictability of delivery (last week or next year?). We learned a lot from that one!

But now we feel like it’s time to revisit the broader tools & technologies landscape in Java these days, collect some data, crunch some numbers and see what’s going on in the market at large. And what better way than  a huge leaderboard of tools and technologies currently running the show as of May 2014!!

JUnit - 82.5% - Top testing framework used by developers  Jenkins - 70% - Most used CI server in the industry Git - 69% - #1 version control technology out there Hibernate - 67.5% - The top ORM framework used Java 7 - 65% - The industry leader for SE development Maven - 64% - Most used build tool in Java Nexus - 64% - The main repository used by developers  MongoDB - 56% - The NoSQL technology of choice FindBugs - 55% - Most-used static code analysis tool in Java  Tomcat - 50% - The most popular application server on the market  Java EE 6 - 49% - Found in the most enterprise Java environments  Eclipse - 48% - The IDE used more than any other Spring MVC - 40% - The most commonly used web framework  MySQL - 32% - The most popular SQL technology

As you can guess, in some categories multiple tools are often used in conjunction, so we allowed for multiple selections (denoted by *). For answers where a statistically significant portion (over 5%) of respondents selected “Do not use”, the responses have been normalized (denoted by ยบ) to exclude non-user groups.

It probably comes as no surprise that among the 2164 developers we surveyed, Java SE 7 (65%) is used by two-thirds of developers, but even more are using JUnit (82.5%), the most-used single technology across the entire Java landscape. And a good thing too: unit testing is key for making sure your app gets out the door. Next is Jenkins (70%), our favorite Lord of the Butlers, which is used by nearly 3 out of 4 developers that use Continuous Integration tools (1 in 5 does not). We've seen distributed VCS come a long way in recent years, and Git (69%) is now non-exclusively used by over two-thirds of developers – often alongside Subversion (57%).

Taking in the next set of tech leaders really completes the Enterprise Java picture – Hibernate (67.5%), Maven and Nexus (64%), Tomcat (50%) and Eclipse (48%) gives you more or less a decent foundation of a basic, no frills enterprise development stack.

But don't think the last words have been had yet…because in this report we asked a few questions that directly highlight the feelings of developers towards certain technologies.