Giter Site home page Giter Site logo

lorenzotrovato / encryptionlibrary Goto Github PK

View Code? Open in Web Editor NEW
0.0 0.0 1.0 33 KB

Encryption and compression library for .NET

License: GNU General Public License v2.0

Visual Basic 100.00%
encryption compression dotnet file-encryption file-compression aes zip

encryptionlibrary's Introduction

EncryptionLibrary

Easily compress and encrypt multiple files with several algorithms. All the operations are on background threads.

Encryption

Symmetric key algorithms

Encrypt and decrypt files and byte streams with a simple password. This library uses the System.Security.Cryptography implementations and is programmed to load the system memory according to the file size and current available memory resulting in high performances and speed.

Available algorithms
  • AES with SHA256 key (default)
  • AES with MD5 key
  • TripleDES with MD5 key
  • RC2 with MD5 key
Events
  • Progress(bytesCompleted As Long, bytesTotal As Long, bufferLength As Integer)
  • Finished(bytesWritten As Long, isEncryption As Boolean)
  • DecryptorError(message As String) (usually wrong password)
  • ExceptionThrown(ex As Exception) (general errors)

RSA asymmetric key algorithm

Encrypt and decrypt small texts, export and share public and private keys.

Available keys sizes:
  • 16384 bits
  • 8192 bits
  • 4096 bits
  • 2048 bits (default)
  • 1396 bits
  • 1024 bits
  • 952 bits
  • 512 bits
Events
  • KeysGenerated()
  • Finished(result As Byte(), isEncryption As Boolean)
  • DecryptorError(message As String) (usually wrong keys)
  • ExceptionThrown(ex As Exception) (general errors)

Utils

Calculate hashes from strings

Available hashing algorithms
  • MD5
  • SHA1
  • SHA265
  • SHA384
  • SHA512

Compression

Compress and decompress files with ZIP Deflate algorithm

  • Compressor: compress single file
  • Decompressor: decompress single file
  • ArchiveCompressor: compress multiple files into a ZIP archive
  • ArchiveDecompressor: decompress a ZIP archive into multiple files

More info

Objects are automatically disposed after use.
Be careful on accessing graphical controls in events methods. They're all on separate threads so you should use delgate subs.
All classes are well documented. Look up there for more detailed usage informations.

License

This library is released under GNU General Public License v2.0.
Please include the license and quote the author when using it on public software.

encryptionlibrary's People

Contributors

lorenzotrovato avatar

Forkers

jwd81

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.