diff --git a/app/src/main/java/com/babylon/wallet/android/presentation/dialogs/info/InfoDialog.kt b/app/src/main/java/com/babylon/wallet/android/presentation/dialogs/info/InfoDialog.kt index 3c3a832e9d..d8fab33e94 100644 --- a/app/src/main/java/com/babylon/wallet/android/presentation/dialogs/info/InfoDialog.kt +++ b/app/src/main/java/com/babylon/wallet/android/presentation/dialogs/info/InfoDialog.kt @@ -226,8 +226,8 @@ private fun GlossaryItem.resolveTextFromGlossaryItem() = when (this) { GlossaryItem.gateways -> stringResource(R.string.infoLink_glossary_gateways) GlossaryItem.preauthorizations -> stringResource(id = R.string.infoLink_glossary_preauthorizations) GlossaryItem.possibledappcalls -> stringResource(id = R.string.infoLink_glossary_possibledappcalls) - GlossaryItem.securityshield -> "" // TODO crowdin - GlossaryItem.buildsecurityshields -> "" // TODO crowdin + GlossaryItem.securityshield -> stringResource(id = R.string.infoLink_glossary_securityshields) + GlossaryItem.buildsecurityshields -> stringResource(id = R.string.infoLink_glossary_buildingshield) GlossaryItem.nohardwaredevice -> "" // TODO crowdin } diff --git a/app/src/main/java/com/babylon/wallet/android/presentation/settings/securitycenter/securityshields/onboarding/SecurityShieldOnboardingScreen.kt b/app/src/main/java/com/babylon/wallet/android/presentation/settings/securitycenter/securityshields/onboarding/SecurityShieldOnboardingScreen.kt index da15056577..6a97c5123b 100644 --- a/app/src/main/java/com/babylon/wallet/android/presentation/settings/securitycenter/securityshields/onboarding/SecurityShieldOnboardingScreen.kt +++ b/app/src/main/java/com/babylon/wallet/android/presentation/settings/securitycenter/securityshields/onboarding/SecurityShieldOnboardingScreen.kt @@ -185,11 +185,11 @@ private fun SecurityShieldOnboardingContent( ) { when (currentPage) { SecurityShieldOnboardingViewModel.State.Page.Introduction -> InfoButton( - text = stringResource(id = R.string.infoLink_title_securityshield), + text = stringResource(id = R.string.infoLink_title_securityshields), onClick = { onInfoClick(GlossaryItem.securityshield) } ) SecurityShieldOnboardingViewModel.State.Page.AddFactors -> InfoButton( - text = stringResource(id = R.string.infoLink_title_buildsecurityshields), + text = stringResource(id = R.string.infoLink_title_buildingshield), onClick = { onInfoClick(GlossaryItem.buildsecurityshields) } ) SecurityShieldOnboardingViewModel.State.Page.ApplyShield -> {} diff --git a/app/src/main/java/com/babylon/wallet/android/presentation/settings/securitycenter/securityshields/preparefactors/PrepareFactorsScreen.kt b/app/src/main/java/com/babylon/wallet/android/presentation/settings/securitycenter/securityshields/preparefactors/PrepareFactorsScreen.kt index 0cc85504d8..25921dd34d 100644 --- a/app/src/main/java/com/babylon/wallet/android/presentation/settings/securitycenter/securityshields/preparefactors/PrepareFactorsScreen.kt +++ b/app/src/main/java/com/babylon/wallet/android/presentation/settings/securitycenter/securityshields/preparefactors/PrepareFactorsScreen.kt @@ -154,7 +154,7 @@ private fun PrepareFactorsContent( InfoButton( modifier = Modifier.padding(horizontal = RadixTheme.dimensions.paddingXXXXLarge), - text = stringResource(id = R.string.infoLink_title_buildsecurityshields), + text = stringResource(id = R.string.infoLink_title_buildingshield), onClick = { onInfoClick(GlossaryItem.nohardwaredevice) } ) } diff --git a/app/src/main/res/values-en/strings.xml b/app/src/main/res/values-en/strings.xml index d9c73d0922..fa19f3ed32 100644 --- a/app/src/main/res/values-en/strings.xml +++ b/app/src/main/res/values-en/strings.xml @@ -920,6 +920,16 @@ Code: %s Write down seed phrase to make this factor recoverable Arculus not working. Try adding it again This factor has been lost + Factor Settings + Test + Advanced + Rename this factor + Spot Check + Test that you can use this factor + **Last used:** %s + View Seed Phrase + Write down the seed phrase for advanced recovery + Change PIN Customize Fees Estimated Transaction Fees Transaction Fee @@ -1302,6 +1312,15 @@ Code: %s • Do transactions involving multiple people. • Mint a badge or NFT and directly deposit it to your account.\n\nIn all of these cases, the dApp still needs you to approve and sign any interactions with your accounts and assets - the Radix Network guarantees it.\n\nBecause the pre-authorization is provided back to the dApp, there is a time limit how long it lasts. Once this time limit is up, the pre-authorization expires and can\'t be used. A dApp will need to make a request for another one. You can see how long you have until your pre-authoirzation expires in the pre-authorization summary. ## Possible dApp Calls\n\nWhen a dApp requests a [pre-authorization](?glossaryAnchor=preauthorizations), you may see in the summary \"possible dApp calls\". This simply indicates that the dApp may add additional actions to your pre-authorization before submitting the transaction to the Radix Network.\n\nNot to worry - you are only approving and signing what you can see in your wallet. Nothing added by the dApp can do anything with your accounts and assets without your knowledge. + ## Biometrics/PIN\n\nA biometrics/PIN factor is a 24-word seed phrase protected and accessed via your phone\'s biometrics or PIN security feature. Unlike most crypto wallets, there isn\'t a single seed phrase controlling all of your stuff – it\'s just 1 type of factor you can use to protect [Accounts](?glossaryAnchor=accounts) and [Personas](?glossaryAnchor=personas) or use as part of multi-factor [Security Shields](?glossaryAnchor=securityshields).\n\nBecause this is the only kind of factor held on your phone, it won\'t automatically transfer if you move to a different phone with your [Radix Wallet](?glossaryAnchor=radixwallet). Using a Security Shield for your Accounts and Personas enables easy transfer of wallet control without having to write down and enter a seed phrase. If you create Accounts or Personas with a biometrics/PIN factor, and you don\'t apply a Security Shield, you\'ll need to enter the seed phrase to recover access on a different phone. + ## Passphrases\n\nA passphrase is a 24-word BIP39 seed phrase. Unlike with most crypto wallets though, it\'s a specific type of seed phrase that isn\'t held on your phone so it can\'t be accessed with the help of your phone\'s biometrics or PIN features. It must be typed in word by word every time you use it to sign [transactions](?glossaryAnchor=transactions). This means it must be written down and should be stored (ideally not electronically) in a secret location. For this reason, this factor source is best left to experienced users.\n\nIf you prefer to use a seed phrase held on this device for easy usage, like a typical crypto wallet, please see the [biometrics/PIN](?glossaryAnchor=biometricspin) factor type. + ## Passwords\n\nPassword can be used as a type of security factor in the [Radix Wallet](?glossaryAnchor=radixwallet). A password can be useful to add additional security to your [Security Shields](?glossaryAnchor=securityshields) in combination with other factors. To be secure, your password must be at least 16-characters long and it should be impossible for someone else to guess. If you write it down, make sure you don\'t do this electronically and keep it stored in a safe place.\n\nPasswords on Radix are different from normal passwords because they\'re decentralized. They\'re not held in a central server or even in your Radix Wallet app. Through some cryptographic magic, the [Radix Network](?glossaryAnchor=radixnetwork) itself can check if your password is correct without storing it. It\'s provides the security of [web3](?glossaryAnchor=web3) with the easy functionality of web2. + ## Arculus Card\n\nArculus Cards are secure third-party \"hardware wallet\" cryptographic signing devices in a convenient credit card form factor. To use it, you only need to tap it to the NFC reader on your phone.\n\nUsing a hardware signing device like an Arculus Card provides strong security because it requires physical access to the card to use it. If you use it in a [Security Shields](?glossaryAnchor=securityshields), you can combine it with other factors you have so that even if the card is lost or stolen, your funds are safe and you can reconfigure the Shield to remove the lost Arculus Card, and carry on as before. No seed phrase backup needed. + ## Ledger Nano\n\nA Ledger Nano is a secure third-party \"hardware wallet\" cryptographic signing device popular with many crypto users. To use it, you need to connect it via USB to a computer with a linked [Radix Connector](?glossaryAnchor=radixconnector) browser extension. From here, you can approve signatures by following the Nano\'s on-screen instructions.\n\nUsing a hardware signing device like a Ledger Nano provides strong security because it requires physical access to the device to use it. If you use it in a [Security Shields](?glossaryAnchor=securityshields), you can combine it with other factors you have so that even if the device is lost or stolen, your funds are safe and you can reconfigure the Shield to remove the lost device from it. No seed phrase backup needed. + ## How your Security Shield is Built\n\nA good [Security Shield](?glossaryAnchor=securityshields) combines safety and reliability. No one else should be able to access it and even if you lose your phone you should always be able to recover access to your [Accounts](?glossaryAnchor=accounts) and [Personas](?glossaryAnchor=personas).\n\nYour [Radix Wallet](?glossaryAnchor=radixwallet) will help you by suggesting a good Shield configuration once you’ve added the required security factors. Once this is done, you can edit it to suit your requirements and the Radix Wallet has 3 rules in place to ensure those edits don\'t make your Shield unsafe or innaccessible.\n\n1. [Password](?glossaryAnchor=passwords) cannot be used alone. They are useful factors but aren\'t secure enough to be used by themselves. +2. To make sure you won\'t lose access if you lose 1 of your factors, you must always have at least 2 factors options to start a Shield recovery. +3. To make sure nobody can take away your Shield by stealing just 1 factor, if you are only using 1 factor for regular access, you cannot use that factor again for recovery. And you also cannot use the same factor to both start and confirm a recovery.\n\nOnce you\'ve finalized the setup of factors for a Shield, you’ll be ready to apply it to your chosen Accounts and Personas on the [Radix Network](?glossaryAnchor=radixnetwork) with 1 or more [transactions](?glossaryAnchor=transactions). + ## Security Shields\n\nSecurity Shields give users multi-factor access to their [Accounts](?glossaryAnchor=accounts) and [Personas](?glossaryAnchor=personas) while maintaining decentralization and full self-custody. They provide 2 critical functions. They allow users to rely on more than 1 security factor for regular access and for recoveries in the event that another security factor is lost.\n\nThe process to create a Shield is simple and once it’s finished, it can be applied to Accounts and Personas on the [Radix Network](?glossaryAnchor=radixnetwork) itself, providing robust and reliable security without compromising true trustless decentralization. There are no central servers that hold your Security Shield or secret keys – on Radix, it’s all done on the blockchain directly, so you\'re always in control. It\'s \"your keys, your crypto\", but without being stuck with 1 key you can\'t change.\n\n---\n\nShields are made up of 2 groups of factors.\n\n**Regular Access**\n\nThis part of your Security Shield defines the factors you\'ll use for normal usage, like signing [transactions](?glossaryAnchor=transactions) to withdrawing assets from your Accounts.\n\nWhen choosing your factors for regular access, consider how often you’ll be using them. If it’s every day, choose ones you can access easily. A single factor can be used, but it\'s recommended to use more than one for additional security. For example, a [password](?glossaryAnchor=passwords) is an easy second factor to add security for more sensitive Accounts.\n\nFor convenience, you\'ll also choose a single factor you\'ll use to prove ownerhip – like when you log in to [dApps](?glossaryAnchor=dapps) or if they request access to your Accounts.\n\n**Recovery**\n\nThis part of your Security Shield is made up of the factors that help you recover access to shielded Accounts and Personas in the event that you lose access to them or want to transfer control. For example, if you move your wallet to a new phone, you\'ll use the Shield\'s recovery feature to change the biometrics/PIN factor to a new one on your new phone.\n\nYou\'ll need to choose 1 or more factors that can start a recovery and 1 or more factors that can confirm the recovery. In most cases, you\'ll start and confirm the recovery in a single step, but in the worst case, a timed \"emergency fallback\" will let you start a recovery with just 1 factor and confirm it after a safe delay.\n\nYou can choose the time period for your emergency fallback factor. Make sure you choose a time period long enough that you\'ll be likely to open your [Radix Wallet](?glossaryAnchor=radixwallet) and cancel the recovery if anyone ever steals 1 of your factors and attempts to take control of your Accounts and Personas.\n\nYour Radix Wallet will help you build your Security Shield and once it’s finished, you’ll need to sign some transactions to apply it on the Radix Network to the Accounts and Personas of your choice. What are Tokens? What are NFTs? What is Staking? @@ -1314,8 +1333,13 @@ Code: %s Learn more about Radix Connect How do fees work? What are behaviors? - Learn about Security Shields - How your Security Shield is built + Learn about biometrics/PIN + Learn about Ledger Nanos + Learn about passphrases + Learn about Arculus Cards + Learn about passwords + How your Security Shield is built + Learn about Security Shields I don’t have a hardware device Hidden Personas & Accounts You have hidden the following Personas and Accounts. They remain on the Radix Network, but while hidden, your wallet will treat them as if they don’t exist. @@ -1433,4 +1457,16 @@ Code: %s You need to select at least 1 factor for signing transactions Choosing 2 factors will make your Shield more secure and reliable Build Shield + Rename Factor Source + Enter a new name for this Factor Source + Factor Source name required + Rename Connector + Enter a new name for this Linked Connector + Linked Connector name required + Rename Account + Enter a new label for this Account + Account label required + Account label too long + Update + Updated