密匙短语密码的实现步骤
1、选取密匙并去除重复字符
如:university -->universty
2、密匙共有10个单词,从第11个字符开始,用universty按顺序进行代替配置
3、将其余17个字母按自然顺序排列
以university为密匙的换字表
明文字母 | abcdefghijklmnopqrstuvwxyz |
---|---|
密文字表 | JKLMOPQWXZUNIVERSTYABCDFGH |
**
MATLAB代码如下:
function [Key,KeyT] = getKey(KeyPhrases)
%getKey:密匙短语生成密匙
%KeyPhrases:密匙短语
%Key:密匙
%KeyT;去重后密匙短语
str_long=length(KeyPhrases);%获取密匙短语长度
%给定密匙前26个字母
for i=1:26
Key(1,i)=char(96+i);
end
KeyT='';
for i=1:str_long
if (~contains(lower(KeyT),KeyPhrases(i)))%contains:判断KeyT是否包含KeyPhrases里的字符 lower:大写变小写
KeyT=upper(strcat