160 likes | 261 Views
Distributed, Consistent and Secure USB Storage. Final Project Review Eddie Lai Matt Dube Sean Busch Zhou Zheng. Backing Up Data. Everyone needs to save their work and data This data needs to be available in multiple locations Data needs to be readily available
E N D
Distributed, Consistent and Secure USB Storage Final Project Review Eddie Lai Matt Dube Sean Busch Zhou Zheng
Backing Up Data • Everyone needs to save their work and data • This data needs to be available in multiple locations • Data needs to be readily available • Today’s most popular storage device is the thumb drive • Backups have problems: reliability • Can be physically broken • Need to be carried around • Can wear out after a number of reads/writes • Reliability problem often solved by multiple backups • Multiple backups: consistency problems • Data changes create inconsistencies between backups • When many backups are created, data becomes vulnerable
Distributed Consistent Secure USB Hub • Our project: Distributed Consistent Secure USB Hub • Uses off-the-shelf USB drives for storage • Looks like a mass storage device to user’s PC • Distributed • Can be accessed anywhere without any software installation • Consistent • Storage Devices at different locations get updated • Synchronization as easy as a push of a button • Secure • Secret sharing prevents users’ data from being compromised
Outline • Introduction • System Operation • PC Interface • File Consistency Software • Hub Communication • User Interface • Secret Sharing Software • Prototype • Budget & Team Roles • Demonstration
Project Summary • Special hubs • Hubs are interfaced with PCs, networked with each other • Groups of USB drives • User updates file on USB drive from PC • Updates sent to other USB drives in the group
Current Solutions • There are currently several different services that allow users to back up data and access it anywhere • Dropbox, Google Docs • Functionality based on users releasing their data to the cloud • Some information may be too sensitive to store there • Project gives user added control over their data • Users possess the physical media their data is stored on
Hub Design • Built on embedded PC • Memory • To boot OS • A Network Interface • USB On the Go Port • USB Ports • User interface • Consistency Software
PC Interface • Hub connects to PC without any software installation • Not all users will be allowed to install software on their PC • Hub appears as a USB mass storage device • Use USB OTG port • By interfacing with the PC via this port, board appears as USB device • Shows contents of attached USB drives
File Consistency Software • Custom software to recognize when updates are made • Will only run on “trusted” USBs based on UUID • Changes recognized using conventional UNIX tools • Timestamps and checksums recorded, then “diff”ed with previous record
Hub Communication • Upon synchronization, the hubs will distribute updates across the network • When a hub is distributing updates, it will act as a client • The receiving hub will act as the server • TCP Client/Server Model • Secure using SSL • Each client will connect to a server, distribute its updates, then disconnect
User Interface • Hub is manually operated by user • Simple user interface consists of two buttons • One button initiates synchronization • One button ejects USB sticks • Buttons are mounted on Hub via embedded PC’s GPIO ports • Two LEDs provide feedback for users • One alerts user when a sync is in progress • The other shows when it is safe to remove USBs from hub
Secret Sharing • User has option to share information secretly with other hubs • If a USB drive is lost or compromised, no useful information about its contents can be recovered • (k,n) Threshold scheme: need k of n USBs to recover data • Implements Shamir's[1] secret sharing in the Galois Field • Functionality partially provided by libgfshare UNIX library [1] Shamir, Adi (1979), "How to share a secret", Communications of the ACM22 (11): 612–613, doi:10.1145/359168.359176.
Prototype • Our Hub is currently being prototyped on the BeagleBoard-xM • Board offers a slimmer form factor • Allows for portability while still containing all of the necessary peripherals • 4 USB ports, Ethernet port • Solid state memory (using microSD card) • Primary motivation for using BeagleBoard is its USB OTG port • Allows the board to be mounted on User’s PC as USB mass storage device
Budget and Team Roles • Hub Costs: • BeagleBoard-xM: $150 • Enclosure: $40 • 2 LEDs with mounts:$4 • 2 Buttons:$10 • USB 2.0 A Male to Micro-USB B: $8 • Estimated cost of production: $150-$175 per hub • Eddie: Consistency Software, Hub Communication • Matt: Prototype setup, USB Interface • Zhou: Website, User Interface • Sean: USB Interface
Project Summary • Distributed Consistent Secure USB Hub allows user to keep backups on multiple USB sticks consistent • Hub simplifies process for user • Hub appears as USB mass storage device • Doesn’t require software installation on user’s PC • Simple user interface allows hub to be operated with only two buttons • Hub distributes updates to backups securely across network • User has optional secret sharing functionality • Prototype built using BeagleBoard-xM
Demonstration • Non Secret Sharing • Scenario 1: Hub1 adds multiple files • Scenario 2: Hub2 removes file • Secret Sharing • Scenario 1: Hub1 adds multiple files • Scenario 2: Hub1 recreates a secret with all n shares present • Scenario 3: Hub2 recreates a secret with n-1 shares present