hcd737p 发表于 2003-8-25 20:40:03

f72dd062f2bd1f78b749218a11111111111111100E04CE064CA

4C8E9BD4914a3c69b749218a11111111111111100E0CE064CA

ydnss 发表于 2003-9-2 11:00:55

package net.bbiagent.explorer.ui.admin;

import java.applet.Applet;
import java.awt.TextComponent;
import java.io.InputStream;
import java.io.PrintWriter;
import java.net.URL;
import java.net.URLConnection;
import java.util.Date;
import java.util.Locale;
import java.util.zip.CRC32;
import net.bbiagent.explorer.BBIagent;
import net.bbiagent.explorer.ui.base.MenuPanel;

// Referenced classes of package net.bbiagent.explorer.ui.admin:
//            Register

class php extends Thread
{

    public void run()
    {
      if(agent.regMAC.length() < 12 || !agent.execute("/bin/pfd"))
      {
            Register.access$000(Register.this, true);
            return;
      }
      StringBuffer stringbuffer = new StringBuffer();
      stringbuffer.append("ref=" + agent.getRefNo(""));
      agent.regMAC = agent.regMAC.substring(0, 12);
      stringbuffer.append("&mac=" + agent.regMAC);
      stringbuffer.append("&name=" + BBIagent.encode(tfName.getText()));
      stringbuffer.append("&email=" + BBIagent.encode(tfEmail.getText()));
      stringbuffer.append("&sn=" + BBIagent.encode(tfSerialNo.getText()));
      try
      {
            Thread.sleep(1000L);
      }
      catch(Exception exception) { }
      String s = php + "/reg." + php;
      URLConnection urlconnection = postURL(getRootURL() + s, getEncodedVer() + "&" + stringbuffer.toString() + "&" + getEncodedEnv(), "RG");
      if(urlconnection != null)
      {
            byte abyte0[] = new byte;
            try
            {
                InputStream inputstream = urlconnection.getInputStream();
                int i = inputstream.read(abyte0);
                inputstream.close();
                if(i > 0)
                {
                  int j = 0;
                  String s1 = new String(abyte0, 1, i - 1);
                  Register _tmp = Register.this;
                  String s6 = agent.readFile(BBIagent.ROUTER_SETUP);
                  CRC32 crc32 = new CRC32();
                  crc32.update(s6.getBytes(), 0, s6.getBytes().length);
                  String s3 = Long.toHexString(crc32.getValue());
                  crc32 = new CRC32();
                  crc32.update(agent.regMAC.getBytes(), 0, 12);
                  String s4 = Long.toHexString(crc32.getValue());
                  String s5 = s3 + s4 + "1111111111111111";
                  crc32 = new CRC32();
                  crc32.update(s5.getBytes(), 0, 32);
                  String s2 = Long.toHexString(crc32.getValue());
                  s1 = s2 + s5;
                  abyte0 = 48;
                  if(abyte0 != 48)
                        agent.alert(s1 + "(" + new String(abyte0, 0, 1) + ")");
                  else
                  if((j = Register.access$100(Register.this, s1)) > 0)
                        agent.alert(agent.rc("esn") + "(" + j + ")");
                } else
                {
                  agent.alert(agent.rc("esn") + "(" + i + ")");
                }
            }
            catch(Exception exception1) { }
      }
      Register.access$000(Register.this, true);
    }

    private String getRootURL()
    {
      String s = agent.get("BP");
      String s1;
      if(agent.isStandalone)
      {
            s1 = "http://" + agent.routerIP + ":" + s + "/";
      } else
      {
            s1 = agent.getCodeBase().toString();
            s1 = s1.substring(0, s1.length() - 1) + ":" + s + "/";
      }
      return s1;
    }

    private URLConnection postURL(String s, String s1, String s2)
    {
      try
      {
            URL url = new URL(s);
            URLConnection urlconnection = url.openConnection();
            urlconnection.setDoInput(true);
            urlconnection.setDoOutput(true);
            urlconnection.setUseCaches(false);
            urlconnection.setAllowUserInteraction(false);
            urlconnection.setRequestProperty("Referer", s2);
            urlconnection.setRequestProperty("Content-length", Integer.toString(s1.length()));
            urlconnection.setRequestProperty("content-type", "application/x-www-form-urlencoded");
            PrintWriter printwriter = new PrintWriter(urlconnection.getOutputStream());
            printwriter.print(s1);
            printwriter.flush();
            printwriter.close();
            return urlconnection;
      }
      catch(Exception exception)
      {
            return null;
      }
    }

