DefaultSIWX
class.
ReownAuthentication
configuration will use the predefined components to handle the message generation, verification and storage of the sessions. You can customize the default implementation by providing your own components as in the following sections.
DefaultSIWX
class is divided in three main components: SIWXMessenger
, SIWXVerifier
and SIWXStorage
. The @reown/appkit-siwx
package have defined options to fulfill the parts when initializing the DefaultSIWX
configuration and you are also able to setup your own parts as required.
@reown/appkit-siwx
package provides some predefined components that you can use to quickly setup the DefaultSIWX
configuration.
Check the latest components over the SIWX repository
DefaultSIWX
configuration using the predefined components exposed by @reown/appkit-siwx
package and customize the component params as needed.
SIWXMessenger
SIWXMessenger
is an abstract class which holds methods for generating the message to be signed.
SIWXMessenger
class adding the public attributes:
version
: a string that represents the version of the messenger;stringify
: a method that receives the message data and returns a string to be signed.SIWXVerifier
SIWXVerifier
is an abstract class that defines the verification logic for the signed message.
SIWXVerifier
class adding the public attributes:
chainNamespace
: a string that represents the chain namespace for the verifier;verify
: a method that receives the session data and returns a boolean indicating if the session is valid.SIWXStorage
SIWXStorage
is a interface that defines how the session data will be stored.
SIWXStorage
interface with the following methods:
add
: This method will be called to store a new single session that is verified;set
: This method must replace all the sessions in the storage with the new ones;get
: This method must return all the sessions stored for a specific chain and address. Is expected that the sessions are already verified;delete
: This method must delete all the sessions stored for a specific chain and address.DefaultSIWX
configuration.
If you omit any of the components, the default implementation will be used. Check here the default components.