Java Code entschlüsseln?

Software für PC wie Open Office, Antvirenprogramme, Firewalls usw. Programmiersprachen wie Visual Basic, Pascal, C++.

Software für PC wie Open Office, Antvirenprogramme, Firewalls usw. Programmiersprachen wie Visual Basic, Pascal, C++.

Moderator: Moderatorengruppe

Java Code entschlüsseln?

Neuer Beitragvon Electronic-TIGER am Sonntag 31. Dezember 2006, 17:11

Hallo Leute!

Ich habe aus einem dekompilierten Java Applet diese Zeile, die es zu "entschlüsseln" gilt:
Code: Alles auswählen
if(txtlogin.getText().trim().toUpperCase().intern() == inuser[2 * (i - 1) + 2].trim().toUpperCase().intern() && txtpass.getText().trim().toUpperCase().intern() == inuser[2 * (i - 1) + 3].trim().toUpperCase().intern())


Das ganze sollen, glaube ich, die Eingaben sein, die man in zwei Felder names "Login" und "Password" machen muss. Welche sind es?

LG & einen guten Rutsch

Mathias
Electronic-TIGER
Threadstarter
23897
Silber Mitglied
 
Beiträge: 248
Registriert: Mittwoch 17. August 2005, 18:33
Postleitzahl: 34131
Land: Germany / Deutschland

Neuer Beitragvon karahead am Montag 1. Januar 2007, 15:27

Das ganze sollen, glaube ich, die Eingaben sein, die man in zwei Felder names "Login" und "Password" machen muss. Welche sind es?


Bin nicht sicher ob ich verstanden hab, was du meinst aber txtlogin ist ein JTextField und txtpass ist ein JPasswordField.
Der Inhalt von txtlogin und txtpass werden mit dem Inhalt eines String Arrays verglichen.
karahead
23916
Bronze Mitglied
 
Beiträge: 69
Registriert: Mittwoch 21. September 2005, 17:03

Neuer Beitragvon Electronic-TIGER am Montag 1. Januar 2007, 15:40

Ah... Danke. Also um es vorweg zu nehmen: Ich habe keine Ahnung von Java. :wink:
Also bedeuten diese Zeilen nur, dass dort diese Felder sein sollen, nicht aber ihre Eingaben? Wie kann man den den Inhalt der String Arrays herausfinden?

LG

Mathias
Electronic-TIGER
Threadstarter
23918
Silber Mitglied
 
Beiträge: 248
Registriert: Mittwoch 17. August 2005, 18:33
Postleitzahl: 34131
Land: Germany / Deutschland

Neuer Beitragvon einballimwasser am Montag 1. Januar 2007, 15:54

na ja.... ich würd dr empfehlen es so zu machen: Kauf dir ein Buch, denn anders wirst du sowas nicht verstehen, oder immer damit problem haben...Java ist eine einfache, leicht zu verstehende Programmiersprache, doch mann muss sich reinlesen. Ich habe nach der 30 seite aufgehört, da ich sowas nicht brauche, ich entwickle webandendungen/websites, dynamische.
Gruß byspeed
einballimwasser
23919
 

Neuer Beitragvon Electronic-TIGER am Montag 1. Januar 2007, 16:06

OK :D
Electronic-TIGER
Threadstarter
23920
Silber Mitglied
 
Beiträge: 248
Registriert: Mittwoch 17. August 2005, 18:33
Postleitzahl: 34131
Land: Germany / Deutschland

Neuer Beitragvon karahead am Montag 1. Januar 2007, 18:31

Electronic-TIGER hat geschrieben:Ah... Danke. Also um es vorweg zu nehmen: Ich habe keine Ahnung von Java. :wink:
Also bedeuten diese Zeilen nur, dass dort diese Felder sein sollen, nicht aber ihre Eingaben? Wie kann man den den Inhalt der String Arrays herausfinden?

LG

Mathias


