Is it possible to verify a ECDSA based signature in the concordium smart contract ?
The chain does not currently provide primitive operations for smart contracts to verify signatures. However, in principle you can use Rust libraries such as ecdsa in your smart contract for signature verification. In practice, I am unsure how practical this is given the resource constraints of smart contracts. (In particular, I think ECDSA signature verification is fairly computationally intensive, which may not be very practical, since you need to pay for the computation in a smart contract (the “energy”) and even the energy that can be used in a single block is limited.)
The chain does not currently provide primitive operations for smart contracts to verify signatures.
is this still the case or we can implement like EVM chains.
No, it is no longer the case @blue. We’ve added some hashing and signature-checking primitives .
These are the functions we support currently: HasCryptoPrimitives in concordium_std - Rust
The example contract you linked shows how to use the cryptographic primitives.