Go-dongle v1.1.2 was released, a better encoding&decoding and encryption&decryption package for golang

Dongle is a simple, semantic and developer-friendly golang crypto package with 100% unit test coverage,has been included by awesome-go

Feature

  • Comprehensive Encoding Algorithm Support: Supports multiple encoding formats including Base32/Base45/Base58/Base62/Base64/Base85/Base91/Base100/Hex/Morse
  • Robust Hashing Algorithm Support: Supports various hashing algorithms including MD2/MD4/MD5, SHA1/SHA2/SHA3, RIPEMD160, and HMAC message authentication
  • Complete Cryptographic Algorithm Support: Supports symmetric encryption algorithms such as RC4, AES, DES, 3DES, Blowfish, and asymmetric encryption algorithms like RSA
  • Reliable Digital Signature Support: Provides digital signature generation and verification with PKCS1/PKCS8 key format support, ensuring data integrity and identity authentication
  • Efficient Streaming Processing: Supports streaming encoding/decoding and encryption/decryption for large files, processing data incrementally without waiting for complete data, resulting in low memory footprint
  • Comprehensive Test Coverage: 100% unit test coverage with extensive testing for all encryption, decryption, hashing, HMAC, and encoding/decoding modules, covering all edge cases and exceptional scenarios
  • Secure and Reliable Design: Provides security features including input validation, error handling, memory safety, with support for key management and unified error messaging
  • Detailed Error Handling: Offers comprehensive error information and types with error chain tracing support, facilitating debugging and issue resolution
Change log
  • [refactor] Encoding/decoding support customizing file stream buffer size via coding.BufferSize global variable

  • [refactor] Encryption/decryption support customizing file stream buffer size via crypto.BufferSize global variable

  • [refactor] Hash/Hmac algorithms support customizing file stream buffer size via hash.BufferSize global variable

  • [feat] Add Blake2b hash algorithm support, including blake2b-256, blake2b-384 and blake2b-512

  • [feat] Add Blake2s hash algorithm support, including blake2s-128 and blake2s-256

  • [feat] Add ChaCha20 encryption algorithm support

  • [feat] Add ChaCha20Poly1305 encryption algorithm support

@hollowaykeanho dongle has been refactored since v1.1.0. I welcome any corrections and advice. Thank you.

Especially with encryption - are these just wrappers around the Go-Algorithms, or new implementations of the algorithms?

How are these packages audited to verify their resistance to different cryptographic attacks or possible implementation bugs?

The vast majority of it is a wrapper for the go algorithm, with a small portion, such as morse, sm2, which is not supported by the go standard library and is implemented independently

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.