Meine Vermutung zu der Funktion: Dem Applet werden Nickname und Passwort übergeben und wenn die Daten mit dem Inhalt aus dem Array nicht übereinstimmen, dann wird eine Fehlermeldung ausgegeben oder ähnliches.
Die Felder können irgendwoanders im Code sein. In den 2 Zeilen werden nur die Eingaben ausgewertet.
So kannst du das Array auslesen
Code: Alles auswählen
for(int i=0; i<inuser.length; i++)
{
  System.out.println(inuser[i]); //Gibt den INhalt vom Array auf die Konsole aus
}


Wenn du mehr Code postest, dann kann ich dir auch noch mehr erzählen ;)


Bei dekompiliertem Code muss man aufpassen, da er vom Original abweichen kann. Je komplexer der orign. Code desto größer die Abweichung.

P.S. Java ist eine offenherzige Sprache, da muss man nicht unbedingt Geld ausgeben um an ein gutes Buch zu kommen.
"Java ist auch eine Insel"
karahead
23926
Bronze Mitglied
 
Beiträge: 69
Registriert: Mittwoch 21. September 2005, 17:03

Neuer Beitragvon Electronic-TIGER am Montag 1. Januar 2007, 18:45

Danke!
Das mit dem Array auslesen versuche ich gleich mal, der gesamte Code ist:
Code: Alles auswählen
import java.applet.Applet;
import java.applet.AppletContext;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.*;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.EventObject;

