Skip to content

Installation checklist

Talsec edited this page Mar 4, 2024 · 9 revisions

If you experience any issues after installing freeRASP, please go through the following checklist to ensure you've done everything right.

☑️ You set all values correctly.

Double-check that you've set the correct values for all variables. Make sure you haven't made any typos or mistakes during installation and that you've set up a valid email address for receiving Security Reports.

You can do that in the following steps:

  1. Setting the correct values in the configuration.

    For Android that includes:

    Having a correct URL in build.gradle.

    maven { url "https://nexus3-public.monetplus.cz/repository/ahead-talsec-free-rasp" }
    maven { url "https://jitpack.io" }
    

    Going over the values in companion object.

    companion object {
        private const val expectedPackageName = "com.aheaditec.talsec.demoapp" // Don't use Context.getPackageName!
        private val expectedSigningCertificateHashBase64 = arrayOf(
            "mVr/qQLO8DKTwqlL+B1qigl9NoBnbiUs8b4c2Ewcz0k="
        ) // Replace with your release (!) signing certificate hashes
        private const val watcherMail = "[email protected]" // for Alerts and Reports
        private val supportedAlternativeStores = arrayOf(
            // Google Play Store and Huawei AppGallery are supported out of the box, you can pass empty array or null or add other stores like the Samsung's one:
            "com.sec.android.app.samsungapps" // Samsung Store
        )
        private val isProd = true
    }
    

    For iOS, check the values in AppDelegate:

    let config = TalsecConfig(appBundleIds: ["YOUR_APP_BUNDLE_ID"], appTeamId: "YOUR TEAM ID", watcherMailAddress: "WATCHER EMAIL ADDRESS", isProd: true)
    

    For Flutter, go over the configuration for Android, iOS or both:

    final config = TalsecConfig(
      /// For Android
      androidConfig: AndroidConfig(
        packageName: 'your.package.name',
        signingCertHashes: [
          'AKoRu...'
        ],
        supportedStores: ['some.other.store'],
      ),
    
      /// For iOS
      iosConfig: IOSConfig(
        bundleIds: ['YOUR_APP_BUNDLE_ID'],
        teamId: 'M8AK35...',
      ),
      watcherMail: '[email protected]',
      isProd: true,
    );
    

    For React Native and Cordova, go over the configuration for Android, iOS or both:

    const config = {
      androidConfig: {
        packageName: 'com.awesomeproject',
        certificateHashes: ['your_signing_certificate_hash_base64'],
        supportedAlternativeStores: ['storeOne', 'storeTwo'],
      },
      iosConfig: {
        appBundleId: 'com.awesomeproject',
        appTeamId: 'your_team_ID',
      },
      watcherMail: '[email protected]',
      isProd: true,
    };
    
  2. Choosing the Dev version when debugging and the Release version on publishing.

    If you want to use the Dev version to disable certain checks (to make the development process easier), set isProd flag to false. Make sure that you have the Release version in the production (i.e. isProd set to true)!

  3. Flutter and Android version require Computing the Signing certificate hash correctly and converting it to Base64 form. You should follow this guide on how to do that. If you are experiencing problems with hash conversion, use the approach outlined in this thread.

☑️ You are using the latest version.

As the older versions of freeRASP may cause some issues, switching to the latest release is recommended. Furthermore, the current version includes essential fixes and additions.

You can check the latest version for each freeRASP submodule:

☑️ The issue you encountered is not solved.

Someone may have already solved the problem you are currently experiencing. You can check out all closed issues and look for the similarities. If your problem is new, feel free to open up a new issue in a corresponding repository:

Or send us an email, as our team is always ready to help.