Systems and methods for authenticating users based on their gait. A sensor module with multiple sensors is placed inside a user's shoe and biometric data is gathered from the sensors when the user takes a step. The data gathered from each of the sensors is then received by a data processing module. The data is processed and compared with a stored signature from an authenticated user. If the processed data does not match the stored signature within predetermined limits, then the user using the system is not authenticated. An alarm may then be generated. If, on the other hand, there is a match, the user is authenticated and this authenticated result can be used to give the user access to restricted resources.