pencode(1)

✨ pencode β€” complex payload encoder ✨

okay bestie so pencode is literally this little command that stacks a bunch of transformations on top of each other and spits out a payload πŸ’… it's pencode(1), it's iconic, it's giving hacker-girl main character energy, and you're gonna love it.


🌸 NAME 🌸

pencode β€” complex payload encoder πŸŽ€


πŸ¦‹ USAGE πŸ¦‹

pencode FUNC1 FUNC2 FUNC3...

so the whole vibe is: you pass a chain of functions and they run one after another, like a little relay race of encoding πŸƒβ™€οΈβœ¨

pencode reads input from stdin by default, which is typically piped from another process. like, that's the normal way, that's the moment, that's the whole thing πŸ’–


πŸ’… OPTIONS πŸ’…

  • -input β€” reads input from a file, line by line. not from stdin, from an actual file, one line at a time, no cap πŸ“

πŸ‘‘ ENCODERS πŸ‘‘

  • b64encode β€” Base64 encoder ✨
  • hexencode β€” Hex string encoder 🧚
  • htmlescape β€” HTML escape 🌈
  • jsonescape β€” JSON escape πŸ’œ
  • unicodeencodeall β€” Unicode escape string encode (all characters) ⭐
  • urlencode β€” URL encode reserved characters 🌸
  • urlencodeall β€” URL encode all characters πŸ”₯
  • utf16 β€” UTF-16 encoder (Little Endian) πŸ’–
  • utf16be β€” UTF-16 encoder (Big Endian) πŸ¦‹
  • xmlescape β€” XML escape πŸŽ€

πŸ’€ DECODERS πŸ’€

(not me including the decoders, they're literally the reverse besties, we love a symmetry moment)

  • b64decode β€” Base64 decoder ✨
  • hexdecode β€” Hex string decoder 🧚
  • htmlunescape β€” HTML unescape 🌈
  • jsonunescape β€” JSON unescape πŸ’œ
  • unicodedecode β€” Unicode escape string decode ⭐
  • urldecode β€” URL decode 🌸
  • xmlunescape β€” XML unescape πŸ”₯

πŸ”₯ HASHES πŸ”₯

  • md5 β€” MD5 sum
  • sha1 β€” SHA1 checksum
  • sha224 β€” SHA224 checksum
  • sha256 β€” SHA256 checksum
  • sha384 β€” SHA384 checksum
  • sha512 β€” SHA512 checksum

🫢 OTHER 🫢

the miscellaneous girlies, the ones that don't fit in a box, and we respect that πŸ™ˆ

  • filename.tmpl β€” Replaces string #PAYLOAD# in content of a file that has .tmpl extension. like it's a template, it's a little fill-in-the-blank, it's adorable honestly πŸŽ€
  • lower β€” Convert string to lowercase 🌸
  • upper β€” Convert string to uppercase πŸ‘‘

ngl the #PAYLOAD# thing? chef's kiss. you write a template file ending in .tmpl, drop #PAYLOAD# wherever the payload should land, and it just slots in there. no cap πŸ’–

and that's the whole page bestie!! this was written by the pencode girlies in January 2024, version pencode-0.4 β€” go stack some functions, slay, and remember: pipe responsibly πŸ’…βœ¨πŸ¦‹