二方密码表(两方密码)

2023-02-19 20:54:23 摩斯密码知识 思思

四方密码的二方密码

二方密码(en:Two-square_cipher)比四方密码用更少的矩阵。

得出加密矩阵的方法和四方密码一样。

例如用「example」和「keyword」作密匙,加密lp。首先找出第一个字母(L)在上方矩阵的位置,再找出第二个字母(D)在下方矩阵的位置:

E X A M P

L B C D F

G H I J K

N O R S T

U V W Y Z

K E Y W O

R D A B C

F G H I J

L M N P S

T U V X Z

在上方矩阵找第一个字母同行,第二个字母同列的字母;在下方矩阵找第一个字母同列,第二个字母同行的字母,那两个字母就是加密的结果:

E X A M P

L B C D F

G H I J K

N O R S T

U V W Y Z

K E Y W O

R D A B C

F G H I J

L M N P S

T U V X Z

help me的加密结果:

he lp me

HE DL XW

这种加密法的弱点是若两个字同列,便采用原来的字母,例如he便加密作HE。约有二成的内容都因此而暴露。

四方密码加密方法

四方密码是一种对称式加密法,由法国人Felix Delastelle(1840年–1902年)发明。

这种方法将字母两个一组,然后采用多字母替换密码。

四方密码用4个5×5的矩阵来加密。每个矩阵都有25个字母(通常会取消Q或将I,J视作同一样,或改进为6×6的矩阵,加入10个数字)。

首先选择两个英文字作密匙,例如example和keyword。对于每一个密匙,将重复出现的字母去除,即example要转成exampl,然后将每个字母顺序放入矩阵,再将余下的字母顺序放入矩阵,便得出加密矩阵。

将这两个加密矩阵放在左上角和右下角,余下的两个角放a到z顺序的矩阵:

a b c d e E X A M P

f g h i j L B C D F

k l m n o G H I J K

p r s t u N O R S T

v w x y z U V W Y Z

K E Y W O a b c d e

R D A B C f g h i j

F G H I J k l m n o

L M N P S p r s t u

T U V X Z v w x y z

加密的步骤:

两个字母一组地分开讯息:(例如hello world变成he ll ow or ld)

找出第一个字母在左上角矩阵的位置

a b c d e E X A M P

f g h i j L B C D F

k l m n o G H I J K

p r s t u N O R S T

v w x y z U V W Y Z

K E Y W O a b c d e

R D A B C f g h i j

F G H I J k l m n o

L M N P S p r s t u

T U V X Z v w x y z

同样道理,找第二个字母在右下角矩阵的位置:

a b c d e E X A M P

f g h i j L B C D F

k l m n o G H I J K

p r s t u N O R S T

v w x y z U V W Y Z

K E Y W O a b c d e

R D A B C f g h i j

F G H I J k l m n o

L M N P S p r s t u

T U V X Z v w x y z

找右上角矩阵中,和第一个字母同行,第二个字母同列的字母:

a b c d e E X A M P

f g h i j L B C D F

k l m n o G H I J K

p r s t u N O R S T

v w x y z U V W Y Z

K E Y W O a b c d e

R D A B C f g h i j

F G H I J k l m n o

L M N P S p r s t u

T U V X Z v w x y z

找左下角矩阵中,和第一个字母同列,第二个字母同行的字母:

a b c d e E X A M P

f g h i j L B C D F

k l m n o G H I J K

p r s t u N O R S T

v w x y z U V W Y Z

K E Y W O a b c d e

R D A B C f g h i j

F G H I J k l m n o

L M N P S p r s t u

T U V X Z v w x y z

这两个字母就是加密过的讯息。

hello world的加密结果:

he lp me ob iw an ke no bi

FY GM KY HO BX MF KK KI MD

[编辑]二方密码

二方密码(en:Two-square_cipher)比四方密码用更少的矩阵。

得出加密矩阵的方法和四方密码一样。

例如用「example」和「keyword」作密匙,加密lp。首先找出第一个字母(L)在上方矩阵的位置,再找出第二个字母(D)在下方矩阵的位置:

E X A M P

L B C D F

G H I J K

N O R S T

U V W Y Z

K E Y W O

R D A B C

F G H I J

L M N P S

T U V X Z

在上方矩阵找第一个字母同行,第二个字母同列的字母;在下方矩阵找第一个字母同列,第二个字母同行的字母,那两个字母就是加密的结果:

E X A M P

L B C D F

G H I J K

N O R S T

U V W Y Z

K E Y W O

R D A B C

F G H I J

L M N P S

T U V X Z

help me的加密结果:

he lp me

HE DL XW

这种加密法的弱点是若两个字同列,便采用原来的字母,例如he便加密作HE。约有二成的内容都因此而暴露

二方密码表(两方密码) 第1张

世界常用密码暗号是什么?

一、RSA算法密码

RSA算法是第一个能同时用于加密和数字签名的算法,也易于理解和操作。RSA算法是一种非对称密码算法,所谓非对称,就是指该算法需要一对密钥,使用其中一个加密,则需要用另一个才能解密。

二、ECC加密法密码

ECC算法也是一个能同时用于加密和数字签名的算法,也易于理解和操作。同RSA算法是一样是非对称密码算法使用其中一个加密,用另一个才能解密。

三、二方密码

二方密码(en:Two-square_cipher)比四方密码用更少的矩阵。

四、四方密码

四方密码用4个5×5的矩阵来加密。每个矩阵都有25个字母(通常会取消Q或将I,J视作同一样,或改进为6×6的矩阵,加入10个数字)。

五、三分密码

首先随意制造一个3个3×3的Polybius方格替代密码,包括26个英文字母和一个符号。然后写出要加密的讯息的三维坐标。讯息和坐标四个一列排起,再顺序取横行的数字,三个一组分开,将这三个数字当成坐标,找出对应的字母,便得到密文。

有关二方密码的C语言程序

小错误比较多,逻辑不是很清晰。建议严格按照二方密码的定义来重写。

比如说:

oid rearrange(char arr[])//重新排序

{

/*按顺序排列字母*/

char new1[40];

int a,b=0,k,e=0,f=0,p;

for(a=0;arr[a]!='\0';a++)

{

new1[b]=arr[a]; //这是什么意思呢?看不懂,猜应该是new1[a]?

}

k=a+26;

for(b=a;b=k;b++)

{

new1[b+1]=new1[b]+1; //确认不越界?

}