> ## Documentation Index
> Fetch the complete documentation index at: https://docs.crossmint.com/llms.txt
> Use this file to discover all available pages before exploring further.

# SoftwareDeviceSignerKeyStorage

> Flutter Final Class

**Final Class**

Software-backed device signer key storage for dev/test environments.

```dart theme={null}
final class SoftwareDeviceSignerKeyStorage implements DeviceSignerKeyStorageInternal
```

This implementation generates P-256 keys in-memory, matching the official
Crossmint RN SDK's `SoftwareDeviceSignerKeyStorage` used in Expo Go and
development builds where native hardware-backed storage is unavailable.

**Do not use in production.** Keys are stored in memory and lost when
the app process terminates.

## Methods

### isAvailable

```dart theme={null}
Future<bool> isAvailable()
```

### generateKey

```dart theme={null}
Future<String> generateKey({
  String? address,
  CrossmintBiometricPolicy biometricPolicy = CrossmintBiometricPolicy.none,
})
```

### mapAddressToKey

```dart theme={null}
Future<void> mapAddressToKey(String address, String publicKeyBase64)
```

### getKey

```dart theme={null}
Future<String?> getKey(String address)
```

### hasKey

```dart theme={null}
Future<bool> hasKey(String publicKeyBase64)
```

### signMessage

```dart theme={null}
Future<Map<String, Object?>> signMessage( String address, String message, )
```

### deleteKey

```dart theme={null}
Future<void> deleteKey(String address)
```

### deletePendingKey

```dart theme={null}
Future<void> deletePendingKey(String publicKeyBase64)
```

### getDeviceName

```dart theme={null}
Future<String?> getDeviceName()
```
