亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? newaccountapplet.java

?? 一個木馬程序源碼
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
/* *   File:  NewAccountApplet.java * *   The main applet code that creates a new hushmail account. * *   version 1.02 v1a *   Copyright 1998, 1999 by Hush Communications Corporation, BWI *//* *  Applet parameters: * *  username = < the users HushMail account > *  userinfo = < a list of items of data on the user seperated by & > *  diskspace = < the diskspace to be allocated to the user in bytes > *  loginpage = < URL of HushMail login page > *  sessionID = < a 64 bit hex number represented as a string > *  sessionKey = < a 128 bit hex number represented as a string > *  R0 = < red value for applet color > *  G0 = < green value for applet color > *  B0 = < blue value for applet color > *  R1 = < red value for applet color > *  G1 = < green value for applet color > *  B1 = < blue value for applet color > */package hushcode;import java.awt.*;import java.applet.*;import java.net.*;import java.io.*;import java.util.*;import hushcode.HushSHA1;import hushcode.BlowfishCipher;import hushcode.ElGamalKeys;import hushcode.Conversions;import hushcode.ByteQueue;final public class NewAccountApplet extends Applet{   private static final int KEYSTRENGTH = 1024;   private boolean keysGenerated = false;   private String encPrivateKey;   private String publicKey;   /**    *   Variables concerning obtaining random numbers from mouse movement.    */   //  Coordinates of the top left corner of the main 256X256 square   int mainx;   int mainy;   int mainwidth = 256;   int mainheight = 256;   //  Previous x and y coordinates   int px;     int py;   //  Arrays of x and y defining several squares   int numberOfSquares = 128;   int[] sx = new int[numberOfSquares];   int[] sy = new int[numberOfSquares];   int squares[][] = new int[mainwidth][mainheight];   int sw = 12;   int sh = 12;   //  True until random squares have been generated   private boolean initializing;   /*  To track which squares have been hit    *  numberOfsqares (128) indicates that square has not yet been hit (initialized state)    */   int square0=numberOfSquares;   //current square   int square1=numberOfSquares;   //previous squares   int square2=numberOfSquares;       //  Every ten zone changes get system time.  Track with this variable.   int squareCounter = 0;   // Indicates whether mouse movements still need to be used to queue bits.    private boolean getMouse = true;   private ByteQueue bytes;   private int bitsNeeded = KEYSTRENGTH;   private int nextGraphNotchAt = bitsNeeded/32;   /**    *  Other variables    */   private String serverAddress;   private int serverPort = 21;   private String hushHome = "";   private Random rand;   long randSeed = 0;   private Graphics g;   private Color color;   private TextField usernameField;   private String username;   private String userinfo;   private String diskspace;    private TextField passphraseField;   private TextField passphraseConfirmField;   private Label aLabel;   private Label bLabel;   private Button loginButton;   private Button submitPassphraseButton;   private Button confirmPassphraseButton;   private Button submitUsernameButton;   //  The pseudo stream cipher for communication between applet and server   private BlowfishCipher blowfishPipe;   //  The sessionID.  Used by server to locate sessionKey.   private byte[] sessionIDBytes;   //  An output stream to the socket   private BufferedOutputStream out;   //  An input stream from the socket.   private BufferedInputStream eIn;   /* An input stream from a decrypted String which is used as a buffer    * to store data from eIn after it has been decrypted with blowfishPipe    */   private DataInputStream in;     public void init()   {      username = getParameter("username");      userinfo = getParameter("userinfo").replace('&','\n')+"\n";      diskspace= getParameter("diskspace");      hushHome = getParameter("loginpage");      color = new Color(Integer.parseInt(getParameter("R1")),Integer.parseInt(getParameter("G1")),Integer.parseInt(getParameter("B1")));      serverAddress = getCodeBase().getHost();      bytes = new ByteQueue();      //  Convert the sessionID from a hex string to a byte array      sessionIDBytes = Conversions.hexStringToBytes(getParameter("sessionID"));      /* Convert the sessionKey from a hex string to a byte array and use       * it to instantiate the CBC Blowfish cipher which will encrypt       * communication between applet and server.       */      byte[] sessionKeyBytes = Conversions.hexStringToBytes(getParameter("sessionKey"));      blowfishPipe = new BlowfishCipher();      blowfishPipe.setKey(sessionKeyBytes);      setFont(new Font("Helvetica",Font.PLAIN,12));      setBackground(new Color(Integer.parseInt(getParameter("R0")),Integer.parseInt(getParameter("G0")),Integer.parseInt(getParameter("B0"))));      setForeground(Color.white);      setLayout(new GridBagLayout());      aLabel = new Label("You must now generate some random numbers to create your keys.");      add(this,aLabel,0,0,1,1,0,0,0,0,N,NO,0,0,0,0);      bLabel = new Label("Move the mouse in the box until the graph fills");      add(this,bLabel,0,1,1,1,0,0,0,1,N,NO,0,0,0,0);      add(bLabel);       g = this.getGraphics();         initializing = true;   }   public void paint(Graphics g)   {      paintComponents(g);      /* Draw a rectangle for the user to move the mouse in, and a bar graph       * to track the random bits enqueued.       */      if (getMouse)      {         mainx=bounds().x+(bounds().width-mainwidth)/2;         mainy=bounds().y+aLabel.bounds().height+bLabel.bounds().height+10;              Rectangle r = new Rectangle(mainx,mainy,mainwidth,mainheight);         g.setColor(color);         g.fillRect(r.x,r.y,r.width,r.height);         //  Set up graph based on the length of the desired bit array         for (int x=mainx; x<mainx+mainwidth; x=x+8)         {            Rectangle br = new Rectangle(x+2, mainy+mainheight+10, 4, 20);            g.fillRect(br.x, br.y, br.width, br.height);         }      }      g.setColor(Color.white);   }   public boolean mouseMove(Event e, int x, int y)   {      if (x<mainx || y<mainy || x>=mainx+mainwidth || y>=mainy+mainheight)         return true;      else if (initializing)      {         //  Seed the random number generator         randSeed = randSeed ^ ((long)x<<40)+((long)y<<32)+new Date().getTime();         rand = new Random(randSeed);             //  Randomly generate a number of squares in the main square         boolean goodSquare = true;         for (int n=0; n<numberOfSquares; n++)            for(; ;)            {               goodSquare = true;               sx[n] = Math.abs(rand.nextInt())%(mainwidth-sw);               sy[n] = Math.abs(rand.nextInt())%(mainheight-sh);               for (int nn=0;nn<n;nn++)                  if (!(sx[n]<sx[nn]-sw||sy[n]<sy[nn]-sh||sx[n]>sx[nn]+sw||sy[n]>sy[nn]+sh))                  {                     goodSquare = false;                     break;                  }               if (goodSquare)                   break;            }               //  Clear the squares         squares = new int[mainheight][mainwidth];         for (int n=0; n<numberOfSquares; n++)            for (int xx=sx[n]; xx<sx[n]+sw; xx++)               for (int yy=sy[n]; yy<sy[n]+sh; yy++)                   squares[xx][yy] = n+1;         initializing = false;/*       //  For debugging, show squares.         Rectangle r = new Rectangle(mainx,mainy,mainwidth,mainheight);         g.setColor(color);         g.fillRect(r.x,r.y,r.width,r.height);         g.setColor(Color.white);         for (int n=0; n<numberOfSquares; n++)            g.fillRect(mainx+sx[n],mainy+sy[n],sw,sh);*/      }      else if (getMouse)      {         boolean inSquare = false;           int n = squares[x-mainx][y-mainy]-1;         if (n!=-1)         {		    //System.out.println("Hit square "+n);            square2 = square1;            square1 = square0;            square0 = n;            /*  Exit if square is one of past two hit, or this is one of first              *  three squares hit (initialized state - no history)              */            if (square0==square1 || square0==square2 || square1==numberOfSquares ||                square2==numberOfSquares)  return true;            inSquare = true;         }         if (!inSquare) return true;          //  Get first five bits (5 LSB's of square #)         bytes.enqueueBits(square0,5);         /* Split square in half vertically (and then horizontally)          * and take one bit based on side mouse is on.          */          bytes.enqueueBits( (x-sx[square0] < (sw/2) ) ? 0:1 , 1);         bytes.enqueueBits( (y-sy[square0] < (sh/2) ) ? 0:1 , 1);         /*  Get eighth bit          *  (left or right of square) xor (top or bottom of square) xor (MSB of square #)          */         if ( ((x-sx[square0] < (sw/2)) ^ (y-sy[square0] < (sh/2) ) ^               (square0 < (numberOfSquares / 2))))  bytes.enqueueBits(0,1);         else  bytes.enqueueBits(1,1);         if (squareCounter++ == 8)          {            initializing = true;            squareCounter = 0;         }         if (bytes.bitsEnqueued()-1 >= nextGraphNotchAt)         {            //  Fill another notch in the graph            Rectangle br = new Rectangle(               mainx + ((bytes.bitsEnqueued()-1) / (bitsNeeded/32)-1) * 8 + 2,               mainy + mainheight + 10, 4, 20 );            g.fillRect(br.x, br.y, br.width, br.height);            nextGraphNotchAt = nextGraphNotchAt + bitsNeeded/32;         }         if (bitsNeeded<bytes.bitsEnqueued())          {            getMouse = false;            //  Erase rectangle and graph.            g.setColor(Color.black);            Rectangle ar = this.bounds();                     g.fillRect(ar.x, ar.y, ar.width, ar.height);            repaint();            enterPassphrase("Now please enter a passphrase.");         }        }      return true;   }   /**    *  Handle button clicks and returns.    */   public boolean action(Event e, Object o)   {      if ((e.target==passphraseField || e.target==submitPassphraseButton)        && passphraseField.getText().length()>0)         confirmPassphrase();      else if ((e.target==passphraseConfirmField || e.target==confirmPassphraseButton)         && passphraseConfirmField.getText().length()>0)      {         //  Check if user entered the same passphrase in both fields         if (passphraseField.getText().equals(passphraseConfirmField.getText()))            createAccount();         else enterPassphrase("Your passphrase didn't match.  Try again.");       }      else if ((e.target==usernameField || e.target==submitUsernameButton)        && usernameField.getText().length()>0)      {         //  Check for validity of entered username         username = usernameField.getText().toLowerCase();         if (!checkUsername(username))            enterUsername("You entered a bad username.  Try again.");         else createAccount();      }      else if (e.target==loginButton)      {

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧洲人成人精品| 在线免费精品视频| 日本视频一区二区| 婷婷综合另类小说色区| 一区二区欧美精品| 亚洲午夜在线观看视频在线| 一级精品视频在线观看宜春院| 亚洲欧美自拍偷拍| 一区二区三区在线视频免费观看 | 国产精品亚洲а∨天堂免在线| 日韩成人精品在线观看| 视频一区在线播放| 麻豆精品视频在线| 国产91精品在线观看| 成人黄色综合网站| 色88888久久久久久影院野外| 在线影院国内精品| 欧美精品日韩一本| 欧美成人精品二区三区99精品| 欧美精品一区二区三区久久久| 久久亚洲捆绑美女| 亚洲欧美经典视频| 男男成人高潮片免费网站| 国产一区二区三区久久久 | av不卡免费电影| 在线免费亚洲电影| 精品免费日韩av| 综合激情成人伊人| 亚洲国产欧美在线| 九九国产精品视频| 91在线码无精品| 4438x亚洲最大成人网| 2020国产精品| 亚洲一二三四在线| 国产尤物一区二区在线| 91亚洲精品久久久蜜桃| 日韩一区二区三区电影| 国产精品伦一区二区三级视频| 亚洲综合在线第一页| 激情图区综合网| 色婷婷精品大视频在线蜜桃视频| 91精品视频网| 国产精品嫩草久久久久| 日韩国产精品91| 91亚洲精品乱码久久久久久蜜桃| 日韩欧美三级在线| 亚洲精品欧美激情| 成人网页在线观看| 日韩一本二本av| 亚洲综合久久久久| 成人免费视频一区| 日韩欧美三级在线| 亚洲国产一二三| 不卡视频在线看| 精品少妇一区二区三区日产乱码 | 欧美四级电影网| 欧美国产丝袜视频| 麻豆精品视频在线观看免费| 色爱区综合激月婷婷| 中文子幕无线码一区tr| 精品亚洲欧美一区| 宅男在线国产精品| 亚洲一区二区精品视频| 91麻豆成人久久精品二区三区| 26uuu另类欧美| 美女国产一区二区三区| 欧美视频一二三区| 一区二区免费视频| 一本大道久久a久久精品综合| 久久久国产午夜精品| 卡一卡二国产精品| 日韩一级黄色片| 天天影视涩香欲综合网| 欧美日免费三级在线| 亚洲欧美色综合| 色又黄又爽网站www久久| 国产精品久久久久毛片软件| 岛国精品在线观看| 国产欧美精品一区二区色综合朱莉| 麻豆精品视频在线观看免费| 3atv一区二区三区| 久久国产夜色精品鲁鲁99| 欧美一区二区三区电影| 美腿丝袜在线亚洲一区| 日韩免费高清av| 国内欧美视频一区二区| 日本一区二区三级电影在线观看| 国产精品资源在线观看| 国产精品丝袜久久久久久app| 成人一区二区视频| 国产精品久久久久久久浪潮网站| 波多野结衣在线一区| 亚洲乱码日产精品bd| 欧美日韩性生活| 免费视频一区二区| 久久综合成人精品亚洲另类欧美| 国产一区91精品张津瑜| 国产精品久久久久久亚洲毛片| 91香蕉视频污在线| 午夜久久久久久久久| 精品日韩成人av| 成人免费va视频| 亚洲影院久久精品| 精品国产乱码久久| eeuss鲁片一区二区三区在线观看| 亚洲欧洲三级电影| 欧美日韩国产另类一区| 国内精品国产成人国产三级粉色| 国产精品久99| 69堂国产成人免费视频| 韩国一区二区视频| 亚洲欧美成人一区二区三区| 欧美高清视频一二三区 | 日韩三级视频在线看| 国产成人av电影| 亚洲一区在线观看免费| 欧美成人女星排名| 一本到不卡精品视频在线观看| 日韩国产在线一| 中文字幕第一区综合| 欧美精品视频www在线观看| 国产91在线观看丝袜| 午夜精品123| 欧美国产亚洲另类动漫| 欧美日产在线观看| 成人美女视频在线看| 奇米综合一区二区三区精品视频| 国产欧美日韩在线视频| 欧美日韩激情在线| 成人国产视频在线观看| 麻豆91小视频| 有坂深雪av一区二区精品| 久久先锋影音av鲁色资源| 欧美偷拍一区二区| 成人avav影音| 国产乱码精品一区二区三| 亚洲一区二区三区四区在线观看 | www.一区二区| 精品一区二区三区影院在线午夜| 一区二区国产视频| 国产精品免费久久久久| 久久久精品国产免费观看同学| 欧美日本高清视频在线观看| 99re这里只有精品首页| 国产suv一区二区三区88区| 美洲天堂一区二卡三卡四卡视频| 亚洲一区二区中文在线| 自拍偷拍亚洲激情| 日本一区二区在线不卡| 精品国产sm最大网站| 在线播放欧美女士性生活| 色爱区综合激月婷婷| 99久久99久久精品免费看蜜桃| 国产suv一区二区三区88区| 精东粉嫩av免费一区二区三区| 日韩精品亚洲一区二区三区免费| 亚洲六月丁香色婷婷综合久久| 国产精品传媒视频| 国产精品无码永久免费888| 久久精品一区二区三区不卡牛牛| 精品欧美一区二区在线观看| 日韩欧美国产一二三区| 欧美一区二区三区四区高清| 欧美精品久久99| 91麻豆精品国产91久久久久久久久| 91高清视频在线| 在线精品视频免费播放| 欧美中文字幕一区二区三区亚洲| 91视频国产观看| 欧美影视一区在线| 欧美三级日韩三级国产三级| 777奇米四色成人影色区| 69久久夜色精品国产69蝌蚪网| 欧美一区二区黄| 精品99一区二区三区| 精品国产乱码久久久久久牛牛| 久久夜色精品国产噜噜av| 亚洲精品一区二区三区在线观看| 精品国产一区二区亚洲人成毛片 | 国产一区二区三区四区在线观看| 美日韩黄色大片| 国产毛片精品视频| 成人精品gif动图一区| 91免费观看在线| 欧美图区在线视频| 日韩你懂的在线播放| 欧美激情在线一区二区三区| 亚洲图片你懂的| 亚洲亚洲精品在线观看| 日韩电影一二三区| 国产经典欧美精品| 色女孩综合影院| 欧美一区二区三区视频在线观看 | 国内一区二区在线| 国产成人精品亚洲日本在线桃色 | 久久精品国产精品青草| 国产一区在线精品| av毛片久久久久**hd| 欧美日韩免费观看一区三区| 精品成人一区二区|