Comments (1)
Hi, DecryptStream
is just a pointer to Decrypt
.
PgpCore/PgpCore/PGP.DecryptSync.cs
Line 160 in 4855a42
Running some test code on a similar size file I'm seeing decryption times of around 2 seconds for each method.
using PgpCore.Tests;
using System.Diagnostics;
namespace PgpCore.Debug;
internal class Program
{
static void Main(string[] args)
{
TestFactory testFactory = new TestFactory();
// Generate a 30MB file
testFactory.Arrange(FileType.GeneratedSmall);
PGP pgp = new PGP();
pgp.GenerateKey(
testFactory.PublicKeyFileInfo,
testFactory.PrivateKeyFileInfo,
testFactory.UserName,
testFactory.Password
);
EncryptionKeys encryptionKeys = new EncryptionKeys(testFactory.PublicKey, testFactory.PrivateKey, testFactory.Password);
PGP pgpEncrypt = new PGP(encryptionKeys);
using (Stream outputFileStream = testFactory.EncryptedContentFileInfo.Create())
pgpEncrypt.Encrypt(testFactory.ContentStream, outputFileStream);
// Record time to decrypt
Stopwatch stopwatch = new Stopwatch();
stopwatch.Start();
using (Stream outputFileStream = testFactory.DecryptedContentFileInfo.Create())
pgpEncrypt.Decrypt(testFactory.EncryptedContentStream, outputFileStream);
stopwatch.Stop();
Console.WriteLine($"Decryption using Decrypt took {stopwatch.ElapsedMilliseconds}ms");
// 3128ms
// Reset
testFactory.DecryptedContentFileInfo.Delete();
stopwatch.Reset();
stopwatch.Start();
using (Stream outputFileStream = testFactory.DecryptedContentFileInfo.Create())
pgpEncrypt.DecryptStream(testFactory.EncryptedContentStream, outputFileStream);
stopwatch.Stop();
Console.WriteLine($"Decryption using DecryptStream took {stopwatch.ElapsedMilliseconds}ms");
// 2406ms
}
}
If you can provide a fully working example demonstrating the issue I'll take another look.
from pgpcore.
Related Issues (20)
- Refactor PGP class HOT 2
- Error handling
- VerifyAndRead for non-clear signatures HOT 1
- Recommend AES over TripleDES HOT 1
- Size differences between files encrypted with PGPCore and files encrypted with PGP command line HOT 4
- Nuget publishing? HOT 1
- SignStreamAsync without armor results in closed outputstream HOT 1
- Does this library support Ascii Armor? If so, please provide a sample code HOT 1
- Getting error with Verify HOT 1
- SonarQube scanner java error HOT 1
- PGPCore Error: Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRing found where PgpPublicKeyRing expected HOT 1
- Verified file has extra characters. HOT 10
- error in BouncyCastle.Utilities.Strings.ToUtf8ByteArray HOT 5
- hash algorithm constant mismatch with bouncy castle when sign
- Generate Key example command doesn't work as provided
- Verify methods should also verify clear signed files
- Add a dethatched sign method
- Add multiple Private Keys to Encryption keys HOT 11
- Provide FileName associated with the encrypted data stream HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pgpcore.