# How to generate secrets in Python 3.6 and later

There are a lot of ways to generate random values. But some of them are not suitable for secret keys. There is a new module named secrets in `version 3.6` and later. You can use the code below to generate cryptographically strong random values.

```python
import secrets
secrets.token_hex()
```

This module will generate truly random values, not pseudo-random ones. Pseudo-random generators should be used only for simulation, not important random values or anything security related. You can use secrets for data such as passwords, security tokens, etc.

### References

1.  [https://docs.python.org/3/library/secrets.html](https://docs.python.org/3/library/secrets.html)
