Skip to content
/ BaseN Public

A .NET (C#) implementation of various binary-to-text data encodings.

License

Notifications You must be signed in to change notification settings

fallin/BaseN

Repository files navigation

BaseN

A .NET (C#) implementation of various binary-to-text data encodings.

This project currently implements encoders for:

  • Base64
  • Base64 URL and filename safe alphabet
  • Base62
  • Base32
  • Base32 extended hex alphabet
  • Base16
  • ModHex (a Yubico encoding)

Notes:

This project implements the encodings described in RFC4648.

The Base62 encoding is implemented as described in Section F of A Secure, Lossless, and Compressed Base62 Encoding, by Kejing He, Xiancheng Xu and Qiang Yue. That is, it provides special handling of the missing last two (6 bit) character combinations as described in section F. Note, the RLE, BWT, MTF, ZLE, and range encoding steps of the Base62 workflow are not implemented.

TODO:

  • Support stream-based encoder (for files and larger inputs)
  • Implement decoders
  • Consider other encodings, like Base85, Z85?
  • Implement Crockford's Base32 alphabet & checksum

About

A .NET (C#) implementation of various binary-to-text data encodings.

Resources

License

Stars

Watchers

Forks

Packages

No packages published