You are on page 1of 11

CRYPTOGRAPHY

Software Requirements Specification


First edition
SEPT 2014

Nagendra kumar (13CA46)


Neelesh malviya (13CA47)
Neeraj Rathore (13CA48)
Neha Tiwari (13CA49)
Pankaj Sharma (13CA50)

Submitted in partial fulfillment


of
The requirements of Software Engineering Lab
Instructor: Mrs. Sumitra Subrahmanya

National Institute of Technology Karnataka


Department of M.A.C.S.
Surathkal, Mangalore, India

CRYPTOGRAPHY

TableofContents
NATIONALINSTITUTEOFTECHNOLOGYKARNATAKA.............................................................................I
1.INTRODUCTION.....................................................................................................................................................1
1.1PURPOSE...............................................................................................................................................................1
1.2SCOPE...................................................................................................................................................................1
1.3DEFINITIONS,ACRONYMS,ANDABBREVIATIONS................................................................................................1
1.4REFERENCES.........................................................................................................................................................1
1.5OVERVIEW............................................................................................................................................................1
2.GENERALDESCRIPTION....................................................................................................................................1
2.1PRODUCTPERSPECTIVE........................................................................................................................................2
2.2PRODUCTFUNCTIONS...........................................................................................................................................2
2.3USERCHARACTERISTICS......................................................................................................................................2
2.4GENERALCONSTRAINTS.......................................................................................................................................2
2.5ASSUMPTIONSANDDEPENDENCIES......................................................................................................................2
3.SPECIFICREQUIREMENTS................................................................................................................................2
3.1EXTERNAL INTERFACE REQUIREMENTS ...............................................................................................................2
3.1.1 User Interfaces .............................................................................................................................................2
3.1.2 Hardware Interfaces.....................................................................................................................................2
3.1.3 Software Interfaces.......................................................................................................................................2
3.1.4 Communications Interfaces..........................................................................................................................3
3.2 FUNCTIONAL REQUIREMENTS...............................................................................................................................3
3.2.1 Cryptographic function: Encryption ...........................................................................................................3
3.2.2 Cryptographic function: Decryption ...........................................................................................................3
3.3 NON-FUNCTIONAL REQUIREMENTS......................................................................................................................4
3.3.1 Performance.................................................................................................................................................4
3.3.2 Reliability.....................................................................................................................................................4
3.3.3 Availability...................................................................................................................................................4
3.3.4 Security.........................................................................................................................................................4
3.3.5 Maintainability ............................................................................................................................................4
3.3.6 Portability.....................................................................................................................................................4
3.4 INVERSE REQUIREMENTS .....................................................................................................................................4
3.7 DESIGN CONSTRAINTS..........................................................................................................................................4
3.8 LOGICAL DATABASE REQUIREMENTS...................................................................................................................4
3.9 OTHER REQUIREMENTS........................................................................................................................................4

3.10UseCaseApproch...5.

4.ANALYSISMODELS..............................................................................................................................................6

4.1Model6

4.2CONTEXTDIAGRAM.............................................................................................................................................7
4.3DATAFLOWDIAGRAMS(DFD)...........................................................................................................................7
4.4STATETRANSITIONDIAGRAMS(STD)................................................................................................................8

5.CHANGEMANAGEMENTPROCESS................................................................................................................9

SoftwareRequirementsSpecification

Pageii

CRYPTOGRAPHY

1.Introduction
1.1Purpose
The purpose of the SRS is provide the Basic information about Software to customer and the
purpose of this software is provide the security of Data for which no one except the customer can
see the private information.

1.2Scope
1.SOFTWARENAME:CRYPTOGRAPHY
2. Using this Software you can easily encode your data in encrypted form.
This software is necessary for your sensitive files and document.
3. In this software you can choose the level of security by the given
security scale
4. Through the software we send an information to any other people in
hidely and
only that specific people see this ciphertext by the help of given security
key.

1.3Definitions,Acronyms,andAbbreviations
Key:keymeanspasswordgivenbytheuserthathelptoencryption.
Encryption:convertoursimpletextorsimpledocumenttononreadableform.
Decryption:convertnonreadabletexttoreadabletext.

1.4References
a. Java Cryptography - Jonathan B. Knudsen,First Edition May 1998
b. http://en.wikipedia.org/wiki/Encryption.

1.5Overview
TheRemainderofthisdocumentprovideamoredetailaboutsoftwarerequirementanddetail
functionality.InSection2providesdetailaboutproductfunction,constraints,assumption.In
section 3 provide information about External requirement like (User Interface, Hardware
InterfaceandSoftwareInterface).InSection4thereisaDFD(DataFlowDiagram)thathelp
usertounderstandtheflowofData.

2.GeneralDescription
2.1ProductPerspective
This project will be framework that provides reusability of agents communication. It is
implementedinjava.ItsGUIbasedsoftware,technicalandnontechnicalpersoncanalsouse
SoftwareRequirementsSpecification

Page1

CRYPTOGRAPHY

thissoftwareveryeasily.ThissoftwareismadeinJavalatestversion8.0.Itrequired16MBram
toexecutethissoftwareandthissoftwareissupportabletoanyofversionOSwindows.

2.2ProductFunctions
The function will provide following functionality:Installation.
It provide GUI interface on which end user enter their text and after the pressing 'ok' button, the
given text is change in encrypted form and it also generate a security through which the other
user who recieved the data can be decrypt.

