diff --git a/src/main/kotlin/org/briarproject/briar/desktop/DesktopModule.kt b/src/main/kotlin/org/briarproject/briar/desktop/DesktopModule.kt
index b92286f58558e975a63d312bc67621fabf0faa44..72d42d0b39138bd8495806e66b64d8e370e0429e 100644
--- a/src/main/kotlin/org/briarproject/briar/desktop/DesktopModule.kt
+++ b/src/main/kotlin/org/briarproject/briar/desktop/DesktopModule.kt
@@ -52,8 +52,8 @@ import org.briarproject.bramble.util.OsUtils.isMac
 import org.briarproject.briar.attachment.AttachmentModule
 import org.briarproject.briar.desktop.attachment.media.ImageCompressor
 import org.briarproject.briar.desktop.attachment.media.ImageCompressorImpl
-import org.briarproject.briar.desktop.settings.Settings
-import org.briarproject.briar.desktop.settings.SettingsImpl
+import org.briarproject.briar.desktop.settings.UnencryptedSettings
+import org.briarproject.briar.desktop.settings.UnencryptedSettingsImpl
 import org.briarproject.briar.desktop.threading.BriarExecutors
 import org.briarproject.briar.desktop.threading.BriarExecutorsImpl
 import org.briarproject.briar.desktop.threading.UiExecutor