    private String getEncodedVer()
    {
      StringBuffer stringbuffer = new StringBuffer();
      stringbuffer.append("bversion=" + BBIagent.encode("1.8.1"));
      stringbuffer.append("&bbuild=" + BBIagent.encode("001"));
      stringbuffer.append("&country=" + BBIagent.encode(agent.locale.getCountry()));
      stringbuffer.append("&lang=" + BBIagent.encode(agent.locale.getLanguage()));
      stringbuffer.append("&mode=" + agent.runMode);
      return stringbuffer.toString();
    }

    private String getEncodedEnv()
    {
      Object aobj[][] = {
            {
                "cversion", "java.class.version"
            }, {
                "jversion", "java.version"
            }, {
                "oname", "os.name"
            }, {
                "oarch", "os.arch"
            }, {
                "oversion", "os.version"
            }
      };
      StringBuffer stringbuffer = new StringBuffer();
      stringbuffer.append("tz=" + BBIagent.encode((new Date()).toString()));
      for(int i = 0; i < aobj.length; i++)
            stringbuffer.append("&" + (String)aobj + "=" + BBIagent.encode(System.getProperty((String)aobj)));

      return stringbuffer.toString();
    }

    String php;

    ()
    {
      php = "php";
    }
}

ydnss 发表于 2003-9-2 11:18:28

感觉提供的注册文件和http://www.bbiagent.net上下载的不是同一个版本,像是和以前不同版本一起拼凑的,望能提供破解前的源文件!

网上闲人 发表于 2003-9-2 16:07:44

可以发给我一个注册机吗?

netidler@sohu.com

gogod110 发表于 2003-9-3 12:50:47

package net.bbiagent.explorer.ui.admin;

import java.applet.Applet;
import java.awt.TextComponent;
import java.io.InputStream;
import java.io.PrintWriter;
import java.net.URL;
import java.net.URLConnection;
import java.util.Date;
import java.util.Locale;
import net.bbiagent.explorer.BBIagent;
import net.bbiagent.explorer.ui.base.MenuPanel;

// Referenced classes of package net.bbiagent.explorer.ui.admin:
//            Register

class php extends Thread
{

    public void run()
    {
      if(agent.regMAC.length() < 12 || !agent.execute("/bin/pfd"))
      {
            Register.access$000(Register.this, true);
            return;
      }
      StringBuffer stringbuffer = new StringBuffer();
      stringbuffer.append("ref=" + agent.getRefNo(""));
      agent.regMAC = agent.regMAC.substring(0, 12);
      stringbuffer.append("&mac=" + agent.regMAC);
      stringbuffer.append("&name=" + BBIagent.encode(tfName.getText()));
      stringbuffer.append("&email=" + BBIagent.encode(tfEmail.getText()));
      stringbuffer.append("&sn=" + BBIagent.encode(tfSerialNo.getText()));
      try
      {
            Thread.sleep(1000L);
      }
      catch(Exception exception) { }
      String s = php + "/reg." + php;
      URLConnection urlconnection = postURL(getRootURL() + s, getEncodedVer() + "&" + stringbuffer.toString() + "&" + getEncodedEnv(), "RG");
      if(urlconnection != null)
      {
            byte abyte0[] = new byte;
            try
            {
                InputStream inputstream = urlconnection.getInputStream();
                int i = inputstream.read(abyte0);
                inputstream.close();
                if(i > 0)
                {
                  int j = 0;
                  String s1 = new String(abyte0, 1, i - 1);
                  if(abyte0 != 48)
                        agent.alert(s1 + "(" + new String(abyte0, 0, 1) + ")");
                  else
                  if((j = Register.access$100(Register.this, s1)) > 0)
                        agent.alert(agent.rc("esn") + "(" + j + ")");
                } else
                {
                  agent.alert(agent.rc("esn") + "(" + i + ")");
                }
            }
            catch(Exception exception1) { }
      }
      Register.access$000(Register.this, true);
    }

    private String getRootURL()
    {
      String s1 = agent.get("BP");
      String s;
      if(agent.isStandalone)
      {
            s = "http://" + agent.routerIP + ":" + s1 + "/";
      } else
      {
            s = agent.getCodeBase().toString();
            s = s.substring(0, s.length() - 1) + ":" + s1 + "/";
      }
      return s;
    }

