Security Checks
The Document Reader Mobile SDK allows you to perform various security checks. For a full list of supported options, see the Authenticity Control page.
The security features and applicable authenticity checks of a document depend on its issuing country and type. For detailed information on each document, see Supported Documents, particularly the Security Features column in the overview table.
The following instructions explain how to perform the document security checks with the Mobile SDK.
- Preparation
- Step 1: Optical Processing
- Step 2: RFID Chip Reading (Optional)
- Step 3: Processing Results
- Examples
Preparation
1. Install the Core of the type that supports checking the security features:
2. Add the document database that supports checking the security features.
By default, the database ID for this case is FullAuth
. For installation instructions, see the Database page.
Info
To get a configured custom database, contact your account manager or create a request on the Support Portal.
3. To use Regula mobile devices, declare additional dependencies and permissions (optional).
To enhance the process of document capture and recognition, Regula provides several devices, such as the attachable Mobile Document Authenticator Regula 1120 and the standalone Mobile Workstation Regula 7310. They employ high-quality hardware modules (IR/UV light sources and RFID reader).
- Add the
BTDevice
dependency:
pod 'BTDevice'
implementation 'com.regula.btdevice:api:+@aar'
implementation("com.regula.btdevice:api:+@aar")
flutter_document_reader_btdevice:
<!-- Android -->
<PackageReference Include="Xamarin.DocumentReader.BTDevice.Android" Version="*"/>
<!-- iOS -->
<PackageReference Include="Xamarin.DocumentReader.BTDevice.iOS" Version="*"/>
- Declare the Bluetooth permissions:
Add the following usage descriptions to your Info.plist
:
<key>NSBluetoothAlwaysUsageDescription</key>
<string>Requires access to your phone’s Bluetooth module.</string>
Bluetooth permissions are imported from the btdevice
library and automatically merged to the application's AndroidManifest.xml
, no additional actions from your side are required.
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.BLUETOOTH_SCAN" />
<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
Note that you will also need to request the Bluetooth permissions at runtime.
For Android Bluetooth permissions, add the following to android/app/src/main/AndroidManifest.xml
:
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.BLUETOOTH_SCAN" />
<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
For iOS Bluetooth permissions, add the following to ios/Runner/Info.plist
:
<key>NSBluetoothAlwaysUsageDescription</key>
<string>Requires access to your phone’s Bluetooth module.</string>
For Android Bluetooth permissions, add the following to Platforms/Android/AndroidManifest.xml
:
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.BLUETOOTH_SCAN" />
<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
For iOS Bluetooth permissions, add the following to Platforms/iOS/Info.plist
:
<key>NSBluetoothAlwaysUsageDescription</key>
<string>Requires access to your phone’s Bluetooth module.</string>
Step 1: Optical Processing
The first step is optical processing.
Follow the Document Processing guide and set the Authentication processing scenario that supports checking security features.
Step 2: RFID Chip Reading (Optional)
After the optical processing is completed, you can start the RFID chip reading (if applicable to your case).
Follow the RFID Chip Processing guide.
Step 3: Processing Results
Once the document processing is completed, you can handle the processing results that are stored in the authenticityResult
container:
Examples
Android GitHub sample project, demonstrating how to check the document security features.
Examples of the Mobile SDK integration with the devices Regula 1120 and Regula 7310: