¿Cómo almacenar de forma segura el token de acceso y el secreto en Android?

Voy a usar oAuth para buscar correos y contactos de google. No quiero pedirle al usuario cada vez que inicie sesión para obtener un token de acceso y un secreto. Por lo que entendí, necesito almacenarlos con mi aplicación en una base de datos oSharedPreferences. Pero estoy un poco preocupado por los aspectos de seguridad con eso. Leí que puedes cifrar y descifrar los tokens, pero para un atacante es fácil descompilar tu apk y tus clases y obtener la clave de cifrado.
¿Cuál es el mejor método para almacenar de forma segura estos tokens en Android?

Respuestas a la pregunta(5)

Su respuesta a la pregunta