Veridis Biometrics SDK 使用字符串验证
Veridis Biometrics SDK validating with strings
很抱歉做一个冗长的介绍,但这是我到目前为止所做的:
- 已下载SDK;
- 阅读手册;
- 关注了他们用 SDK 修补的示例项目。
但是,问题是,我已经有另一个生物识别解决方案在工作,它用于将所有散列数据保存为 varchar2 数据类型而不是字节数组。所以,我的 table 已经有一个很难更改的 varchar2 列(管理方面)。
当然,我很高兴 Veridis 有这个 "CompareTo" 方法,它有一个重载允许我传递一个字符串作为参数。唯一的问题是它似乎不起作用。这是处理验证的位:
Private _modelo As BiometricTemplate
Private _valido As Boolean
Public WriteOnly Property ModeloBiometrico As String
Set(value As String)
_modelo = BiometricTemplate.Base64TemplateDecode(value)
End Set
End Property
Private Sub OnSampleAcquired(device As
Veridis.Biometric.IBiometricCaptureDevice,
sample As Veridis.Biometric.BiometricSample)
Implements Veridis.Biometric.ICaptureListener.OnSampleAcquired
_valido = _modelo.CompareTo(New BiometricTemplate(sample)).Match
End Sub
这在 saving/validating 一根手指时有效,但如果我像字节数组那样保存多根手指,验证将不起作用。这里有什么问题?
好的,如果这对将来的任何人有用,这就是我解决这个问题的方法。
短版:
SDK 实际上总是仅保存一个 或3 个样本 相同 手指!
长版:
首先,我以为我正在收集我输入的 3 个手指中的每一个的 1 个样本。它从来没有验证过我,所以我在 Whosebug 上提出了这个问题。
事实是,在尝试了整整一天其他方法之后,我发现我输入的第二根手指正在被验证。这让我很奇怪,经过几次测试,结果证明它只真正验证了第二根手指。
总结之后,很明显我应该在开始另一个手指之前输入同一个手指的 3 个样本。
这很奇怪,因为如果你只保存一根手指,它会占用一个样本,这就是它(虽然哈希码大于3个样本,这一点都不好,但那是另一回事).
很抱歉做一个冗长的介绍,但这是我到目前为止所做的:
- 已下载SDK;
- 阅读手册;
- 关注了他们用 SDK 修补的示例项目。
但是,问题是,我已经有另一个生物识别解决方案在工作,它用于将所有散列数据保存为 varchar2 数据类型而不是字节数组。所以,我的 table 已经有一个很难更改的 varchar2 列(管理方面)。
当然,我很高兴 Veridis 有这个 "CompareTo" 方法,它有一个重载允许我传递一个字符串作为参数。唯一的问题是它似乎不起作用。这是处理验证的位:
Private _modelo As BiometricTemplate
Private _valido As Boolean
Public WriteOnly Property ModeloBiometrico As String
Set(value As String)
_modelo = BiometricTemplate.Base64TemplateDecode(value)
End Set
End Property
Private Sub OnSampleAcquired(device As
Veridis.Biometric.IBiometricCaptureDevice,
sample As Veridis.Biometric.BiometricSample)
Implements Veridis.Biometric.ICaptureListener.OnSampleAcquired
_valido = _modelo.CompareTo(New BiometricTemplate(sample)).Match
End Sub
这在 saving/validating 一根手指时有效,但如果我像字节数组那样保存多根手指,验证将不起作用。这里有什么问题?
好的,如果这对将来的任何人有用,这就是我解决这个问题的方法。
短版:
SDK 实际上总是仅保存一个 或3 个样本 相同 手指!
长版:
首先,我以为我正在收集我输入的 3 个手指中的每一个的 1 个样本。它从来没有验证过我,所以我在 Whosebug 上提出了这个问题。
事实是,在尝试了整整一天其他方法之后,我发现我输入的第二根手指正在被验证。这让我很奇怪,经过几次测试,结果证明它只真正验证了第二根手指。
总结之后,很明显我应该在开始另一个手指之前输入同一个手指的 3 个样本。
这很奇怪,因为如果你只保存一根手指,它会占用一个样本,这就是它(虽然哈希码大于3个样本,这一点都不好,但那是另一回事).