# Emergency Access System A secure emergency information access system using YubiKey authentication. This application allows authorized users to access critical emergency information stored in Markdown format. ## Features - YubiKey authentication for secure access - Markdown rendering with syntax highlighting - Webhook for remote updates of emergency information - Mobile-friendly interface - Hidden passwords that reveal when clicked ## Setup 1. Clone this repository 2. Install dependencies: ``` pip install -r requirements.txt ``` 3. Create a `.env` file based on `.env.example`: ``` cp .env.example .env ``` 4. Edit the `.env` file with your settings ### YubiKey Configuration 1. Get your YubiKey API credentials from https://upgrade.yubico.com/getapikey/ 2. Add your client ID and secret key to the `.env` file 3. Determine your YubiKey ID (first 12 characters of any OTP generated by your YubiKey) 4. Add the YubiKey ID to the `.env` file ### Webhook Secret Generation The webhook requires a strong secret to secure remote updates. Use one of these methods to generate a secure secret: #### Option 1: Using Python ```python import secrets print(secrets.token_hex(32)) # Generates a 64-character hex string ``` #### Option 2: Using OpenSSL ```bash openssl rand -hex 32 ``` #### Option 3: Using /dev/urandom (Linux/Mac) ```bash head -c 32 /dev/urandom | xxd -p -c 32 ``` Add the generated secret to your `.env` file: