首先声明,小弟绝对不是标题党。事实上,这是昨天小弟看到的某条新闻后(《100%准确预测涨停股?——新型股票诈骗伎俩揭秘》,原文地址:http://bit.ly/aYC8pd),有感而发杜撰的Java版闲暇之作。
这个小程序的作用非常之简单,也就是向原文中所描述的那样,加密文本文件,而后将内容以“你所需要的方式”展示出来。
下载地址(源码在jar中):http://greenvm.googlecode.com/files/Fraud.jar
主程序如下:
package org.text.fraud;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;/** * @author chenpeng * @email:ceponline@yahoo.com.cn * @version 0.1 */public class Fool { // crc32参数表,共有256项 final static private long[] crcTable = new long[256]; // 静态初始化参数表 static { long crc; int n, k; for (n = 0; n < 256; n++) { crc = (long) n; for (k = 0; k < 8; k++) { if ((crc & 1) == 1) { crc = 0xEDB88320L ^ (crc >> 1); } else { crc = crc >> 1; } } crcTable[n] = crc; } } private static final byte[] DIGITS = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' }; private static final byte[] FILE_FLAG_ID = { 'W', 'S', 'P', 'Z' }; private boolean checkCRC = true; private byte[] passBytes; final static private String EMPTY_CONTEXT = "我是骗子我怕谁?"; /** * 解密byte[] * * @param array * @return */ private byte[] decode(byte[] array) { return decode(new String(array).toCharArray()); } /** * 解密char[] * * @param data * @return */ private byte[] decode(char[]