Willkommen bei Network & Security     remoteshell-security.com
Partnerseiten
login.php?sid=84262a18c096fca1d9d7be42d002dcde profile.php?mode=register&sid=84262a18c096fca1d9d7be42d002dcde faq.php?sid=84262a18c096fca1d9d7be42d002dcde memberlist.php?sid=84262a18c096fca1d9d7be42d002dcde search.php?sid=84262a18c096fca1d9d7be42d002dcde index.php?sid=84262a18c096fca1d9d7be42d002dcde

Foren-Übersicht » Eigene Programme » Programm zum De-/Chifrieren auf basis des Caesar Cipher
Neues Thema eröffnen  Neue Antwort erstellen Vorheriges Thema anzeigen :: Nächstes Thema anzeigen 
Programm zum De-/Chifrieren auf basis des Caesar Cipher
BeitragVerfasst am: 08.06.2006 17:24 Antworten mit Zitat
duddits
Anmeldedatum: 03.01.2006
Beiträge: 569
Wohnort: /proc




Hi,

diese kleine Programm ist zwar recht einfach, aber ich bin gerade dabei diees auch für weiter Algorithmen umzusetzen, Auf Basis dieses Codes. Deshalb poste ich das ganze hier mal:
Code:
/**
 *
 * @author duddits
 */
import java.awt.*;
import java.awt.event.*;
public class Crypto extends Frame implements ActionListener{

Label en,de,k;
    TextField ecrypt,decrypt,key;
    static Crypto g = new Crypto();
   
    Button action,clear;
    /** Creates a new instance of Crypto*/
    public Crypto() {
        //main settings
        super("Crypto");
        setSize(500,350);
        setLayout(null);
        setBackground(Color.white);
       
        // field to enter the text for the encryption
        de = new Label("Enter the text you want to encrypt:");
        de.setBounds(20,20,300,40);
        add(de);
       
        decrypt = new TextField();
        decrypt.setBounds(20,70,300,40);
        add(decrypt);
       
        // button to start the encryptions
        action = new Button("encrypt");
        action.setBounds(350,70,100,40);
        action.addActionListener(this);
        add(action);
       
        // a button to clear the fields
        clear = new Button("clear");
        clear.setBounds(350,140,100,40);
        clear.addActionListener(this);
        add(clear);
       
         // button to start the decryptions
        action = new Button("decrypt");
        action.setBounds(350,210,100,40);
        action.addActionListener(this);
        add(action);
       
        // field to enter the key for encrypting the text
        k = new Label("Key for encrypting the text:");
        k.setBounds(20,120,300,40);
        add(k);
       
        key = new TextField();
        key.setBackground(Color.black);
        key.setForeground(Color.white);
        key.setEchoChar('*');
        key.setBounds(20,160,200,40);
        add(key);
       
        // the result of the encryption
        en = new Label("Encryptet text:");
        en.setBounds(20,220,300,40);
        add(en);
       
        ecrypt = new TextField();
        ecrypt.setBounds(20,260,300,40);
        add(ecrypt);
       
        this.addWindowListener(new WindowAdapter(){
            public void windowClosing(WindowEvent e){
                System.exit(0);
            }
        });
    }
   
    public String encrypt (String sold) throws Exception
{
String s = sold.toLowerCase();
char character[] = {'z','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y'};
               int ik = key.getText().length();
               char c;
               int ci = 0;
               StringBuffer encryptstr = new StringBuffer (s.length());
               int i = 0;
               int j = 0;
               
                    while(j < s.length()){
                   
                   c = s.charAt(j);
                   i = 0;
                   if(c >= 'a' && c <= 'z'){
                   for(; i < character.length ; i++){
                   
                        if(character[i] == c){
                            ci = i;
                   }
                   
                         }
                   encryptstr.insert (j, character[(ci+ik)%26]);
                   
                   }else{
                   encryptstr.insert (j, c);
                   }
                   j++;
                   }


return encryptstr.toString();
}

 public String decrypt (String sold) throws Exception
{
String s = sold.toLowerCase();
char character[] = {'z','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y'};
               int ik = key.getText().length(); 
               char c;
               int ci = 0;
               StringBuffer decryptstr = new StringBuffer (s.length());
               int i = 0;
               int j = 0;
                    while(j < s.length()){
                   
                   c = s.charAt(j);
                   i = 0;
                   if(c >= 'a' && c <= 'z'){
                   for(; i < character.length ; i++){
                   
                        if(character[i] == c){
                            ci = i;
                   }
                   
                         }
                   decryptstr.insert (j, character[(ci-ik+26)%26]);
                   
                   }else{
                   decryptstr.insert (j, c);
               }
               j++;}

return decryptstr.toString();
}
   
    public void actionPerformed(ActionEvent ae){
        String asave = ae.getActionCommand();
        if(asave.equals("encrypt")){
            try{
            String sold = decrypt.getText();
            String snew = g.encrypt(sold);
            ecrypt.setText(snew);
            }catch(Exception e){
                System.err.println(e.getMessage());
            }
        }else if(asave.equals("clear")){
            ecrypt.setText("");
            decrypt.setText("");
            key.setText("");
        }else if(asave.equals("decrypt")){
            try
            {
             String sold = ecrypt.getText().toLowerCase();
              String snew = g.decrypt(sold);
            decrypt.setText(snew);   
            }catch(Exception e){
                System.err.println(e.getMessage());
            }
                 
       
        }
    }
   
    public static void main(String args[]){
        g.setVisible(true);
    }


Achso der Schlüssel hier ist natürlich beidiesen Algorithmus nur dafür da um die Position der Verschiebung zu definieren. Dabei wrid einfach die länge des Strings untersucht und zum verschieben genutzt.

mfg duddits

_________________
Quidquid agis, prudenter agas et respice finem!

Jabber ID: duddits@amessage.info
Webseite: http://www.remoteshell-security.com
Weblog: http://blog.remoteshell-security.com
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Jabber ID
intorr
BeitragVerfasst am: 20.06.2018 07:25 Antworten mit Zitat
EmilHeb
Anmeldedatum: 20.06.2018
Beiträge: 1




Develops a global understanding of the world’s interconnections and contributes to a bottom-up global moral order; and, most importantly, bridges all you can eat spanish buffet near me societal divisions, and embraces the challenges humanity faces.
Benutzer-Profile anzeigen Private Nachricht senden
Programm zum De-/Chifrieren auf basis des Caesar Cipher
Foren-Übersicht » Eigene Programme
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Alle Zeiten sind GMT + 1 Stunde  
Seite 1 von 1  

  
  
 Neues Thema eröffnen  Neue Antwort erstellen  


Forensicherheit

Powered by phpBB © 2001-2004 phpBB Group
phpBB Style by Vjacheslav Trushkin
Deutsche Übersetzung von phpBB.de


remoteshell-security.com | Partner | Boardregeln | Impressum