Authenticating users for mobile transactions conducted over mobile phones. In general, the present invention makes it possible to securely authenticate a rural user (using the unique user ID from the uWallet, the client certificate in the mobile phone of the rural user and PIN code/password provided by the rural user) and then permit mobile banking transactions over the mobile phone. Both participating individuals employ their individual mobile phones and secure USB/Bluetooth based mobile banking devices (the uWallet) to authenticate themselves and conduct monetary transactions (funds transfer, mobile payments, etc.).