Objective: To complement a Voice authentication application to the existing Skype application through Skype APIs.
Programmin Language:
Java,
MS Access or SQL as a
database to store vocie samples.
The voice authentication application would be text dependant. The user will be asked to speak out a phrase or a text (Example: My name is John). The very first time the user calls no authentication takes place. This is the time user enrolls for authentication. The next time the same user calls this is when authentication takes place.
The voice authentication application would be able to take into considerations certain changes in the user's behavioural and emotional features. An acceptance threshold should be set to accept the user as a legitimate user if the voice samples satisfies the threshold value. Also these changes in the voice samples (only if they satisfy the threshold value) for a particular user should be stored in the
database as an additional samples that can be used with the earlier sample taken the first time the user called. So the
database of voice samples may have multiple voice samples againt one user. This is how the
database gets updated for changes in the vocie samples. So the next time authentication is to be done for the same user the application will check against multiple samples to find a match.
The authnetication application will check whether voice samples for a particulr user exists or not. If the samples exist than at the time of authentication it will check the voice samples only againt that user rather than checking the whole
database of voice samples.
Working: User "A" calls User "B". User "A" wants to check whether user "B" is really "B" or not. User "A" clicks the authenticate button on his skype application. Skype application on User "B" prompts User "B" to speak out a text. User "B" speaks the displayed text and clicks the "ok" button.
The code should be written with full comments that makes understanding of the code easy. Also please explain how the code will be executed. Which files to execute first, where to keep the
database and which commands to use to execute the
database. Please do not get the code from the internet. You can get the algorithm from the internet and implement your own code.