1. Trang chủ >
  2. Luận Văn - Báo Cáo >
  3. Công nghệ thông tin >

Phần iii: cài đặt một số thuật toán

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (244.17 KB, 39 trang )


An toàn và bảo mật thông tin



33



import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JTextArea;

public class mahoa extends JFrame implements ActionListener

{

Public String[]a = new String[]{"a","b","c","d","e","f","g","h","i","j","k","l","m"

,"n","o","p","q","s","r","t","u","v","x","y","z","w"};

public String[]code=new String[62];

public String xauma=new String();

public String banma=new String();

JTextArea t1=new JTextArea(5,5);

JLabel l1=new JLabel("chua ma");

JButton[] b=new JButton[]{new JButton("ma vong"),new JButton("ma

hemiaffine"),new JButton("ma tt"),new JButton("ma vigenere"),new JButton("ma

ts")};

JButton[] g=new JButton[]{new JButton("gma vong"),new JButton("gma

hemiaffin"),new



JButton("gma



tt"),new



JButton("gma



vigenere"),new



JButton("gma ts")};

public mahoa()

{

setLayout(new FlowLayout());

add(t1);

add(l1);

for(int i=0;i
{

b[i].addActionListener(this);

add(b[i]);

g[i].addActionListener(this);

add(g[i]);

}

Nguyễn Thị Thu Hiền - TK6LC1



An toàn và bảo mật thông tin



34



}

public String mavong(int k)

{

String xauma=t1.getText();

System.out.println("xau ma la: "+xauma);

int l=xauma.length();

String t;

String kq = "";

System.out.println("5%2"+5%2);

for(int i=0;i
{

t=xauma.substring(i,i+1);

for(int j=0;j<26;j++)

{

if(t.compareTo(a[j])==0)

{

kq=kq+a[j+k];

}

}

}

System.out.println("xau ma la: "+kq);

l1.setText("Xau ma la: "+kq);

banma=kq;

return kq;

}

public String hemiaffin(int a1,int b1)

{

String xauma=t1.getText();

System.out.println("xau ma la: "+xauma);

int l=xauma.length();

Nguyễn Thị Thu Hiền - TK6LC1



An toàn và bảo mật thông tin



35



String t;

String kq ="";

for(int i=0;i
{

t=xauma.substring(i,i+1);

for(int j1=0;j1<26;j1++)

{

if(t.compareTo(a[j1])==0)

{

int j=(a1*j1+b1)%26;

kq=kq+a[j];

}

}

}

//System.out.println("xau ma la: "+kq);

l1.setText("Xau ma la: "+kq);

banma=kq;

return kq;

}

public String ghemiaffin(int a1,int b1)

{

String xauma=banma;

System.out.println("xau ma la: "+xauma);

int l=xauma.length();

String t;

String kq ="";

for(int i=0;i
{

t=xauma.substring(i,i+1);

for(int j1=0;j1<26;j1++)

Nguyễn Thị Thu Hiền - TK6LC1



An toàn và bảo mật thông tin



36



{

if(t.compareTo(a[j1])==0)

{

int j = 0;

System.out.println(j1);

int c=tinhx(a1,b1,j1);

if(c!=-1)

{

j=c;

}

System.out.println(j);

kq=kq+a[j];

}

}

}

System.out.println("xau ma la: "+kq);

l1.setText("Xau ma la: "+kq);

return kq;

}

public int tinhx(int a, int b,int j)

{

int x=-1;

int m=(25*a-j+b)/26;

for(x=0;x<26;x++)

for(int k=0;k<=25;k++)

{

if((a*x-26*k==(j-b)))

{

System.out.println("x tim duoc la:"+x);

Nguyễn Thị Thu Hiền - TK6LC1



An toàn và bảo mật thông tin



37

return x;



}

}

return x;

}

public String thaythe(int n,int[] r)

{

String xauma=t1.getText();

System.out.println("xau ma la: "+xauma);

int l=xauma.length();

String kq ="";

int d=0;

while(l>d)

{

int j=r[d%n]+((int) Math.floor((double) d/n))*n;

System.out.println(j);

kq=kq+xauma.substring(j,j+1);

d++;

}

l1.setText("Xau ma la: "+kq);

banma=kq;

return kq;

}

public String gthaythe(int n,int[] r)

{

String xauma=banma;

System.out.println("xau ma la: "+xauma);

int l=xauma.length();

Nguyễn Thị Thu Hiền - TK6LC1



An toàn và bảo mật thông tin



38



String[] tg=new String[l];

String kq ="";

int d=0;

while(l>d)

{

int j=r[d%n]+((int) Math.floor((double) d/n))*n;

System.out.println(j);

tg[j]=xauma.substring(d,d+1);

d++;

}

for(int j=0;j
{

kq=kq+tg[j];

}

l1.setText("Xau ma la: "+kq);

banma=kq;

return kq;

}

public String vigenere(String k)

{

String xauma=t1.getText();

int lx=xauma.length();

int l=k.length();

int r[]=new int[l];

int m = 0;

String kq ="";

for(int i=0;i
{

String t=k.substring(i,i+1);

Nguyễn Thị Thu Hiền - TK6LC1



An toàn và bảo mật thông tin



39



for(int j=0;j<26;j++)

if(t.compareTo(a[j])==0)

{

r[i]=j;

}

}

for(int i=0;i
{

String t=xauma.substring(i,i+1);

for(int j=0;j<26;j++)

if(t.compareTo(a[j])==0)

{

m=j;

}

int ma=(m+r[i%l])%26;

kq=kq+a[ma];

}

l1.setText("Xau ma la: "+kq);

banma=kq;

return kq;

}

public String gvigenere(String k)

{

String xauma=banma;

int lx=xauma.length();

int l=k.length();

int r[]=new int[l];

String kq ="";

for(int i=0;i
{

Nguyễn Thị Thu Hiền - TK6LC1



An toàn và bảo mật thông tin



40



String t=k.substring(i,i+1);

for(int j=0;j<26;j++)

if(t.compareTo(a[j])==0)

{

r[i]=j;

}

}

int m = 0;

for(int i=0;i
{

String t=xauma.substring(i,i+1);

for(int j=0;j<26;j++)

if(t.compareTo(a[j])==0)

{

m=j;

System.out.println("ma cua kt la:"+m);

}

int ma=(m-r[i%l])%26;

kq=kq+a[ma];

}

l1.setText("Xau ma la: "+kq);

return kq;

}

public String tusinh(int k)

{

String xauma=t1.getText();

int l=xauma.length();

String kq="";

int[] m = new int[l];

Nguyễn Thị Thu Hiền - TK6LC1



An toàn và bảo mật thông tin



41



for(int i=0;i
{

String t=xauma.substring(i,i+1);

for(int j=0;j<26;j++)

if(t.compareTo(a[j])==0)

{

m[i]=j;

}

int ma = 0;

if(i>0) k=m[i-1];

ma=(m[i]+k)%26;

m[i]=ma;

kq=kq+a[ma];

}

l1.setText("Xau ma la: "+kq);

banma=kq;

return kq;

}

public String gtusinh(int k)

{

String xauma=banma;

int l=xauma.length();

String kq="";

int ma = 0;

int[] m = new int[l];

for(int i=0;i
{

String t=xauma.substring(i,i+1);

for(int j=0;j<26;j++)

if(t.compareTo(a[j])==0)

Nguyễn Thị Thu Hiền - TK6LC1



An toàn và bảo mật thông tin



42



{

m[i]=j;

}

if(i>0)k=m[i-1];

ma=(m[i]-k)%26;

if (ma<0)ma=ma+26;

System.out.println("ma ky tu la:" +ma);

kq=kq+a[ma];

}

l1.setText("Xau ma la: "+kq);

return kq;

}

public String gmavong(int k)

{

String xauma=banma;

System.out.println("xau ma la: "+xauma);

int l=xauma.length();

String t;

String kq = "";

for(int i=0;i
{

t=xauma.substring(i,i+1);

for(int j=0;j<26;j++)

{

if(t.compareTo(a[j])==0)

{

kq=kq+a[(j-k)%26];

}

}

Nguyễn Thị Thu Hiền - TK6LC1



An toàn và bảo mật thông tin



43



}

System.out.println("xau ma la: "+kq);

l1.setText("Xau ma la: "+kq);

return kq;

}

public static void main()

{

mahoa m=new mahoa();

m.setSize(100,100);

m.setVisible(true);

}

public Object getValue(String key)

{

return null;

}

public void putValue(String key, Object value)

{

}

public void actionPerformed(ActionEvent e)

{

if(e.getSource()==b[0])

{

mavong(4);

//hemiaffin(4,5);

//vigenere("trandong");

//gvigenere("trandong");

// gtusinh(4);

//int[] r={0,3,1,2};

//gthaythe(4,r);

Nguyễn Thị Thu Hiền - TK6LC1



Xem Thêm
Tải bản đầy đủ (.doc) (39 trang)

×