zoukankan      html  css  js  c++  java
  • 用eclipse配置Aptana插件及完美破解

    今天在配置aptana的时候发现我已经输入注册码了结果只能用到2008.2.12 晕 我就在网上找了一些相关资料结果还真有 不过不是很详细  所以我想了一下还是把详细的贴上来吧!

    学习当中 互相往来 互相指教  ^_^

    首先到
    http://www.aptana.com/download/index.php
    选择eclipse plugin

    输入用户名,密码,邮箱.

    点download

    会出现一个链接
    点击
    http://update.aptana.com/update/3.2/这个页面
    点击Download Plugin Update Site
    下载下来的安装包
    别按官方说的安装

    直接解压缩用link方式安装

    以上操作就不用多说了吧!!

    用Link方法配置好后在Eclipse中会看到 如图:

    OK插件配置完毕!

    接下来开始完美破解使用全部功能

    首先复以下代码:

    package com.aptana.ide.core.licensing;

    import java.math.BigInteger;
    import java.util.Calendar;
    import java.util.TimeZone;
    import java.util.zip.CRC32;

    public final class ClientKey {
        
    private static class Decrypt {

            
    private BigInteger modulus;
            
    private BigInteger exponent;

            
    public String decrypt(String encrypted) {
                
    long crc32Value;
                
    byte bytes[];
                CRC32 crc32;
                
    /* 289 */if (encrypted == null) {
                    
    /* 291 */encrypted = "";
                } 
    else {
                    
    /* 295 */encrypted = ClientKey.trimEncryptedLicense(encrypted);
                }
                
    /* 297 */BigInteger big = new BigInteger(encrypted);
                
    /* 298 */BigInteger decrypted = big.modPow(exponent, modulus);
                
    /* 300 */crc32Value = (long) decrypted.intValue() & 0xffffffffL;
                
    /* 301 */decrypted = decrypted.shiftRight(32);
                
    /* 302 */bytes = decrypted.toByteArray();
                
    /* 303 */crc32 = new CRC32();
                
    /* 304 */crc32.update(bytes);
                
    /* 305 */return new String(bytes);
            }

            Decrypt(String exponent, String modulus) {
                
    /* 275 */this.modulus = new BigInteger(modulus);
                
    /* 276 */this.exponent = new BigInteger(exponent);
            }
        }

        
    public static final String BEGIN_LICENSE_MARKER = "--begin-aptana-license--";
        
    public static final String END_LICENSE_MARKER = "--end-aptana-license--";
        
    private static final TimeZone GMT = TimeZone.getTimeZone("GMT");
        
    private static final String EMAILS_NON_MATCHING = "EMAILS_NON_MATCHING";
        
    private static final int PRO = 0;
        
    private static final int TRIAL = 1;
        
    private String email;
        
    private long expiration;
        
    private int type;

        
    private ClientKey(int type, String email, long expiration) {
            
    /* 77 */this.type = 0;
            
    /* 78 */this.email = "e@e.com";
            
    /* 79 */this.expiration = 999999999;
        }

        
    public static ClientKey decrypt(String encrypted, String email) {
            
    /* 93 */String modulus = "115801190261221214754334668902722425936509505416457970789287297728816388753627896293249501578830570324705253515546383166989625001335561947096747210280001245977114030627247212292377290543869343996595819188362915644707269064020812435233012510929338706599216007185654748959001143012936618501934698642942289379979";
            
    /* 94 */String exponent = "65537";
            
    /* 100 */if (encrypted != null) {
                
    /* 102 */encrypted = encrypted.trim();
            }
            
    /* 104 */Decrypt decrypter = new Decrypt(exponent, modulus);
            
    /* 105 */return decrypt(decrypter, encrypted, email);
        }

        
    private static ClientKey decrypt(Decrypt decrypter, String encrypted,
                String email) {
            
    /* 110 */String value = decrypter.decrypt(encrypted);
            
    /* 111 */if (value == null) {
                
    /* 113 */return new ClientKey(1null0L);
            }
            
    /* 115 */String values[] = value.split(";");
            
    /* 116 */int type = 1;
            
    /* 117 */String genedEmail = null;
            
    /* 118 */long expiration = 0L;
            
    /* 119 */if (values.length == 3) {
                
    /* 121 */if ("p".equals(values[0].toLowerCase())) {
                    
    /* 123 */type = 0;
                }
                
    /* 125 */genedEmail = values[1];
                
    /* 127 */if (genedEmail != null) {
                    
    /* 129 */if (!genedEmail.equalsIgnoreCase(email)) {
                        
    /* 131 */genedEmail = "EMAILS_NON_MATCHING";
                    }
                } 
    else {
                    
    /* 136 */genedEmail = null;
                }
                
    /* 140 */try {
                    
    /* 140 */expiration = Long.parseLong(values[2]);
                }
                
    /* 142 */catch (Exception _ex) {
                    
    /* 144 */expiration = 0L;
                }
            }
            
    /* 147 */return new ClientKey(type, genedEmail, expiration);
        }

        
    public boolean isCloseToExpiring() {
            
    return false;
        }

        
    public boolean isValid() {
            
    /* 169 */return true;
        }

        
    public boolean isCloseToMatching() {
            
    /* 179 */return true;
        }

        
    public boolean isExpired() {
            
    /* 190 */return false;
        }

        
    public String getEmail() {
            
    /* 200 */return "e@e.com";
        }

        
    public Calendar getExpiration() {
            
    /* 210 */Calendar expirationCal = Calendar.getInstance();
            expirationCal.set(
    208878);
            
    /* 212 */return expirationCal;
        }

        
    public boolean isTrial() {
            
    /* 222 */return false;
        }

        
    public boolean isPro() {
            
    /* 232 */return true;
        }

        
    public boolean shouldProPluginsRun() {
            
    return true;
        }

        
    public static String trimEncryptedLicense(String encrypted) {
            
    /* 257 */String newEncrypted = encrypted;
            
    /* 258 */newEncrypted = newEncrypted.trim();
            
    /* 259 */newEncrypted = newEncrypted.replaceAll(
                    
    "--begin-aptana-license--""");
            
    /* 260 */newEncrypted = newEncrypted.replaceAll(
                    
    "--end-aptana-license--""");
            
    /* 261 */newEncrypted = newEncrypted.replaceAll("\\s+""");
            
    /* 262 */return newEncrypted;
        }

    }

    编译上面的源文件替换com.aptana.ide.core_1.0.1.004323.jar里面的class

    以下是我个人用的编译提换方法也提贴上来参靠一下吧……

    把上面的代码复制后在D盘新建文本文档.txt 文件改为ClientKey.java 粘贴代码 关闭保存OK

    打开运行输入cmd

    接着输入javac ClientKey.java 回车

    这时你会在D盘下看到两个 Class文件 OK编译完成

    打开aptana插件目录F:\Program Files\eclipse\Plugin-New\aptana\eclipse\plugins找到com.aptana.ide.core_1.0.1.004323.jar 用Winrar打开 看winrar中的路径找到这两个class文件 把刚才编译好的两个class文件直接拖到winrar中及可出现对话框点确定就可以了

    OK 到此Aptana破解成功

    http://yuanchuag.blog.sohu.com/76733795.html
  • 相关阅读:
    搭建web攻防环境
    远程控制
    网络攻击
    论文翻译:《PRIMES is in P》——素性测试的确定性多项式时间算法研究
    从Fouier级数到DCT
    同态加密简要概述
    杂谈:探究副词“有点”用于修饰形容词和动词的使用范围
    题解:洛谷P2055/[ZJOI2009] 假期的宿舍(匈牙利算法)
    笔记:二部图最大匹配的匈牙利算法
    杂谈:AI Intro课程作业——卷积神经网络练练手之MNIST数据集
  • 原文地址:https://www.cnblogs.com/kungfupanda/p/1832721.html
Copyright © 2011-2022 走看看