title: Encoding and Decoding API Access token with keys
body: <p>I am planning to secure my rest API in django with a ACCESS_TOKEN.
  When ever user is logged in using their username and password, once they are authenticated, I generate a ACCESS_TOKEN and passed to frontend be it Website or Native application. and then later used that ACCESS_TOKEN for further communication.
  I am generating this token based on some user data and then encrypting this with public key. Later when application send this for in any request, I decrypt the ACCESS_TOKEN with private key and extract user data data and process the request. This is something similar to session where session data is in encrypted form in ACCESS_TOKEN and only private key and decrypt the ACCESS_TOKEN. This is what I am planning to do.
  Please suggest me for following questions:-
  1. Is is the best way to secure my REST API? I want to use my API in same way from Web-application(AJAX calling) and NATIVE application(Android/IOS etc) ?
  2. What is the best way to expire the token? Do I need to keep track of access token at my end in order to expire them? </p>
  
  <p>Also I do want to use the Oauth in my API.</p>