实验一 实现一个多表古典加密和解密程序 实验目的:掌握多表古典加密方法。 实验要求:能用高级语言实现古典加密方法。 实验内容:多表古典加密方法主要有Playfair 体制、Vigenere 体制、Beaufor体制、Vernam 体制和Hill 体制,用高级语言实现其中一种体制的加密和解密算法。 内容: Vigenere 加密解密: #include #include using namespace std; const int N=26; char v[N][N]={{'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','Z'}}; int number(char x)//把行号字母对应到数字 { char y='a'; for(int i=0;i>m; cout<<"密钥:"; cin>>k; int mlen,klen; mlen=m.length(); klen=k.length(); char *p,*q,*t;//明文,初始密钥,密钥串。把 string 换成 char p=new char[m.length()+1]; strcpy(p,m.c_str()); q=new char[k.length()+1]; strcpy(q,k.c_str()); t=new char[m.length()+1]; int j=0; for(int i=0;i>c; cout<<"密钥:"; cin>>k; int clen,klen; clen=c.length(); klen=k.length(); char *p,*q,*t;//密文,初始密钥,密钥串。把 string 换成char p=new char[c.length()+1]; strcpy(p,c.c_str()); q=new char[k.length()+1]; strcpy(q,k.c_str()); t=new char[c.length()+1]; int j=0; for(int i=0;i>flag; string m,k; if(flag==1)encryption(m...