DeepSeek Harness (DSH) 採用插件化架構,允許開發者通過註冊工具來擴展智能體的能力。在開發涉及賬戶註冊、密鑰管理或安全配置的 DSH 插件時,直接在流程中生成高熵值的密碼是常見需求。dsh-password 插件通過註冊 password_generate 工具,爲 DSH 插件環境提供了加密安全的隨機密碼生成能力。
這是一個由 ZhijiangTang 維護的 DSH 插件。它僅依賴 ESM 模塊,無構建步驟,且零外部依賴。核心功能是註冊 password_generate 工具,支持兩種生成模式:強隨機字符串和 Diceware 短語。所有隨機性均來自 Node.js 的 crypto.randomInt,保證加密安全。
功能特性¶
該插件提供以下核心能力:
- 工具註冊:在 DSH 環境中註冊
password_generate工具。 - 強密碼生成:生成包含大小寫字母、數字和符號的隨機字符串,支持排除易混淆字符(如
Il1O0)。 - Diceware 生成:基於內置詞表生成易讀的英語短語。
- 加密安全:使用
node:crypto.randomInt作爲隨機源,不依賴不安全的Math.random。 - 無狀態與安全:純內存運行,不落盤、不寫日誌、不持有持久狀態。
安裝與啓用¶
安裝前請確保已配置好 DSH 環境及所需的 peer dependencies(@deepseek-ai/cordis、@deepseek-ai/dsh-tools、@deepseek-ai/dsh-llm)。
通過以下命令安裝插件:
# 本地安裝
dsh plugin --profile <name> add file:./plugins/dsh-password
# 或發佈後安裝
dsh plugin --profile <name> add dsh-password
安裝完成後,插件會在 DSH 進程中註冊 password_generate 工具。
典型用法¶
工具調用¶
調用 password_generate 工具,通過參數控制生成策略。以下是生成 2 個 24 位強密碼的示例:
call password_generate with type random, length 24, count 2, avoidAmbiguous true
參數說明¶
| 參數 | 類型 | 默認值 | 說明 |
|---|---|---|---|
type |
string | random |
生成類型,可選 random 或 diceware。 |
length |
number | 20 |
密碼長度(8–128),僅 type=random 時生效。 |
count |
number | 1 |
生成數量(1–10)。 |
words |
number | 5 |
Diceware 單詞數量(4–8),僅 type=diceware 時生效。 |
separator |
string | - |
Diceware 單詞連接符。 |
includeSymbols |
boolean | true |
是否包含符號(僅 type=random 時生效)。 |
avoidAmbiguous |
boolean | true |
排除易混淆字符(Il1O0),僅 type=random 時生效。 |
返回值¶
工具返回標準的 JSON 對象,包含生成狀態、密碼列表、類型、字符集、數量及熵值估算。
{
"ok": true,
"passwords": [
"aB3$xY9#mN2@pL5",
"cD4!zW8*oQ1%pE6"
],
"type": "random",
"entropyBits": 153.8,
"charset": "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()_+-=[]{}|;:,.<>?",
"count": 2,
"error": ""
}
生成規則與安全說明¶
- Random 模式:基於
node:crypto.randomInt從字符集(大小寫字母 + 數字 + 符號)中均勻採樣。若開啓avoidAmbiguous,會剔除Il1O0。生成後會校驗每個密碼是否包含至少 1 個小寫字母、1 個大寫字母、1 個數字(以及符號,取決於includeSymbols),不滿足則重生成(上限 20 次,超限退化爲確定性補類兜底)。 - Diceware 模式:內置 256 個常見英文短詞,隨機選取
words個並用separator連接。熵估算公式爲words × log2(256)bits。 - 安全機制:插件不持有持久狀態,所有生成的口令僅在內存中存在,不會寫入日誌或文件系統。
適用場景與注意¶
- 適用場景:適用於需要自動化生成強密碼、API 密鑰或 Diceware 短語的 DSH 插件開發場景。
- 注意:插件以 DSH 進程的權限運行,生成結果會出現在工具返回與界面摘要中,請務必在使用後妥善保管,勿與他人分享。
- 源碼檢查:在安裝非官方插件前,建議查閱源碼與許可證(MIT)。
結語¶
dsh-password 爲 DSH 生態提供了一個輕量級、安全且易用的密碼生成方案。通過集成該插件,開發者可以方便地在智能體工作流中處理安全憑證生成邏輯。