답변
C# Cryptography 패키지, C# Compression 및 NuGet NequeoIOCompress
패키지.
암호화 패키지에는 AES, RSA, 3DES, Blowfish, Twofish, CMS, PGP, EllipticCurve, Rijndael 및 일부 다른 클래스의 암호화 클래스가 포함되어 있습니다. 또한 ProtectedData
클래스에 내장 된 .Net을 사용하는 데이터 보호 클래스도 포함됩니다. 원하는대로이 패키지를 사용할 수 있습니다.
압축 패키지에는 Bzip2, Zip, Huffman, Zlib, GZip 및 7zip 압축에 대한 압축 클래스가 포함되어 있습니다. 원하는대로이 패키지를 사용할 수 있습니다.
암호화 패키지에서 AES를 사용하면 빠른 샘플을 얻을 수 있습니다.
// Create a new AES cryto.
using (AdvancedAES aes = new AdvancedAES())
{
bool ret = false;
ret = aes.EncryptFile(pathToDecryptedFile, pathToEncryptedFile, Key, IV);
ret = aes.DecryptFile(pathToDecryptedFile, pathToEncryptedFile, Key, IV);
}
위의 코드는도 내장되어 async
기능, 당신은 또한 암호화하고 Stream
, String
및 byte[]
내에서 해독 할 수있는 암호화하고 파일을 해독하는 얻는만큼 간단합니다. 또 다른 기능은 암호화 또는 암호 해독 전에 BlockSize
, CipherMode
, KeySize
및 PaddingMode
을 변경하는 기능 (AES)입니다.
Blowfish, Twofish 및 Rijndael과 같은 암호화 클래스는 단지 byte[]
데이터를 전달하고 암호화되거나 해독 된 데이터가 byte[]
인 간단한 암호화 및 암호 해독 방법을 제공합니다.
PGP와 같은 암호화 클래스에는 공개 키와 비밀 키를 사용하여 입력 데이터를 서명하고 확인하는 등의 더 많은 기능이 있습니다.
RSA와 같은 암호화 클래스는 파일 기반 x509 인증서를 사용하거나 인증서가 저장소에있는 경우 파일 및 스트림을 암호화하고 해독 할 수 있습니다.
압축 패키지에서 GZip을 사용하면 빠른 샘플을 얻을 수 있습니다.
Nequeo.IO.Compression.GZipStream.Decompress(zipStream, unZipStream);
Nequeo.IO.Compression.GZipStream.Compress(unZipStream, zipStream);
GZip, ZLib 데이터를 압축하고 압축 해제하는 것이 간단합니다.
압축 패키지에서 7zip을 사용하면 빠른 샘플을 얻을 수 있습니다.
Nequeo.IO.Compression.SevenZip.Decompress(zipFilename, unZipDirectorPath);
Nequeo.IO.Compression.SevenZip.Compress(zipFilename, zipDirectorPath);
는 BZip2로 압축하고, 압축하여 7zip과 함께 데이터의 압축을 동일한 압축 패키지 (NuGet NequeoIOCompression
)를 사용한다.
위에서 언급 한 것처럼이 세 가지 NuGet 패키지는 무료로 사용하고 배포 할 수 있습니다. 7Zip 압축은 x64, x86 처리의 경우 7zip.dll을 사용합니다. 압축 패키지를 설치하면 7zip.dll 바이너리가 포함됩니다.
6 단어 또는 광휘와 달리 트롤을 멀리하십시오. –
링크를 하나의 문장 대답으로 복사하여 붙여 넣는 것은 도움이되지 않습니다. –
트롤링, 질문에 대답하는 대신 도움이됩니까? 트롤링 대신 질문에 대답하면서 시간을 보내보십시오. –
- 1. PHP AES-256 암호화
- 2. PDF 파일 AES 256 비트 암호화
- 3. 안드로이드에서 AES 256 암호화 구현
- 4. iOS CoreData 및 AES 256 암호화
- 5. AES 256 Sencha Touch의 암호화
- 6. AES 128 비트 및 AES 256 비트 암호화 해독
- 7. Python AES-128 암호화 파일 압축 해제
- 8. C# PHP AES 256 CBC 암호화
- 9. .NET Framework 2.0의 AES 256 암호화
- 10. iOS에서 256 블록 크기의 AES 256 비트 암호화
- 11. AES CTR 256 OpenSSL에서의 암호화 모드
- 12. 파일 압축 및 암호화.
- 13. 암호화 C# 암호 해독 AES CBC 256
- 14. AES 256 암호화 - Java 용 Qt
- 15. AES -256 암호 해독
- 16. AES 256 암호화 mysql vs php 메서드
- 17. AES-NI 256 비트 블록 암호화
- 18. (LibreSSL) libcrypto를 사용하는 AES-256-GCM 암호화
- 19. AES 256 Java 5의 암호화 지원
- 20. BouncyCastle Lightweight API로 AES-256 암호화
- 21. PHP AES 256 암호화 이상한 문자
- 22. Laravel의 AES 256 암호화 프로그램을 C#
- 23. Java AES 256 키로 암호화/암호 해독
- 24. Android AES 256 비트 데이터 암호화
- 25. CTR 모드에서 AES 256
- 26. AES 256 암호화 파일에서 파일 형식을 얻는 방법
- 27. OpenSSL을 사용하여 비대칭 적으로 암호화 된 파일 (AES-256)
- 28. AES-256 암호화 및 Apple iTunes 내보내기 제한
- 29. AES-256-CBC Mcrypt-PHP 해독 및 Crypto-JS 암호화
- 30. AES Base64 256 비트 암호화 및 목적 C의 키가 포함 된 암호 해독
먼저 압축하여 압축 한 다음 AES로 암호화하십시오. – zaph
적절하게 암호화 된 데이터는 무작위 데이터와 구별 할 수 없으며 압축은 크기를 줄이기 위해 패턴 식별 및 대체에 의존하기 때문에 암호화 후 압축은 최소한의 이점을 가져 오지 않습니다. 압축하면 암호화와 결합 할 때 보안 문제가 발생할 수 있습니다.위협 모델에 미치는 영향이 압축의 이점을 능가하는지주의 깊게 평가해야합니다. 자세한 내용은 [CRIME 공격에 대한이 설명] (http://security.stackexchange.com/a/19914/16485)을 참조하십시오. – Andy
압축은 아니지만 SSL 프로토콜이 설계되고 쿠키를 처리하는 방식입니다. 그냥 압축하고 암호화해도 좋습니다. – zaph