Giter Club home page Giter Club logo

secure-file-transfer-application's Introduction

Secure File Transfer Application

Design and implemention of a secure Internet file transfer application/protocol. The program will include several security requirements as outlined below.

Supported Functionality

  • Client should be able to upload files to the server in a secure fashion. Client also downloads files from server in a secure fashion.
  • When the file is uploaded or downloaded, it should be intact, i.e. it should retain its features. For instance, if it is executable, it should be able to run, or if it is an image, the image must be same as the original file.
  • Client only needs to authenticate the server. The server need not authenticate client.
  • The only technology that is allowed for securing communication is keyed hash, e.g. SHA-256.

Security Requirements

The application will include the following security requirements:

  1. Authentication: Client authenticates the server using server’s RSA public key.
  2. Confidentiality: The messages exchanged between client and server will be protected from exposure to others that are not authorized to read what is being communicated. The only security primitive that is available to build a confidential communication mechanism is a keyed hash, e.g. SHA-256. Part of the project is designing a communication protocol that is secure against well-known attacks on confidentiality.
  3. Integrity: The possible message alteration in transit should not go undetected by the communicating parties. Again, you can only use a keyed hash mechanism to achieve this.

Technical Specs

* Python3
* SHA256
* RSA Key Generation and usage

Prerequisites

  • Python3
  • MultiThreading and Socket Programming
  • Cryptographic Hash Functions
  • Public Key Cryptography

Team Members

  • Chandra Kiran Saladi
  • Sourik Dhua

secure-file-transfer-application's People

Contributors

chandrakiransaladi avatar sourikd avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.