signature verification1

Upload: mohana-sundaram

Post on 08-Aug-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/23/2019 Signature Verification1

    1/74

    SIGNATURE VERIFICATION

    A Project Report Submitted in Partial fulfilment of the requirements for the

    award of the Degree of

    BACHELOR OF SCIENCE

    In

    Computer Science

    Of

    MOTHER TERESA WOMENS UNIVERSITY

    BY

    A.Rajeswari (Reg.No : 10326ER047)

    S.Sudha (Reg.No : 10326ER051)

    Under the guidance of

    Mrs.D.Jeyanthi, MCA.,

    Lecturer, Department of Computer Science

    DEPARTMENT OF COMPUTER SCIENCE

    M.V.M GOVT. ARTS COLLEGE (W)

    (Affiliated to Mother Teresa Womens University, Kodaikanal)

    DINDIGUL-624005

    April 2013

  • 8/23/2019 Signature Verification1

    2/74

    CERTIFICATE

    This is to certify that the project titled SIGNATURE VERIFICATION

    submitted in partial fulfilment of requirements for the award of the degree of

    Bachelor of Computer Science to the Mother Teresa University, M.V.M Govt.

    Arts College for Womens, Dindigul record work done by

    A.Rajeswari,(10326ER047) S.Sudha,(10326ER051) under the supervision and

    guidance.

    Submitted for the viva-voce exam held on ______________

    INTERNAL GUIDE HEAD OF THE DEPARTMENT

    INTERNAL EXAMINER EXTERNAL EXAMINER

  • 8/23/2019 Signature Verification1

    3/74

    M.V.M GOVT. ARTS COLLEGE(Women)

    BONAFIED CERTIFICATE

    This is to certify that this project entitled SIGNATURE VERIFICATION is a

    bonafied record work carried by A.Rajeswari, Reg.No.10326ER047 & S.Sudha,

    Reg.No.10326ER051 at M.V.M GOVT ARTS COLLEGE(W),DINDIGUL during the

    academic year 2012-2013in partial fulfilment of the requirement for the award of the degree

    of BACHELOR Of SCIENCE (COMPUTER SCIENCE).

    Mrs.D.Jeyanthi,MCA., Dr.A.Pethalakshmi,M.Sc.,M.Phil.,Ph.D.,

    INTERNAL GUIDE HEAD OF THE DEPARTMENT

    Department of Computer Science Department of Computer Science

    M.V.M Govt Arts College(W), M.V.M Govt Arts College(W),

    Dindigul Dindigul.

    Submitted for the viva-voce examination held on___________________

    INTERNAL EXAMINER EXTERNAL EXAMINER

  • 8/23/2019 Signature Verification1

    4/74

    DECLARATION

  • 8/23/2019 Signature Verification1

    5/74

    DECLARATION

    We hereby declare that this project entitled as SIGNATURE

    VERIFICATION submitted to MVM Govt. Arts College for Women, Dindigul in

    partial fulfilment for the award of degree of Bachelor of Science in Computer Science

    is a record of original work done by us during the period of our study in the

    department of Computer Science, M.V.M Govt Arts College(W), Dindigul. Under the

    Supervision and Guidance of Mrs.D.Jeyanthi,MCA., Lecturer in Department of

    Computer Science, M.V.M. Govt Arts College(W), Dindigul.

    A.Rajeswari, (Reg.No : 10326ER047)

    S.Sudha, (Reg.No : 10326ER051)

    PLACE : DINDIGUL

    DATE :

  • 8/23/2019 Signature Verification1

    6/74

    ACKNOWLEDGEMENT

  • 8/23/2019 Signature Verification1

    7/74

    ACKNOWLEDGEMENT

    First and foremost, We thank our almighty, for showering his grace and bless to finish

    this project in a nice manner.

    We gratefully acknowledge the help of our principle Dr.Mrs.C.Padmalatha M.Sc,

    Ph.D., who gave us an opportunity to study in this organization.

    We are taking this opportunity to express our immense pleasure with heartful

    gratitude to Dr.Mrs.A.Pethalakshmi M.Sc., M.Phil., Ph.D., Head of the Department in

    computer science for her kind guidance and providing all necessary facilities at the right time

    for completing our project.

    This project would not have been possible without the motivation and guidance of

    our internal guide Mrs.D.Jeyanthi M.C.A., Department of computer science.She was the

    backbone of our project and gave us encouragement and Moral support to finish this project.

    Finally, we express our heartful thanks to Assistant professors of computer science

    Mrs., E.HELEN PARIMALA M.Sc, M.Phil., M.Ed, Mrs.A.P.NAGALAKSHMI M.CA.,

    Mrs.S.MOHANAMBAL M.C.A., M.Phil., And Also We convey our sincere thanks to

    Assistant programmerMrs.N.Manimala M.A., for her kind support and encouragement.

    We deeply express our thanks to our parents, sister and friends for their support and

    encouragement throughout the project.

    A.Rajeswari, (Reg.No : 10326ER047)

    S.Sudha, (Reg.No : 10326ER051)

  • 8/23/2019 Signature Verification1

    8/74

    CONTENT

  • 8/23/2019 Signature Verification1

    9/74

    S.NO CONTENT PAGE NO

    1. SYNOPSIS

    1.1 About the Project

    2. SYSTEM STUDY2.1 Existing System

    2.2 Proposed System

    3. SYSTEM SPECIFICATION

    3.1 Hardware Specification

    3.2 Software Specification

    4. SYSTEM ANALYSIS

    4.1 System Analysis4.2 Feasibility

    4.2.1 Economical Feasibility

    4.2.2 Technical Feasibility

    4.2.3 Operational Feasibility

    5. PROJECT DESCRIPTION

    5.1 Modules Description

    6. SYSTEM DESIGN

    6.1 Database Design

    6.2 Data Flow Diagram

    6.3 Input Design

    6.4 Output Design

    7. SYSTEM TESTING

    8. SYSTEM IMPLEMENTATION

    9. CONCLUSION

    9.1 Future Enhancement

    10. BIBLIOGRAPHY

    11. APPENDIX

    11.1 Source Code

    11.2 Output Screen

  • 8/23/2019 Signature Verification1

    10/74

    SYNOPSIS

  • 8/23/2019 Signature Verification1

    11/74

    Signature verification

    This paper discusses signature verification and recognition using a new

    approach that depends on a application which enables the user to recognize whether a

    signature is original or a fraud. The user introduces into the computer the scannedimages, modifies their quality by image enhancement and noise reduction techniques.

    Problem In Existing System

    Signature verification can be done only by experts. They follow manual step to identify signature duplication. Manual step may be lead to average result. It cannot be pictured accuracy in detection.

  • 8/23/2019 Signature Verification1

    12/74

    SYSTEM STUDY

  • 8/23/2019 Signature Verification1

    13/74

    2.SYSTEM STUDY

    2.1 EXISTING SYSTEM:

    Many of the applications for identify authentification use a password or a pin

    code. Other types of authentification (signature, face, eye recognition) are more complicated

    and computationally expensive, making them inatractive for wide public use, which are

    technically reviewed and retrieved by advance programmer.

    Disadvantage of Existing System:

    * Not more secure

    * File can be easily breakable

    * Technique is not more secure

    2.2 PROPOSED SYSTEM:

    Signature verification systems

    Thesignature recognition is the process of verifying the writer's identity by checking

    the signature against samples kept in a database. The result of this process is usually anumber between 0 and 1 which represents a fit ratio (1 for match and 0 for mismatch). The

    threshold used for confirmation/rejection decision depends on the nature of the application.

    The aim of this project is to develop a signature verification system based on very low

    end processors, suitable for commercial use. It is essential for these applications to keep both

    the computing complexity and the data amount used for verification as small as possible. The

    small data size is very important for fast data transfers in network applications and/or cheap

    digital storage on personal cards. The time for checking the new signature is critical because

    this is the time seen by the user. However, the learning time is less important since the

    training for one person occurs only once.

    A signature verification system has five components:

    Data capture -- the process of converting the signature into digital form. Preprocessing-- the data transformation in a standard format. Feature extraction -- the process of extracting key information from the digital

    representation of the signature.

    Comparison process -- matches extracted features with templates stored in a database.Usually, the output is a fit ratio.

  • 8/23/2019 Signature Verification1

    14/74

    Performance evaluation -- the decision step typically made by thresholding the fitvalue.

    Proposed Implementation

    Here are listed the key steps used in this implementation:

    Data capture is done with a touch panel and an 8-bit ADC with a resolution in the 25-100 dpi range.

    Feature extraction is based on a proprietary method. The selected features arerepresented by a string of 128 bytes size and rotation invariant.

    The comparison is implemented as a neural network which has as output a realnumber between 0 and 1. Usually a genuine signature scores above 0.90-0.95,

    variable from signer to signer. The needed data for checking are the weights ofsynapses of the neural network. The topology is proprietary and reduces the data

    stored to less than 350 bytes. A method to train the network (a back-propagation

    neural network was used for tests) for each person was also developed.

  • 8/23/2019 Signature Verification1

    15/74

    SYSTEM

    SPECIFICATION

  • 8/23/2019 Signature Verification1

    16/74

    3. SYSTEMSPECIFICATION

    3.1 HARDWARESPECIFICATION:-

    Processor : Pentium IV RAM : 1GB Hard Disk : 250 GB Mother Board : Intel chipset board Mouse : Logitech two button Key Board : 104 keys keyboard Monitor : 17 LCD Colour Monitor

    3.2 SOFTWARE SPECIFICATION:-

    Operating System : Window XP Development Environment : MicrosoftVisualVB.NET Platform : VB.NET Languages : VB.Net

  • 8/23/2019 Signature Verification1

    17/74

    OVERVIEW OF .NET

    What is .NET?

    When .NET was announced in late 1999, Microsoft positioned the technology

    as a platform for building and consuming Extensible Markup Language (XML) Web

    services. XML Web services allow any type of application, be it a Windows- or

    browser-based application running on any type of computer system, to consume data

    from any type of server over the Internet. The reason this idea is so great is the way in

    which the XML messages are transferred: over established standard protocols that

    exist today. Using protocols such as SOAP, HTTP, and SMTP, XML Web services

    make it possible to expose data over the wire with little or no modifications to your

    existing code.

    Figure 1.1 presents a high-level overview of the .NET Framework and how XML

    Web services are positioned.

    Figure 3.1. Stateless XML Web services model.

  • 8/23/2019 Signature Verification1

    18/74

    Since the initial announcement of the .NET Framework, it's taken on many new

    and different meanings to different people. To a developer, .NET means a great

    environment for creating robust distributed applications. To an IT manager, .NET

    means simpler deployment of applications to end users, tighter security, and simpler

    management. To a CTO or CIO, .NET means happier developers using state-of-the-art

    development technologies and a smaller bottom line. To understand why all these

    statements are true, you need to get a grip on what the .NET Framework consists of,

    and how it's truly a revolutionary step forward for application architecture,

    development, and deployment.

    .NET Framework

    Now that you are familiar with the major goals of the .NET Framework, let's

    briefly examine its architecture. As you can see in Figure 1-2, the .NET Framework

    sits on top of the operating system, which can be a few different flavors of Windows

    and consists of a number of components .NET is essentially a system application that

    runs on Windows.

    Figure 3.2 NET Framework

    Conceptually, the CLR and the JVM are similar in that they are both runtime

    infrastructures that abstract the underlying platform differences. However, while the

  • 8/23/2019 Signature Verification1

    19/74

    JVM officially supports only the Java language, the CLR supports any language that

    can be represented in its Common Intermediate Language (CIL). The JVM executes

    byte code, so it can, in principle, support many languages, too. Unlike Java's byte

    code, though, CIL is never interpreted. Another conceptual difference between the two

    infrastructures is that Java code runs on any platform with a JVM, whereas .NET code

    runs only on platforms that support the CLR.

    The Common Language Runtime

    At the heart of the .NET Framework is the common language runtime. The

    common language runtime is responsible for providing the execution environment that

    code written in a .NET language runs under. The common language runtime can be

    compared to the Visual Basic 6 runtime, except that the common language runtime is

    designed to handle all .NET languages, not just one, as the Visual Basic 6 runtime did

    for Visual Basic 6. The following list describes some of the benefits the common

    language runtime gives you:

    Automatic memory management Cross-language debugging Cross-language exception handling Full support for component versioning Access to legacy COM components XCOPY deployment Robust security model

    You might expect all those features, but this has never been possible using

    Microsoft development tools. Figure 1.3 shows where the common language runtime

    fits into the .NET Framework.

  • 8/23/2019 Signature Verification1

    20/74

    Figure 3.3. The common language runtime.

    Note

    Code written using a .NET language is known as managed code. Code that uses

    anything but the common language runtime is known as unmanaged code. The

    common language runtime provides a managed execution environment for .NET code,

    whereas the individual runtimes of non-.NET languages provide an unmanaged

    execution environment.

    Inside the Common Language Runtime

    The common language runtime enables code running in its execution

    environment to have features such as security, versioning, memory management and

    exception handling because of the way .NET code actually executes. When you

    compiled Visual Basic 6 forms applications, you had the ability to compile down to

    native node or p-code.

  • 8/23/2019 Signature Verification1

    21/74

    Figure 3.4. Visual Basic 6 compiler options dialog.

    When you compile your applications in .NET, you aren't creating anything in

    native code. When you compile in .NET, you're converting your codeno matter

    what .NET language you're usinginto an assembly made up of an intermediate

    language called Microsoft Intermediate Language.

    Note

    The file format for the IL is known as PE (portable executable) format, which is

    a standard format for processor-specific execution.

    When a user or another component executes your code, a process occur called

    just-in-time (JIT) compilation, and it's at this point that the IL is converted into the

    specific machine language of the processor it's executing on. This makes it very easy

    to port a .NET application to any type of operating system on any type of processor

    because the IL is simply waiting to be consumed by a JIT compiler.

  • 8/23/2019 Signature Verification1

    22/74

    When the IL code is JITted into machine-specific language, it does so on an as-

    needed basis. If your assembly is 10MB and the user is only using a fraction of that

    10MB, only the required IL and its dependencies are compiled to machine language.

    This makes for a very efficient execution process. But during this execution, how does

    the common language runtime make sure that the IL is correct? Because the compiler

    for each language creates its own IL, there must be a process that makes sure what's

    compiling won't corrupt the system. The process that validates the IL is known as

    verification. Figure 1.5 demonstrates the process the IL goes through before the code

    actually executes.

    Figure 3.5. The JIT process and verification

    When code is JIT compiled, the common language runtime checks to make sure

    that the IL is correct. The rules that the common language runtime uses for

    verification are set forth in the Common Language Specification (CLS) and the

    Common Type System (CTS).

  • 8/23/2019 Signature Verification1

    23/74

    The .NET Framework Class Library

    The second most important piece of the .NET Framework is the .NET

    Framework class library (FCL). As you've seen, the common language runtime

    handles the dirty work of actually running the code you write. But to write the code,

    you need a foundation of available classes to access the resources of the operating

    system, database server, or file server. The FCL is made up of a hierarchy of

    namespaces that expose classes, structures, interfaces, enumerations, and delegates

    that give you access to these resources.

    The Structure of a .NET Application

    To understand how the common language runtime manages code execution,

    you must examine the structure of a .NET application. The primary unit of a .NET

    application is the assembly. An assembly is a self-describing collection of code,

    resources, and metadata. The assembly manifest contains information about what is

    contained within the assembly.

    The assembly manifest provides:

    Identity information, such as the assemblys name and version number A list of all types exposed by the assembly A list of other assemblies required by the assembly A list of code access security instructions, including permissions required by

    the assembly and permissions to be denied the assembly

    Each assembly has one and only one assembly manifest, and it contains all the

    description information for the assembly. However, the assembly manifest can be

    contained in its own file or within one of the assemblys modules.

  • 8/23/2019 Signature Verification1

    24/74

    Compilation and Execution of a .NET Application

    When you compile a .NET application, it is not compiled to binary machine

    code; rather, it is converted to IL. This is the form that your deployed application

    takesone or more assemblies consisting of executable files and DLL files in IL

    form. At least one of these assemblies will contain an executable file that has been

    designated as the entry point for the application.

    When execution of your program begins, the first assembly is loaded into

    memory. At this point, the common language runtime examines the assembly manifest

    and determines the requirements to run the program. It examines security permissions

    requested by the assembly and compares them with the systems security policy. If the

    systems security policy does not allow the requested permissions, the application will

    not run. If the application passes the systems security policy, the common language

    runtime executes the code. It creates a process for the application to run in and begins

    application execution.

    The .NET Framework base class library contains the base classes that provide

    many of the services and objects you need when writing your applications. The class

    library is organized into namespaces. A namespace is a logical grouping of types that

    perform related functions. Namespaces are logical groupings of related classes. The

    namespaces in the .NET base class library are organized hierarchically. The root of

    the .NET Framework is the System namespace. Other namespaces can be accessed

    with the period operator. A typical namespace construction appears as follows:

    System

    System.Data

    System.Data.SQLClient

    The first example refers to the System namespace. The second refers to the

    System.Data namespace. The third example refers to the System.Data.SQLClient

    namespace. Table 1.1 introduces some of the more commonly used .NET base class

    namespaces.

  • 8/23/2019 Signature Verification1

    25/74

    LANGUAGE SPECIFICTION:

    Introduction to Object-Oriented Programming

    Programming in the .NET Framework environment is done with objects.

    Objects are programmatic constructs that represent packages of related data and

    functionality. Objects are self-contained and expose specific functionality to the rest

    of the application environment without detailing the inner workings of the object

    itself. Objects are created from a template called a class. The .NET base class library

    provides a set of classes from which you can create objects in your applications. You

    also can use the Microsoft Visual Studio programming environment to create yourown classes. This lesson introduces you to the concepts associated with object-

    oriented programming.

    Objects, Members, and Abstraction

    An object is a programmatic construct that represents something. In the real

    world, objects are cars, bicycles, laptop computers, and so on. Each of these items

    exposes specific functionality and has specific properties. In your application, an

    object might be a form, a control such as a button, a database connection, or any of a

    number of other constructs. Each object is a complete functional unit, and contains all

    of the data and exposes all of the functionality required to fulfill its purpose. The

    ability of programmatic objects to represent real-world objects is called abstraction.

    Classes Are Templates for Objects

    Classes were discussed in Chapter 1 and represent user-defined reference types.

    Classes can be thought of as blueprints for objects: they define all of the members of

    an object, define the behavior of an object, and set initial values for data when

    appropriate. When a class is instantiated, an in-memory instance of that class is

    created. This instance is called an object. To review, a class is instantiated using the

    New (new) keyword as follows:

  • 8/23/2019 Signature Verification1

    26/74

    Visual Basic .NET

    ' Declares a variable of the Widget type

    Dim myWidget As Widget

    ' Instantiates a new Widget object and assigns it to the myWidget

    ' variable

    myWidget = New Widget()

    When an instance of a class is created, a copy of the instance data defined by

    that class is created in memory and assigned to the reference variable. Individual

    instances of a class are independent of one another and represent separate

    programmatic constructs.

    There is generally no limit to how many copies of a single class can be

    instantiated at any time. To use a real-world analogy, if a car is an object, the plans for

    the car are the class. The plans can be used to make any number of cars, and changes

    to a single car do not, for the most part, affect any other cars.

    Objects and Members

    Objects are composed of members. Members are properties, fields, methods, and

    events, and they represent the data and functionality that comprise the object. Fields

    and properties represent data members of an object. Methods are actions the object

    can perform, and events are notifications an object receives from or sends to other

    objects when activity happens in the application.

    Object Models

    Simple objects might consist of only a few properties, methods, and perhaps an

    event or two. More complex objects might require numerous properties and methods

    and possibly even subordinate objects. Objects can contain and expose other objects

    as members.

  • 8/23/2019 Signature Verification1

    27/74

    Similarly, every instance of the Form class contains and exposes a Controls

    collection that comprises all of the controls contained by the form. The object model

    defines the hierarchy of contained objects that form the structure of an object.

    Encapsulation

    Encapsulation is the concept that implementation of an object is independent of

    its interface. Put another way, an application interacts with an object through its

    interface, which consists of its public properties and methods. As long as this interface

    remains constant, the application can continue to interact with the component, even if

    implementation of the interface was completely rewritten between versions.

    Polymorphism

    Polymorphism is the ability of different classes to provide different

    implementations of the same public interfaces. In other words, polymorphism allows

    methods and properties of an object to be called without regard for the particular

    implementation of those members. There are two principal ways through which

    polymorphism can be provided: interface polymorphism and inheritance

    polymorphism.

    Interface Polymorphism

    An interface is a contract for behavior. Essentially, it defines the members a

    class should implement, but states nothing at all about the details of that

    implementation. An object can implement many different interfaces, and many diverse

    classes can implement the same interface. All objects implementing the same interface

    are capable of interacting with other objects through that interface.

    Inheritance Polymorphism

    Inheritance allows you to incorporate the functionality of a previously defined

    class into a new class and implement different members as needed. A class that

    inherits another class is said to derive from that class, or to inherit from that class. A

  • 8/23/2019 Signature Verification1

    28/74

    class can directly inherit from only one class, which is called the base class. The new

    class has the same members as the base class, and additional members can be added as

    needed. Additionally, the implementation of base members can be changed in the new

    class by overriding the base class implementation. Inherited classes retain all the

    characteristics of the base class and can interact with other objects as though they

    were instances of the base class.

    Microsoft Visual Basic.Net

    With its release for the .NET platform, the Visual Basic language has

    undergone dramatic changes.

    For example:

    The language itself is now fully object-oriented. Applications and components written in Visual Basic .NET have full

    access to the .NET Framework, an extensive class library that provides

    system and application services.

    All applications developed using Visual Basic .NET run within amanaged runtime environment, the .NET common language runtime.

  • 8/23/2019 Signature Verification1

    29/74

    SYSTEM ANALYSIS

  • 8/23/2019 Signature Verification1

    30/74

    4.1 SYSTEM ANALYSIS

    4.2 Feasibility study:

    The feasibility of the project is analyzed in this phase and businessproposal is put

    forth with a very general plan for the project and some cost estimates. During system analysis

    the feasibility study of the proposed system is to be carried out. This is to ensure that the

    proposed system is not a burden to the company. For feasibility analysis, some

    understanding of the major requirements for the system is essential.

    Three key considerations involved in the feasibility analysis are

    1. Economical feasibility2. Technical feasibility3. Social feasibility

    4.2.1. Economical feasibility:

    This study is carried out to check the economic impact that the system will have on

    the organization. The amount of fund that the company can pour into the research and

    development of the system is limited. The expenditures must be justified. Thus the developed

    system as well within the budget and this was achieved because most of the technologies

    used are freely available. Only the customized products had to be purchased.

    4.2.2. Technical feasibility:

    This study is carried out to check the technical feasibility, that is, the technical

    requirements of the system. Any system developed must not have a high demand on the

    available technical resources. This will lead to high demands on the available technical

    resources. This will lead to high demands being placed on the client. The developed system

    must have a modest requirement, as only minimal or null changes are required for

    implementing this system.

  • 8/23/2019 Signature Verification1

    31/74

    4.2.3. Operational feasibility:

    The aspect of study is to check the level of acceptance of the system by the user.

    This includes the process of training the user to use the system efficiently. The user must not

    feel threatened by the system, instead must accept it as a necessity. The level of acceptance

    by the users solely depends on the methods that are employed to educate the user about the

    system and to make him familiar with it. His level of confidence must be raised so that he is

    also able to make some constructive criticism, which is welcomed, as he is the final user of

    the system.

  • 8/23/2019 Signature Verification1

    32/74

    PROJECT

    DESCRIPTION

  • 8/23/2019 Signature Verification1

    33/74

    5.1 MODULE DISCRIPTION

    Background Elimination:

    Data area cropping must be done for extracting features. P-tile thresholding waschosen to capture signature from the background. After the thresholding the pixels of the

    signature would be 1 and the other pixels which belong to the back-ground would be 0.

    Noise Reduction:

    A noise reduction filter is applied to the binary image for eliminating single black

    pixels on white background. 8-neighbors of a chosen pixel are examined. If the number of

    black pixels is greater than number of white pixels, the chosen pixel will be black otherwise itwill be white.

    Width Normalization:

    Signature dimensions may have intrapersonal and interpersonal differences. So the

    image width is adjusted to a default value and the height will change without any change on

    height-to-width ratio. At the end of width normalization width dimension is adjusted to 100.

    Thinning:

    The goal of thinning is to eliminate the thickness differences of pen by making the image

    one pixel thick. In this system Hilditch's Algorithm is used.

    Signature area is the number of pixels which belong to the signature. This feature provides

    information about the signature density.

    Signature height-to-width ratio is obtained by dividing signature height to signature width.

    Signature height and width can change. Height-to-width ratios of one persons signatures are

    approximately equal.

    Maximum horizontal histogram and maximum vertical histogram: The horizontal

    histograms are calculated for each row and the row which has the highest value is taken as

    maximum horizontal histogram. The vertical histograms are calculated for each column and

    the column which has the highest value is taken as maximum vertical histogram.

  • 8/23/2019 Signature Verification1

    34/74

    SYSTEM DESIGN

  • 8/23/2019 Signature Verification1

    35/74

    6.1 Database Design:

    DEFINITION:

    A Database Design is a graph of actors, a set of use cases enclosed by a system

    boundary, communication (participation) association between the actor and the use cases, and

    generalization among the use cases. Use cases are scenarios for understanding system

    requirements. A use- case model can be instrumental in project development, planning, and

    documentation of system requirements.

    A Database Design is an interaction between user and a system. It captures the

    goal of the users and the responsibility of the system to its users. The use-case model

    describes the uses of the system and shows the courses of events that can be performed.

    Si.No Field Data type Size

    1. First Name Text 25

    2. Second Name Text 25

    3. DOB Date 9

    4. Address Text 40

    5. Emp ID Text 20

    6. Phone no Number 10

    7. Mail id Text 20

  • 8/23/2019 Signature Verification1

    36/74

    Level-1

    USER REGITERED SIGNATURE

    LOGIN

    MAIN IDB

    USER DB

    USER FILE ACCESS SIGNATURE

    VERIFI

    EDUSER DB

    ANALYSIS SIGNATURE

    COMPARE IMS

  • 8/23/2019 Signature Verification1

    37/74

    6.2 Data Flow Diagram:

    A System Flow Diagram-SFD shows the relationships between the major

    components in the system. SFD does not show minor components, piping systems and

    designations. It shows the triggering event(s), sequential flow of process steps, decision

    points, and deliverable or outcome of a single process. It is a graphical illustration of the flow

    of processes and interactions among the actors involved in a particular example

    Data Flow Diagram.

  • 8/23/2019 Signature Verification1

    38/74

    6.3 Input design

    The Input design is the link that is the information system into the world of its

    users. The design is the process of converting an external user oriented description of the

    input to the system into a machine oriented form. Five objectives guiding the design of inputs

    focus on controlling the amount of input required, avoiding delays, controlling errors,

    avoiding extra steps and keeping the steps simple.

    Input screens from the primary interface between user and the software. The input

    screens are designed are in such a way that it has a simple and user- friendly layout.

    Necessary options are provided to reduce typing, which automatically controls errors

    creeping in.

    Input validations are performed to enforce all the necessary system constraints;

    error messages are displayed, whenever the data entered is invalid. The message also displays

    the corrective to be taken by the user.

    The process of developing the program software is referred to as physical

    design. Designing the process by identifying the reports and the other outputs the system will

    produce. Coding the program for each module with its logic is performed in this step. Proper

    software specification is also done in this step.

    The input design is the process of converting the external user oriented

    description of the input to system into a machine-oriented format.

    Input was designed with following objectives:-

    To produce a cost effective method. To get the highest level of accuracy.

    With the above objectives in mind, the major activities that were done

    during the input design phase are follows.

    The data was collected from its source. Transfer of data to an input form it sources. Data was converted to a computer acceptable form. The converted data was verified. Data was checked for its accuracy.

  • 8/23/2019 Signature Verification1

    39/74

    Data was transmitted to the computer. Validation of input data was done. Data collection was to eliminate the error.

    The input forms are

    1. Login form2. Embed form3. Extract form

  • 8/23/2019 Signature Verification1

    40/74

    INPUT DESIGN

    1. Login form

    The Sign in form is used to login into the application. The user will enter the valid

    user id and the password. If the user id and the password match, then it takes the user to the

    organization.

    This form contains the fields

    User idPassword.

    The user clicks the sign in button to login. The user id and password does not match, and

    then the login form displays the message as invalid user. The advantage of this form is, the

    user can find the password, if they forget. This is done by the forget password option. Also

    the new user can create their own login.

    Extract Wizards

    Wizard 1 :

    First step is selecting an input audio file. The selection is made through opening anew dialog box and the path selected is displayed through a textbox.

    Wizard 2 :

    The second step is selecting an output audio file in which text data or a text file is

    embedded.

    Wizard 3 :

    The third step is choosing a text file or typing any text message form embedding.

    Wizard 4 :

    Fourth step is Select a key file.

    Wizard 5 :

    In the fifth step whatever the files that we have selected are viewed and verification

    of the path is done.

  • 8/23/2019 Signature Verification1

    41/74

    Wizard 6 :

    In the sixth process data is embedded in to the audio file using low bit encoding

    technique.

    After embedding the content both the audio files are played and a listener cannot find

    any difference between the audios.

    Extract Wizard

    The Hidden message is extracted from the audio file and can be viewed

    through the following process.

    Wizard 1 :

    Selection of the Encrypted audio file. This is the name of the file given in step 2 of the

    Embedding module.

    Wizard 2 :

    Selection of a new text file. This is the name of the file given by the receiver to save the

    embedded message.

    Wizard 3 :

    Selection of the Key file. This is the same file as selected in step 4 of the Embedding

    module.

    Wizard 4:

    In the fourth step whatever the files that we have selected are viewed and verification

    of the path is done.

    Wizard 5 :

    Extracting the data from the encrypted audio file.

    Wizard 5 :

    Viewing the extracted message.

  • 8/23/2019 Signature Verification1

    42/74

    SYSTEM TESTING

  • 8/23/2019 Signature Verification1

    43/74

    7. SYSTEM TESTING

    Testing is the process of executing the program with the intent of finding

    errors. During testing, the program to be tested is executed with a set of test cases and the

    output of the program for the test cases is evaluated to determine the program is performing

    as it is expected. Error is the testing fundamental and is defined as the difference between the

    actual output of a software and a correct output i.e., difference between the actual and ideal

    testing is usually relied upon to detect these faults in the coding phase for this, different levels

    of testing are used which performs different tasks and aim to the test different aspects of the

    system.

    GOALS OF TESTING:

    The famous statement by Dijkstra(in Dahl et al. 1972) is a perfect synthesis of thegoals of the testing. If the results delivered by the system are different from the expected one

    in just one case, in this unequally shows that the system is incorrect: by contrast, a correct

    behavior of the system on a finite number of cases does not guarantee correctness in the

    general case. For instance, we could have built a program that behaves properly for even

    integer numbers but not odd numbers. Clearly, any number of tests with even input values

    will face to show the error.

    Testing should be based on sound andsystematic techniques so that, after testing, wemay have a better understanding of the products reliability.

    Testing should help locate errors, not just detect their presence. The result of testing

    should not be viewed as simply providing a Boolean answer to the question of whether the

    software works properly or not.

    Tests should be organized in a way that helps to isolate errors. This information can

    then be used in debugging.

    Testing should be repeatable, i.e., tests should be arranged in such a way that separating

    the same experiment-supplying the same input data to the same piece of codeproduces the

    same results.

  • 8/23/2019 Signature Verification1

    44/74

    Finally testing should be accuratethis will increase the reliability of testing. Here weshould observe that the accuracy of the testing activity depends on the level of precision and

    may be even formality of software specifications.

    TESTING METHODOLOGIES:

    Unit Testing:

    In it different modules are tested against the specifications produced during design

    for the modules. It is essential for verification of the code produced during the code phase

    and the goal is to test the internal logic of the module.

    Integration Testing:

    The goal here is to see if the modules can be integrated properly, the emphasis

    being on testing interfaces between modules. After structural testing and functional testing

    we get error free modules these modules are to be integrated to get the required results of the

    system. After checking the module another module is tested and is integrated with the

    previous module.

    After the integration the test phases are generated and the results are tested.

    System Testing:

    Here the entire software is tested. The reference document for this process is the

    requirement document and the goal is to see whether the software needs its requirements.

    The system was tested for various test cases with various inputs.

    Validation Testing:

    In this testing the software is tested to determine whether it suits to that particular

    environment. Validation testing provides the final assurance that the software meets all

    functional, behavioural and performance requirements. Validation refers to the process of

    using the software in a live environment to find errors. During the course of validation the

    system failure may occur and software will be changed.

    Tested all the fields whether accepting the valid input or not.

  • 8/23/2019 Signature Verification1

    45/74

    Acceptance Testing:

    It is sometimes performed with realistic data of the client to demonstrate that the

    software is working satisfactorily. Testing here focus on the external behaviour of the system,

    the internal logic of the program is not emphasized.

    In acceptance test the system is tested for various inputs. Thus different types of

    testing are performed.

    Black BoxTesting:

    Here the structure of the program is not considered. Only the test cases are decided

    solely on the basis of the requirements or specification of the program or module and theinternal details of the module or the program is not considered for the selection of test cases.

    This is also called Black Box Testing or Functional Testing.

    Incorrect or missing functions. Performance errors. Database access errors Initialization and termination

    White Box Testing :

    It is considered with testing the implementation of the program. The intention of

    the structural testing is not to exercise all the different input and output conditions but to

    exercise the different programming and data files used in the program. This testing is also

    called White Box Testing or Structural Testing.

  • 8/23/2019 Signature Verification1

    46/74

    SYSTEM

    IMPLEMENTATION

  • 8/23/2019 Signature Verification1

    47/74

    IMPLEMENTATION:

    IMPLEMENTATION PHASE:

    Implementation refers to post-sales process of guiding a client from purchase

    to use of the software or hardware that was purchased. This includes Requirements Analysis,

    Scope Analysis, Customizations, Systems Integrations, User Policies, User Training and

    Delivery. These steps are often overseen by a Project Manager using Project Management

    Methodologies set forth in the Project Management Body of Knowledge. Software

    Implementations involve several professionals that are relatively new to the knowledge based

    economy such as Business Analysts, Technical Analysts, Solutions Architect, and Project

    Managers.

    The implementation is the final and important phase. It involves User training,

    system testing and successful running of the developed system. The users test the developed

    system when changes are made according to the needs. The testing phase involves the testing

    of the developed system using various kinds of data. An elaborate testing of data is prepared

    and system is tested using the tests data.

    Implementation is the stage where theoretical design turned into a working system.

    Implementation is planed carefully to propose system to avoid unanticipated problems. Many

    preparations involved before and during the implementation of proposed system. The system

    needed to be plugged in to the organizations network then it could be accessed from

    anywhere, after a user logins into the portal. The tasks that had to be done to implement the

    system were to create the database tables in the organization database domain. Then the

    administrator was granted his role so that the system could be accessed.

    The next phase in the implementation was to educate the system. A

    demonstration of all the functions that can be carried out by the system was given to

    examination department person, who will make extensive use of the system.

    http://en.wikipedia.org/wiki/Business_analysishttp://en.wikipedia.org/wiki/Technical_analysishttp://en.wikipedia.org/wiki/Solutions_Architecthttp://en.wikipedia.org/wiki/Solutions_Architecthttp://en.wikipedia.org/wiki/Technical_analysishttp://en.wikipedia.org/wiki/Business_analysis
  • 8/23/2019 Signature Verification1

    48/74

    Technical analysis:

    In finance, technical analysis is security analysis discipline for forecasting the

    direction of prices through the study of past market data, primarily price and volume.[1]

    Behavioural economics and quantitative analysisbuild on and incorporate many of the same

    tools of technical analysis[2][3][4][5], which, being an aspect ofactive management, stands in

    contradiction to much of modern portfolio theory. The efficacy of both technical and

    fundamental analysis is disputed by efficient-market hypothesis which states that stock

    market prices are essentially unpredictable.

    Social Analysis:

    The role title has a wider meaning in relation to solving problems, but is more

    often used in the narrower domain ofTechnical architecture - the context for the remainder of

    this definition. In this context, the Solutions Architect is a very experienced architect with

    cross-domain, cross-functional and cross-industry expertise. He/she outlines solution

    architecture descriptions, then monitors and governs their implementation.

    http://en.wikipedia.org/wiki/Financehttp://en.wikipedia.org/wiki/Security_analysishttp://en.wikipedia.org/wiki/Technical_analysis#cite_note-Kirk-0http://en.wikipedia.org/wiki/Technical_analysis#cite_note-Kirk-0http://en.wikipedia.org/wiki/Technical_analysis#cite_note-Kirk-0http://en.wikipedia.org/wiki/Behavioral_economicshttp://en.wikipedia.org/wiki/Quantitative_analysis_%28finance%29http://en.wikipedia.org/wiki/Technical_analysis#cite_note-1http://en.wikipedia.org/wiki/Technical_analysis#cite_note-1http://en.wikipedia.org/wiki/Technical_analysis#cite_note-2http://en.wikipedia.org/wiki/Technical_analysis#cite_note-2http://en.wikipedia.org/wiki/Technical_analysis#cite_note-4http://en.wikipedia.org/wiki/Technical_analysis#cite_note-4http://en.wikipedia.org/wiki/Technical_analysis#cite_note-4http://en.wikipedia.org/wiki/Active_managementhttp://en.wikipedia.org/wiki/Modern_portfolio_theoryhttp://en.wikipedia.org/wiki/Fundamental_analysishttp://en.wikipedia.org/wiki/Efficient-market_hypothesishttp://en.wikipedia.org/w/index.php?title=Technical_architecture&action=edit&redlink=1http://en.wikipedia.org/w/index.php?title=Technical_architecture&action=edit&redlink=1http://en.wikipedia.org/wiki/Efficient-market_hypothesishttp://en.wikipedia.org/wiki/Fundamental_analysishttp://en.wikipedia.org/wiki/Modern_portfolio_theoryhttp://en.wikipedia.org/wiki/Active_managementhttp://en.wikipedia.org/wiki/Technical_analysis#cite_note-4http://en.wikipedia.org/wiki/Technical_analysis#cite_note-2http://en.wikipedia.org/wiki/Technical_analysis#cite_note-2http://en.wikipedia.org/wiki/Technical_analysis#cite_note-1http://en.wikipedia.org/wiki/Quantitative_analysis_%28finance%29http://en.wikipedia.org/wiki/Behavioral_economicshttp://en.wikipedia.org/wiki/Technical_analysis#cite_note-Kirk-0http://en.wikipedia.org/wiki/Security_analysishttp://en.wikipedia.org/wiki/Finance
  • 8/23/2019 Signature Verification1

    49/74

    CONCLUSION

  • 8/23/2019 Signature Verification1

    50/74

    9. CONCLUSION:

    This project can successfully run signature verification to provide file access. The File

    stored in private are can be protect with help of signature and it high secure node. Each file

    are retrieved after verifying it signature with help of threshold comparison.

    9.1 FUTURE ENHANCEMENTS:

    This project can successfully run signature verification to provide file access.

    This can be implement as verification mode for school, college and concern.For secure file

    transaction. This technique can be followed in bank for every transaction. It can prevent

    online banking user from hacker attacksuch as phishing, sql injection etc.

  • 8/23/2019 Signature Verification1

    51/74

    BIBLIOGRAPHY

  • 8/23/2019 Signature Verification1

    52/74

    10. BIBLIOGRAPHY

    1. ELIAS. M. AWAD SYSTEM ANALYSIS AND DESIGN

    - Galgotia Publications, II Edition, 2003.

    2. MARTIN PRINCIPLE OF DATABASE MANAGEMENT

    - Tata Mcgraw hill Publications, III Edition, 2000.

    3. BRIAN SILER AND JEFF SPOTTS USING VISUAL BASIC.NET 2008

    - Prentice Hall India Publications, 2002.

    4. JOHN PAUL MELLER THE COMPLETE REFERENCE

    VISUAL BASIC.NET 2008

    - Tata Mcgraw hill Publications, III Edition, 2001.

    5. TAXALI MS OFFICE

    - Tata Mcgraw hill Publications, II Edition, 2004.

  • 8/23/2019 Signature Verification1

    53/74

    APPENDIX

  • 8/23/2019 Signature Verification1

    54/74

    11.1 Sourse code

    Imports System.Data.OleDb

    PublicClass Form1

    Dim Sql As SQLDBPrivateSub Form1_Load(ByVal senderAs System.Object, ByVal e As System.EventArgs)

    HandlesMyBase.Load

    Sql =New SQLDB

    Sql.LoadSql()

    EndSub

    Private _Previous As System.Nullable(OfPoint) =Nothing

    PrivateSub PictureBox1_MouseDown(ByVal senderAsObject, ByVal e As

    System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseDown

    _Previous = e.Location

    EndSub

    PrivateSub PictureBox1_MouseMove(ByVal senderAsObject, ByVal e As

    System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseMove

    If_Previous IsNotNothingThen

    IfPictureBox1.Image IsNothingThen

    Dim bmp AsNew Bitmap(PictureBox1.Width, PictureBox1.Height)

    Using g As Graphics = Graphics.FromImage(bmp)

    g.Clear(Color.White)

    EndUsing

    PictureBox1.Image = bmpEndIf

    Using g As Graphics = Graphics.FromImage(PictureBox1.Image)

    g.DrawLine(Pens.Black, _Previous.Value, e.Location)

    EndUsing

    PictureBox1.Invalidate()

    _Previous = e.Location

    EndIf

    EndSub

    PrivateSub PictureBox1_MouseUp(ByVal senderAsObject, ByVal e As

    System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseUp_Previous =Nothing

    EndSub

    Dim imgfnm, temp, rs AsString

    Dim i AsInteger

    Dim ch AsChar

    PrivateSub Label9_Click(ByVal senderAs System.Object, ByVal e As

    System.EventArgs) Handles Label9.Click

    IfOpenFileDialog1.ShowDialog Windows.Forms.DialogResult.Cancel Then

    imgfnm = OpenFileDialog1.FileName

    PictureBox1.Load(OpenFileDialog1.FileName)

  • 8/23/2019 Signature Verification1

    55/74

    EndIf

    Fori = 0 To imgfnm.Length - 1

    ch = imgfnm(i)

    temp = temp & ch

    Ifch = "\"Thentemp = ""

    EndIf

    Next

    EndSub

    Sub checking()

    Sql.SqlCommand =New OleDbCommand("select * from user_det", Sql.SqlConnection)

    Sql.SqlDataReader = Sql.SqlCommand.ExecuteReader

    While Sql.SqlDataReader.ReadIfLabel7.Text = Sql.SqlDataReader.GetValue(0) And temp =

    Sql.SqlDataReader.GetValue(8) Then

    rs = 1

    ExitWhile

    Else

    rs = 2

    EndIf

    EndWhile

    Ifrs = 1 Then

    Sql.SqlCommand =New OleDbCommand("select * from fileupload",

    Sql.SqlConnection)

    Sql.SqlDataReader = Sql.SqlCommand.ExecuteReader

    While Sql.SqlDataReader.Read

    IfLabel7.Text = Sql.SqlDataReader.GetValue(2) Then

    ListBox1.Items.Add(Sql.SqlDataReader.GetValue(0))

    EndIfEndWhile

    EndIf

    EndSub

    PrivateSub Label6_Click(ByVal senderAs System.Object, ByVal e As

    System.EventArgs) Handles Label6.Click

    Timer1.Enabled = True

    Form7.Show()

  • 8/23/2019 Signature Verification1

    56/74

    EndSub

    Dim tim AsInteger

    PrivateSub Timer1_Tick(ByVal senderAs System.Object, ByVal e As

    System.EventArgs) Handles Timer1.Tick

    tim = tim + 1

    Iftim = 100 ThenForm7.Visible = False

    MsgBox("User Matched")

    Timer1.Enabled = False

    checking()

    EndIf

    EndSub

    PrivateSub ListBox1_SelectedIndexChanged(ByVal senderAs System.Object, ByVal e

    As System.EventArgs) Handles ListBox1.SelectedIndexChangedSql.SqlCommand =New OleDbCommand("select * from fileupload",

    Sql.SqlConnection)

    Sql.SqlDataReader = Sql.SqlCommand.ExecuteReader

    While Sql.SqlDataReader.Read

    IfListBox1.Text = Sql.SqlDataReader.GetValue(0) Then

    RichTextBox1.LoadFile(Sql.SqlDataReader.GetValue(1),

    RichTextBoxStreamType.PlainText)

    EndIf

    EndWhile

    EndSub

    PrivateSub Label4_Click(ByVal senderAs System.Object, ByVal e As

    System.EventArgs) Handles Label4.Click

    IfSaveFileDialog1.ShowDialog Windows.Forms.DialogResult.Cancel Then

    RichTextBox1.SaveFile(SaveFileDialog1.FileName,

    RichTextBoxStreamType.PlainText)

    EndIf

    EndSub

    PrivateSub Label7_Click(ByVal senderAs System.Object, ByVal e As

    System.EventArgs) Handles Label7.Click

    EndSub

    EndClass

    Imports System.Data.OleDb

    Imports System.IO

    PublicClass Form2Public Sql As SQLDB

  • 8/23/2019 Signature Verification1

    57/74

    Dim i AsInteger

    Dim imgfnm, temp AsString

    Dim ch AsChar

    PrivateSub Label13_Click(ByVal senderAs System.Object, ByVal e As

    System.EventArgs) Handles Label13.ClickSql.SqlCommand =New OleDbCommand("insert into user_det values('" &

    TextBox1.Text & "','" & TextBox2.Text & "','" & TextBox3.Text & "','" & TextBox4.Text &

    "','" & TextBox5.Text & "','" & TextBox6.Text & "','" & TextBox7.Text & "','" & fnam &

    "','" & temp & "')", Sql.SqlConnection)

    Sql.SqlCommand.ExecuteNonQuery()

    MsgBox("user created")

    textclear()

    keygeneration()

    EndSub

    Sub textclear()TextBox1.Text = ""

    TextBox2.Text = ""

    TextBox3.Text = ""

    TextBox4.Text = ""

    TextBox5.Text = ""

    TextBox6.Text = ""

    TextBox7.Text = ""

    EndSub

    Sub keygeneration()

    Sql.SqlCommand =New OleDbCommand("select * from user_det", Sql.SqlConnection)

    Sql.SqlDataReader = Sql.SqlCommand.ExecuteReader

    While Sql.SqlDataReader.Read

    i = i + 1

    EndWhile

    i = i + 1

    TextBox5.Text = "E" & i

    TextBox5.Enabled = False

    EndSub

    PrivateSub Form2_Load(ByVal senderAs System.Object, ByVal e As System.EventArgs)HandlesMyBase.Load

    Sql =New SQLDB

    Sql.LoadSql()

    PrivateSub Label7_Click(ByVal senderAs System.Object, ByVal e As System.EventArgs)

    Handles Label7.Click

    IfTextBox1.TextLength > 0 Then

  • 8/23/2019 Signature Verification1

    58/74

    Dim dpath AsString

    dpath = My.Application.Info.DirectoryPath

    dpath = LSet(dpath, dpath.Length - 5)

    dpath = dpath & "image"MsgBox(dpath)

    Dim fn AsString

    fn = TextBox1.Text

    fnam = dpath & "\" & fn & ".jpg"

    IfFile.Exists(fnam) Then

    MsgBox("User Already Exist with Same name")

    Else

    Dim im_rot As Bitmap = PictureBox1.Image

    im_rot.Save(fnam)

    EndIf

    Else

    MsgBox("Fill the Field Before saving")

    EndIf

    IfSaveFileDialog2.ShowDialog Windows.Forms.DialogResult.Cancel Then

    Dim im_rot As Bitmap = PictureBox1.Image

    imgfnm = SaveFileDialog2.FileName

    im_rot.Save(SaveFileDialog2.FileName)

    MsgBox("Picture Saved")

    EndIf

    Fori = 0 To imgfnm.Length - 1

    ch = imgfnm(i)

    temp = temp & ch

    Ifch = "\"Then

    temp = ""

    EndIfNext

    EndSub

  • 8/23/2019 Signature Verification1

    59/74

    11.2 OUTPUT SCREEN:

  • 8/23/2019 Signature Verification1

    60/74

  • 8/23/2019 Signature Verification1

    61/74

  • 8/23/2019 Signature Verification1

    62/74

  • 8/23/2019 Signature Verification1

    63/74

  • 8/23/2019 Signature Verification1

    64/74

  • 8/23/2019 Signature Verification1

    65/74

  • 8/23/2019 Signature Verification1

    66/74

  • 8/23/2019 Signature Verification1

    67/74

  • 8/23/2019 Signature Verification1

    68/74

  • 8/23/2019 Signature Verification1

    69/74

  • 8/23/2019 Signature Verification1

    70/74

  • 8/23/2019 Signature Verification1

    71/74

  • 8/23/2019 Signature Verification1

    72/74

  • 8/23/2019 Signature Verification1

    73/74

  • 8/23/2019 Signature Verification1

    74/74

    THANK YOU