hex-text: ByteString-Text hexidecimal conversions

[ apache, library, mit, text ] [ Propose Tags ]

Encode a ByteString as a hexidecimal Text value, or decode hexidecimal Text as a ByteString.


[Skip to Readme]
Versions [faq] 0.1.0.0, 0.1.0.2
Change log changelog.txt
Dependencies base (>=4.9 && <4.15), base16-bytestring (==1.0.*), bytestring (>=0.10 && <0.12), text (==1.2.*) [details]
License MIT
Copyright 2018 Typeclass Consulting, LLC
Author Chris Martin
Maintainer Chris Martin, Julie Moronuki
Category Text
Home page https://github.com/typeclasses/hex-text
Bug tracker https://github.com/typeclasses/hex-text/issues
Source repo head: git clone https://github.com/typeclasses/hex-text
Uploaded by chris_martin at 2020-10-28T18:34:11Z
Distributions NixOS:0.1.0.0
Downloads 902 total (80 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs available [build log]
Last success reported on 2020-10-28 [all 1 reports]

Modules

[Index] [Quick Jump]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees


Readme for hex-text-0.1.0.2

[back to package description]

hex-text

hex-text is a small library for converting between ByteStrings and their representations as hexidecimal numbers encoded as Text.

Motivation

When using Stripe for payments, Stripe sends a signature as a hexidecimal Text value. The cryptonite package can be used to verify the signature, but it requires ByteString values, not Text.

Example usage

A ByteString is a list of bytes. A byte is a number between 0 and 255, represented by the Word8 type. In a fixed-width hexidecimal representation, the lowest byte 0 is represented by the hex string 00, and the greatest byte 255 is represented by the hex string ff. So, for example, the ByteString consisting of bytes [ 1, 2, 3, 253, 254, 255 ] is represented as 010203fdfeff.

λ> import Text.Hex (encodeHex)
λ> import Data.ByteString (pack)

λ> (encodeHex . pack) [1, 2, 3, 253, 254, 255]
"010203fdfeff"