# 暗号関連のサービス

The modules described in this chapter implement various algorithms of a cryptographic nature. They are available at the discretion of the installation. On Unix systems, the `crypt` module may also be available. Here's an overview:

- `hashlib` --- セキュアハッシュとメッセージダイジェスト
  - ハッシュアルゴリズム
  - 使用法
  - Constructors
  - 属性
  - Hash Objects
  - SHAKE 可変長ダイジェスト
  - File hashing
  - 鍵導出
  - BLAKE2
    - ハッシュオブジェクトの作成
    - 定数
    - 使用例
      - 簡単なハッシュ化
      - Using different digest sizes
      - Keyed hashing
      - Randomized hashing
      - Personalization
      - ツリーモード
    - クレジット:
- `hmac` --- メッセージ認証のための鍵付きハッシュ化
- `secrets` --- 機密を扱うために安全な乱数を生成する
  - 乱数
  - トークンの生成
    - トークンは何バイト使うべきか？
  - その他の関数
  - レシピとベストプラクティス