-
Urgent! What is wrong with this program? Part 1
Please, i am writing a project on implementation of Rivest-Shamir-Adleman(RSA) algorithm on local area network(LAN).But the JAVA program i wrote refused to work. please, can anyone help me with this.The program is given below is only a part of the entire program due to space constraint. The remain program will be sent in the next post.Thanks
Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.lang.*;
public class My_RSA extends JFrame {
private Container container;
private JFrame iFrame,jFrame, kFrame;
private GridBagLayout layout;
private GridBagConstraints constraints;
private JTextField nField, dField;
private JTextArea messageArea, cypherArea, plainArea,keysArea;
private JScrollPane messagescroll, cypherScroll, plainScroll;
private JButton readButton, sendButton, okButton, cancelButton;
private JPanel jPanel, nPanel,dPanel, okPanel,myPanel, mePanel,
statusPanel, progressPanel,cancelPanel;
private JPanel boardPanel1, boardPanel2, cypherPanel,plainPanel,
messagePanel, readPanel, sendPanel;
private JLabel emptyLabel, jLabel, nLabel, dLabel, dumLabel1, dumLabel2,
statusLabel;
private JLabel emptyLabel1, emptyLabel2 , emptyLabel3, emptyLabel4;
private JPanel emptyPanel, emptyPanel1, emptyPanel2, emptyPanel3,
emptyPanel4;
private String message = "", plaintext = "", cyphertext = "", publish = "";
private long d, e, m, n, p, q;
private final JProgressBar current = new JProgressBar(0, 100);
private KeyGenerator gen;
private Encryption enc;
private Decryption dec;
private Sending go;
public My_RSA()
{
Super("RSA Encryption System");
Container = getContentPane();
layout = new GridBagLayout();
container.setLayout(layout);
constraints = new GridBagConstraints();
gen = new KeyGenerator();
kFrame = new JFrame("Sending...");
mePanel = new JPanel();
mePanel.setLayout(layout);
progressPanel = new JPanel();
progressPanel.add(current);
cancelPanel = new JPanel();
statusPanel = new JPanel();
statusPanel = new JLabel(" From A to B");
statusPanel.add(statusLabel);
cancelButton = new JButton("cancel");
cancelButton.addActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent event)
{
Current.setValue(0);
kFrame.setVisible(false);
}
}
);
Current.setSize(100, 5);
cancelPanel.add(cancelButton);
emptyLabel1 = new JLabel("");
emptyLabel2 = new JLabel("");
emptyLabel3 = new JLabel("");
emptyLabel4 = new JLabel("");
emptyPanel1 = new JPanel();
emptyPanel2 = new JPanel();
emptyPanel3 = new JPanel();
emptyPanel4= new JPanel();
readPanel = new JPanel();
sendPanel = new JPanel();
messagePanel = new JPanel();
cypherPanel = new JPanel();
plainPanel = new JPanel()
boardPanel1 = new JPanel();
boardPanel1.setLayout(new FlowLayout());
boardPanel2 = new JPanel();
boardPanel2.setLayout(new FlowLayout());
messageArea = new JTextArea(5,60);
messageArea.setLineWrap(true);
messageArea.setWrapStyleWord(true);
messageArea.setFont(new Font("Monospaced", Font.PLAIN, 12));
messageArea.setEditable(true);
cypherArea = new JTextArea(20,20);
cypherArea.setLineWrap(true);
cypherArea.setWrapStyleWord(true);
cypherArea.setFont(new Font(" Serif", Font.PLAIN, 12));
cypherArea.setEditable(false);
plainArea = new JTextArea(20,22);
plainArea.setLineWrap(true);
plainArea.setWrapStyleWord(true);
plainArea.setFont(new Font(" Monospaced", Font.PLAIN, 12));
plainArea.setEditable(false);
messageScroll = new JScrollPane(messageArea,
ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED,
ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEVER);
cypherScroll = new JScrollPane(cypherArea,
ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED,
ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);
plainScroll = new JScrollPane(plainArea,
ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED,
ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);
readButton = new JButton("read>>>");
readButton.addActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent event)
{
secretKey();
}
}
);
sendButton = new JButton("send");
sendButton.addActionListener(
new ActionListner() {
public void actionPerformed(ActionEvent event)
{
kFrame.setVisible(false);
publish = "";
do {
p = gen.primeNumber();
}while(!(p > 10) || !(p < 26) );
do {
q = gen.primeNumber();
}while( (q <=p) || !((q-p) >2) );
n = p*q;
m = (p-1) * (q-1);
e = gen.coprime(m);
d = gen.find_d(m,e);
message = messageArea.getText();
enc = new Encryption(message);
cyphertext = enc.encrypt(e,n);
publish_Keys();
kFrame.setVisible(true);
go = newSending(cyphertext,kFrame,iFrame,
cypherArea, current, container);
go.start();
kFrame.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
container.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
}
}
);
cypherPanel.add(cypherScroll);
cypherPanel.setBorder(BorderFactory.createTitledBorder("cyphertext"));
readPanel.add(readButton);
plainPanel.add(plainScroll);
plainPanel.setBorder(BorderFactory.createTitledBorder("recovered plaintext"));
messagePanel.add(messageScroll);
sendPanel.add(sendButton);
emptyPanel1.add(emptyLabel1);
emptyPanel2.add(emptyLabel2);
emptyPanel3.add(emptyLabel3);
emptyPanel4.add(emptyLabel4);
boardPanel1.add(cypherPanel);
boardPanel1.add(readPanel);
boardPanel1.add(plainPanel);
-
Urgent! What is wrong with this program? Part 2
This is the continuation of the program.
Code:
boardPanel1.setBorder(BorderFactory.createTitledBorder("incoming message"));
boardPanel2.add(messagePanel);
boardPanel2.add(sendPanel);
boardPanel2.setBorder(BorderFactory.createTitledBorder("outgoing message"));
constraints.fill = GridBagConstraints.BOTH;
addComponent3(emptyPanel1, 0, 0, 1, 1);
constraints.fill = GridBagConstraints.BOTH;
addComponent3(emptyPanel2, 1, 0, 1, 1);
constraints.fill = GridBagConstraints.BOTH;
addComponent3(statusPanel, 2, 0, 1, 1);
constraints.fill = GridBagConstraints.BOTH;
addComponent3(progressPanel, 3, 0, 1, 1);
constraints.fill = GridBagConstraints.BOTH;
addComponent3(cancelPanel, 3, 1, 1, 1);
constraints.fill = GridBagConstraints.BOTH;
addComponent(emptyPanel1, 0, 1, 1, 1);
constraints.fill = GridBagConstraints.BOTH;
addComponent(emptyPanel1, 0, 1, 1, 1);
constraints.fill = GridBagConstraints.BOTH;
addComponent(boardPanel1, 1, 1, 1, 1);
constraints.fill = GridBagConstraints.BOTH;
addComponent(emptyPanel2, 2, 1, 1, 1);
constraints.fill = GridBagConstraints.BOTH;
addComponent(emptyPanel3, 3, 1, 1, 1);
constraints.fill = GridBagConstraints.BOTH;
addComponent(emptyPanel4, 4, 1, 1, 1);
constraints.fill = GridBagConstraints.BOTH;
addComponent(boardPanel2, 5, 1, 1, 1);
kFrame.getContentPane().add(mePanel, BorderLayout.CENTER);
kFrame.setResizable(false);
kFrame.setSize(310,150);
kFrame.setVisible(false);
kFrame.setLocation(270, 390);
setResizable(false);
setSize(550,680);
setVisible(true);
setLocation(250,42);
}
private void publish_Keys()
{
iFrame = new JFrame("Publishing Keys");
publish += "\n PUBLIC KEY:\n (n, e) = ("+n+", "+e+")";
publish += "\n \n SECRET KEY:\n (n, d) = ("+n+", "+d+")";
keysArea = new JTextArea();
keysArea.setFont( new Font("Monospaced", Font.BOLD, 14) );
keysArea.setEditable(false);
keysArea.setText(publish);
iFrame.getContentPane().add(new JScrollPane(keysArea),
Borderlayout.CENTER);
iFrame.setResizable(false);
iFrame.setSize(210, 220);
iFrame.setVisible(false);
iFrame.setLocation(570, 390);
}
private void secretKey()
{
jFrame = new JFrame("SECRET KEY");
myPanel = new JPanel();
jPanel = new JPanel();
nPanel = new JPanel();
dPanel = new JPanel();
emptyPanel = new JPanel();
okPanel = new JPanel();
emptyLabel = new JLabel("");
nLabel = new JLabel("n: ");
dLabel = new JLabel("d: ");
dumLabel1 = new JLabel(" ");
jLabel = new JLabel("Enter the Secret Key:");
jPanel.add(jlabel);
okButton = new JButton("OK");
okButton.addActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent event)
{
jFrame.setVisible(false);
n = Long.parseLong(nField.getText());
d = Long.parseLong(dField.getText());
cyphertext = cypherArea.getText();
dec = new Decryption(cyphertext);
plaintext = dec.decrypt(d,n);
plainArea.setText(plaintext);
}
}
);
myPanel.setLayout(layout);
nField = new JTextField(10);
nField.setFont(new Font("Monospaced" , Font.PLAIN, 14));
dField = new JTextField(10);
dField.setFont(new Font("Monospaced" , Font
-
Urgent! What is wrong with this program? Part 3
This is the last part of the program.Thank you for your anticipated cooperation.
Code:
dField.setFont(new Font("Monospaced" , Font.PLAIN, 14));
nPanel.setLayout(new FlowLayout());
nPanel.add(nLabel);
nPanel.add(nField);
dPanel.setLayout(new FlowLayout());
dPanel.add(dLabel);
dPanel.add(dField);
emptyPanel.add(emptyLabel);
okPanel.add(okButton);
constraints.fill = GridBagConstraints.BOTH;
addComponent2(jPanel, 0, 0, 1, 1);
constraints.fill = GridBagConstraints.BOTH;
addComponent2(nPanel, 1, 1, 1, 1);
constraints.fill = GridBagConstraints.BOTH;
addComponent2(dPanel, 2, 1, 1, 1);
constraints.fill = GridBagConstraints.BOTH;
addComponent2(emptyPanel, 3, 1, 1, 1);
constraints.fill = GridBagConstraints.BOTH;
addComponent2(okButton, 4, 1, 1, 1);
jFrame.getContentPane().add(myPanel);
jFrame.setLocation(438, 360);
jFrame.setResizable(false);
jFrame.setSize(200, 220);
jFrame.setVisible(true);
}
private void addComponent(Component component, int row, int column, int width,
int height)
{
constraints.gridx = column;
constraints.gridy = row;
constraints.gridwidth = width;
constraints.gridheight = height;
layout.setConstraints(component, constraints);
container.add(component);
}
private void addComponent2(Component component, int row, int column, int width, int height)
{
constraints.gridx = column;
constraints.gridy = row;
constraints.gridwidth = width;
constraints.gridheight = height;
layout.setConstraints(component, constraints);
myPanel.add(component);
}
private void addComponent3(Component component, int row, int column, int width, int height)
{
constraints.gridx = column;
constraints.gridy = row;
constraints.gridwidth = width;
constraints.gridheight = height;
layout.setConstraints(component, constraints);
mePanel.add(component);
}
public static void main(String args[])
{
My_RSA app = new My_RSA();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
-
I put all the code in one thread...there is no need for three separate threads.
Also, I'm pretty confident that no one is going to wade through all of that code just to try and figure out what you mean by "But the JAVA program i wrote refused to work."
Could you provide some specific examples of what isn't working, what it should do, and what it is doing?
-
In which thread you put the whole code. Please give link to that?
Last edited by cyrus12009; 12-04-2009 at 01:23 AM.
-
 Originally Posted by cyrus12009
In which thread you put the whole code. Please give link to that?
This one...they were in 3 separate, individual, threads.
Similar Threads
-
By jimJohnson in forum Java
Replies: 1
Last Post: 05-04-2008, 11:44 PM
-
By Gipionocheiyort in forum C++
Replies: 1
Last Post: 08-01-2007, 09:44 PM
-
By sedricbenson@ho in forum C++
Replies: 2
Last Post: 11-07-2006, 07:58 AM
-
Replies: 1
Last Post: 06-29-2005, 01:07 AM
-
By W.Pierce in forum VB Classic
Replies: 1
Last Post: 12-11-2001, 08:28 AM
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Development Centers
-- Android Development Center
-- Cloud Development Project Center
-- HTML5 Development Center
-- Windows Mobile Development Center
|