Sie sind auf Seite 1von 11

OPTIMIZATION OF BANK TRANSACTION SECURITY SYSTEMS

THROUGH HILL CIPHER ENCRYPTION

A Computer Application of Linear Algebra in Cryptography

In Partial Fulfillment for the Requirements in


MATH149 – Linear Algebra with Computer Application (B8)

Submitted by:

JEPSON JOHN J. CHANG

RANDY E. MOLEJONA

DIEGO T. RAMOS

KELLY LOIS P. SUN

Submitted to:

PROF. CHRISTINA VALERIO

January 24, 2019

Mapúa University – Manila

658 Muralla St, Intramuros, Manila, 1002 Metro Manila


INTRODUCTION

Personal and classified information such as Personal Identification Numbers

(PIN), bank account numbers and passwords are classified information that people use

in order to enable daily transactions and satisfy their financial needs (Worthington,

2010). However, some individuals may find it difficult to remember such details, and

may find it necessary to physically take notes of these data down such as on a piece of

paper kept in their wallets, or typed down in their cellphones, and other places that can

be conveniently accessed (Smith, 2016).

According to Thiruchelvi (2014), while writing these down may be the easiest way

of remembering information, this also makes it easily accessible for other people, more

so when kept in predictable places. This makes these information vulnerable as they

can be easily exposed to people who may misuse such sensitive data. On the other

hand, one might forget these data, and taking only mental notes may increase the

likelihood of losing access to one’s accounts and properties being unable to recall their

own personal information.

In the financial system and the economy, commercial banks play an important

role as key components in the financial system whereas banks allocate funds from

savers to borrowers in an efficient manner. They provide specialized financial services,

which reduce the cost of obtaining information about both savings and borrowing

opportunities. These financial services help to make the overall economy more efficient

(Basel Committee on Banking Supervision, 1999).


General Obejctive

In order to optimize the security on bank information, this paper aims to provide a

method in encoding personal information such as bank accounts, pins, and passwords

without exposing the actual data through the computer application of linear algebra.

Specific Objectives

Specifically, this paper aims:

1. To utilize the Hill Cypher Method with substitution ciphers and linear algebraic

operations on n x n matrices in order to encrypt and decrypt messages.

2. To utilize a multi-paradigm numerical computing environment and proprietary

programming language MATLAB® in performing operations on matrices.

METHODOLOGY

The Hill Cipher Method was invented by Lester C. Hill in 1929. It uses

substitution ciphers and linear algebraic operations on 𝑛 × 𝑛 matrices in order to

encrypt and decrypt messages (Bolt, 2012).

In classical cryptography, the Hill cipher is a polygraphic substitution cipher

based on linear algebra. it was the first polygraphic cipher in which it was practical

(though barely) to operate on more than three symbols at once.

In the following example, the Hill Cipher Method will be used in order to secure a

bank account number of a transactor.


Bank Account Number: 5470 8845 7860 8218

Take for example a bank account number 5470 8845 7860 8218. This can be placed

in a matrix format. Label it as the message matrix M.

Encoding in MATLAB:

So now exists the message matrix M:

5 4 7 0
8 8 4 5
𝑀=[ ]
7 8 6 0
8 2 1 8

Now, a cipher matrix C that is the same size as your M matrix is needed. One can

come up with the cipher matrix by using random integers. It is necessary to take note of

this matrix as this will be a personal cipher for decrypting one’s own encryptions.

After this, the resulting matrix must be encoded in the MATLAB where operations

will be used in order to create the Cipher Matrix, which is also needed for the encryption

later on.
Encoding in MATLAB:

So now exists the cipher matrix C:

2 −9 −9 8
1 3 4 −1
𝐶=[ ]
7 6 8 1
−3 5 2 4

To create a ciphertext matrix T, which is what one should note down as their “keycode”

for their actual bank account number, multiply the cipher matrix C with the message

matrix M.

Encoding in MATLAB:
Step by Step Process:

𝐶𝑀 = 𝑇

2 −9 −9 8 5 4 7 0 −61 −120 −68 19


1 3 4 −1 8 8 4 5 49 58 42 7
[ ][ ]=[ ]
7 6 8 1 7 8 6 0 147 142 122 38
−3 5 2 4 8 2 1 8 71 52 15 57

The resulting matrix is now the ciphertext matrix T:

−61 −120 −68 19


49 58 42 7
𝑇=[ ]
147 142 122 38
71 52 15 57

This will be the encrypted message one will want to keep around as their note. To

decode this back to the message matrix M, simply multiply the inverse of the cipher

matrix C with the ciphertext matrix T.

Encoding in MATLAB:
Step by Step Process:

𝐶 −1 𝑇 = 𝑀

−42 −323 121 −27 −61 −120 −68 19 5 4 7 0


1 −132 −643 157 64 49 58 42 7 8 8 4 5
( )( )( )=[ ]
521 127 741 −155 −30 147 142 122 38 7 8 6 0
70 191 −28 45 71 52 15 57 8 2 1 8

The resulting matrix is the original message matrix M:

5 4 7 0
8 8 4 5
𝑀=[ ], with bank account number 5470 8845 7860 8218.
7 8 6 0
8 2 1 8

So next time, instead of writing down one’s actual bank account number or any

other piece of sensitive information, it is suggested that they create a ciphertext for it

and decode it by using a personally-made cipher.

For an extra layer of protection, a suggestion is to encrypt the original bank

account number with corresponding numbers of the number of the first letter when

the number is spelled (e.g. 5 is Five, and F is the sixth letter of the alphabet, hence

5 = 6). This process creates substitution ciphers, which are ciphers created by

substituting a non-numerical character into an integer. And so, the original matrix:

5 4 7 0 6 6 19 26
8 8 4 5 5 5 6 6
𝑀=[ ] can be encrypted into 𝑀 = [ ].
7 8 6 0 19 5 19 26
8 2 1 8 5 20 15 5
Encoding in MATLAB:

Repeating the same steps of multiplying the message matrix M with the same

cipher matrix C will result into the ciphertext matrix T.

Encoding in MATLAB:

Step by Step Process:

𝐶𝑀 = 𝑇

2 −9 −9 8 6 6 19 26 −164 82 −67 −196


1 3 4 −1 5 5 6 6 92 21 98 143
( )( )=[ ]
7 6 8 1 19 5 19 26 229 132 336 431
−3 5 2 4 5 20 15 5 65 97 71 24

−164 82 −67 −196


92 21 98 143
𝑇=[ ]
229 132 336 431
65 97 71 24
To decode, simply follow the formula 𝐶 −1 𝑇 and the resulting matrix will be the

original message matrix M.

Encoding in MATLAB:

Step by Step Process:

𝐶 −1 𝑇 = 𝑀

−42 −323 121 −27 −164 82 −67 −196


1 −132 −643 157 64 92 21 98 143
( )( )( )
521 127 741 −155 −30 229 132 336 431
70 191 −28 45 65 97 71 24

6 6 19 26
5 5 6 6
=[ ]=𝑀
19 5 19 26
5 20 15 5

Remember to decrypt the message matrix M back since this is the substitution

cipher for the original bank account number. Recall that corresponding numbers of

the number of the first letter when the number is spelled was used. So reversing this

process, 6 on matrix M would mean the sixth letter of the alphabet, which is F.
There are only two single-digit numbers that are spelled with the first letter as F,

namely Four and Five. It can be deduced from both options if which would be the

correct input. Eventually, one will be able to decrypt and recall back the original bank

number. Resulting Matrix:

6 6 19 26 5 4 7 0
5 5 6 6 8 8 4 5
𝑀=[ ] will be decrypted back to 𝑀 = [ ].
19 5 19 26 7 8 6 0
5 20 15 5 8 2 1 8

So now, the original bank account number 5470 8845 7860 8218 is back.

CONCLUSION

The exposure of actual sensitive information can allow vulnerability to people in

terms of phishing, hacking, and identity theft. Therefore, it is a viable option to

consider using the Hill Cipher Methods to secure these data when noting down them

down, and make sure that personal information will remain confidential and more

difficult to be accessed by illegal transactors. Through this method, there would be

an occurrence of an effective filter of the information so that while the code may be

seen in plain sight, it would not be easily understood since there is a layer of

protection.

The issue regarding privacy of information will remain controversial the moment

people will not consider securing the information. They must be able to foresee the

potential threats to their information to avoid the consequences that they may face

once their privacy will be deprived through information theft.


REFERENCES

Basel Committee on Banking Supervision (30 November 1999). "Principles for the

Management of Credit Risk" (PDF). Bank for International Settlements. p. 1.

Retrieved 28 January 2016. Credit risk is most simply defined as the potential that a

bank borrower or counterparty will fail to meet its obligations in accordance with

agreed terms.

Bolt, Wilko; Haan, Leo de; Hoeberichts, Marco; Oordt, Maarten van; Swank, Job

(September 2012). "Bank Profitability during Recessions". Journal of Banking &

Finance. 36 (9): 2552–64. doi:10.1016/j.jbankfin.2012.05.011.

Smith, K. (2016). Cryptography and linear algebra. Wordpress. Retrieved from

https://applicationanthologys16.wordpress.com/2016/02/12/cryptography-

and-linear-algebra/ on January 22, 2019.

Thiruchelvi, M. (2014, February 12). Application of linear algebra in cryptography.

International Conference on Information and Image Processing. Retrieved

from http://conference.bonfring.org/papers/sankara_iciip2014/iciip88.pdf on

January 22, 2019.

Worthington, B. (2010, October 26). An introduction to Hill ciphers using linear

algebra. University of North Texas. Retrieved from http://www.math.unt.ed

u/~tushar/S10Linear2700%20%20Project_files/Worthington%20Paper.pdf on

January 22, 2019.

Das könnte Ihnen auch gefallen