## Inspiration

On the trip to HackWestern, we were looking for ideas for the hackathon. We were looking for things in life that can be improved and also existing products which are not so convenient to use.

Jim was using Benjamin's phone and got the inspiration to make a dedicated two factor authentication device, since it takes a long time for someone to unlock their phone, go through the long list of applications, find the right app that gives them the two-factor auth code, which they have to type into the login page in a short period of time, as it expires in less than 30 seconds. The initial idea was rather primitive, but it got hugely improved and a lot more detailed than the initial one through the discussion.

## What it does

It is a dedicated device with a touch screen, that provides users with their two-factor authentication keys. It uses RFID to authenticate the user, which is very simple and fast - it takes less than 2 seconds for a user to log in, and can automatically type the authentication code into your computer when you click it.

## How We built it

The system is majorly Raspberry Pi-based. The R-Pi drives a 7 inch touch screen, which acts as the primary interface with the user.
The software for the user interface and generation of authentication keys are written in Java, using the Swing GUI framework. The clients run Linux, which is easy to debug and customize.
Some lower level components such as the RFID reader is handled by an arduino, and the information is passed to the R-Pi through serial communication.
Since we lost our Wifi dongle, we used 2 RF modules to communicate between the R-Pi and the computer. It is not an ideal solution as there could be interference and is not easily expandable.

## Challenges I ran into

We have ran into some huge problems and challenges throughout the development of the project. There are hardware challenges, as well as software ones.

For example, the 7 inch display that we are using does not have an official driver for touch, so we had to go through the data sheets, and write a C program where it gets the location of the touch, and turns that into movement of the mouse pointers.

Another challenge is the development of the user interface. We had to integrate all the components of the product into one single program, including the detection of RFID (especially hard since we had to use JNI for lower level access), the generation of codes, and the communication with other devices.

## Accomplishments that I'm proud of

We are proud of ourselves for being able to write programs that can interface with the hardware. Many of the hardware pieces have very complex documentation, but we managed to read them, and understand them, and write programs that can interface with them reliably. As well, the software has many different parts, with some in C and some in Java. We were able to make everything synergize well, and work as a whole.

## What We learned

To make this project, we needed to use a multitude of skills, ranging from HOTP and TOTP, to using JNI to gain control over lower levels of the system.
But most importantly, we learnt the practical skills of software and hardware development, and have gained valuable experience on the development of projects.

## What's next for AuthFID
## Inspiration

In the future we would be driving electric cars. They would have different automatic features, including electronic locks. This system may be vulnerable to the hackers, who would want to unlock the car in public parking lots. So we would like to present **CARSNIC**, a solution to this problem.

## What it does

The device implements a continuous loop, in which the camera is checked in order to detect the theft/car unlocking activity. If there is something suspect, the program iterated in the list of frequencies for the unlocking signal (*315MHz* for US and *433.92MHz* in the rest of the world). If the signal is detected, then the antenna starts to transmit a mirrored signal in order to neutralize the hacker's signal.

We used the propriety that the signal from car keys are sinusoidal, and respects the formula: sin(-x) = -sin(x).

## How I built it

We used a **Raspberry Pi v3** as SBC, a RPI camera and a **RTL-SDR** antenna for RX/TX operations. In order to detect the malicious activity and to analyze the plots of the signals, I used python and **Custom Vision** API from Azure. The admin platform was created using **PowerApps** and **Azure SQL** Databases.

## Challenges I ran into

The main challenge was that I was not experienced in electronics and learned harder how to work with the components.

## Accomplishments that I'm proud of

The main accomplishment was that the MVP was ready for the competition, in order to demonstrate the proposed idea.

## What I learned

In this project I learned mostly how to work with hardware embedded systems, This is my first project with Raspberry Pi and RTL-SDR antenna.

## What's next for CARSNIC

In the next couple of months, I would like to finish the MVP with all the features in the plan: 3D scanning of the structure, acclimatization and automatic parking from an intelligent service sent directly to your car. Then I think the project should be ready to be presented to investors and accelerators.
## Inspiration

The failure of a certain project using Leap Motion API motivated us to learn it and use it successfully this time.

## What it does

Our hack records a motion password desired by the user. Then, when the user wishes to open the safe, they repeat the hand motion that is then analyzed and compared to the set password. If it passes the analysis check, the safe unlocks.

## How we built it

We built a cardboard model of our safe and motion input devices using Leap Motion and Arduino technology. To create the lock, we utilized Arduino stepper motors.

## Challenges we ran into

Learning the Leap Motion API and debugging was the toughest challenge to our group. Hot glue dangers and complications also impeded our progress.

## Accomplishments that we're proud of

All of our hardware and software worked to some degree of success. However, we recognize that there is room for improvement and if given the chance to develop this further, we would take it.

## What we learned

Leap Motion API is more difficult than expected and communicating with python programs and Arduino programs is simpler than expected.

## What's next for Toaster Secure

-Wireless Connections
-Sturdier Building Materials
-User-friendly interface