Project VERITAS

From Mindworks
Jump to navigation Jump to search
Team Name Team VERITAS
Sponsors
  • PNNL
  • Team Members
  • Joel Doumit
  • Animesh Pattanayak
  • Jocelyn Stadler
  • Alex Wezensky
  • Duration Fall 2017 - Spring 2018
    Faculty Advisers Bruce Bolden

    Problem Definition[edit | edit source]

    Design and implement a secure database that communicates securely and dynamically with a web interface. The database has read only access from the web interface. The interface follows accessibility standards and will work on a range of hardware. Communications are encrypted in both directions.

    Background[edit | edit source]

    Pacific Northwest National Laboratory needed a simple way to access their research data on different components. They also needed a secure database to hold the data.

    Project VERITAS was created because:

    • it offers a simple way to search through all the data
    • makes it easy to find a specific product
    • it provides secure access to data
    • makes it easy to add new product data

    Deliverables[edit | edit source]

    • Accessibility standards compliant web interface that accesses product data
    • MySQL database to store product data
    • Secure communication between web interface and database
    • Documentation detailing the use of all code and supporting resources

    Design[edit | edit source]

    Overview[edit | edit source]

    We have designed a web interface to securely connect to a database. This consists of a secure database and three main sections for the webpage (main webpage, the postcard view, and the full product view). The website should never be able to access the database in a malicious way or tamper with the data at all. The communications to and from the database are encrypted.

    Initial Design[edit | edit source]

    VERITAS design sketch

    Current Design[edit | edit source]

    VERITAS Main Webpage
    The main website allows the user to search the database from a dropdown menu that is populated by what the user chooses until the user is satisfied by their selection. The user can then submit their selection to view the most valid options in the database, displayed by the postcard view. This design choice of only using the dropdown menus gives added security since there is no way for a SQL injection attack to happen.
    VERITAS Postcard View
    The postcard view will be displayed after the user has made their selection from the dropdown menus and clicked the submit button. This will display the most relevant choices with a small bit of information on all matching products. This will allow the user to see select the most relevant product given their needs. They can click on the postcard view to lead them to the full product page. The postcard view will show up on the main webpage under the search bar and populate many postcard views.
    VERITAS Full Product Page
    The full product page is a separate website from the main webpage and is accessed from the postcard view. All product information that the database has on that product will be displayed on this page. *All data shown is representative.
    VERITAS Database
    The database holds all of the information we have on all products. It needs to encrypt all communications, so no data is ever compromised. Each page will query the database and have its' fields dynamically updated. The only way to make changes to the database will be from a non-web based entry method that will require authentication.
    VERITAS design 2 sketch
    This is a flow diagram of how the final design works.

    Project Learning[edit | edit source]

    • Off the Shelf Technology
    Various program languages
         - HTML5 : Visible interface
         - PHP7 :  Gives standard programming capabilities to HTML
         - CSS : Presents HTML elements in the desired fashion
         - JavaScript : Allows user to interact with web interface
    Database Languages
         - MySQL : Main Database
    Server
         - NginX
    

    Verification[edit | edit source]

    To show that the communications between the database and web interface are secure/encrypted below is a screenshot of a Wireshark packet capture.

    Before Encryption
    After Encryption

    Future Work[edit | edit source]

    • Air Gapped Database
    • Comparison Option
    • Search Bar Option
    • Popularity Postcard Sort

    Team Member Information[edit | edit source]

    Team VERITAS
    Picture Biography Discipline
    Alex Wezensky
    2017 AlexW.jpg
    Alex Wezensky is a senior dual majoring in computer science and mathematics. Within computer science, Alex is interested in artificial intelligence and big data. In his free time, Alex enjoys playing basketball and ping-pong, and playing Rock Band with his roommates. Computer Science/Mathematics
    Animesh Pattanayak
    2016 AnimeshP.jpg
    Animesh Pattanayak is a senior majoring in computer science with a minor in mathematics. Animesh's interests include cybersecurity and research. Outside of academics, Animesh enjoys playing piano, guitar, and singing. Additionally, Animesh enjoys going for long walks, skateboarding, and playing soccer. Computer Science
    Jocelyn Stadler
    2017 JocelynS.jpg
    Jocelyn Stadler is a senior in computer science with a minor in mathematics. Jocelyn is interested in cybersecurity and computer architecture. Outside of school, she enjoys reading, swimming, playing video games, and baking. Computer Science
    Joel Doumit
    2017 JoelD.jpg
    Joel Doumit is a senior majoring in computer science. Joel's interests include embedded systems and microcontrollers. Apart from academia, Joel enjoys watch collecting, swimming, and sport shooting. In addition to hobbies, Joel enjoys working on pet projects, including a Discord soundbot and a Raspberry Pi radio transmitter. Computer Science


    Document Archive[edit | edit source]