public class PasswdLevel4 extends Applet
    implements ActionListener
{

    public PasswdLevel4()
    {
        inuser = new String[22];
        totno = 0;
        countConn = null;
        countData = null;
        inURL = null;
        txtlogin = new TextField();
        label1 = new Label();
        label2 = new Label();
        label3 = new Label();
        txtpass = new TextField();
        lblstatus = new Label();
        ButOk = new Button();
        ButReset = new Button();
        lbltitle = new Label();
    }

    void ButOk_ActionPerformed(ActionEvent actionevent)
    {
        boolean flag = false;
        for(int i = 1; i <= totno / 2; i++)
            if(txtlogin.getText().trim().toUpperCase().intern() == inuser[2 * (i - 1) + 2].trim().toUpperCase().intern() && txtpass.getText().trim().toUpperCase().intern() == inuser[2 * (i - 1) + 3].trim().toUpperCase().intern())
            {
                lblstatus.setText("Login Success, Loading..");
                flag = true;
                String s = inuser[1].trim().intern();
                String s1 = getParameter("targetframe");
                if(s1 == null)
                    s1 = "_self";
                try
                {
                    finalurl = new URL(getCodeBase(), s);
                }
                catch(MalformedURLException _ex)
                {
                    lblstatus.setText("Bad URL");
                }
                getAppletContext().showDocument(finalurl, s1);
            }

        if(!flag)
            lblstatus.setText("Invaild Login or Password");
    }

    void ButReset_ActionPerformed(ActionEvent actionevent)
    {
        txtlogin.setText("");
        txtpass.setText("");
    }

    public void actionPerformed(ActionEvent actionevent)
    {
        Object obj = actionevent.getSource();
        if(obj == ButOk)
        {
            ButOk_ActionPerformed(actionevent);
            return;
        }
        if(obj == ButReset)
            ButReset_ActionPerformed(actionevent);
    }

    public void destroy()
    {
        ButOk.setEnabled(false);
        ButReset.setEnabled(false);
        txtlogin.setVisible(false);
        txtpass.setVisible(false);
    }

    public void inFile()
    {
        new StringBuffer();
        try
        {
            countConn = inURL.openStream();
            countData = new BufferedReader(new InputStreamReader(countConn));
            String s;
            while((s = countData.readLine()) != null)
                if(totno < 21)
                {
                    totno = totno + 1;
                    inuser[totno] = s;
                    s = "";
                } else
                {
                    lblstatus.setText("Cannot Exceed 10 users, Applet fail start!");
                    destroy();
                }
        }
        catch(IOException ioexception)
        {
            getAppletContext().showStatus("IO Error:" + ioexception.getMessage());
        }
        try
        {
            countConn.close();
            countData.close();
            return;
        }
        catch(IOException ioexception1)
        {
            getAppletContext().showStatus("IO Error:" + ioexception1.getMessage());
        }
    }

    public void init()
    {
        setLayout(null);
        setSize(361, 191);
        add(txtlogin);
        txtlogin.setBounds(156, 72, 132, 24);
        label1.setText("Please Enter Login Name & Password");
        label1.setAlignment(1);
        add(label1);
        label1.setFont(new Font("Dialog", 1, 12));
        label1.setBounds(41, 36, 280, 24);
        label2.setText("Login");
        add(label2);
        label2.setFont(new Font("Dialog", 1, 12));
        label2.setBounds(75, 72, 36, 24);
        label3.setText("Password");
        add(label3);
        add(txtpass);
        txtpass.setEchoChar('*');
        txtpass.setBounds(156, 108, 132, 24);
        lblstatus.setAlignment(1);
        label3.setFont(new Font("Dialog", 1, 12));
        label3.setBounds(75, 108, 57, 21);
        add(lblstatus);
        lblstatus.setFont(new Font("Dialog", 1, 12));
        lblstatus.setBounds(14, 132, 344, 24);
        ButOk.setLabel("OK");
        add(ButOk);
        ButOk.setFont(new Font("Dialog", 1, 12));
        ButOk.setBounds(105, 156, 59, 23);
        ButReset.setLabel("Reset");
        add(ButReset);
        ButReset.setFont(new Font("Dialog", 1, 12));
        ButReset.setBounds(204, 156, 59, 23);
        lbltitle.setAlignment(1);
        add(lbltitle);
        lbltitle.setFont(new Font("Dialog", 1, 12));
        lbltitle.setBounds(12, 14, 336, 24);
        String s = getParameter("title");
        lbltitle.setText(s);
        ButOk.addActionListener(this);
        ButReset.addActionListener(this);
        infile = new String("level4");
        try
        {
            inURL = new URL(getCodeBase(), infile);
        }
        catch(MalformedURLException _ex)
        {
            getAppletContext().showStatus("Bad Counter URL:" + inURL);
        }
        inFile();
    }

    private URL finalurl;
    String infile;
    String inuser[];
    int totno;
    InputStream countConn;
    BufferedReader countData;
    URL inURL;
    TextField txtlogin;
    Label label1;
    Label label2;
    Label label3;
    TextField txtpass;
    Label lblstatus;
    Button ButOk;
    Button ButReset;
    Label lbltitle;
}


LG

Mathias
Electronic-TIGER
Threadstarter
23927
Silber Mitglied
 
Beiträge: 248
Registriert: Mittwoch 17. August 2005, 18:33
Postleitzahl: 34131
Land: Germany / Deutschland

Neuer Beitragvon einballimwasser am Mittwoch 3. Januar 2007, 18:06

hmm, klar ist JAVA eine insel und eine feine Sprache...aber um es richtig zu verstehen, muss man sich en gutes buch eben leisten ^^ PHP hab ich leider mit tuts gelernt, und heut kann ichs immer noch net so richtig....;)
einballimwasser
23958
 

Neuer Beitragvon karahead am Mittwoch 3. Januar 2007, 20:43

"Java ist auch eine Insel" ist ein Link zu einem sehr guten OpenBook. Es ist immer aktuell und man kann es auch bestellen, was aber unnötig ist, weil ja online verfügbar ist.
karahead
23966
Bronze Mitglied
 
Beiträge: 69
Registriert: Mittwoch 21. September 2005, 17:03

Neuer Beitragvon einballimwasser am Freitag 5. Januar 2007, 10:19

lol [/SPAM] :lol:
einballimwasser
23992
 


Zurück zu Computer Software

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 16 Gäste