Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private String decryptTransposition(String secret, String key) {
- int columns = key.length();
- int rows;
- if(secret.length() % key.length() == 0){
- rows = (secret.length()/(key.length()) + 1);
- }else{
- rows = (secret.length())/(key.length()) + 2;
- }
- char [][] a = new char [rows][columns];
- for(int k=0;k<key.length();k++){
- a[0][k] = key.charAt(k);
- }
- char[] keyArr = Arrays.copyOf(key.toCharArray(), key.length());
- Arrays.sort(keyArr);
- String decryptedMessage = "";
- int secretPoint = 0;
- for (int i = 1; i < key.length(); i++)
- {
- int columnToFill = key.indexOf(keyArr[i]);
- for(int j = 0; j < rows; j++) {
- a[j][columnToFill] = secret.charAt(secretPoint);
- secretPoint++;
- }
- for(int i=1;i< rows;i++){
- for(int j=0;j<columns;j++){
- decryptedMessage += a[i][j];
- }
- return decryptedMessage;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement