3WSDS 3-Way Secure Data Splitting Supervisor: Dr. Talal Alkharobi Abdul-Mohsin AL-Faraj (201081340) Hamed Al-Mehdhar (200925210)

Slides:



Advertisements
Similar presentations
Tutorial for Administration tool (1) Select (2) Depress.
Advertisements

Smart Window Blinds By: David Morgan. Idea Origination Repetitive process of opening window blinds Open during the day for plants to absorb sunlight Close.
Turn LCD Projector on by pushing Projector on button Projector buttons will flash for a few seconds until fully on and on button will be lit.
DE2-115 Control Panel - Part I
EMS1EP Lecture 4 Intro to Programming Dr. Robert Ross.
Components: Sansa Clip Mp3, earbuds, USB cable, Quick Start Guide.
Press-to-Test on the TI-Nspire Much of the following can be found on pg10 of Winter issue of “Nspiring Times – The newsletter by and for TI-Nspire.
Team Wolf Distributed, Consistent and Secure USB Storage Final Project Review Eddie Lai Matt Dube Sean Busch Zhou Zheng.
Chen-Hanson Ting SVFIG December 20, 2014
Handheld TFTP Server with USB Andrew Pangborn Michael Nusinov RIT Computer Engineering – CE Design 03/20/2008.
Team Wolf Distributed, Consistent and Secure USB Storage Midyear Design Review Eddie Lai Matt Dube Sean Busch Zhou Zheng.
The Alix.1c microcontroller on board the vehicle runs Fluxbuntu Linux and is connected to a g wireless card and a USB web camera. A background process.
Team Wolf Distributed, Consistent and Secure USB Storage Comprehensive Design Review Eddie Lai Matt Dube Sean Busch Zhou Zheng.
Component Estimated Cost Actual Cost Description Digital Camera$200$0 The camera used with the system. Must have a USB interface and use the PTP/IP Protocol.
USB Mass-Storage Implementation on an Embedded System (D0113) Supervisor: Dimitry Sokolik Performed by: Yoav Gershoni Shachar Faigenblat Final Presentation.
CSCE 430/830 A Tutorial of Project Tools By Dongyuan Zhan Feb. 4, 2010.
1 Mid-term Presentation Implementation of generic interface To electronic components via USB2 Connection Supervisor Daniel Alkalay System architectures.
P08009 Audible Memo Board Phase II Monday, October 22, 2007 P08009: Audible Memo Board Phase II Sponsor: Tala Hopkins Jon GosligaAudio Output Lead Loic.
PICS / Microcontrollers
SudokuEHG Michelle Brown Matt Haggenmiller Thomas Troch CE Design Projects Design Review December 12, 2007.
Introduction to Programming Dr Masitah Ghazali Programming Techniques I SCJ1013.
Irwin/McGraw-Hill Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition.
LIGHT WEIGHT DIRECTORY ACCESS PROTOCOL Presented by Chaithra H.T.
Copyright 2003 CCNA 3 Chapter 7 Switch Configuration By Your Name.
1 © 2003, Cisco Systems, Inc. All rights reserved. CCNA 3 v3.0 Module 6 Switch Configuration.
1 © 2003, Cisco Systems, Inc. All rights reserved. CCNA 3 v3.0 Module 6 Switch Configuration.
1 CCNA 3 v3.1 Module 6 Switch Configuration Claes Larsen, CCAI.
Crestron Demonstration Table User Guide Crestron Demonstration Table User Guide Revision Date: January 2010 “C Building” Dr. Vernon O. Crawley Science.
Embedded Bluetooth Stack Dean Camera Project Supervisor: John Devlin.
An application architecture specifies the technologies to be used to implement one or more (and possibly all) information systems in terms of DATA, PROCESS,
1/26 [P970] Introduction of download tool Dec.22th, 2010 by Woon Rae Cho.
3WSDS 3-Way Secure Data Splitting Supervisor: Dr. Talal Alkharobi ABDUL-MOHSIN AL-FARAJ ( ) Hamed Al-Mehdhar ( )
1 © 2004, Cisco Systems, Inc. All rights reserved. CCNA 3 v3.1 Module 6 Switch Configuration.
© 2012 Intex Technologies (India) Ltd. All rights reserved Intex Technologies (India) Ltd. SW download Tool User's Guide for Aqua 5.0
Internal & External components of the computer Abby Davis.
1 Using Rational Rose ® to construct UML diagrams.
Introduction to the DE0 Board Prof. Taeweon Suh Computer Science & Engineering Korea University COSE221, COMP211 Computer Logic Design.
Step 1.Install the upgrade tool first in your copmputer.
Call How to Remove Virus from Windows 10 Using Windows Defender Offline?
How To Uninstall HP Printer Drivers From Your PC?.
After Construction Name: Per #:.
The concealed recovery partition on your HP computer allows you to restore your business machine, lets you restore your business machine back to its factory.
Introduction to the ARM mbed Platform– A Hands-on Course
European Robotic LABoratory
DE2-115 Control Panel - Part I
Welcome © GTM Software. Welcome © GTM Software.
Downloading Arduino FOR WINDOWS.
TOPIC : USB FLASH DRIVE. May E.Al-Hajri. Intro Information Technology.
connect a DC-Motor with an arduino
HTTP Server Protocol Module :
Arduino Development for Beginners
COMP211 Computer Logic Design Introduction to the DE2 Board
CCNA 3 v3.1 Module 6 Switch Configuration
Fastdroid Produced by : Firas Abdalhaq Mohammad Amour Supervised by : Dr. Raed Alqadi.
Fix Windows 10 Blue Screen of Death Error (BSOD)
FeMaidens Programming
Raspberry Pi: External Inputs & Outputs
Banyule Coding Club: Learn Arduino Richard Counsel Malcolm Macleod Watsonia Library - June 2018 Reference materials here ->
Turning Point (zapper) quick guide Turning Point 5
BRAILLE PRINTER SUPERVISOR Dr. Nidal Farahat.
Aeroponic Engineering and Vertical Farming
The bios.
Introduction to Arduino
Arduino Board.
Arduino म्हणजे काय?.
Oregon Robotics Tournament and Outreach Program
How To Use The FD92 Digital Camera
S/W Download Guide Rework Guide Step 1. File copy
Presentation transcript:

3WSDS 3-Way Secure Data Splitting Supervisor: Dr. Talal Alkharobi Abdul-Mohsin AL-Faraj ( ) Hamed Al-Mehdhar ( )

Outline What is 3WSDS? Project Specifications: User requirements. Technical specifications. Project Usage Guidelines. Engineering Design: Design Decisions. Architecture. Sub-function identification. Sub-function identification System Architecture. Component Design and Implementation. Component Design and Implementation System integration. System integration Issues. Engineering Tools and Standards. Questions.

What is 3WSDS? 3WSDS is based on (2 out of 3) secret sharing scheme. (2 out of 3) secret sharing scheme drives from the fact that two points determine a line. The secret!

Project Specifications: User requirements: The device is connected to the PC through USB for power. 3 USB ports to connect the flash drives, where secret shares will be distributed to and reconstructed from. Fourth USB port to connect the flash drive containing a file to construct shares form, or to write a reconstructed file back to. A button to perform partitioning of the original file to 3 secret shares, and another button to reconstruct the original file. An indicator which shows the start, progression, and end of a function when its button is pressed.

Project Specifications: Technical specifications: Device is powered up by connecting through USB port to a PC or by having an internal battery. 3 USB ports to connect the flash drives, where share builds will be distributed to and reconstructed from. Fourth USB port to connect the flash drive containing the file to construct shares for, or to write a reconstructed file back to. A partitioning button is pressed to partition the original file in main flash drive to 3 different secret shares which are distributed to the other three flash drives (following a 2 out of 3 secret share scheme). A reconstruction button is pressed to reconstruct the original file in main flash drive by reading 2 out of 3 of the secret shares available in the other three connected flash drives. When any of the buttons is pressed, an LED will light to indicate ongoing function, it will be off when the function ends.

Project usage guidelines: The flash drive containing the main file should be connected to port 0. The flash drive connected to port 0 must contain a file ( name.txt) containing the name of the file to be partitioned. 3 secret shares named (WSDS.txt) will be constructed and written to the flash drives connected to ports 1,2 and 3, then the main file will be deleted from the original flash drive (only for partitioning function). after doing the above steps, any of the 2 function buttons can be pressed were an LED will turn ON until the completion of that function and it will go off after that. The flash drives CAN’T be removed while the LED is on.

