# Повтор ключевого nonce/IV в недопустимом режиме

RuleID: portfolio.sec.15@1.0.0
Status: recovery-required
Catalog snapshot: 4558458d

Accepted subset is bounded. If required evidence is incomplete, the affected result is unknown.

## V-SEC-15 — Повтор ключевого nonce/IV в недопустимом режиме

Повтор nonce с одним ключом может разрушить гарантии схемы шифрования. Постоянная строка nonce особенно опасна при нескольких сообщениях.

Status: recovery-required

Scope notes: Source producer требует восстановления и квалификации. Если необходимые факты не получены, результат — unknown, а не «ошибки нет».

### Before (illustrative)

```swift
for message in messages {
    encrypt(message, key: key, nonce: fixedNonce)
}
```

### After (illustrative)

```swift
for message in messages {
    encrypt(message, key: key, nonce: nonceProvider.next())
}
```

Boundary: Mode-specific uniqueness; константа сама по себе недостаточна

---
Language: ru
Canonical: https://docs.swift-analyzer.com/catalog/portfolio.sec.15/
Source revision: 4558458d
