作业帮 > 综合 > 作业

一种playfair密码变种加密方法如下:首先选择一个密钥单词(称为pair)(字母不重复,且都为小写字母)

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/10 23:57:40
一种playfair密码变种加密方法如下:首先选择一个密钥单词(称为pair)(字母不重复,且都为小写字母)
后与字母表中其他字母一起填入至一个5*5的方阵中,填入方法如下:
1.首先按行填入密钥串.
2.紧接其后,按字母序按行填入不在密钥串中的字母.
3.由于方阵中只有25个位置,最后剩下的那个字母则不需要变换.
如果密钥为youandme,则该方阵如下:
y o u a n
d m e b c
f g h i j
k l p q r
s t v w x
#include
  #include
  int find(char *key,int n,char c);
  char alph[26]={'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'};
  void find_fang(char fang[5][5],char c1,int *i_1,int *j_1);
  void main()
  {
  char key[25],yuanwen[50],miwen[50];
  printf("\n请输入密钥(1~25):");
  gets(key);
  printf("\n请输入原文(1~50):");
  gets(yuanwen);
  char fang[5][5];
  int i,j,k=0,len,t=0;
  len=strlen(key);
  for(i=0;i