Still looking for base64url decoding tools, both on-line and for MacOS homebrew
Posted by jpluimers on 2021/02/11
Remember the screenshot on the right from yesterdays post Kristian Köhntopp explaining theories?
In the end, I:
- saved that tweet
- in archive.is
- then took the screenshot image from there (see below)
- cut out the grey parts, then posted the middle part
I much more would have used the screenshot functionality of Google as described here by Terence Eden:
[WayBack] twitter – How to convert a tweet to image – Stack Overflow
Google has a secret screenshot API
For example, you can use it to get a screenshot of a tweet like this
At the bottom of that JSON response, you’ll see
"screenshot": { "data": "_9j_4AAQSkZJRgAB.....=", "height": 569, "mime_type": "image/jpeg", "width": 320 }
You will need to Base64 decode it using the URL and Filename safe alphabet.
That will give you a JPG screenshot of the Tweet.
I was hoping for an on-line way, so I followed [WayBack] Google’s Secret Screenshot API – Terence Eden’s Blog.
The blog post pointed me to a Python based script ([WayBack] Python-Twitter-Hacks/websiteScreenshot.py at master · edent/Python-Twitter-Hacks · GitHub) but had no online way.
So I tried out a few on-line things myself that failed:
- [WayBack] Base64 to hex: Encode and decode bytes online — Cryptii can decode base64url, but not save it as a binary file
- [WayBack] Base64 to JPG | Image | Base64 Decode | Base64 Converter | Base64 indicates “Cannot decode Base64 value. Try to use the Base64 decoder, which is able to decode various standards.”
- [WayBack] Base64URL Decode | Base64URL | Base64 Standards | Base64 can decode bas64url, but saving does nothing at all
- [WayBack] base64 image decoder indicates “Please provide valid base64 encoded image sting!”
- [WayBack] Convert Base64 to JPG – Online Image Tools indicates “
Can't convert Unable to decode Base64.
“ - [WayBack] Base64 Image Decoder – Online Tool indicates “
Invalid mime type: application/octet-stream
“ - [WayBack] (SimplyCalc) base64 / base64url decoder does not decode anything
Then I found out the script was just a proof of concept with hard coded URL and filename.
So I forked the repository, and fixed the script basing it on Python 3.
More on that next week.
Related:
- [WayBack] RFC 4648 – The Base16, Base32, and Base64 Data Encodings: Base 64 Encoding with URL and Filename Safe Alphabet:
The Base 64 encoding with an URL and filename safe alphabet has been used in [12]. ...
An alternative alphabet has been suggested that would use "~" as the 63rd character. Since the "~" character has special meaning in some file system environments, the encoding described in this section is recommended instead. ...
This encoding may be referred to as "base64url". This encoding should not be regarded as the same as the "base64" encoding and should not be referred to as only "base64". ...
This encoding is technically identical to the previous one, except for the 62:nd and 63:rd alphabet character, as indicated in Table 2. ...
Table 2: The "URL and Filename safe" Base 64 Alphabet Value Encoding Value Encoding Value Encoding Value Encoding 0 A 17 R 34 i 51 z 1 B 18 S 35 j 52 0 2 C 19 T 36 k 53 1 3 D 20 U 37 l 54 2 4 E 21 V 38 m 55 3 5 F 22 W 39 n 56 4 6 G 23 X 40 o 57 5 7 H 24 Y 41 p 58 6 8 I 25 Z 42 q 59 7 9 J 26 a 43 r 60 8 10 K 27 b 44 s 61 9 11 L 28 c 45 t 62 - (minus) 12 M 29 d 46 u 63 _ 13 N 30 e 47 v (underline) 14 O 31 f 48 w 15 P 32 g 49 x 16 Q 33 h 50 y (pad) =
–jeroen
Leave a Reply