    private URLConnection postURL(String s, String s1, String s2)
    {
      try
      {
            URL url = new URL(s);
            URLConnection urlconnection = url.openConnection();
            urlconnection.setDoInput(true);
            urlconnection.setDoOutput(true);
            urlconnection.setUseCaches(false);
            urlconnection.setAllowUserInteraction(false);
            urlconnection.setRequestProperty("Referer", s2);
            urlconnection.setRequestProperty("Content-length", Integer.toString(s1.length()));
            urlconnection.setRequestProperty("content-type", "application/x-www-form-urlencoded");
            PrintWriter printwriter = new PrintWriter(urlconnection.getOutputStream());
            printwriter.print(s1);
            printwriter.flush();
            printwriter.close();
            return urlconnection;
      }
      catch(Exception exception)
      {
            return null;
      }
    }

    private String getEncodedVer()
    {
      StringBuffer stringbuffer = new StringBuffer();
      stringbuffer.append("bversion=" + BBIagent.encode("1.8.1"));
      stringbuffer.append("&bbuild=" + BBIagent.encode("001"));
      stringbuffer.append("&country=" + BBIagent.encode(agent.locale.getCountry()));
      stringbuffer.append("&lang=" + BBIagent.encode(agent.locale.getLanguage()));
      stringbuffer.append("&mode=" + agent.runMode);
      return stringbuffer.toString();
    }

    private String getEncodedEnv()
    {
      Object aobj[][] = {
            {
                "cversion", "java.class.version"
            }, {
                "jversion", "java.version"
            }, {
                "oname", "os.name"
            }, {
                "oarch", "os.arch"
            }, {
                "oversion", "os.version"
            }
      };
      StringBuffer stringbuffer = new StringBuffer();
      stringbuffer.append("tz=" + BBIagent.encode((new Date()).toString()));
      for(int i = 0; i < aobj.length; i++)
            stringbuffer.append("&" + (String)aobj + "=" + BBIagent.encode(System.getProperty((String)aobj)));

      return stringbuffer.toString();
    }

    String php;

    ()
    {
      php = "php";
    }

gogod110 发表于 2003-9-3 12:52:17

原版Register$Subscribe.class代码
大家看看和上面那个破解版本区别之大。。。。。。

gogod110 发表于 2003-9-3 12:58:07

原版里的s1 = "http://" + agent.routerIP + ":" + s + "/";
破解里没有,我想这应该是固定IP不能破解的原因!

kongwmy 发表于 2003-9-9 02:58:46

常用的网卡就可以了,赞成你的决定,希望你早日成功!

iop 发表于 2003-9-10 17:33:56

KEY=a3139e14a04b36a5531e8d1511111111111111110050BAF2EC9C

iop 发表于 2003-9-10 17:40:42

KEY=168d6e14c1cc444f7f2fd8b6111111111111111100E04C831517

wty 发表于 2003-9-10 20:20:30

key :935ca4865f453dd6e82e585211111111111111110010B5D221FA

wintz 发表于 2003-10-4 03:39:29

我的机子配置如下,哪位大哥可以把注册码发给我?谢谢!wtz@21cn.com


IP 地址 : 192.168.2.1
子网掩码 : 255.255.255.0   
处理器型号 : Intel Celeron   
内存大小 : 128 MB
内部网络设备 : RealTek RTL8029 10M PCI Ethernet
外网连接协议 : PPPoE 外部网络设备 : SMC 1211TX EZCard Ethernet   
参考编号 : DB85-1BC6-3F7D-26F2   
文件大小 : 1076298 bytes

wlself 发表于 2003-10-4 21:34:18

KEY=f902cb81f3d400561d61601e111111111111111100D0F80ACD9E

soft_route 发表于 2004-2-1 22:24:12

问题是要能把镜像内的程序搞出来就好了,光靠收集的KEY,我看是没法子编出注册机的!
http://www.bbiagent.net/gb/register.htm
我看注册码就是通过“软件参考编号”然后加一定的算法得来的,而这个“软件参考编号”就是根据机器的一些特征码得来的!

sdbaby 发表于 2004-2-2 01:52:39

现在搞这个有点意义不大了
几年前这个东西刚出来时我用它,因为没有其他的更好选择
现在情况变了,一个硬件的NAT方式的宽带路由器,本身集成 5 口的百兆交换机,才 170 元
主要的原因是bbi欠缺的太多,他不能称之为路由器
反过来看看这几年出现的几个新的东西,比如routeros ,bbi不足的太多了
很多人反对使用硬盘,其实一个小硬盘不足几十元,可靠性也没问题的,几十万的防火墙里面,一样是硬盘
页: 1 [2]
查看完整版本: 打算作一个BBI映像离线生成工具,看大家需要对哪些网卡的支持