置换密码代码简单实现(C语言)

置换只不过是一个简单的换位,每个置换都可以用一个置换矩阵Ek来表示。每个置换都有一个与之对应的逆置换Dk。置换密码的特点是仅有一个发送方和接受方知道的加密置换(用于加密)及对应的逆置换(用于解密)。它是对明文L长字母组中的字母位置进行重新排列,而每个字母本身并不改变。

 

代码实现:

#include
#include

int main()
{
    char m[999999],c[999999];
    int x[26];
    int t,k,len,a=0;
    printf("请输入你要输入的明文:");
    scanf("%s",m);
    len=strlen(m);
    printf("\n");

    printf("选择密钥长度:");
    scanf("%d",&k);
    t=k-len%k; //补全空格位数
    printf("\n");


    printf("请输入你选择的密钥方式:\n");
    for(int i=0; i 这里j<3 有0,1,2三组 */
        for(int i=0; i

 

效果图:

置换密码代码简单实现(C语言)_第1张图片

你可能感兴趣的:(C,Language,Security)