> For the complete documentation index, see [llms.txt](https://artsnl.gitbook.io/artsnl-knowledge-space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://artsnl.gitbook.io/artsnl-knowledge-space/ethereum/public-address.md).

# Public Address

How to create an ethereum public address

The ethereum network only has 1 type of public address for your ethereum account (wallet).

{% hint style="info" %}
As with your bitcoin address in your ARTSNL wallet, an ethereum address utilizes the uncompressed version of a public key.
{% endhint %}

```
let result = ecc.pointFromScalar(privateKey, false)
let prepareETHpubKey = result.slice(1, 65)
let keccakPubKey = ethers.keccak256(prepareETHpubKey)
let removed_0x = keccakPubKey.slice(2)
let prepareETHpubAdd = Buffer.from(removed_0x, "hex")
let ETHpubAdd = prepareETHpubAdd.slice(-20)
let finalETHpubAdd = "0x" + uint8arraytools.toHex(ETHpubAdd)
```
