Avkoda och skriva ut JWT-token
Kast en snabb titt inuti JWT-token
Här är några effektiva metoder för att dekryptera och skriva ut JWT-token direkt från kommandoraden:

1. Använda jq
Verktyget jq kan användas för att dekryptera och formatera JWT-token på ett snyggt sätt:
-
Kommandot:
echo "" | jq -R 'split(".") | .[0:2] | map(@base64d) | map(fromjson)'Detta delar upp JWT i dess komponenter (rubrik och nyttolast), dekrypterar dem från Base64 och formaterar dem som JSON.
-
Exempel:
echo "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c" \ | jq -R 'split(".") | .[0:2] | map(@base64d) | map(fromjson)'
2. Bash-skript
Ett anpassat Bash-skript kan dekryptera JWT-token med hjälp av base64 och jq:
-
Skript:
#!/usr/bin/env bash function decode_jwt() { IFS='.' read -ra PARTS " -
Spara detta skript i en fil (t.ex.
decode_jwt.sh), gör det exekverbart (chmod +x decode_jwt.sh) och kör det med din token som argument.
3. Zsh-funktion
Lägg till följande funktion i din .zshrc-fil för snabb åtkomst:
- Funktion:
function jwt() { for part in 1 2; do b64="$(cut -f$part -d. "
Detta dekrypterar rubriken och nyttolasten med OpenSSL och formaterar dem med Pythons json.tool.
4. Använda jwt-cli
Installera verktyget jwt-cli för att enkelt dekryptera JWT:
-
Installation:
brew tap sgaunet/homebrew-tools brew install sgaunet/tools/jwt-cli -
Kommandot:
jwt-cli decode
Detta verktyg stöder också kodning och signering av JWT[2].
5. Minimal ett-radare med OpenSSL
För en snabb lösning utan extra verktyg:
- Kommandot:
echo "" | awk -F'.' '{print $1, $2}' | tr ' ' '\n' | base64 -d | python -mjson.tool
Detta använder awk för att dela upp token, base64 för dekryptering och Python för att formatera utdata.