This is a java program to encrypt a matrix using a key. The key is hidden and kept secret and inverse copy of the key is provided to the receiver, with which he/she can decrypt the matrix. The operation performed is matrix multiplication.
Here is the source code of the Java Program to Perform Encoding of a Message Using Matrix Multiplication. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.
//This is sample program to encode any 2-dimensional matrix using matrix of elememts (i+j)
// for 2x2 encoding is done by multiplying given matrix with 0 1
// 1 2
import java.util.Scanner;
public class Encoding_Matrix
{
public static void main(String args[])
{
int n;
Scanner input = new Scanner(System.in);
System.out.println("Enter the base of squared matrices");
n = input.nextInt();
int [][] a = new int[n][n];
int [][] b = new int[n][n];
int [][] c = new int[n][n];
System.out.println("Enter the elements of matrix to be encoded: ");
for(int i=0; i<n; i++)
for(int j=0; j<n; j++)
a[i][j] = input.nextInt();
for(int i=0; i<n; i++)
for(int j=0; j<n; j++)
b[i][j] = i+j;
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
for (int k = 0; k < n; k++)
{
c[i][j] = c[i][j] + a[i][k] * b[k][j];
}
}
}
System.out.println("The Encoded matrix is:");
for(int i=0; i<n; i++)
{
for(int j=0; j<n; j++)
{
System.out.print(c[i][j] + " ");
}
System.out.println();
}
input.close();
}
}
Output:
$ javac Encoding_Matrix.java $ java Encoding_Matrix Enter the base of squared matrices 2 Enter the elements of matrix to be encoded: 1 5 3 9 The Encoded matrix is: 5 11 9 21 Enter the base of squared matrices 3 Enter the elements of matrix to be encoded: 1 2 3 4 5 6 7 8 9 The Encoded matrix is: 8 14 20 17 32 47 26 50 74
Related posts:
Introduction to Apache Commons Text
TreeSet và sử dụng Comparable, Comparator trong java
Send an email using the SMTP protocol
Java Program to Implement Circular Doubly Linked List
Java Program to Check whether Graph is Biconnected
Lập trình đa luồng với CompletableFuture trong Java 8
Tìm hiểu cơ chế Lazy Evaluation của Stream trong Java 8
Control the Session with Spring Security
Java – Reader to InputStream
Java Program to Implement the Program Used in grep/egrep/fgrep
Giới thiệu HATEOAS
Working with Tree Model Nodes in Jackson
Using Optional with Jackson
Spring Boot - Unit Test Cases
Working With Maps Using Streams
Java InputStream to String
Java InputStream to String
A Guide to TreeMap in Java
Spring WebClient and OAuth2 Support
New Features in Java 11
Java Program to Implement Control Table
Command-Line Arguments in Java
Java Program to Implement Horner Algorithm
Getting Started with Stream Processing with Spring Cloud Data Flow
Injecting Prototype Beans into a Singleton Instance in Spring
New Stream Collectors in Java 9
Lớp Properties trong java
Spring Boot - Enabling Swagger2
Guide to the Volatile Keyword in Java
A Guide to the ResourceBundle
Consumer trong Java 8
Java Program to Implement Dijkstra’s Algorithm using Priority Queue