User Authentication And Key Agreement Is An Important Security Primitive For Creating A Securely Distributed Information System. Additionally, User Authentication And Key Agreement Is Very Useful For Providing Identity Privacy To Users. In This Project, We Propose A Robust And Efficient User Authentication And Key Agreement Scheme Using Smart Cards. The Main Merits Include The Following: 1) The Computation And Communication Cost Is Very Low; 2) There Is No Need For Any Password Or Verification Table In The Server; 3) A User Can Freely Choose And Change His Own Password; 4) It Is A Nonce-based Scheme That Does Not Have A Serious Time-synchronization Problem; 5) Servers And Users Can Authenticate Each Other; 6) The Server Can Revoke A Lost Card And Issue A New Card For A User Without Changing His Identity; 7) The Privacy Of Users Can Be Protected; 8) It Generates A Session Key Agreed Upon By The User And The Server; And 9) It Can Prevent The Offline Dictionary Attack Even If The Secret Information Stored In A Smart Card Is Compromised.