# Using smart wallets

Smart wallets in Openfort are your primary interface for blockchain interactions. Once an embedded wallet is set up, a smart wallet is automatically created and associated for your user.

:::info
There is no need to use the EIP1193 provider directly. Instead, use the Openfort SDK to interact with the smart wallet.
:::

## Getting an EIP-1193 provider

All of Openfort's wallets can export a standard [EIP-1193 provider](https://eips.ethereum.org/EIPS/eip-1193) object. This allows your app to request signatures and transactions from the wallet, using familiar JSON-RPC requests like `personal_sign` or `eth_sendTransaction`.

To get a wallet's EIP-1193 provider, use the openfort `getEthereumProvider` method:

```csharp
public class OpenfortManager : MonoBehaviour
{
    private OpenfortSDK openfort;

    private async void Start()
    {
        openfort = await OpenfortSDK.Init(
            "YOUR_OPENFORT_PUBLISHABLE_KEY",
            "YOUR_SHIELD_PUBLISHABLE_KEY"
        );
    }

    public async UniTask<Provider> GetProvider()
    {
        var request = new EthereumProviderRequest();
        return await openfort.GetEthereumProvider(request);
    }
}
```
