finish initial support for rc4 encryption with blank user password

This commit is contained in:
Eliot Jones
2019-05-06 15:41:29 +01:00
parent 27928cd3a3
commit bad57763a1
15 changed files with 166 additions and 125 deletions

View File

@@ -4,7 +4,6 @@
using System.Collections.Generic;
using System.Linq;
using Content;
using Encryption;
using Exceptions;
using Fields;
using Filters;
@@ -21,13 +20,11 @@
{
private readonly IPdfTokenScanner tokenScanner;
private readonly IFilterProvider filterProvider;
private readonly IEncryptionHandler encryptionHandler;
public AcroFormFactory(IPdfTokenScanner tokenScanner, IFilterProvider filterProvider, IEncryptionHandler encryptionHandler)
public AcroFormFactory(IPdfTokenScanner tokenScanner, IFilterProvider filterProvider)
{
this.tokenScanner = tokenScanner ?? throw new ArgumentNullException(nameof(tokenScanner));
this.filterProvider = filterProvider ?? throw new ArgumentNullException(nameof(filterProvider));
this.encryptionHandler = encryptionHandler ?? throw new ArgumentNullException(nameof(encryptionHandler));
}
/// <summary>
@@ -215,7 +212,7 @@
}
else if (DirectObjectFinder.TryGet(textValueToken, tokenScanner, out StreamToken valueStreamToken))
{
textValue = OtherEncodings.BytesAsLatin1String(valueStreamToken.Decode(filterProvider, encryptionHandler).ToArray());
textValue = OtherEncodings.BytesAsLatin1String(valueStreamToken.Decode(filterProvider).ToArray());
}
}