[Dev] base58デコードしてみた python nodejs bun go

in #japaneseyesterday (edited)

こんにちは、@yasuです。

pythonの場合

image.png

python3
>>> import base58
>>> decoded = base58.b58decode("C3TZR1g81UNaPs7vzNXHueW5ZM76DSHWEY7onmfLxcK2iPEqc2QGEdX6WA9MEx87Ft8o6WwQdGrcaBafa1MueBBbR1N3wP7Ybzho1XRY3HZGB8G8TAJA4ke")
>>> print(decoded)

nodeの場合

image.png

node
> const { default: bs58 } = require('bs58');
> const encodedStr = "C3TZR1g81UNaPs7vzNXHueW5ZM76DSHWEY7onmfLxcK2iPEqc2QGEdX6WA9MEx87Ft8o6WwQdGrcaBafa1MueBBbR1N3wP7Ybzho1XRY3HZGB8G8TAJA4ke";
> const decoded = bs58.decode(encodedStr);
> console.log( Buffer.from(decoded).toString('utf8'));

bunの場合

curl -fsSL https://bun.sh/install | bash
image.png
image.png

bun repl
❯ const { default: bs58 } = require('bs58');
❯ const encodedStr = "C3TZR1g81UNaPs7vzNXHueW5ZM76DSHWEY7onmfLxcK2iPEqc2QGEdX6WA9MEx87Ft8o6WwQdGrcaBafa1MueBBbR1N3wP7Ybzho1XRY3HZGB8G8TAJA4ke";
❯ const decoded = bs58.decode(encodedStr);
❯ console.log( Buffer.from(decoded).toString('utf8'));

GO言語の場合

https://go.dev/play/
image.png

package main
import (
    "fmt"
    "github.com/mr-tron/base58"
)
func main() {
    // Base58エンコードされた文字列
    encoded := "C3TZR1g81UNaPs7vzNXHueW5ZM76DSHWEY7onmfLxcK2iPEqc2QGEdX6WA9MEx87Ft8o6WwQdGrcaBafa1MueBBbR1N3wP7Ybzho1XRY3HZGB8G8TAJA4ke"
    // デコードを実行
    decoded, err := base58.Decode(encoded)
    if err != nil {
        fmt.Println("デコードエラー:", err)
        return
    }
    // UTF-8バイトスライスを文字列に変換
    str := string(decoded)
    // 結果を表示
    fmt.Println(str)
}

おまけ

エンコード

import base58
encoded = base58.b58encode("<URL>")
print(encoded)
Sort:  
Loading...