# CreateSignature

Creates and optionally executes cryptographic signatures for blockchain messages and structured data.

**Supported signature types:**

* **Message signing**:\ Plain text message signing using personal\_sign method
* **EIP-712**:\ Ethereum typed structured data signing for improved security and usability

{% code overflow="wrap" %}

```cpp
void CreateSignature(const FVyUserAuth& SigningMethod, const FVyCreateSignatureRequest& Params, const FVyOnCreateSignatureComplete& OnComplete) const;
```

{% endcode %}

\
**Parameters**

| SigningMethod | FVyUserAuth                                                                                                                   | The Id and Value of one of the user's registered signing-methods                        |
| ------------- | ----------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- |
| Params        | [FVyCreateSignatureRequest](https://sdk.venly.io/sdk-reference/ue5-sdk-v3/object-references/wallet/fvycreatesignaturerequest) | Parameters for this operation (FVyCreateSignatureRequest)                               |
| OnComplete    | FVyOnCreateSignatureComplete                                                                                                  | The callback function called when the user preferences retrieval operation is complete. |

\
**OnComplete Callback** (FVyOnCreateSignatureComplete)\
Contains a [FVyCreateSignatureOneOf](https://sdk.venly.io/sdk-reference/ue5-sdk-v3/object-references/wallet/fvycreatesignatureoneof) response type
