# Security Best Practices (React Native) > Secure storage, SSL pinning, obfuscation, reverse engineering protection, sensitive data - 20 interview questions - Senior - [Interview Questions: React Native](https://sharpskill.dev/en/technologies/react-native/interview-questions.md) ## 1. What is the recommended method for storing sensitive data like authentication tokens in a React Native application? **Answer** Sensitive data like authentication tokens must be stored in Keychain (iOS) or Keystore (Android) using libraries like react-native-keychain or expo-secure-store. These systems provide hardware-backed encryption and protection against data extraction even on rooted devices. AsyncStorage stores data in plain text and should never be used for sensitive information. ## 2. What is SSL pinning and why should it be implemented in a React Native application? **Answer** SSL pinning validates the server certificate against a known certificate or public key embedded in the application, rather than trusting only the system certificate chain. This protects against man-in-the-middle attacks even if an attacker has installed a malicious certificate on the device. Libraries like react-native-ssl-pinning or TrustKit enable implementing this protection. ## 3. How to protect JavaScript code in a React Native application against reverse engineering? **Answer** JavaScript code obfuscation using tools like Metro bundler, react-native-obfuscating-transformer or Hermes bytecode makes code harder to understand. Hermes compiles JavaScript to bytecode, adding a protection layer. However, obfuscation is not absolute protection - it slows down attackers but cannot completely prevent reverse engineering. Critical secrets should never be stored in client code. ## 17 more questions available - How to handle API keys and secrets in a production React Native application? - What is root/jailbreak detection and how to implement it in React Native? Sign up for free: https://sharpskill.dev/en/login ## Other React Native interview topics - [JavaScript Essentials](https://sharpskill.dev/en/technologies/react-native/interview-questions/javascript-essentials.md): 25 questions, Junior - [React Fundamentals](https://sharpskill.dev/en/technologies/react-native/interview-questions/react-fundamentals.md): 20 questions, Junior - [React Native Basics](https://sharpskill.dev/en/technologies/react-native/interview-questions/react-native-basics.md): 22 questions, Junior - [React Hooks](https://sharpskill.dev/en/technologies/react-native/interview-questions/react-hooks.md): 20 questions, Junior - [TypeScript for React & React Native](https://sharpskill.dev/en/technologies/react-native/interview-questions/typescript-for-react-native.md): 22 questions, Junior - [React Native Components & API](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-components-api.md): 20 questions, Junior - [React Native Styling & Layout](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-styling-layout.md): 18 questions, Junior - [React Native Navigation](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-navigation.md): 22 questions, Mid-Level - [React Native State Management](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-state-management.md): 24 questions, Mid-Level - [React Native Networking & API](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-networking-api.md): 20 questions, Mid-Level - [Data Persistence](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-data-persistence.md): 20 questions, Mid-Level - [Forms & Validation](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-forms-validation.md): 18 questions, Mid-Level - [React Native Animations](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-animations.md): 22 questions, Mid-Level - [Native Modules & Bridge](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-native-modules.md): 20 questions, Mid-Level - [Platform-Specific Code](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-platform-specific-code.md): 18 questions, Mid-Level - [Permissions & Device APIs](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-permissions-apis.md): 20 questions, Mid-Level - [Push Notifications](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-push-notifications.md): 18 questions, Mid-Level - [React Native Testing](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-testing.md): 20 questions, Mid-Level - [React Native Debugging](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-debugging.md): 18 questions, Mid-Level - [Build & Deployment](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-build-deployment.md): 20 questions, Mid-Level - [Expo vs React Native Bare](https://sharpskill.dev/en/technologies/react-native/interview-questions/expo-vs-bare-rn.md): 18 questions, Mid-Level - [Performance Optimization](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-performance-optimization.md): 24 questions, Senior - [Memory Management](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-memory-management.md): 20 questions, Senior - [Architecture Patterns](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-architecture-patterns.md): 22 questions, Senior - [React Native New Architecture](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-new-architecture.md): 24 questions, Senior - [Offline-First Architecture](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-offline-first.md): 20 questions, Senior - [React Native CI/CD](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-ci-cd.md): 20 questions, Senior - [Monorepo & Code Sharing](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-monorepo-architecture.md): 18 questions, Senior - [Advanced Topics](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-advanced-topics.md): 22 questions, Senior - [App Lifecycle & Background Execution](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-app-lifecycle-background.md): 20 questions, Mid-Level - [Authentication & Session Management](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-auth-session-management.md): 22 questions, Mid-Level - [Monitoring & Crash Reporting](https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-monitoring-crash-reporting.md): 20 questions, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/en/technologies/react-native/interview-questions/rn-security-best-practices