Search this site
Embedded Files
Skip to main content
Skip to navigation
Oakland REU 2019
Home
Blog
Timeline
Presentations
Our Team
Contact Us
Oakland REU 2019
Home
Blog
Timeline
Presentations
Our Team
Contact Us
More
Home
Blog
Timeline
Presentations
Our Team
Contact Us
Blog
DAY 1: 5/23/19
Project started after meeting with Dr.Kim and Hwimin and we began reading on MQTT (how connect works) and TLS
Created the abstract
Worked on the website design and content
DAY 2: 5/24/19
Began reading about AES and SHA
Created a presentation about TLS, AES, and SHA for Dr.Kim
Continued reading about MQTT and TLS
DAY 3: 5/25/19
Continued reading about MQTT and TLS
DAY 4: 5/26/19
Continued reading about AES and SHA
DAY 5: 5/27/19
Started learning about general cryptography concepts (key derivation functions, keys, hash functions, nonces, ciphers, salt & pepper, etc.)
Continued reading about AES and SHA
Continued working on the presentation about TLS, AES, and SHA for Dr.Kim
DAY 6: 5/28/19
Finished presentation about TLS, AES, and SHA for Dr. Kim
DAY 7: 5/29/19
Presented to Dr. Kim about TLS, AES, and SHA
Solidified project idea
Created a brief schedule of what we will be doing each day
DAY 8: 5/30/19
Read MQTT documentation, videos, and articles
Decided to use an open source MQTT implementation called HiveMQ and build on top of it
DAY 9: 5/31/19
Presented at the weekly group discussion
Finished reading about MQTT CONNECT and CONNACK
Set up a private GitHub respiratory
Attempted to set up codebase in Eclipse
DAY 10: 6/1/19
Learned about terminal commands on YouTube and the git clone command
Familiarized ourselves with using Git in Eclipse
Continued troubleshooting codebase
Started reading the codebase to understand how it works and discover appropriate places to implement our new code
DAY 11: 6/2/19
Successfully imported codebase as a Gradle project and fixed JAR errors
DAY 12: 6/3/19
Read the MQTT Client API and chose to use Blocking API, one of the 3 APIs in HiveMQ
Created the MQTT client
Added Hwimin as a collaborator to the GitHub repository
Began implementation code for SHA-512
Continued reading the codebase
DAY 13: 6/4/19
Created the MQTT client
Created presentation slides about MQTT and SHA-512 for Dr. Kim
Continued implementing code for SHA-512
Continued reading the codebase
DAY 14: 6/5/19
Presented to Dr. Kim about MQTT
Began reading about the mathematical operations and functions of SHA-3
Decided to use the Apache 2.0 software license for our project
Sucessfully implemented the connect() method and connected a client to our MQTT server
Continued reading the codebase
DAY 15: 6/6/19
Continued reading about the mathematical operations and functions of SHA3-512
Began writing code for SHA3-512
Began implementing the publish and subscribe features of MQTT
Continued reading the codebase
DAY 16: 6/7/19
Presented at the weekly group discussion
Decided to make the client and broker two seperate Gradle projects
Committed and pushed the first set of changes to GitHub
Continued reading about the mathematical operations and functions of SHA3-512
Continued writing code for SHA3-512
Continued reading the codebase
DAY 17: 6/8/19
Learned more cybersecurity concepts (Dictionary & Rainbow Table Attacks)
Continued writting code for publish and subscribe
DAY 18: 6/9/19
Continued writing code for publish and subscribe
Learned how to use quality of service method properly
DAY 19: 6/10/19
Continued writing code for publish and subscribe
Continued researching the mathematical operations and functions of SHA-3
DAY 20: 6/11/19
Continued writing code for publish and subscribe
Created presentation slides for Dr. Kim
Continued researching the mathematical operations and functions of SHA-3
Decided to use the built-in java class for hashing for now since the math is confusing
DAY 21: 6/12/19
Presented to Dr. Kim and Hwimin
Started reading about Elliptic Curve Diffie-Hellmann (ECDH)
Continued writing code for publish and subscribe using multithreading
DAY 22: 6/13/19
Started reading about Elliptic-Curve Cryptography (ECC)
Finished writing code for publish and subscribe using multithreading
Worked on adding timer to multithreading programs
DAY 23: 6/14/19
Presented at the weekly group discussion
Continued reading about Elliptic-Curve Cryptography (ECC) and Elliptic Curve Diffie-Hellman (ECDH)
Updated HiveMQ Client to the newest version and used new ConnectionListener feature of the API
Worked on adding timer to multithreading programs
Discussed abstract with Dr. Kim and Hwimin and made appropriate changes
DAY 24: 6/15/19
Continued learning about ECC and ECDH
DAY 25: 6/16/19
Worked on adding timer to multithreading programs
Created presentation slides for Dr. Kim and for the midterm presentation
Continued learning about ECC and ECDH
DAY 26: 6/17/19
Continued working on presentation slides for Dr. Kim and for the midterm presentation
Continued learning about and started implementation of ECC and ECDH
Sucessfully implemented a timer
DAY 27: 6/18/19
Finished presentation slides for Dr. Kim
Continued working on presentation slides for the midterm presentation
Continued learning about and implementing ECC and ECDH
Worked on adding statistics (timing of messages between clients) to the multithreaded program
Fixed a bug in the timer
DAY 28: 6/19/19
Presented presentation slides for Dr. Kim
Fixed presentation slides for part 2 of presentation to Dr. Kim tomorrow
Continued working on presentation slides for the midterm presentation
Continued learning about and implementing ECC and ECDH
DAY 29: 6/20/19
Presented presentation slides for part 2 of presentation to Dr. Kim
Finished presentation slides for the midterm presentation
Continued learning about and implementing ECC and ECDH
Implemented and tested code for point addition and scalar multiplication
DAY 30: 6/21/19
Presented at the weekly group discussion
Finished implementing ECDH
Looked into how HiveMQ handles securtiy
Added date and time information when a client connects
DAY 31: 6/23/19
Finished abstract for Mid-Sure registration
Registered for Mid-Sure
DAY 32: 6/24/19
Worked on refactoring ECDH code
Looked into how HiveMQ handles security
Started learning about Java key stores and trust stores
Learned more about TLS (agreeing on cipher suite for communication & affect of on CPU)
DAY 33: 6/25/19
Added client authentication to server with a username and password
Finished refactoring, testing and adding comments to ECDH code
Created presentation slides for Dr. Kim
DAY 34: 6/26/19
Presented to Dr. Kim and Hwimin
Made changes to presentation slides based on feedback from Dr. Kim and Hwimin
Started reading about AES
Started configuring the TLS server
DAY 35: 6/27/19
Continued configuring the TLS server
Began implementing AES 128
DAY 36: 6/28/19
Improved time of message delivery by putting received message in a text file instead of printing to the console with System.out.println()
Continued implementing AES 128
DAY 37: 6/30/19
Continued configuring the TLS server
DAY 38: 7/1/19
Continued configuring the TLS server
Continued implementing AES 128
DAY 39: 7/2/19
Continued configuring the TLS server
Continued reading more about and implementing AES 128
DAY 40: 7/3/19
Continued configuring the TLS server
Continued reading more about and implementing AES 128
Created presentation slides for Dr. Kim
DAY 41: 7/5/19
Continued configuring the TLS server
Updated project to Java 12
Started reading research papers
Continued reading more about and implementing AES 128
DAY 42: 7/6/19
Continued reading research papers
Continued configuring the TLS server
DAY 43: 7/8/19
Continued reading about and implementing AES 128
Continued configuring the TLS server
Submitted a bug report for HiveMQ Community Edition on GitHub about TLS 1.3
DAY 44: 7/9/19
Completed and tested encryption part of AES
Started working on decryption part of AES
Continued working on the presentation for Dr. Kim
DAY 45: 7/10/19
Completed decryption part of AES, need to do bug fixing since output from encryption and decryption are not the same
Finished presentation slides for Dr. Kim
DAY 46: 7/11/19
Presented slides about MQTT & AES presentation to Dr. Kim
Refactored HiveMQ code
Added more comments to code
Continued debugging AES code, started refactoring code to isolate issue
DAY 47: 7/12/19
Presented at the weekly group discussion
Wrote official documentation for all of our HiveMQ code using Java Docs
Continued debugging and refactoring AES code
Started reading related works for the related works section of the research paper
DAY 48: 7/13/19
Continued reading related works for the related works section of the research paper
Started writing related works section of research paper
Hwimin fixed AES code so it works properly now
DAY 49: 7/14/19
Continued reading related works for the related works section of the research paper
Continued writing related works section of research paper
Hwimin made the AES code CBC and added initialization vectors (IVs)
DAY 50: 7/15/19
Finished rough draft for related works section of research paper
Started writing background section of research paper
Continued writting documentation for codebase using Javadocs
DAY 51: 7/16/19
Continued writing background section of research paper
Finished writting documentation for codebase using Javadocs
Organized files for the project and wrote up a guide on how to use it
Upload final project to GitHub and shared with the team
DAY 52: 7/17/19
Met with Dr. Kim to discuss research paper writing techniques
Met with Hwimin to download MiKTeX and TexStudio to use LaTeX
Started configuring testing environment
Began working on research poster for Mid-Sure
DAY 53: 7/18/19
Finished configuring testing environment
Started testing
Continued working on research poster for Mid-Sure
DAY 54: 7/19/19
Continued testing
Finished research poster for Mid-Sure
DAY 55: 7/21/19
Continued testing
DAY 56: 7/22/19
Continued testing
Finished rough draft for background and related works sections of research paper
Revised the problem statement
Updated the website timeline
DAY 57: 7/23/19
Started writing approach section of the research paper
Continued testing
DAY 58: 7/24/19
Presented poster at Mid-Sure
Created a template for the results section of the research paper
Created an outline for the introduction section of the research paper
Started writing conclusion section of the research paper
DAY 59: 7/25/19
Created pseudocode for AES-384 in LaTex
Finished writing introduction section of the research paper
Continued testing and gathering results into a spreadsheet
Met with Dr. Fu and Dr. Ali for a dicussion about graduate study
DAY 60: 7/26/19
Finished rough draft of research paper
Google Sites
Report abuse
Google Sites
Report abuse