10. Security Considerations
agent 保存并提供对 long-lived login authentication credentials 的受控访问. protocol 本身不包含 authentication 或 transport security; 能与 agent 通信通常就足以调用 private key operations.
Agents 必须只暴露给 owner 和 authorized delegates. Unix-like systems 可使用 filesystem permissions 和 peer identity checks, 例如 SO_PEERCRED; Windows 可在 named pipes 上使用 security descriptors.
Agents 应防止 memory disclosure, 在适当情况下禁用 debugging interfaces, 并防止 memory dumps. 它们 SHOULD 使用 resistant to side-channel attacks 的 cryptographic implementations, 并 MAY 隐藏 private key operations 的实际处理时间.
Agent forwarding 创建 transitive trust relationship. SSH implementations SHOULD NOT 默认 forward agents, users SHOULD NOT 将 agents forward 到 untrusted hosts. Agents SHOULD 为 forwarded connections 提供 key visibility and use controls.
Token 或 smart-card key support 需要避免加载 hostile provider libraries. Agent locking SHOULD 包含针对 brute-force passphrase guessing 的 countermeasures, 例如 delays, lockout periods, 或在失败次数过多后删除 keys.