# FAQ

* [Klaytn은 무엇인가요?](#what-is-klaytn)
* [Klaytn 2.0은 무엇인가요?](#what-is-klaytn-2.0)
* [How does Klaytn support Ethereum equivalence?](#how-ethereum-equivalence)
* [Klaytn의 가스 정책은 무엇인가요?](#klaytn-gas-policy)
* [What is special about Klaytn’s account structure?](#klaytn-account-structure)
* [Where can I start dApp development with Klaytn?](#dapp-development)
* [Klaytn은 오픈 소스인가요?](#is-klaytn-open-source)
* [How can I initially fund my account?](#fund-my-acconut)
* [Any Klaytn’s Public Node Providers for testing and development?](#node-providers)
* [Are there faucets to get test KLAY?](#are-there-faucets)
* [How do I check for Public RPC endpoint status?](#rpc-endpoint-status)
* [어떤 지갑이 Klaytn을 지원하나요?](#which-wallets)
* [Cypress, Baobab이 무엇인가요?](#what-is-cypress-what-is-baobab)
* [Are there any Klaytn SDKs? In what languages?](#klaytn-sdks)
* [Must I install and run an EN (Endpoint Node) to use Klaytn?](#must-i-install-and-run-en)
* [I am running an EN, and node data sync is too slow.](#node-data-sync-is-too-slow)
* [Can I use ERC-20 and ERC-721 contracts on Klaytn?](#can-i-use-erc-20-and-erc-721)
* [Can I use Truffle for the smart contract development on Klaytn?](#can-i-use-truffle)
* [Where can I get a browser extension wallet like Metamask?](#where-can-i-get-a-browser-extension-wallet)
* [Why is my fee-payer account address not derived from the key provided?](#account-address-is-not-derived-from-the-key)
* [Where can I find complete working samples of fee-delegation?](#fee-delegation-samples)

## What is Klaytn? <a href="#what-is-klaytn" id="what-is-klaytn"></a>

Klaytn is the Layer 1 blockchain platform with low latency, high TPS and immediate finality. It is the optimal blockchain for building games and realizing the [metaverse](https://docs.klaytn.foundation/klaytn2/metaverse-package).

## What is Klaytn 2.0? <a href="#what-is-klaytn-2.0" id="what-is-klaytn-2.0"></a>

Klaytn 2.0 marks Klaytn’s transition to focus on the metaverse, supporting Ethereum Equivalence and the comprehensive Metaverse Package to facilitate blockchain building experience. To better understand Klaytn 2.0, please refer to our [Light Paper](https://klaytn.foundation/wp-content/uploads/Lightpaper.pdf).

## How does Klaytn support Ethereum equivalence? <a href="#how-ethereum-equivalence" id="how-ethereum-equivalence"></a>

Klaytn is EVM compatible, and supports all Ethereum London EVM features. Our `eth` namespace has been amended to be compatible with Ethereum’s. Ethereum toolings can be used seamlessly, and migration of Ethereum dApps have also become possible with minimal effort. Transaction types and fields are also equivalent to Ethereum’s.

## What is Klaytn’s gas policy? <a href="#klaytn-gas-policy" id="klaytn-gas-policy"></a>

Klaytn transitioned from a fixed gas fee policy to adopt a dynamic gas fee mechanism in order to combat arbitrage bots. Please refer to this [article](https://medium.com/klaytn/dynamic-gas-fee-pricing-mechanism-1dac83d2689) for more information.

## What is special about Klaytn’s account structure? <a href="#klaytn-account-structure" id="klaytn-account-structure"></a>

To provide maximum convenience for dApp developers, Klaytn has devised a way to [decouple private keys from addresses](https://klaytn-tech.medium.com/klaytn-usability-improvement-series-1-separating-keys-and-addresses-dd5e367a0744). As a result, you can easily implement [multisig](https://medium.com/klaytn/klaytn-usability-improvement-series-2-introducing-multisig-on-the-platform-level-85141893db01), whereby you create multiple private keys for a single account, with each key having different weights. Each key can be assigned with [different roles](https://medium.com/klaytn/klaytn-usability-improvement-series-4-supporting-role-based-keys-on-the-platform-level-e2c912672b7b) as well.

## Where can I start dApp development with Klaytn? <a href="#dapp-development" id="dapp-development"></a>

Whether you are migrating from Ethereum, or building on Klaytn from scratch, we support all the necessary tools and infrastructure. You can test your smart contracts on [Remix IDE](https://docs.klaytn.foundation/dapp/tutorials/connecting-remix) using Klaytn Plugin or connect to [MetaMask](https://docs.klaytn.foundation/dapp/tutorials/connecting-metamask) wallet and [Kaikas](https://chrome.google.com/webstore/detail/kaikas/jblndlipeogpafnldhgmapagcccfchpi). Klaytn’s sdk `caver` is available as [caver-js](https://github.com/klaytn/caver-js) You can refer to our [tutorials](https://docs.klaytn.foundation/dapp/tutorials) to try building a dApp on Klaytn.

## Is Klaytn Open Source? <a href="#is-klaytn-open-source" id="is-klaytn-open-source"></a>

Klaytn is most certainly open source! Take a look at our [Github Organisation](https://github.com/klaytn) and you can start [contributing](https://github.com/klaytn/klaytn-docs/blob/master/CONTRIBUTING.md) to our Klaytn Documentation. Read more about our open-source policies [here](https://docs.klaytn.foundation/misc/opensource).

## How can I initially fund my account? <a href="#fund-my-acconut" id="fund-my-acconut"></a>

You may purchase KLAY on the exchange. The list of available exchanges can be found here: [Coinmarketcap](https://coinmarketcap.com/currencies/klaytn/markets/) or [Coingecko](https://www.coingecko.com/en/coins/klay#markets)

## Any Klaytn’s Public Node Providers for testing and development? <a href="#node-providers" id="node-providers"></a>

Refer to this [list](https://docs.klaytn.foundation/dapp/json-rpc/public-en#public-json-rpc-endpoint-providers) for Klaytn’s Public Node Providers and the network domains.

## Are there faucets to get test KLAY? <a href="#are-there-faucets" id="are-there-faucets"></a>

You can get test KLAY for development and testing purposes here: [Klay Faucet](https://baobab.wallet.klaytn.foundation/faucet) [AllThatNode Faucet](https://www.allthatnode.com/faucet/klaytn.dsrv)

## How do I check for Public RPC endpoint status? <a href="#rpc-endpoint-status" id="rpc-endpoint-status"></a>

Since we cannot guarantee uptime and stability of the endpoints, you can always check for node provider status [here](https://www.allthatnode.com/klaytn.dsrv).

## 어떤 지갑이 Klaytn을 지원하나요? <a href="#which-wallets" id="which-wallets"></a>

Klaytn is supported by the cold wallet D’cent, as well as a host of hot wallets like Kaikas, MetaMask and more. Please refer to the list [here](http://klaytn.foundation/ecosystem).

## Cypress, Baobab이 무엇인가요? <a href="#what-is-cypress-what-is-baobab" id="what-is-cypress-what-is-baobab"></a>

Cypress는 Klaytn의 메인넷이고, Baobab은 테스트넷입니다. Below is information relating to each network.

Cypress mainnet:

* EN 다운로드 : [다운로드 페이지](https://github.com/klaytn/klaytn-docs-ko/blob/main/docs/node/endpoint-node/installation-guide/download.md)에서 Cypress 패키지를 선택하십시오.
* Klaytnscope : <https://scope.klaytn.com>
* Klaytn Wallet : <https://wallet.klaytn.com>

Baobab testnet:

* EN 다운로드 : [다운로드 페이지](https://github.com/klaytn/klaytn-docs-ko/blob/main/docs/node/endpoint-node/installation-guide/download.md)에서 Baobab 패키지를 선택하십시오.
* Klaytnscope : <https://baobab.scope.klaytn.com>
* Klaytn Wallet : <https://baobab.wallet.klaytn.foundation>
* Baobab Faucet : <https://baobab.wallet.klaytn.foundation/faucet>

## Are there any Klaytn SDKs? In what languages? <a href="#klaytn-sdks" id="klaytn-sdks"></a>

Official Klaytn SDKs are provided in JavaScript and Java. See [caver-js](https://archive-ko.docs.klaytn.foundation/content/dapp/sdk/caver-js) and [caver-java](https://archive-ko.docs.klaytn.foundation/content/dapp/sdk/caver-java). Community contributions are always welcome in providing [Klaytn APIs](https://archive-ko.docs.klaytn.foundation/content/dapp/json-rpc) in other languages.

To learn about how to build dApps using Klaytn SDK, see [Tutorials](https://archive-ko.docs.klaytn.foundation/content/dapp/tutorials).

Also, check the porting guidelines [from web3.js](https://archive-ko.docs.klaytn.foundation/content/dapp/sdk/caver-js/v1.4.1/porting-from-web3.js) and [from web3j](https://archive-ko.docs.klaytn.foundation/content/dapp/sdk/caver-java/v1.4.0/porting-from-web3j). Because the syntactic of caver-js and caver-java are very similar to web3.js and web3j, porting should be minimal and very straightforward. But, no, you can not use web3.js or web3j to make a request against Klaytn.

## Must I install and run an EN (Endpoint Node) to use Klaytn? <a href="#must-i-install-and-run-en" id="must-i-install-and-run-en"></a>

Yes and No. Endpoint node validates the blocks and exposes RPC APIs to the outer world. EN is always needed for your application to interact with the Klaytn network. For those who simply want to try Klaytn APIs, you can try [KAS (Klaytn API Service)](https://www.klaytnapi.com). KAS provides Klaytn Node API service that exposes RPC APIs of Klaytn networks (both Baobab and Cypress) as well as other useful API services. Note that KAS serves free API requests after user registration. For pricing plans, please refer to [KAS pricing page](https://www.klaytnapi.com/landing/pricing).

## I am running an EN, and node data sync is too slow. <a href="#node-data-sync-is-too-slow" id="node-data-sync-is-too-slow"></a>

First, check if your HW specification meets the [system requirements](https://github.com/klaytn/klaytn-docs-ko/blob/main/docs/node/endpoint-node/system-requirements.md).

Check the [fast sync](https://github.com/klaytn/klaytn-docs-ko/blob/main/docs/node/endpoint-node/installation-guide/configuration.md#fast-sync-optional). Klaytn publishes the chain data every day. Chain data is a database snapshot that stores all blocks generated since the genesis. Download the latest chain data for the fast sync.

## Can I use ERC-20 and ERC-721 contracts on Klaytn? <a href="#can-i-use-erc-20-and-erc-721" id="can-i-use-erc-20-and-erc-721"></a>

Yes. Klaytn supports Solidity as a smart contract language. [ERC-20](https://archive-ko.docs.klaytn.foundation/content/smart-contract/sample-contracts/erc-20) and [ERC-721](https://archive-ko.docs.klaytn.foundation/content/smart-contract/sample-contracts/erc-721) written in Solidity for Etherem can be deployed and executed on Klaytn.

Further Klaytn-specific token standards can be defined. Follow the [KIP (Klaytn Improvement Proposal)](http://kips.klaytn.foundation) and join the discussion.

## Can I use Truffle for the smart contract development on Klaytn? <a href="#can-i-use-truffle" id="can-i-use-truffle"></a>

Yes. Truffle can be used in developing smart contracts on Klaytn with [truffle-hdwallet-provider-klaytn](https://www.npmjs.com/package/truffle-hdwallet-provider-klaytn). See [Truffle](https://archive-ko.docs.klaytn.foundation/content/smart-contract/ide-and-tools/truffle) and follow the configuration guideline.

If you are new to Truffle, see [Testing Guide](https://archive-ko.docs.klaytn.foundation/content/smart-contract/testing-guide) and [Deployment Guide](https://archive-ko.docs.klaytn.foundation/content/smart-contract/deploy-guide) to get a rough idea on what you can do with Truffle.

## Where can I get a browser extension wallet like Metamask? <a href="#where-can-i-get-a-browser-extension-wallet" id="where-can-i-get-a-browser-extension-wallet"></a>

Klaytn's web brower extension wallet [Kaikas](https://chrome.google.com/webstore/detail/kaikas/jblndlipeogpafnldhgmapagcccfchpi?hl=en). Kaikas is a non-custodial wallet with which you can make KLAY transactions and create accounts.

## Why is my fee-payer account address not derived from the key provided? <a href="#account-address-is-not-derived-from-the-key" id="account-address-is-not-derived-from-the-key"></a>

In Klaytn, [the account address can be decoupled from the key pair](https://archive-ko.docs.klaytn.foundation/content/klaytn/design/accounts#decoupling-key-pairs-from-addresses).

Common use cases are as follows.

* The account owner wants to change the key for security reasons.
* The account has a weighted-multisig or a role-based key that allows having multiple key pairs to control the account.

Fee-payer accounts usually have a [role-based key](https://archive-ko.docs.klaytn.foundation/content/klaytn/design/accounts#accountkeyrolebased). In most cases, the account address is not derived from the RoleFeePayer key.

## Where can I find complete working samples of fee-delegation? <a href="#fee-delegation-samples" id="fee-delegation-samples"></a>

Check [fee-delegation-example](https://archive-ko.docs.klaytn.foundation/content/dapp/tutorials/fee-delegation-example) to get a complete working code of value transfer.

See the [JavaScript code snippet](https://gist.github.com/w3kim/64a3cf5da58250474f046d4dd7f85cc8) for deploying a contract with fee-delegation. Note that you can not use Truffle for the contract deployment with fee-delegation.

[Sending a transaction with multiple signer](https://archive-ko.docs.klaytn.foundation/content/dapp/sdk/caver-js/v1.4.1/getting-started_1.4.1#sending-a-transaction-with-multiple-signer) gives a good explanation about two different ways of collecting signatures. Relevant caver-js APIs are as follows. Take a look at the code examples in the API description.

* [caver.klay.accounts.signTransaction](https://archive-ko.docs.klaytn.foundation/content/dapp/sdk/caver-js/v1.4.1/api-references/caver.klay.accounts#signtransaction)
* [caver.klay.accounts.feePayerSignTransaction](https://archive-ko.docs.klaytn.foundation/content/dapp/sdk/caver-js/v1.4.1/api-references/caver.klay.accounts#feepayersigntransaction)
* [caver.klay.accounts.combinesignatures](https://archive-ko.docs.klaytn.foundation/content/dapp/sdk/caver-js/v1.4.1/api-references/caver.klay.accounts#combinesignatures)
* [caver.klay.sendSignedTransaction](https://archive-ko.docs.klaytn.foundation/content/dapp/sdk/caver-js/v1.4.1/api-references/caver.klay/transaction#sendsignedtransaction)
