baking-bad / pytezos

🐍 Python SDK for Tezos | Michelson VM in Python
https://pytezos.org
MIT License
111 stars 36 forks source link

Discrepancy in Tezos Wallet Address Generation #354

Open hakanoktay opened 8 months ago

hakanoktay commented 8 months ago

I've encountered a discrepancy in the Tezos wallet address generation process using my Python script compared to importing the seed words into Kukai or Temple wallets.

When I generate a wallet using the provided code, the resulting public account address is tz1cnQZXoznhduu4MVWfJF6GSyP6mMHMbbWa. However, when I import the seed words into Kukai or Temple wallets, the generated public account address is tz1V5G3Zu6k2pev8kkMqVwP5DaPgaD1SjbrX.

#   Returned with my code:
#   tz1: tz1cnQZXoznhduu4MVWfJF6GSyP6mMHMbbWa
#   tz2: tz2AnZmsufxfSLv1a8HoDC88NnFZ5h7Vtfz8
#   tz3: tz3beHedJ2um8dp2BKRP4KcPSmos4wsNnith
#  Kukai wallet:.. tz1V5G3Zu6k2pev8kkMqVwP5DaPgaD1SjbrX
#  Temple wallet:.. tz1V5G3Zu6k2pev8kkMqVwP5DaPgaD1SjbrX
# Tezos
from pytezos import pytezos, Key

def tezos_wallet_generator():
    sk_tz1 = Key.from_mnemonic(
        mnemonic=["rather", "aware", "school", "often", "area", "quarter", "story", "note",
                  "goddess", "dream", "winner", "result", "scheme", "stairs", "clown"],
        email='vsvkfovl.lzzsalmj@tezos.example.org',
        passphrase='8Rx7GLurGY',
        curve=b'ed'  # ed25519 (default)
    )
    print("tz1:", sk_tz1.public_key_hash())

    # tz2 account type
    sk_tz2 = Key.from_mnemonic(
        mnemonic=["rather", "aware", "school", "often", "area", "quarter", "story", "note",
                  "goddess", "dream", "winner", "result", "scheme", "stairs", "clown"],
        email='vsvkfovl.lzzsalmj@tezos.example.org',
        passphrase='8Rx7GLurGY',
        curve=b'sp'  # secp256k1
    )
    print("tz2:", sk_tz2.public_key_hash())

    # tz3 account type
    sk_tz3 = Key.from_mnemonic(
        mnemonic=["rather", "aware", "school", "often", "area", "quarter", "story", "note",
                  "goddess", "dream", "winner", "result", "scheme", "stairs", "clown"],
        email='vsvkfovl.lzzsalmj@tezos.example.org',
        passphrase='8Rx7GLurGY',
        curve=b'p2'  # p256 (or secp256r1)
    )
    print("tz3:", sk_tz3.public_key_hash())