@@ -104,7 +104,7 @@ internal class DesktopModule(
 
     @Provides
     @Singleton
-    fun provideSettings(settings: SettingsImpl): Settings = settings
+    fun provideUnencryptedSettings(settings: UnencryptedSettingsImpl): UnencryptedSettings = settings
 
     @Provides
     @Singleton
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingDetails.kt b/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingDetails.kt
index 7c2a17b4b99053f1a2b54122d19c456b16b86fd4..54476afd6baed37e011331227497f11b79539c0a 100644
--- a/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingDetails.kt
+++ b/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingDetails.kt
@@ -37,7 +37,6 @@ import androidx.compose.ui.Alignment
 import androidx.compose.ui.Modifier
 import androidx.compose.ui.unit.dp
 import org.briarproject.briar.desktop.ui.Constants.HEADER_SIZE
-import org.briarproject.briar.desktop.utils.InternationalizationUtils
 import org.briarproject.briar.desktop.utils.InternationalizationUtils.i18n
 
 @Composable
@@ -66,8 +65,8 @@ fun SettingDetails(viewModel: SettingsViewModel) {
 
                         OutlinedExposedDropDownMenu(
                             values = viewModel.languageList.map {
-                                if (it == Settings.Language.DEFAULT) i18n("settings.display.language.auto")
-                                else it.locale.getDisplayLanguage(InternationalizationUtils.locale)
+                                if (it == UnencryptedSettings.Language.DEFAULT) i18n("settings.display.language.auto")
+                                else it.locale.getDisplayLanguage(it.locale)
                             },
                             selectedIndex = viewModel.selectedLanguage.value.ordinal,
                             onChange = { viewModel.selectLanguage(viewModel.languageList[it]) },
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingsViewModel.kt b/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingsViewModel.kt
index 3a531313dd2e02465a20a27103549dfd383420fd..71b5351db1212e7e83d68ddb71fca71f91975808 100644
--- a/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingsViewModel.kt
+++ b/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingsViewModel.kt
@@ -35,31 +35,31 @@ enum class SettingCategory {
 class SettingsViewModel
 @Inject
 constructor(
-    private val settings: Settings,
+    private val unencryptedSettings: UnencryptedSettings,
 ) : ViewModel {
     private val _selectedSetting = mutableStateOf(SettingCategory.DISPLAY)
     val selectedSetting = _selectedSetting.asState()
 
-    val themesList = Settings.Theme.values()
-    val languageList = Settings.Language.values()
+    val themesList = UnencryptedSettings.Theme.values()
+    val languageList = UnencryptedSettings.Language.values()
 
-    private val _selectedTheme = mutableStateOf(settings.theme)
+    private val _selectedTheme = mutableStateOf(unencryptedSettings.theme)
     val selectedTheme = _selectedTheme.asState()
 
-    private val _selectedLanguage = mutableStateOf(settings.language)
+    private val _selectedLanguage = mutableStateOf(unencryptedSettings.language)
     val selectedLanguage = _selectedLanguage.asState()
 
     fun selectSetting(selectedOption: SettingCategory) {
         _selectedSetting.value = selectedOption
     }
 
-    fun selectTheme(theme: Settings.Theme) {
-        settings.theme = theme
+    fun selectTheme(theme: UnencryptedSettings.Theme) {
+        unencryptedSettings.theme = theme
         _selectedTheme.value = theme
     }
 
-    fun selectLanguage(language: Settings.Language) {
-        settings.language = language
+    fun selectLanguage(language: UnencryptedSettings.Language) {
+        unencryptedSettings.language = language
         _selectedLanguage.value = language
     }
 }
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/settings/Settings.kt b/src/main/kotlin/org/briarproject/briar/desktop/settings/UnencryptedSettings.kt
similarity index 97%
rename from src/main/kotlin/org/briarproject/briar/desktop/settings/Settings.kt
rename to src/main/kotlin/org/briarproject/briar/desktop/settings/UnencryptedSettings.kt
index 6efb19aa18296847b5ceb23bbcd864cb533c4180..8c78db28aebcee4fa2d173df6d4724790149de46 100644
--- a/src/main/kotlin/org/briarproject/briar/desktop/settings/Settings.kt
+++ b/src/main/kotlin/org/briarproject/briar/desktop/settings/UnencryptedSettings.kt
@@ -21,7 +21,7 @@ package org.briarproject.briar.desktop.settings
 import org.briarproject.briar.desktop.viewmodel.SingleStateEvent
 import java.util.Locale
 
-interface Settings {
+interface UnencryptedSettings {
 
     enum class Theme { AUTO, LIGHT, DARK }
 
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingsImpl.kt b/src/main/kotlin/org/briarproject/briar/desktop/settings/UnencryptedSettingsImpl.kt
similarity index 83%
rename from src/main/kotlin/org/briarproject/briar/desktop/settings/SettingsImpl.kt
rename to src/main/kotlin/org/briarproject/briar/desktop/settings/UnencryptedSettingsImpl.kt
index 6fea77da7fd67173c6383644153685f4643ef7fc..255458ce57445e5891a387ae1d5567f9e279895e 100644
--- a/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingsImpl.kt
+++ b/src/main/kotlin/org/briarproject/briar/desktop/settings/UnencryptedSettingsImpl.kt
@@ -18,10 +18,10 @@
 
 package org.briarproject.briar.desktop.settings
 
-import org.briarproject.briar.desktop.settings.Settings.Language
-import org.briarproject.briar.desktop.settings.Settings.Language.DEFAULT
-import org.briarproject.briar.desktop.settings.Settings.Theme
-import org.briarproject.briar.desktop.settings.Settings.Theme.AUTO
+import org.briarproject.briar.desktop.settings.UnencryptedSettings.Language
+import org.briarproject.briar.desktop.settings.UnencryptedSettings.Language.DEFAULT
+import org.briarproject.briar.desktop.settings.UnencryptedSettings.Theme
+import org.briarproject.briar.desktop.settings.UnencryptedSettings.Theme.AUTO
 import org.briarproject.briar.desktop.utils.InternationalizationUtils
 import org.briarproject.briar.desktop.viewmodel.SingleStateEvent
 import java.util.prefs.Preferences
@@ -30,7 +30,7 @@ import javax.inject.Inject
 const val PREF_THEME = "theme"
 const val PREF_LANG = "language"
 
-class SettingsImpl @Inject internal constructor() : Settings {
+class UnencryptedSettingsImpl @Inject internal constructor() : UnencryptedSettings {
 
     // used for unencrypted settings, namely theme and language
     private val prefs = Preferences.userNodeForPackage(this::class.java)
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/ui/BriarUi.kt b/src/main/kotlin/org/briarproject/briar/desktop/ui/BriarUi.kt
index 68640050ce0804795d06f4b123819e9883d07c6a..bcb341cd9f4d8fd77ea8a607185785bc3cca5c31 100644
--- a/src/main/kotlin/org/briarproject/briar/desktop/ui/BriarUi.kt
+++ b/src/main/kotlin/org/briarproject/briar/desktop/ui/BriarUi.kt
@@ -46,10 +46,10 @@ import org.briarproject.briar.desktop.DesktopFeatureFlags
 import org.briarproject.briar.desktop.expiration.ExpirationBanner
 import org.briarproject.briar.desktop.login.ErrorScreen
 import org.briarproject.briar.desktop.login.StartupScreen
-import org.briarproject.briar.desktop.settings.Settings
-import org.briarproject.briar.desktop.settings.Settings.Theme.AUTO
-import org.briarproject.briar.desktop.settings.Settings.Theme.DARK
 import org.briarproject.briar.desktop.settings.SettingsViewModel
+import org.briarproject.briar.desktop.settings.UnencryptedSettings
+import org.briarproject.briar.desktop.settings.UnencryptedSettings.Theme.AUTO
+import org.briarproject.briar.desktop.settings.UnencryptedSettings.Theme.DARK
 import org.briarproject.briar.desktop.theme.BriarTheme
 import org.briarproject.briar.desktop.ui.Screen.EXPIRED
 import org.briarproject.briar.desktop.ui.Screen.MAIN
@@ -89,7 +89,7 @@ constructor(
     private val lifecycleManager: LifecycleManager,
     private val eventBus: EventBus,
     private val viewModelProvider: ViewModelProvider,
-    private val settings: Settings,
+    private val unencryptedSettings: UnencryptedSettings,
     private val featureFlags: FeatureFlags,
     private val desktopFeatureFlags: DesktopFeatureFlags,
 ) : BriarUi, EventListener {
@@ -137,15 +137,15 @@ constructor(
                 LocalLocalization provides platformLocalization,
             ) {
                 // invalidate whole application window in case the theme or language setting is changed
-                settings.invalidateScreen.react {
+                unencryptedSettings.invalidateScreen.react {
                     window.title = i18n("main.title")
                     return@CompositionLocalProvider
                 }
 
                 var showAbout by remember { mutableStateOf(false) }
                 val settingsViewModel: SettingsViewModel = viewModel()
-                val isDarkTheme = settings.theme == DARK ||
-                    (settings.theme == AUTO && isSystemInDarkTheme())
+                val isDarkTheme = unencryptedSettings.theme == DARK ||
+                    (unencryptedSettings.theme == AUTO && isSystemInDarkTheme())
                 BriarTheme(isDarkTheme) {
                     Column(Modifier.fillMaxSize()) {
                         ExpirationBanner { screenState = EXPIRED; stop() }
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/DesktopTestModule.kt b/src/test/kotlin/org/briarproject/briar/desktop/DesktopTestModule.kt
index 4ff59a88ccdddddb3dc3ad82cbb905ff9781547f..223ce8baaa7326f71ecd26e84a1005751dea792c 100644
--- a/src/test/kotlin/org/briarproject/briar/desktop/DesktopTestModule.kt
+++ b/src/test/kotlin/org/briarproject/briar/desktop/DesktopTestModule.kt
@@ -52,8 +52,8 @@ import org.briarproject.briar.api.test.TestAvatarCreator
 import org.briarproject.briar.attachment.AttachmentModule
 import org.briarproject.briar.desktop.attachment.media.ImageCompressor
 import org.briarproject.briar.desktop.attachment.media.ImageCompressorImpl
-import org.briarproject.briar.desktop.settings.Settings
-import org.briarproject.briar.desktop.settings.SettingsImpl
+import org.briarproject.briar.desktop.settings.UnencryptedSettings
+import org.briarproject.briar.desktop.settings.UnencryptedSettingsImpl
 import org.briarproject.briar.desktop.testdata.DeterministicTestDataCreator
 import org.briarproject.briar.desktop.testdata.DeterministicTestDataCreatorImpl
 import org.briarproject.briar.desktop.testdata.TestAvatarCreatorImpl
@@ -109,7 +109,7 @@ internal class DesktopTestModule(
 
     @Provides
     @Singleton
-    fun provideSettings(settings: SettingsImpl): Settings = settings
+    fun provideUnencryptedSettings(settings: UnencryptedSettingsImpl): UnencryptedSettings = settings
 
     @Provides
     @Singleton