All Projects → uru-card → uru-card

uru-card / uru-card

Licence: Apache-2.0 license
Arduino based firmware for FIDO2 Authenticator

Programming Languages

C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to uru-card

Opensk
OpenSK is an open-source implementation for security keys written in Rust that supports both FIDO U2F and FIDO2 standards.
Stars: ✭ 2,114 (+1754.39%)
Mutual labels:  webauthn, fido2, ctap2
adfsmfa
MFA for ADFS 2022/2019/2016/2012r2
Stars: ✭ 86 (-24.56%)
Mutual labels:  webauthn, fido2
keycloak-radius-plugin
Make the radius server as part of keycloak SSO
Stars: ✭ 102 (-10.53%)
Mutual labels:  webauthn, fido2
awesome-yubikey
Curated list of awesome Yubikey resources, open source projects, tools and tutorials.
Stars: ✭ 22 (-80.7%)
Mutual labels:  webauthn, fido2
FIDO-Server
Open-source FIDO server, featuring the FIDO2 standard.
Stars: ✭ 17 (-85.09%)
Mutual labels:  webauthn, fido2
android-webauthn-authenticator
A WebAuthn Authenticator for Android leveraging hardware-backed key storage and biometric user verification.
Stars: ✭ 101 (-11.4%)
Mutual labels:  webauthn, fido2
go-libfido2
libfido2 bindings for golang
Stars: ✭ 42 (-63.16%)
Mutual labels:  webauthn, fido2
line-fido2-server
FIDO2(WebAuthn) server officially certified by FIDO Alliance and Relying Party examples.
Stars: ✭ 350 (+207.02%)
Mutual labels:  webauthn, fido2
webauthn-demo
WebAuthn demo with Ionic/Angular and Spring Boot
Stars: ✭ 22 (-80.7%)
Mutual labels:  webauthn, fido2
Solo
Solo 1: open security key supporting FIDO2 & U2F over USB + NFC
Stars: ✭ 1,986 (+1642.11%)
Mutual labels:  webauthn, fido2
clarion
WebAuthn (U2F) helper for CLI operations (e.g. SSH Log in)
Stars: ✭ 78 (-31.58%)
Mutual labels:  webauthn, fido2
SmartSpin2k
Transform your spin bike into a Smart Trainer!
Stars: ✭ 88 (-22.81%)
Mutual labels:  platformio, ble
CTAP2-test-tool
Test tool for CTAP2 authenticators
Stars: ✭ 36 (-68.42%)
Mutual labels:  fido2, ctap2
wp-webauthn
🔒 WP-WebAuthn allows you to safely login to your WordPress site without password.
Stars: ✭ 85 (-25.44%)
Mutual labels:  webauthn, fido2
webauthn-example
Basic WebAuthn client and server in go
Stars: ✭ 53 (-53.51%)
Mutual labels:  webauthn, fido2
EUC-Dash-ESP32
Bluetooth Dashboard for electric unicycles (EUCs) for ESP32(ttgo t-watch). requires PlatformIO to build
Stars: ✭ 24 (-78.95%)
Mutual labels:  platformio, ble
Openmqttgateway
MQTT gateway for ESP8266, ESP32, Sonoff RF Bridge or Arduino with bidirectional 433mhz/315mhz/868mhz, Infrared communications, BLE, Bluetooth, beacons detection, mi flora, mi jia, LYWSD02, LYWSD03MMC, Mi Scale, TPMS, BBQ thermometer compatibility, SMS & LORA.
Stars: ✭ 2,413 (+2016.67%)
Mutual labels:  platformio, ble
Platformio Docs
PlatformIO Documentation
Stars: ✭ 106 (-7.02%)
Mutual labels:  platformio
Platform Ststm32
ST STM32: development platform for PlatformIO
Stars: ✭ 201 (+76.32%)
Mutual labels:  platformio
Stm32pio
Automate managing of STM32CubeMX + PlatformIO projects
Stars: ✭ 89 (-21.93%)
Mutual labels:  platformio

URU Card - Arduino FIDO2 Authenticator

Build Status Maintainability

URU Card is an Arduino based FIDO2 Authenticator. This repository contains source code for the firmware.

Warning: At the moment BLE transport is supported only by Windows and Chrome browser on Android.

Warning: The project is in very early stage of the development

How to run the project

ESP32 development board and USB cable

You can use simple and affordable Wroom 32 development board. At the moment advanced features like secure element ATECC508a are not used so there is no need in more sophisticated boards.

ESP32 development board

Connect the board to your computer using USB cable and make sure the UART port is available to your system. Make sure the selected port provides enough current as the ESP32 chips are quite hungry and sensitive to stability of the power source.

ESP8266 or AVR based Arduino will not work.

URU Card board

The firmware is intended for use with the URU Card device which provides more hardware features than the development board including OLED display, touch keyboard and hardware secure element. The design files for the URU Card device are avialable in the separate repository here.

URU Card

Development Environment - PlatformIO

To build the firmware you will need PlatformIO. Follow the instructions to install it for your platform.

Building

First of all, get a copy of the source code using either git command or downloading a zip file.

Open the project in the PlatformIO IDE. Connect the dev board to your computer then build and upload the firmware from the PlatformIO. All the required libraries will be downloaded automatically.

I'm using the following command in terminal window:

$ pio run -t upload -t monitor

The program will start immediately and the serial console will start output of the debug information.

Testing

Pairing (bonding) the device

Despite the fact, the FIDO2 protocol supports BLE transport, at the moment is it available only under Windows. So, you will need either a Windows machine or a virtual environment. I am using Oracle Virtual Box and the trial version of Windows 10.

Open bluetooth settings on your Windows computer or Android phone. Add new device and select "URU Card" from the list of discovered devices.

After a few seconds, the device should be paired and appear in the list of available devices.

This step should be performed only once.

Testing tools

Open the browser in your Windows. Chrome, Firefox and Edge browsers work equally well as they are using the system layer to communicate with the authenticator device.

Visit the website webauthn.me. There you find a number of tools for testing the Authenticator device. The communication between the browser and the authenticator will be displayed in the serial console.

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Authors

See also the list of contributors who participated in this project.

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].