biometric_iot_bridge — Flutter Biometric Authentication & Secure MQTT IoT Bridge
Connect device biometrics to trusted IoT actions using cryptographic tokens. Open-source. Privacy-first. Production-ready.
If you are building a Flutter app that controls IoT devices — smart locks, home automation systems, industrial sensors, or remote hardware — you face a critical challenge: how do you prove that the person triggering a device action is actually authorized?
Passwords can be stolen. Sessions can be hijacked. But biometrics are hardware-bound and device-local. That is the foundation of biometric_iot_bridge — a free, open-source Flutter package published under the SEOSiri pub.dev publisher by developer Momenul Ahmad.
What does biometric_iot_bridge do in one sentence?
It verifies a user with device biometrics, generates a cryptographically secure token, and publishes that token to an MQTT topic — so a trusted IoT device can act on it.
What Is biometric_iot_bridge?
biometric_iot_bridge is a Flutter plugin that bridges three distinct systems into one lightweight API:
Biometric Verification
Fingerprint, Face ID, device PIN via platform-native APIs. No raw biometric data accessed.
Token Generation
Cryptographic SHA hashing creates a one-time trust token that cannot be forged or replayed.
MQTT Signaling
Publish the token to any MQTT topic to trigger trusted actions on remote IoT devices.
Privacy-First Design
Zero biometric storage. Zero identity management. System-level verification only.
It depends on three well-maintained packages: local_auth for biometrics, mqtt_client for MQTT, and crypto for token hashing.
Why Build biometric_iot_bridge?
Most Flutter IoT packages focus on communication — not trust. Anyone can publish to an MQTT topic. biometric_iot_bridge adds a hardware-level trust gate.
Consider a smart lock app: without biometric gating, any valid session can trigger the unlock. With biometric_iot_bridge, the device only unlocks when the enrolled user physically authenticates.
Security Note
This package handles client-side authentication only. Always validate tokens server-side or device-side. Never use the MQTT token as your sole production security layer.
How to Install biometric_iot_bridge
Step 1 — Add to pubspec.yaml
# pubspec.yaml
dependencies:
biometric_iot_bridge: ^0.1.1
flutter pub get
Step 2 — Android Setup
Add to android/app/src/main/AndroidManifest.xml:
<uses-permission android:name="android.permission.USE_BIOMETRIC"/>
<uses-permission android:name="android.permission.USE_FINGERPRINT"/>
Step 3 — iOS Setup
Add to ios/Runner/Info.plist:
<key>NSFaceIDUsageDescription</key>
<string>This app uses Face ID / Touch ID to verify your identity.</string>
Windows & macOS
No additional setup required — both platforms use native device authentication APIs automatically.
Quick Start: Biometric + MQTT in 5 Lines
import 'package:biometric_iot_bridge/biometric_iot_bridge.dart';
final bridge = BiometricIotBridge();
// 1. Verify biometrically
final authenticated = await bridge.verifyBiometrics();
if (!authenticated) return;
// 2. Generate secure token
final token = bridge.generateSecureToken("your_secret_key");
// 3. Signal IoT device via MQTT
await bridge.sendRemoteSignal("iot/door/unlock", token);
Complete Flutter Widget Example
import 'package:flutter/material.dart';
import 'package:biometric_iot_bridge/biometric_iot_bridge.dart';
class SecureUnlockPage extends StatefulWidget {
@override
_SecureUnlockPageState createState() => _SecureUnlockPageState();
}
class _SecureUnlockPageState extends State<SecureUnlockPage> {
final bridge = BiometricIotBridge();
String _status = "Ready";
Future<void> _triggerUnlock() async {
setState(() => _status = "Verifying biometrics...");
final ok = await bridge.verifyBiometrics();
if (!ok) { setState(() => _status = "Auth failed."); return; }
final token = bridge.generateSecureToken("secret_key");
await bridge.sendRemoteSignal("iot/door/unlock", token);
setState(() => _status = "✅ Unlocked!");
}
@override
Widget build(BuildContext context) => Scaffold(
appBar: AppBar(title: Text("Biometric IoT Unlock")),
body: Center(child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text(_status, style: TextStyle(fontSize: 18)),
SizedBox(height: 24),
ElevatedButton.icon(
icon: Icon(Icons.fingerprint),
label: Text("Authenticate & Unlock"),
onPressed: _triggerUnlock,
),
],
)),
);
}
API Reference
verifyBiometrics()
Triggers the platform's native biometric dialog using local_auth. Returns true on success. No biometric data is stored or transmitted.
Future<bool> verifyBiometrics()
generateSecureToken(String secret)
Generates a cryptographically secure token using the crypto package. Returns a hex-encoded SHA hash. Never expose the secret key client-side in production without server-side validation.
String generateSecureToken(String secret)
sendRemoteSignal(String topic, String token)
Publishes the token to an MQTT broker using mqtt_client. Works with Mosquitto, HiveMQ, AWS IoT Core, Azure IoT Hub, and EMQX.
Future<void> sendRemoteSignal(String topic, String token)
Supported Platforms
| Platform | Status | Notes |
|---|---|---|
| Android | ✅ Supported | Requires USE_BIOMETRIC permission |
| iOS | ✅ Supported | Requires NSFaceIDUsageDescription in Info.plist |
| Windows | ✅ Supported | Uses Windows Hello device auth |
| macOS | ✅ Supported | Touch ID and device PIN supported |
| Linux | ⚠️ Partial | Dependent on device biometric API availability |
Real-World Use Cases for biometric_iot_bridge
This package is purpose-built for scenarios where identity must be hardware-verified before a device action occurs:
- Smart door locks — biometric auth required before MQTT unlock command
- Industrial equipment — prevent unauthorized operation with hardware-level gating
- Home automation — biometric-controlled lighting, HVAC, and security systems
- Healthcare device control — verify clinician identity before adjusting connected equipment
- Multi-factor architectures — combine with server-side validation for layered security
- Vehicle access systems — biometric-triggered MQTT commands for connected vehicles
Security Design Philosophy
biometric_iot_bridge follows a non-invasive, privacy-first security model:
- All biometric verification via platform-native APIs — the app never sees raw biometric data
- No fingerprint or face data is stored, transmitted, or logged anywhere
- Token generation uses cryptographic hashing — tokens are not reversible
- Scoped to client-side trust signaling only — backend validation is the developer's responsibility
Production Hardening Recommendation
Validate tokens server-side or in IoT device firmware before executing any action. Use TLS-encrypted MQTT connections and broker-level access controls in production.
Developer Ecosystem & Related Resources
Explore the full SEOSiri developer ecosystem across pub.dev, GitHub, and VS Code Marketplace:
Frequently Asked Questions
Voice search and featured snippet optimized answers about biometric_iot_bridge:
biometric_iot_bridge is used to add biometric authentication as a security gate for IoT device control in Flutter apps. It verifies a user's fingerprint or face using device-native APIs, generates a cryptographic token, and sends it to an MQTT topic to trigger trusted actions on connected devices such as smart locks, industrial equipment, or home automation systems.
Yes. biometric_iot_bridge uses the mqtt_client Dart package, which supports any standard MQTT broker including Mosquitto, HiveMQ, AWS IoT Core, Azure IoT Hub, and EMQX. Configure your broker connection in the app and pass the topic to sendRemoteSignal().
No. biometric_iot_bridge never stores biometric data. It uses platform-native APIs and returns only a boolean result. No fingerprint or face data is accessed, stored, or transmitted by the package.
biometric_iot_bridge requires Flutter 3.10.0 or later and Dart SDK 3.1.0 or later. It is tested on Flutter 3.41.1 and Dart 3.11.0 on the stable channel.
Fork the repository at github.com/SEOSiri-Official/biometric_iot_bridge, create a feature branch, commit your changes, and submit a pull request. Issues and suggestions are welcome in the GitHub Issues tab.
biometric_iot_bridge fills a real gap in the Flutter IoT ecosystem: hardware-verified trust for device control. By combining biometric authentication, cryptographic token generation, and MQTT signaling into one clean API, it makes it practical to build Flutter apps where physical identity is the key to device action.
Whether you are building a smart home controller, an industrial safety gate, or a connected vehicle system, biometric_iot_bridge gives you the trust layer without the complexity.
Support This Work
biometric_iot_bridge is free and open-source. If it saved you time or helped your project, consider supporting continued development and open-source contributions.
Every contribution supports open-source Flutter development, SEO tooling, and free educational content at SEOSiri.com
Momenul Ahmad
Founder & SEO Strategist at SEOSiri.com
🟢 Open to New OpportunitiesMomenul is a digital strategist specializing in data-driven growth systems. He bridges the industry's "skill gap" by helping businesses master strategies that drive real-world results. Beyond SEO, Momenul is an active open-source developer — publishing Flutter packages under the seosiri.com pub.dev publisher and developer tools on the VS Code Marketplace. Currently available for select B2B SEO consulting and Digital PR partnerships.
Featured On: Featured.com | Muck Rack