Public Account Key
AccountKeyPublic is used for accounts having one public key. If an account has an AccountKeyPublic object, the transaction validation process is done like below:
Import the @kaiachain/web3js-ext packages to add kaia features on web3
Define sender address, sender private key and new private key to be changed
Set up the provider with the specified kaia Baobab testnet URL. A provider in web3js is a read-only abstraction to access the blockchain data.
Also, you can change the provider URL from baobab to allthatnode
Define a web3 instance using the provider
Create a sender's wallet with the private key and provider
Compute the public key from the new private key
Declare a transaction which has type AccountKeyType.Public and key field with the new computed public key
Sign the transaction with sender's wallet
Send the signed tx to the blockchain. It will return the receipt of the transaction