Some Graph-Based Encryption Schemes

In today’s technological world, conﬁdentiality is an important issue to deal with, and it is carried out through diﬀerent pro-ﬁciencies. Cryptography is a scientiﬁc technique of securing a communication from unauthenticated approach. There exist many encryption algorithms in cryptography for data security. The need of new nonstandard encryption algorithms has been raised to prevent the communication from traditional attacks. This paper proposes some new encryption algorithms for secure transmission of messages using some special corona graphs and bipartite graph along with some algebraic properties. These proposed encryption schemes will lead to more secure communication of secret messages.

which only one vertex is in one partition while all other vertices are in second partition, is termed as star graph. A vertex of degree one is named a pendent vertex, and the edge incident to it is pendent edge. e corona of two graphs G and H is the graph G ⊙ H formed by one copy of G and |V(G)| copies of H, where the i th vertex of G is joined to each vertex in the i th copy of H. is product is an important operation between graphs, introduced by Frucht and Harary [5]. e star graph S n+1 on n + 1 vertices can be seen as a corona graph K 1 ⊙ K n . e corona graph of the cycle C n with K 1 , i.e., C n ⊙ K 1 , is a graph on 2n vertices obtained by attaching n pendant edges in a cycle graph C n .
Graphs can be used for designing different encryption algorithms.
e interaction between graph theory and cryptography is quite interesting. For applications of graph theory in cryptography, refer to [6][7][8][9]. e recent past has seen a growing interest in exploring graphs as a tool to propose new methodologies in different areas of cryptography (see [10][11][12][13][14][15][16][17][18][19][20]). In [10], Selvakumar and Gupta proposed an innovative algorithm for encryption and decryption using connected graphs. In [11], Kedia and Agrawal discussed a new encryption algorithm, in which data are secured through numeric representation and letters, using basic concepts of mathematics like Venn diagram. In [12], the authors have proposed a graph-based algorithm for encryption in which fundamental circuits are chosen with respect to corresponding weights of edges. In [13], Yamuna and Karthika describe a unique method of transferring data by using bipartite graph. ey constructed a numeric table for the representation of alphabets. In [14], Al Etaiwi presented a new symmetric encryption algorithm using cycle graph, complete graph, and minimum spanning tree. It is reflected in paper [15] that the authors highlight some vast applications of bipartite graph in computation. In [16], the authors presented a scheme for securing a data by giving a new concept of line sigraph. Sigraph consists of graphs with sign of edges and belongs to − 1, +1 { } as their labeled number. In [17], the authors proposed a novel bipartite graph-based propagation approach to overcome fraud detection in large advertising system. In [18], Razaq et al. used coset diagram for the action of PSL(2, Z) on projective line over the finite field F 2 9 to construct proposed substitution box (S-box). e strong S-box is an important area of research in cryptography. In [19], Razaq et al. generated a strong S-box using orbits of coset graphs and the action of the symmetric group S 256 . In [20], Selim G. Akl described an algorithm for encrypting a graph for its secure transmission from a sender to a receiver.
Our aim in this work is to describe new encryption algorithms based on some types of graphs, particularly, the corona graph C n ⊙ K 1 , K 1 ⊙ K n (also called star graph), and the bipartite graph. e proposed algorithms send and receive secure messages consisting of words of any length by using graphs and certain algebraic properties. After applying prescribed algorithmic steps, data could be fully protected. e recipient then gets the labeled graph and eventually approaches to the original message.
In Section 2, an encryption scheme is described by using the corona graph C n ⊙ K 1 . Afterwards, an algorithm of this scheme is formulated. Application of this algorithm is studied through an example. However, in Section 3, bipartite graphs are used to construct a secure encryption scheme with described algorithm. is scheme is applicable on important information, shown by an example. In Section 4, a secured encryption scheme is described by using a special corona graph K 1 ⊙ K n , also named as a star graph. Its algorithm is mentioned, and application is viewed through an example.