2.3UserCharacteristics
Thisisacryptographicapplicationthatusablebyallclassofuser(whoneedtosecuretheirdata).
Thisisusablebothfornoviceortechnicalusersaswellasexperttechnicalusers.

2.4GeneralConstraints
1.Security:weprovidesomebasicmechanismsforsecuritysuchasmessageencryption.
However,thereisnoguaranteethattheothercannotdecrypttheencryptedmessages.

2.5AssumptionsandDependencies
1. We assume that there is an agent whom each agent can request for the different encryption
and accordingly generated decryption key. This agent should maintain a list of agents who are
allowed to get the keys.
2. We assume that each agent has enough knowledge to decide the best way to communicate with
the other agents.

3.SpecificRequirements
3.1ExternalInterfaceRequirements
3.1.1UserInterfaces
1.Inthissoftware,havethreemainbutton(Encrypt,decrypt,send)
2.Firsttabi.e.encrypttabwillallowausertoselectthealgorithminwhichtheywishtoencrypt
thefileandbrowsethefilefromharddiskandprovidethepublickeytohelpinencryption.
3.Secondtabi.e.decryptsoption,willallowausertodecrypttheencryptedfileinotherend
providingprivatekey.
4.Thirdtabi.e.sendoption,willallowusertosendafiletoanotheruser.
3.1.2HardwareInterfaces
Cryptography is made in Java so it is Hardware Independent software. There is no nee of any
hardware. Its run on any operating system and its not a heavy software so no
need to extra ram. Its required 16 MB ram to executed software and run on any os.

SoftwareRequirementsSpecification

Page2

CRYPTOGRAPHY

3.1.3SoftwareInterfaces
Implementation will be in Java programming language that will execute in any system for
which will required only java interpreter that is depend on operating system to system.
3.1.4CommunicationsInterfaces
Network components to send file form one computer to other computer using ip address on
Local area Network. We use FTP protocol to send file in between computer.

3.2FunctionalRequirements
3.2.1 Cryptographic function: Encryption
Description: This system feature involves encrypting the data using one of many asymmetric
cryptographic ciphers for data security.
Function Requirement:
1. User select check box that type of cipher he want. He can select more than one algorithm
to increase the security.
2. Select the file using browse option that he wants to encrypt.
3. Click the convert button after select the file.
4. Before press the Covert button you must enter the key that help to encrypt your File.
5. After converting your file successfully its give the key.
6. After encryption file in create in destination folder.
3.2.2 Cryptographic function: Decryption

Description: This system feature involves decrypting the data using one of many asymmetric
cryptographic ciphers for data security.
Fictional Requirement:
1. Select file using browse option that you want to decrypt.
2. Enter the key value in key filed without entering the key value you cannot proceed
further.
3. Press the covert button, Its give you decrypted file.
3.2.3

File transfer function:


Description: This system feature involves to send your file from one computer to
other computer over LAN (Local area network).
Functional Requirement:
1. In IP field type the IP address of Receiver .(Whom you want to send)
2. Select the Decrypt file using the browse option.
3. Press the Send Button.

SoftwareRequirementsSpecification

Page3

CRYPTOGRAPHY

4. Its Show your file successfully sends to Receiver.

3.5NonFunctionalRequirements
Non-functional requirements may exist for the following attributes. Often these requirements
must be achieved at a system-wide level rather than at a unit level. State the requirements in the
following sections in measurable terms (e.g., 95% of transaction shall be processed in less than a
second, system downtime may not exceed 1 minute per day, > 30 day MTBF value, etc).
3.5.1Performance
Most public key ciphers 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. Its providing more security compare to symmetric key and also performance of
encrypting file very good. It is general purpose software.
3.5.2Reliability
ITsprovidethereliabilityofsoftwarebecauseinthissoftwareweuseRSAalgorithmwhich
providetwokeyconceptpublickeyandprivatekeyandinthisalgorithmweuseprimenumber
conceptwhichprovidegreatersecurityratherthanother.
3.5.3Availability
Itiseasilyavailableforeveryenduserforthebettersecurity.
3.5.4Security
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.
3.5.5Maintainability
Thesourcecodeshouldbeproperlydocumented,sothatnewdeveloperswillbeableto
understandthecodeaseasilyaspossible.
3.5.6Portability
Thisisaplatformindependentsoftware,(i.e.itprovidethewaytorunthesoftwareanyoperating
system)

3.7DesignConstraints
NONE

3.8LogicalDatabaseRequirements
NONE
SoftwareRequirementsSpecification

Page4

CRYPTOGRAPHY

3.9OtherRequirements

ItrequireLAN(LocalAreaNetwork)connection.

3.10USECASEAPPROCH:

SoftwareRequirementsSpecification

Page5

CRYPTOGRAPHY

4.AnalysisModels
List all analysis models used in developing specific requirements previously given in this SRS.
Each model should include an introduction and a narrative description. Furthermore, each model
should be traceable the SRSs requirements.

4.1Model:

SoftwareRequirementsSpecification

Page6

CRYPTOGRAPHY

4.2ContextDiagram

4.3DataFlowDiagrams(DFD)

SoftwareRequirementsSpecification

Page7

CRYPTOGRAPHY

4.4StateTransitionDiagrams(STD)

5.ChangeManagementProcess

SoftwareRequirementsSpecification

Page8

CRYPTOGRAPHY

SoftwareRequirementsSpecification

Page9