Password zip is inconsisent
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 25/100
Piste de recherche
Commencez par la méthode CreateBackup fournie, en particulier avec ZipOutputStream.Password et AESKeySize, et reproduisez avec 7zip le comportement des mots de passe de 98 caractères par rapport à ceux de 99 caractères. Comparez le comportement de l’archive générée et déterminez si les mots de passe longs devraient fonctionner ; le travail est considéré comme terminé lorsque le comportement est reproductible et que le résultat est corrigé ou clairement documenté.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Describe the bug
Only passwords with length up to 98 seem to work, if i use 99 and i even copy/paste the password directly unzipping the archive using 7zip does not work. how come?
Seems a bit random and not sure if it would be safe for db backups in this case.
private static async Task CreateBackup(string zipFile, string pgDumpArgs)
{
ProcessStartInfo processInfo = new()
{
FileName = @"C:\Program Files\PostgreSQL\16\bin\pg_dump.exe",
Arguments = pgDumpArgs,
RedirectStandardOutput = true,
RedirectStandardError = true, // Capture error output
UseShellExecute = false,
CreateNoWindow = true
};
using Process process = Process.Start(processInfo);
if (process == null)
{
Console.WriteLine("Failed to start pg_dump process.");
return;
}
using (FileStream fsOut = File.Create(zipFile))
using (ZipOutputStream zipStream = new(fsOut))
{
zipStream.SetLevel(3); // 0-9, 9 being the highest level of compression
zipStream.Password = "z4KpjH+}H9H*g3K3Jb-9}M^jnMN^-!Zs+8UZ3sfxWg5T~@ZHJ:Eoz!AFNMwdf!g_2QpX#)}4WKwHLL%C?s1BB*wx%:cia0j=m7.W";
zipStream.UseZip64 = UseZip64.On; // Set to AsNeeded if you need Zip64
ZipEntry newEntry = new ZipEntry($"backup_{DateTime.Now:yyyyMMdd_HHmmss}.backup")
{
DateTime = DateTime.Now,
AESKeySize = 256 // AES-256 encryption
};
zipStream.PutNextEntry(newEntry);
var outputTask = process.StandardOutput.BaseStream.CopyToAsync(zipStream);
var errorTask = process.StandardError.ReadToEndAsync();
await Task.WhenAll(outputTask, errorTask);
zipStream.CloseEntry();
string errorOutput = await errorTask;
if (!string.IsNullOrEmpty(errorOutput))
{
Console.WriteLine($"pg_dump reported the following errors:\n{errorOutput}");
}
}
await process.WaitForExitAsync();
if (process.ExitCode != 0)
{
Console.WriteLine($"pg_dump failed with exit code {process.ExitCode}");
}
else
{
Console.WriteLine($"{zipFile} Database backup successfully completed.");
}
}
Reproduction Code
No response
Steps to reproduce
zip zip
Expected behavior
work
Operating System
Windows
Framework Version
Other
Tags
No response
Additional context
No response
- Langage dominant
- C#
- Étoiles
- 3.9k
- Forks
- 1k
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Préparer son environnement
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de icsharpcode/SharpZipLib
-
*no response* bug
Difficulté 1/5 Moins d'une heure Accessibilité débutants 78/100
icsharpcode/SharpZipLib#905 · 1 commentaire ·
-
bug bzip2
Difficulté 4/5 3-5 jours Accessibilité débutants 45/100
icsharpcode/SharpZipLib#904 ·
-
SetLevel in ZipFileOuverteenhancement zip
Difficulté 2/5 1-2 jours Accessibilité débutants 55/100
icsharpcode/SharpZipLib#903 ·
-
*no response* bug
Difficulté 4/5 3-5 jours Accessibilité débutants 32/100
icsharpcode/SharpZipLib#901 · 1 commentaire ·
-
*no response* bug
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
icsharpcode/SharpZipLib#894 · 1 commentaire ·
Toutes les issues de icsharpcode/SharpZipLib
Issues similaires
-
area-System.Numerics.Tensors untriaged
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
dotnet/runtime#134691 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
unoplatform/uno.templates#2277 ·
Les mainteneurs répondent en général sous 5 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
microsoft/fluentui-blazor#5344 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
difficulty/starter 🚀 good first issue kind/bug platform/all project/core-tools 🛠️ triage/untriaged
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
unoplatform/uno#24757 ·
Les mainteneurs répondent en général sous 1 jour
-
ci-failure-cause test-failure
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Les mainteneurs répondent en général sous 1 jour