随笔-48  评论-26  文章-0  trackbacks-0
1 import java.io.BufferedReader;
 
2 import java.io.IOException;
 
3 import java.io.InputStreamReader;
 
4 import java.io.PrintStream;
 
5 import java.text.DecimalFormat;
 
6 import java.text.NumberFormat;
 
7 import java.text.SimpleDateFormat;
 
8 import java.util.Calendar;
 
9 
10 public class Myeclipse5_5_0_KeyMaker {
11 
12             private static final String L = "Decompiling this copyrighted software is a violation of both your license agreement and the Digital Millenium Copyright Act of 1998 (http://www.loc.gov/copyright/legislation/dmca.pdf). Under section 1204 of the DMCA, penalties range up to a $500,000 fine or up to five years imprisonment for a first offense. Think about it; pay for a license, avoid prosecution, and feel better about yourself.";
13 
14 
15             public static void main(String args[]) {
16         BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
17         String userId = null;
18         int intLicenseNum = 1;
19         String strLicenseNum = null;
20         boolean bProFlag = true;
21         String strProFlag = null;
22         while (userId == null || "".equals(userId.trim()))  {
23             System.out.print("Subscriber: ");
24             try {
25                 userId = br.readLine();
26             }
27             catch (IOException ioexception) { }
28         }
29         System.out.print("Number of licenses(default 1, max 999): ");
30         try {
31             strLicenseNum = br.readLine();
32         }
33         catch (IOException ioexception1) { }
34         NumberFormat nf = new DecimalFormat("000");
35         if (strLicenseNum == null || "".equals(strLicenseNum.trim())) {
36             strLicenseNum = nf.format(intLicenseNum);
37         } else {
38             strLicenseNum = nf.format(Integer.parseInt(strLicenseNum));
39         }
40         System.out.print("Professional or Standard(default pro, n=stand): ");
41         try {
42             strProFlag = br.readLine();
43         }
44         catch (IOException ioexception2) { }
45         if (strProFlag != null && !"".equals(strProFlag.trim())) {
46             bProFlag = false;
47         }
48         Calendar cal = Calendar.getInstance();
49         cal.add(12);
50         cal.add(6-1);
51         SimpleDateFormat sdf = new SimpleDateFormat("yyMMdd");
52         String need = userId.substring(01+ "Y" + (bProFlag ? "E3MP" : "E2MY"+ "-100" + strLicenseNum + "-" + sdf.format(cal.getTime()) + "0";
53         String dx = need + "Decompiling this copyrighted software is a violation of both your license agreement and the Digital Millenium Copyright Act of 1998 (http://www.loc.gov/copyright/legislation/dmca.pdf). Under section 1204 of the DMCA, penalties range up to a $500,000 fine or up to five years imprisonment for a first offense. Think about it; pay for a license, avoid prosecution, and feel better about yourself." + userId;
54         int suf = decode(dx);
55         String code = need + suf;
56         System.out.println("Subscription Code: " + change(code));
57     }
58 
59     static int decode(String s) {
60         int i = 0;
61         char ac[] = s.toCharArray();
62         int j = 0;
63         for (int k = ac.length; j < k; j++) {
64             i = 31 * i + ac[j];
65         }
66 
67         return Math.abs(i);
68     }
69 
70     static String change(String s) {
71         if (s == null || s.length() == 0) {
72             return s;
73         }
74         byte abyte0[] = s.getBytes();
75         char ac[] = new char[s.length()];
76         int i = 0;
77         for (int k = abyte0.length; i < k; i++) {
78             int j = abyte0[i];
79             if (j >= 48 && j <= 57) {
80                 j = ((j - 48+ 5% 10 + 48;
81             } else
82             if (j >= 65 && j <= 90) {
83                 j = ((j - 65+ 13% 26 + 65;
84             } else
85             if (j >= 97 && j <= 122) {
86                 j = ((j - 97+ 13% 26 + 97;
87             }
88             ac[i] = (char)j;
89         }
90 
91         return String.valueOf(ac);
92             }
93 }

文章来源:http://www.blogjava.net/NicholasEcho/archive/2008/08/15/222198.html
posted on 2008-08-15 11:40 Worker 阅读(50) 评论(0)  编辑  收藏 所属分类: J2SE/J2EE

只有注册用户登录后才能发表评论。


网站导航: