Software Requirements Specification: Version 1.0 Approved

Download as pdf or txt
Download as pdf or txt
You are on page 1of 8

Software Requirements

Specification
for

Cryptography with maze using


Deep Learning
Version 1.0 approved

Prepared by
Riju Bhattacharyya,
Brettlee Correia and
Rosanne Fernando

Xavier Institute of Technology

27.02.2021
Software Requirements Specification for Cryptography with maze using Deep Learning Page 0

Table of Contents
Table of Contents ...................................................................................................................... 0
Revision History ........................................................................................................................ 0
1. Introduction ......................................................................................................................... 1
1.1 Purpose ....................................................................................................................................... 1
1.2 Document Conventions ............................................................................................................... 1
1.3 Intended Audience and Reading Suggestions............................................................................... 1
1.4 Product Scope ............................................................................................................................. 1
1.5 References .................................................................................................................................. 1
2. Overall Description ............................................................................................................. 2
2.1 Product Perspective..................................................................................................................... 2
2.2 Product Functions ....................................................................................................................... 2
2.3 User Classes and Characteristics ................................................................................................. 2
2.4 Operating Environment ............................................................................................................... 2
2.5 Design and Implementation Constraints ...................................................................................... 2
2.6 User Documentation ................................................................................................................... 2
2.7 Assumptions and Dependencies .................................................................................................. 2
3. External Interface Requirements ....................................................................................... 3
3.1 User Interfaces ............................................................................................................................ 3
3.2 Hardware Interfaces .................................................................................................................... 3
3.3 Software Interfaces ..................................................................................................................... 3
3.4 Communications Interfaces ......................................................................................................... 3
4. System Features ................................................................................................................... 3
4.1 System Feature 1......................................................................................................................... 3
4.2 System Feature 2 (and so on) ...................................................................................................... 3
5. Other Nonfunctional Requirements ................................................................................... 4
5.1 Performance Requirements ......................................................................................................... 4
5.2 Safety Requirements ................................................................................................................... 4
5.3 Security Requirements ................................................................................................................ 4
5.4 Software Quality Attributes ......................................................................................................... 4
5.5 Business Rules ............................................................................................................................ 4
6. Other Requirements ............................................................................................................ 5
Appendix A: Glossary ............................................................................................................... 5
Appendix B: Analysis Models ................................................................................................... 5
Appendix C: Issue List .............................................................................................................. 6

Revision History
Name Date Reason For Changes Version
Software Requirements Specification for Cryptography with maze using Deep Learning Page 1

1. Introduction
1.1 Purpose
We are planning to introduce a new way of securing the data by creating a data encryption
program which is integrated with deep learning algorithm for better implementation and security.
The following items are included: CMDL’s purpose, scope, functionality, requirements, diagrams
related to the system and a detailed explanation of the corresponding system model.

1.2 Document Conventions


 Entire document should be justified
 Convention for Main Title
o Font Face: Times New Roman
o Font Style: Bold
o Font Size: 18
 Convention for Sub Title
o Font Face: Times New Roman
o Font Style: Bold
o Font Size: 14
 Convention for body
o Font Face: Times New Roman
o Font Style: Normal
o Font Size: 11

1.3 Intended Audience and Reading Suggestions


The intention of this project is for the users who are seeking better and faster way to send or
receive the intended data. The document along with the introduction to the system contains
functional and non-functional requirements, features of CMDL. It will be most helpful if the
document is read sequentially as the content is presented.

1.4 Product Scope


The CMDL allows the users to send the data to the respective recipients with at most security.
The data sent by the sender will be encrypted; a layer will be added around it providing additional
security. This layer will not display the data till it receives the key given by the sender or receiver.
As this program provides the user end to end encryption, we expect this to be deployed by various
users across different platform.

1.5 References
1. A Deep Learning Approach To Implement slab based image steganography algorithm of
RGB images
2. An improved method for hiding data in a maze
3. Efficient and Privacy-Preserving Cryptographic Key Derivation From Continuous
Sources
4. Securing Data in Internet of Things (IoT) Using Cryptography and Steganography
Techniques
Software Requirements Specification for Cryptography with maze using Deep Learning Page 2

2. Overall Description
2.1 Product Perspective
CMDL is a system that improves the way of data cryptography providing additional security to
the data. As this system is fairly simple, we expect it to get integrated seamlessly into software’s
pre-existing security system.

2.2 Product Functions


CMDL can be integrated by software developers to maintain and improve the security system of
the software. The data becomes encrypted, generating the key using the encryption algorithm; the
cipher code will be divided into parts depending upon its size and with the help of deep learning
and maze algorithm, the code will be sent to the recipient. The implementation of decipher begins
once the key is used; thus revealing the location of the cipher text inside the maze and converting
it into its intended form.

2.3 User Classes and Characteristics


There will be two user classes i.e. sender and receiver. In sender part, the user is able to generate
the key, creating cipher text and also sending it to receiver. The receiver is only able to decode
the cipher text with the help of key provided through sender.

2.4 Operating Environment


The system will work on Windows (Windows 7 and up) and MacOS and Linux. The system will
need minimum of 4GB hard disk space and recommended RAM requirements are 4GB.

2.5 Design and Implementation Constraints


The entire system will be developed using python thus the team must be familiar with this
language. The persons using this system must be familiar with English as the entire interface will
be in English language.

2.6 User Documentation


The Google drive link manual is
https://drive.google.com/open?id=1Gl7bzrQne5No7JydZbbKPlLAgPuQcIVr
YouTube link for the help on installation and basic use is at https://www.youtube.com/cmdl.
You can also write to us at [email protected] if you face any problem.

2.7 Assumptions and Dependencies


The key generation in CMDL system needs to be perfect in order to decipher the data. If it’s
imperfect then even though the data has been sent to receiver, he/she won’t be able to view the
original text as it will affect the decryption algorithm.
Software Requirements Specification for Cryptography with maze using Deep Learning Page 3

3. External Interface Requirements


3.1 User Interfaces
The interface consists of a python code which on execution will encrypt the message sent from
the user and then the receiver will decrypt the message the message with key generated.

3.2 Hardware Interfaces


Since the application must run over the internet, all the hardware will be required to connect the
internet for accessing the system. As for e.g. Modem, WAN-LAN, Ethernet Cross-cable.

3.3 Software Interfaces


Software Description
Operating System We have chosen Windows OS for its best
support and user friendliness
Database To store the messages sent and for data
retrieving.
Python We have chosen Python for its simple syntax
and easy to implement nature.

3.4 Communications Interfaces


The system will establish a secure connection between the sender and receiver whenever the
receiver agrees to receive the package.

4. System Features
4.1 Encrypted messages
Messages are encrypted with maze cryptography technique for security purposes. Any detection
of breaching the message will be discarded, and the user will be asked to resend the same.

4.2 Proper Administration and Privacy Features


Only the admin will be able to see the messages sent, and the messages will be deleted after
24hours.
Software Requirements Specification for Cryptography with maze using Deep Learning Page 4

5. Other Nonfunctional Requirements


Non-functional requirements may exist for the basically attributes. Often these requirements must
be achieved at a system-wide level rather than at a unit level.

5.1 Performance Requirements


Most public key ciphers that we are going to use rely on high computational cost operations.
Therefore, keeping performance considerations in mind, for data encryption/decryption
computational effort to encryption/decryption using asymmetric key is very powerful compare to
symmetric key algorithm. It’s providing more security compare to symmetric key and also
performance of encrypting file very good. It is general purpose software.

5.2 Safety Requirements


For safety purpose it is necessary to remember the password to avoid encryption of data.

5.3 Security Requirements


User is required to remember his password that he/she used to encrypt data (or lock password
safe) because most of secure cryptographic algorithms implemented in this suite are secure
enough so that no algorithms better than brute-force can be used to recover lost password.

5.4 Software Quality Attributes


 Understandability: The source code should be written descriptively. The method used should be
self -descriptive. So that it can be easily understood.

 Efficiency: This is a platform independent software, (i.e. it is efficient to run the software of any
operating system)

 Reliability: It is easily reliable for every end user for better security.

 Maintainability: The source code should be properly documented, so that new developers will be
able to understand the code as easily as possible.

5.5 Business Rules


A business rule is anything that captures and implements business policies and practices, decide
or infer new data from existing data. It includes rules and regulations that the system user should
abide by. The user should avoid illegal rules and protocols.
Software Requirements Specification for Cryptography with maze using Deep Learning Page 5

6. Other Requirements
There are different categories of users namely sender, receiver. Depending upon the category of
user the access rights are decided. It means if the user is sender then he/she can be able to send
the crypto formatted data to the receiver along with the generated key. This key can be used by
the sender or receiver for decryption.

Appendix A: Glossary
 Users: It refers to sender and receiver

 User Interface Layer: The section of the assignment referring to what user interacts
directly

 Data Storage Layer: The section of the assignment referring to where data is stored

 Interface: Used to communicate across different mediums

 Key: Used for decryption algorithm to display the original data

Appendix B: Analysis Models


ER Diagram
An ER diagram shows the relationship among entity sets. An entity set is a group of similar
entities and these entities can have attributes.
Software Requirements Specification for Cryptography with maze using Deep Learning Page 6

Appendix C: To Be Determined List

Issue Name Description Priority

Research options for accommodating


Internalization multiple languages in indexing, High
searching and user input

A study of usability and an evaluation


User Interface Specification of the user interfaces of other document Medium
system will be useful

Evaluate other documents to determine


Performance Requirements their level of performance and what can Low
be expected of this system

You might also like