最近在看flash chart,看到amCharts和anyCharts是2个口碑不错的产品
前者较新,目前出到1.52版,体积小,1m不到,仅用swf和xml即可实现
后者较老,目前出到5.0版,体积就比较大了,40m
价格都不便宜,amCharts全买了要550eu, anyCharts要4990rmb
看看准备用amChart了
然后就是找破解
amChart的Chart破解到比较好找,自己也看了一下
用Sothink SWF Decompiler破解swf文件,能看到加载注册信息的算法
{
serial = com.amcharts.column.Utils.stripSymbols(serial, " ");
serial = com.amcharts.column.Utils.stripSymbols(serial, "\n");
serial = com.amcharts.column.Utils.stripSymbols(serial, "\r");
serial = com.amcharts.column.Utils.stripSymbols(serial, "\r\n");
arr = serial.split("-");
if (Number(arr[2]) + Number(arr[3]) != 8645 || Number(arr[2].substr(1, 1)) - Number(arr[3].substr(2, 1)) != 2)
{
attachMovie("copyright_mc", "copyright_mc", 1001);
} // end if
} // End of the function
结果很简单,在注册文件里面填一个满足条件的注册号即可
例如:-cracked-1422-7223-cracked-
把文件保存成amcharts_key.txt即可
amChart .net Control的破解就没找到了
于是用Lutz Reader's .net reflector,反编译了控件,找到加密算法
private bool CheckKey(string keyString)
{
try
{
string[] parts = keyString.Split(new char[] { '-' });
if (parts.Length != 6)
{
return false;
}
if (parts[0].ToUpper() != "AMCHART")
{
return false;
}
if (parts[1].ToUpper() != "NETL")
{
return false;
}
int n1 = int.Parse(parts[3]);
int n2 = int.Parse(parts[4]);
int n3 = int.Parse(parts[5]);
return (Math.Abs((int) ((((n1 * 8) - (n2 * 7)) + 0x4d2) % 0x2710)) == n3);
}
catch
{
return false;
}
}
然后找一个满足条件的注册号也不难了,
例如:AMCHART-NETL-Cracked-10-10-1244
最后写入在web.config里面即可