學習心得

第一周

這次作業開發我自己還是用 remix,但我正常常是 foundry 重做一次作業。
我在想如果先把 json 上傳,會不會被在鏈上被發現哪幾個 nft,打開盲盒會是甚麼?

第二周

作業的部分助記詞反而忘記了產生的流程,所以稍微複習一下如作業所寫的,我也將之前的私鑰轉公鑰再轉錢包的 code 重新理解。

##### Your code starts here #####

import sha3, sys

import secrets

from random import getrandbits
from binascii import hexlify, unhexlify

from coincurve import PublicKey

def keccak(data):
    k = sha3.keccak_256()
    k.update(data)
    return k.digest()


# step 1: generate a private key
privkey = secrets.token_hex(32)
#print(privkey)

# step 2: calculate a public key
# TODO

bytes_privkey = unhexlify(privkey)

public_key = PublicKey.from_valid_secret(bytes_privkey).format(compressed=False)[1:]
hexlify(public_key).decode()

# step 3: generate an address
# TODO
address = '0x' + hexlify(keccak(public_key)[-20:]).decode()
print(address)
tags: Solidity Study