Почистить комментарии от упоминаний процесса
Удалены <remarks>, <summary> сжаты до короткой фразы, вырезаны ссылки на Task/Ruling/этап/python/прототип; //-комментарии со ссылками на процесс удалены; то же в .proto. Правила обновлены в docs/spec/Код-стайл-Дейл.md. Строк комментариев 27210 -> ~19100.
This commit is contained in:
@@ -5,13 +5,8 @@ using Deal.Modules.Settings.Application.Abstractions;
|
||||
namespace Deal.Infrastructure.Security;
|
||||
|
||||
/// <summary>
|
||||
/// AES-256-GCM-шифр секретов (Ruling 2): nonce 12 байт, tag 16 байт, ключ 32 байта.
|
||||
/// AES-256-GCM-шифр секретов
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Формат значения: <c>enc:</c> + Base64(nonce ‖ шифротекст ‖ tag). Экземпляр AesGcm создаётся
|
||||
/// на каждую операцию: операции шифрования секретов редкие, а отсутствие разделяемого
|
||||
/// криптографического состояния делает singleton-использование потокобезопасным.
|
||||
/// </remarks>
|
||||
public sealed class AesGcmSecretCipher : ISecretCipher
|
||||
{
|
||||
// Префикс зашифрованного значения (маркер формата в хранилище).
|
||||
|
||||
@@ -3,17 +3,8 @@ using System.Security.Cryptography;
|
||||
namespace Deal.Infrastructure.Security;
|
||||
|
||||
/// <summary>
|
||||
/// Источник ключа шифрования секретов (Ruling 2): env-ключ либо файл data/encryption.key.
|
||||
/// Источник ключа шифрования секретов
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Порядок разрешения — как в crypto._get_fernet (crypto.py L22–42):
|
||||
/// <list type="number">
|
||||
/// <item><description>env <c>DEAL_ENCRYPTION_KEY</c> — 32 байта в urlsafe-Base64; невалидный ключ → исключение при старте;</description></item>
|
||||
/// <item><description>иначе файл <c>data/encryption.key</c> относительно ContentRoot (путь переопределяется env
|
||||
/// <c>DEAL_ENCRYPTION_KEY_FILE</c>); при первом старте файл генерируется (32 случайных байта, urlsafe-Base64).</description></item>
|
||||
/// </list>
|
||||
/// Ключ кэшируется после первого разрешения. Для продакшена задавайте env-ключ, а не файл.
|
||||
/// </remarks>
|
||||
public sealed class EncryptionKeyProvider
|
||||
{
|
||||
// Имя env-переменной с ключом (32 байта, urlsafe-Base64).
|
||||
@@ -44,7 +35,7 @@ public sealed class EncryptionKeyProvider
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Возвращает ключ AES-256 (32 байта), разрешая его один раз и кэшируя результат.
|
||||
/// Возвращает ключ AES-256
|
||||
/// </summary>
|
||||
/// <returns>Ключ шифрования.</returns>
|
||||
/// <exception cref="InvalidOperationException">Env-ключ невалиден либо файл-ключ невозможно использовать.</exception>
|
||||
|
||||
Reference in New Issue
Block a user