Engineering Design: Design Decisions: 1.Use a microcontroller to do the logic of design. 2.choosing between different microcontrollers. (Arduino) 3.choose a USB host board. (hobbytronics USB Shields) 4.Changing the design of the project.(use a 4 th flash drive)

Architecture : Sub-function identification: Partitioning Sub Function: This sub function is responsible for constructing and distributing 3 different shares of the main file. Y1=(M*X1+s)%256 Reconstruction Sub Function: This sub function is responsible for the reconstruction of the original file using 2 out of 3 of the distributed secret shares. M=(Y2-Y1)/(X2-X1) S=(Y1-M*X1)%256 (if S is <0, add 256)

Architecture : System architecture :

Architecture : System Components:

Architecture : Interfaces between hardware components and how they are connected to each other: The Arduino is connected to the USB host shields using TTL serial communication interface. Ex, USB port 0 is connected to pins 2(RX) and 3(TX).

Component Design and Implementation : Off-the-shelf hardware and software components: Arduino Uno. USB host shields. Buttons. SoftwareSerial Library. Custom software components: Secret Partitioning code. Secret Reconstruction code.

Off-shelf hardware and software components Arduino Uno Do the processing part of the design Project code is uploaded to the Arduino Buttons Partitioning and reconstruction buttons Each button will trigger respective sub function.

Off-shelf hardware and software components USB host shields Interface between the Arduino Uno and the USB flash drives Preinstalled flash drive software, manufactured by HobbyTronics Communication with Arduino via TTL serial interface, ASCII characters Reads different commands, terminated by carriage return character (“$read filename linenumber”) Silent (microcontroller) and terminal (PC) mode

Off-shelf hardware and software components SoftwareSerial library used to make digital pins act as a Serial TTL RX and TX pins Create object example: SoftwareSerial mySerial(2,3) //RX, TX mySerial.write() is used to write to the serial interface mySerial.read() is used to read from the serial interface

Custom Software Components Secret Partitioning Code Uploaded to Arduino as part of the main code Code is triggered when the partitioning button is pressed Implements the partitioning sub function Psuedo code written before actual code Secret Reconstruction Code Uploaded to Arduino as part of the main code Code is triggered when the reconstruction button is pressed Implements the reconstruction sub function Psuedo code written before actual code

System integration : Testing and debugging: Testing of the USB host shields: Tested to read and write from a file using a single shield. Tested different commands of USB host shield. Tested to copy a file from a flash drive to another flash drive. Tested copying files from 1 flash drive to 3 flash drives

Issues throughout the progressions of our work we faced a lot of issues and challenges such as: 1.The first issue we faced was how to communicate with flash drives using an Arduino. 2.The second issue we faced was how to make the Arduino act as a flash drive 3.The third issue we faced was while testing the USB host shields, one shield stopped working and another one was not reading and writing properly, had to make prototype on 2 USB ports

Issues 4.The fourth kind of issues were experience in testing the USB host shields: Incorrect reading and writing from and to files in flash drive. At a point, we couldn’t communicate with the USB shields so we changed the Arduino and it worked. Reading commands sent concatenated with read lines, mySerial.flush() A lot of faced problems throughout the progression of writing our code

Limitations and constraints: The flash drive shouldn’t be removed while a function is being performed, or else the flash drive would be damaged. The name of the file to be partitioned, have to be saved in the first line of a text file called “name.txt”. The file name is assumed to be provided correctly, if not, the function of the device won’t trigger. The device can’t show nor it can know the available size of flashes. So it is assumes that there is enough size. The device function speed is relatively low since it is limited by the processing of the Arduino and the USB host shields and also by the embedded delays in the code to give enough time for the shields to process data and commands.

Engineering Tools and Standards Available tools chosen and why: Arduino IDE to program and compile our code: We chose to use Arduino IDE because it is the Arduino open- source environment makes it easy to write our code and upload it to the Arduino UNO.

Engineering Tools and Standards Used standards: USB protocol: The protocol the shields would use to communicate with the flash drive. TTL protocol: The serial TTL interface is the interface between the USB shields and the Arduino UNO.

Demo Video

Questions?