Fingerprints matching and identification - vb.net-to-c#

I am developing a Windows application using VB.NET for a fingerprint identification system to match with the same individual fingerprints stored in my database SQL server.
I heard of hardware to collect those fingerprints from the scene and analyze them, but I don't know the full procedure.
Secondly, how can my system extract the minutaes, or details, from the two fingerprint images to determine whether they both came from the same person or not?

There is a company called Verifinger, they offer SDK for Windows applications you can use in your application.

Related

Security techniques to identify the client, when there is no login function

I'm working on my own "Auto update service", to support automatic updates for every desktop application I create.
Below is my basic idea.
Client
A program that can be run as an independent process that included in every products I make.
When my product runs, it runs first and queries the server for a newer version of my product.
If there is a new version, it downloads the binary file from the server and replaces it to my product.
All of the above processes should not require any user input other than choosing whether or not to proceed with the update.
Server
Product-id are stored in database.
For each product, binary files and release information of each version are stored.
Support querying product and version with REST-style http request and send binary file.
On the server, I need to do something to check that the requesting client is a valid one. So I came up with a way to issue a secret key to each distribution of my product, just like a game CD key, and check it in header of http request. This is the best I've come up with, but I'm still concerned:
On server-side, is it safe to store secret keys in database? If not, how the server stores and remember them?
On client-side, is it safe to store secret keys in client? What if an attacker tries to decompile the client program?
Any other better ideas?
I am new to develop web services so I don't have much knowledge. please understand.

Embedding Elasticsearch in Desktop Application

I'm developing a C++ desktop application and want to have complete set of search capabilities like stemming, customized ranking algorithm, etc for some huge text content.
previously I used ElasticSearch in some web applications. but is it possible to embed ElasticSearch in a desktop application and make the client machine as a server machine?
Is there any end well experience?
If no so what is the better option for having advance search system in desktop application?
There appear to be two c++ ports of the Lucene library which Elasticsearch is based upon.
Assuming that you require the search and indexing functionality of ElasticSearch rather than the sharding, replication and redundancy parts of it.
http://clucene.sourceforge.net/
https://github.com/luceneplusplus/LucenePlusPlus
Neither library seems to have been updated particularly recently though

Is there an easy way to supply data to Application Insights from normal win32 C++ code?

I'd like to know if there's something like a dll or lib (with headers, and possibly documentation) that can be linked into a normal* win32 C++ solution so it can (by function call) notify Application Insights of page views and send metric values.
This seems like it should exist and be simple to find, but I'm just going round in circles on Google, finding documentation for reading values back out via a web API, or using C#, or projects that other people tried in the past but now have no source available.
This is for updating a diagnostic tool which I'm trying to avoid having to completely re-architect because the logging now needs to go to a slightly different service.
*ie. not Winforms, C++/CX, Xamarin or UWP. Straight, command-line c++.
Currently there is no Application Insights client library for native applications (c/c++). Though it's in backlog I don't think it will be prioritized higher than java/node.js. So, I would not rely on its release anytime soon.
Customers who wanted to send telemetry from native applications usually picked one of the following options:
Using REST API directly. If application is going to use only couple of telemetry documents then it should be straightforward. With the most complexity coming from own requirements such as persistent channel.
Host CLR + use .NET Application Insights SDK
Have .NET service running on a box and implement communication channel between native app and this service.
Depending on environment (for instance, #2 makes sense if app already hosts .NET; #3 makes sense if there is already installed .NET service in addition to native app) you can check whether on of these options will work for you.

How does a Django application recognize a particular computer?

This question may not be directly related to Django, however, since my application is built with Django, I am looking solutions specific to Django.
My application has a check-in function that requires an employee to personally go to a specific machine and enter his/her ID and PSW to show his/her attendance. So, the website has to recognize every individual machine.
There are already some discussions, for examples: this and this.
But it seems software solutions are not quite feasible. So, I am looking for some hardware solutions. For example, is it possible to plug in some USB device on the machine which Django can recognize? In that case, the device (or the content in the device) can not be duplicated. Any feasible solutions, please?
For hardware solution, you can use yubikeys. This is an piece of hardware plugged into USB port that will generate on demand tokens for double-factor authentication. They are constructed in way that you can't copy them, so each key will generate different tokens.

C++ runtime API

I want to create an application that, when executed, has runtime functions that are accessible by other applications.
For example, a C++ application that stores values in files and retrieves this information. While this application is running, any other C++ applications could access it's save and retrieve functionality to save and retrieve data, but it should have no other connection to this system.
Sounds like a simple job for web services, or a remote database, or even an LDAP server.
Store and retrieve are operations common to all of these.
If the goal is to learn some specific technology, then ask a more specific question. Otherwise, don't reinvent any wheels. There are plenty of things out there for store and retrieve.
One of the simplest "store and retrieve" APIs I know of is Berkeley DB or Sleepycat.
We built a giant, clustered, simple key based database for a major telecom company using LDAP on top of Berkeley DB (aka Sleepycat). All open-source software and commodity hardware and it supports mission critical operations for millions of customers.
A more modern rendition of this might use memcached as well.
If you go HTTP based, you can use something simple as libcurl against an Apache web server to implement "RESTful" services with GET and PUT commands.
If you run it locally (same server), and access via localhost (127.0.0.1) then there is very little latency in the TCP stack, and it amounts to little more than memcpys at the kernel level.
simple message passing would do, say, JSON over ØMQ, or i.e. all in all, msgpack-rpc or protobuf-remote or Cap'n Proto RPC