Comments (9)
So far I've only ported the AES decoder so it's currently not possible to output encrypted archives, but I'll take a look. If System.Security.Cryptography outputs data compatible to the 7z format I may be able to implement it.
from managed-lzma.
I have to say your project is the best 7Z project I have ever seen.
Very easy to use as well!
from managed-lzma.
I've done some initial testing and it looks like it is possible to use System.Security.Cryptography for implementing an AES encoder. However before doing so I need to fix some other issues, in particular issue #5 is important to verify the password when you later unpack an encrypted 7z archive. If the (optional) checksum is not present 7z can still decrypt the file but cannot tell if your password was correct. If it isn't correct you get random garbage in the decrypted file, but 7z doesn't realize that when it doesn't have a checksum to compare with.
from managed-lzma.
Very nice work!
from managed-lzma.
Is the AES encoder available to use?
from managed-lzma.
Sorry, I only have limited time and have been using that to work on issue #4 - right now I can't get the sample to work as it was intended so there is not much point in working at new encoder variants until that bug is fixed.
I do have a prototype version which can be used in the ArchiveWriter.ConnectEncoder
call but currently this means you have to chose between encryption and compression and can't use them both at the same time, which is probably not really useful, so I didn't bother to check it in.
from managed-lzma.
After fixing the deadlock issue I'll work on AES over the next week.
from managed-lzma.
Initial implementation for AES encryption is checked in, it should match what 7z 9.22 does.
The sandbox-7z project is updated as an example, but basically you create an EncryptionProvider with the desired password and assign it to the ArchiveWriter and the encoders will pick it up.
from managed-lzma.
Your are my hero! :)
from managed-lzma.
Related Issues (20)
- ArchiveFileModel does not expose file metadata HOT 3
- Implement DELTA and BZIP2 decoders
- Could not install package 'ManagedLzma 0.2.0-alpha-4' HOT 3
- No able unzip when the source file over 20mb folder when Zip file with LZMA2 and AesEncoder HOT 2
- Support linux file attributes in 7z archives HOT 7
- Extract posix file attributes from 7z archives
- readme.md documentation
- Get feedback on amount of unflushed data in buffers HOT 1
- Implement PPMD decoder without using 'unsafe' code
- Consider using `ref return` feature
- Create .NET Standard 2.0 package HOT 1
- Decoding Exception HOT 4
- Decoder performance
- How to compress a Byte Array Or MemoryStream? The library needs documentation. HOT 1
- OverflowException in ctor of master/7zip/Decoder/BufferedStream.cs HOT 1
- How to add a folder and add files under the folder? HOT 3
- Multithreaded operation possilble? HOT 6
- Unable to decompress zero lenght file
- Data decompresses with C++ but exceptions when decompressed with managed lzma HOT 6
- sandbox-7z example code fails when archive contains empty file HOT 7
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 managed-lzma.