# 加密服務

The modules described in this chapter implement various algorithms of a cryptographic nature. They are available at the discretion of the installation. Here's an overview:

- `hashlib` --- 安全雜湊與訊息摘要
  - 雜湊演算法
  - 用法
  - 建構函式
  - 屬性
  - 雜湊物件
  - SHAKE 可變長度摘要
  - 檔案雜湊
  - 密鑰的生成
  - BLAKE2
    - 建立雜湊物件
    - 常數
    - 範例
      - 簡單雜湊
      - 使用不同的摘要大小
      - 密鑰雜湊 (Keyed hashing)
      - 隨機雜湊 (Randomized hashing)
      - 個人化
      - 樹狀模式
    - 製作人員
- `hmac` --- 基於金鑰雜湊的訊息驗證
- `secrets` --- 產生用於管理機密的安全亂數
  - 亂數
  - 產生權杖（token）
    - 權杖應當使用多少個位元組？
  - 其他函式
  - 應用技巧和典範實務（best practices）