这学期开了门课 叫信息安全技术。
写了个置换的算法。
挺麻烦的。
明文:
attackpostponeduntiltwoamxyz
密钥:4312567
将明文保存排列成矩阵
4 3 1 2 5 6 7
a t t a c k p
o s t p o n e
d u n t i l t
w o a m x y z
然后按照密钥的顺序按列读出就成了密文 ttnaaptmtsuoaodwcoixknlypetz
还可以继续对密文进行再次加密,不过还是不安全 =。=
Java:
package cryptography;
public class PermutationCipher {
//加密
static String encypt(String plaintext, String key) {
String cipherText = "";
String[] cipher = new String[key.length()];
plaintext = plaintext.trim();
int row = (plaintext.length()) / (key.length());
int column = key.length();
// 将明文和密钥分别保存在char数组和整型变量中
char[] chars = new char[plaintext.length()];
plaintext.getChars(0, plaintext.length(), chars, 0);
int keycode = Integer.parseInt(key);
char[][] matrix = new char[row][column];