Secure Data Transfer Using Corona
Graph C n ⊙ K 1 To initiate the described algorithm, the first step is to take a simple text which is to be transferred and is to be encrypted before sending. Every letter in data has its unique numeric representation, mentioned in encoding table, which is used to encode each alphabetic character. en, each digit is transmuted up to n-place, through shift type of cipher. Now, new numeric values a i are obtained. Randomly, some positive integers b i are selected which are relatively prime with a i . By taking inverse of that a i in the modulus of b i , corona graph C n ⊙ K 1 is considered according to length of simple text with specified outward vertices and allocates the resulting inverses to suspended outward vertices, while main vertices are labeled with b i . e final labeled corona graph C n ⊙ K 1 is the encrypted data, in which the recipient receives to get required information. Figure 1 replicates the schematic diagram of the proposed algorithm.
Algorithm for encryption is as follows: Give a plain-text word of length n. Give the numerical values to the alphabets of plain-text word and apply shift cipher; e n (x) � x + n(mod26), to each numerical value obtained before and get new numerical values, say a 1 , a 2 , a 3 , . . ., a n . Find a sequence; b 1 , b 2 , b 3 , . . ., b n of positive integers in increasing order such that gcd(b i , a i ) � 1 and b i > 26. Consider a corona graph C n ⊙ K 1 with 2n vertices and allot weights b 1 , b 2 , b 3 , . . ., b n to the vertices, adjacent to pendent vertices randomly. Find the inverse of a i (modb i ) for all i and denote them by Give numeric values c 1 , c 2 , c 3 , . . ., c n to pendent vertices. Send this corona graph C n ⊙ K 1 to the receiver.
Algorithm for decryption is as follows. e receiver receives the graph, and following steps are applied to transform the information and get original data: Arrange those vertices which are adjacent to the pendent vertices, in increasing order Find the inverse of the weights of pendent vertices c i modulus their adjacent vertices b i and denote them by a i for each i. Compute w i � a i − (order of graph/2)mod26, ∀i. Convert the numeric values w i for each i, to relate specific alphabets. Example 1. Let us suppose we have to transfer information, i.e., EDGE, encrypting it and then sending it to the recipient. e starting point is to convert the alphabetic letters into numbers of their respective positions through the encoding table, as shown in Figure 2: Here, length of word is n � 4. Applying shift cipher e n � x + n(mod26), we get 5 + 4 � 9 � a 1 , Given word is encrypted in the form Selecting random increasing integers b i such that value of b i > 26: Construct corona graph C n ⊙ K 1 and put value of b i to main vertices randomly, as shown in Figure 3. Now, through the below-mentioned step, we get ese inverse values are given to the adjacent pendant vertices of Figure 3, as shown in Figure 4.
Send this labeled graph ( Figure 4) to the receiver. e recipient, after receiving that labeled graph, arranges the main vertices in ascending order such that and considers these numbers as values of bi such that Taking inverses of corresponding pendent vertices with respect to the value of each b i , as shown in Figure 4, we get Selected plaintext and their numeric representation Shifted up to length of text Computing w i (mod 26) Obtaining original text Sending labeled graph

Sender Receiver
Arranging b i in ascending order Corona graph C n K 1 Figure 1: Schematic diagram.

Journal of Mathematics
Now, for w i , Find values of a 1 , a 2 , a 3 , and a 4 : Finally, we get the original text.

Secure Data Transfer Using Bipartite Graphs
In this section, we propose an encryption algorithm for the secure and confidential communication of messages between two communicating parties. e construction of this encryption algorithm is based on bipartite graph and the concept of unique factorization domain (UFD). e following are the steps of algorithm.
Algorithm for encryption is as follows: Take a UFD with infinite primes. For example, Z.
Take a set P n of first "n" primes, where n � ⌈(26/k) + k⌉, 2 < k < 13, and k � key (which is fixed according to length of a word). Consider a message, for encryption with length S. en, make a table (n − k) × k such that the first value shows number of rows and second value shows the number of columns. After that, alphabets are partitioned as 1 st, 2 nd, 3 rd, . . . , k th position primes. (horizontally) while; (k + 1)th, (k + 2)th, (k + 3)th, . . ., nth position primes. (vertically) Now, label the alphabets with the integers r i c i ; r i � row position, c i � column position. Label the entry ij with r i c i , where k + 1 ≤ i ≤ n, 1 ≤ j ≤ k Forming each number as vertex of path graph (according to sequence of letters). Multiplying i.j and then label each vertex with that number (say, a p where 1 ≤ p ≤ k). Keeping in view that, one place digits are not taken in column position. In other words, we say that column position has just 2digit primes. Construct a path graph by giving consecutive i, j numbers to each vertex. Separate the graph labels as row and column numbers;    Journal of Mathematics V 1 � {first place numbers from i} V 2 � {second place numbers from j} Edge set of G becomes (r 1 , c 1 ), (r 2 , c 2 ), . . ., (r n , c n ). Now construct a bipartite graph with mentioned edge set. Edges move from r i to c i . Assign random numbers to the edges as weight in increasing order. Send that labeled graph.
Algorithm for decryption is as follows. e recipient receives the labeled bipartite graph.
Arrange the weight of edges in increasing order. en, arrange edges with respect to weights in a set of order pair such that number of rows at first and number of columns at second position. Construct path graph with the help of order pair information. Find prime factorization of each vertex label. Resultantly, required alphabets are taken through factorization, by using table (described).

