I need to verify the ink smart contract code with deployed contract. Just like solidity verification.
Anyone can give me a clue how to do so and any existing tool?
Currently, it's not yet possible. It will be available the moment ink!4.0 is released. Astar is talking with Subscan to make this available when the latest version is ready.
To give you a more clear idea about how it will work, we have a spec sheet that can help you: https://astarnetwork.notion.site/WASM-ink-smart-contract-verification-061c662fb9854ffe954b6946449c0447
We (Web3 Labs) released an ink! contract verification service recently which provides this functionality.
Unlike in Ethereum where hashes of contract source code and metadata files are used to verify the contract, Rust compiling to WASM is non-deterministic. Hence in order to produce a verifiable build you need to use the same environment to compile the contract code and subsequently verify it.
At present the best way of achieving this is by using Docker images. The following article provides instructions on how to work with the service.