Example 2.
For defining the scheme, we have to explain an example. Take a word, G R A P H. Numerically, corresponding digits are 7, 18, 1, 16, and 8, respectively. Here, length of word is k � 5.
Step 3: Figure 5 shows a table. For making a table, (n − k) × k � 6 × 5. First value, i.e., 6 shows the number of rows and 5 the number of columns.
Send the labeled graph in Figure 8 to the receiving authority. en, apply the steps for decryption: Step 1: at first, arrange the weight of the edges in ascending order: Step 2: now, arrange edges {(5,1), (11,5), (2,6), (4,6), (8,5)}. e corresponding path graph is shown in Figure 9. e examples prove the security of described algorithm. is tells a simple bipartite graph can make secrecy of information very strong, that is, the major output of any encryption scheme.

Secure Data Transfer Using Star Graphs
Many schemes are introduced to protect data. e mentioned scheme is based on star graphs. Information is transferred with full secrecy of main idea. ese steps are followed to encrypt data and then decrypt it by applying decryption steps.
Algorithm for encryption is as follows: Let M be the message which is to be encrypted. Length is l(say).
Here, we have to use shift cipher with formulation:  Keeping k � l (fixed). Converting the plaintext message to a sequence of integers by adding k into every value, by reducing every sum into modulo 26. Now, take a star graph S n+1 � K 1 ⊙ K n , corresponding to the length of message, by fixing center vertex with the numeric value zero, such that number of vertices of star graph � 1 + number of alphabetic characters in the text. Representing data as vertices of a graph, each vertex is represented by a letter. However, all adjacent vertices of a graph will be represented as adjacent letters. Now label each vertex with respect to their numeric representation in shift cipher. Next, give weights w 1 , w 2 , w 3 , . . . , w n to each edge e 1 , e 2 , e 3 , . . . , e n in such a way that w 1 e 1 < w 2 e 2 < w 3 e 3 < · · · < w n e n .
Method for finding weights of edges. Subtract increasing power of 10 from each vertex label, adjacently with respect to edges, such that where V i ∈ vertex tex i � 1, 2, 3, . . . , n { }. ese resulting values become weight of corresponding edges e i . Now, the final graph is the star graph with edge's weights (hiding the vertex label). Send this graph to the receiver.
After explaining the encryption procedure, we have to explain the decryption scheme as well.
Algorithm for decryption is as follows: Arrange the weight of edges in ascending order. Now add up the increasing power of 10, respectively. Apply the decryption formulation for shift cipher in the resulting number. Decode the characters from encoding table, and eventually, we get the required text.
Example 3. For explaining the described scheme, we have to take an example for satisfying the steps. Let us take a word CODE. We have to send this word by encrypting it with the help of such scheme.
Replace the alphabetic characters with their numeric representation. Length of message is k � 4: Now, consider a star graph S 5 � K 1 ⊙ K 4 , such that the number of its corner vertices is equal to the length of message. Figure 10 shows the respective star graph in such a way that edges are labeled as e 1 , e 2 , e 3 , and e 4 .
Apply the shift type of cipher as shifting up to the length k of the message. In this example, translated through formula, New shifted numeric values are 7, 19, 8, and 9, respectively. e related graph becomes as shown in Figure 11.
After that, apply weights w i , ∀i ∈ 1, 2, 3, 4 { } to the corresponding edges of the vertices: Weights are given by subtracting the increasing power of 10 from each adjacent numeric value in Figure 11

(21)
Resulting star graph is shown in Figure 12.
is is the final labeled graph, which is to be send to the second authority. Now, describe the decryption process. Firstly, the recipient receives the labeled graph, as shown in Figure 12. e initial step is arranging the weights of edges ( Figure 13) in ascending order of mod values, i.e., Add the increasing power of 10 to each adjacent value such that   rough this mod operation, we get the values: Apply inverse shifting by guessing the number of edges of the star graph, which is 4. So, the values become as follows: Finally, we get the values 3, 15, 4, 5.
rough the encoding table, we get their respective letters as C O D E. Get the required hidden text.
is example explains that any type of data is hidden and is kept secure until it approaches to the receiver. e algorithm depends on star graphs. Labeled graphs are sent to the recipient. It is a best possible way to secure the data.

Conclusion
is work presents graph theoretic-based schemes to improve encryption quality. ree new encryption algorithms are proposed which are very helpful for secure communication of secret messages. In the first algorithm, encryption and decryption is performed by using a specific corona graph C n ⊙ K 1 along with some basic algebraic properties. e second algorithm is based on encoding table, bipartite graph, and the concept of unique factorization domain (UFD). In third algorithm, we used a certain labeling of vertices and edges of the star graph K 1 ⊙ K n . ese symmetric algorithms use the concept of shared key that must be predefined and shared between two communicating parties. We can modify the proposed algorithms, to be applicable for the communication of sentences or the set of sentences. Furthermore, for more complexity, these algorithms could be improved by using the public key cryptography. Moreover, we can try to implement these algorithms using any programming language like C++, JAVA, or Microsoft.Net.

Data Availability
ere are no additional data required.      Journal of Mathematics 7