microg / microg/GmsCore

TLS 1.2 on KitKat and earlier

Open
#2,070 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Java
Stars
14.6k
Forks
3.2k
Avg merge
12d 11h
Merged PRs (30d)
4

Description

Is your feature request related to a problem? Please describe.
I will start this off by saying I am not an expert with how Android and GMS work, so I probably can't explain this in the most in-depth way, but basically on Android KitKat and earlier, you had to explicitly enable TLS above 1.0, however the way you enabled it in Android didn't work with some non-AOSP devices, so GMS provided a TLS 1.2 implementation, and most apps used GMS's implementation, and this is when the issue starts, because microG doesn't have this, on devices without GMS running KitKat and earlier, most apps that require TLS 1.2 won't work, an example of this being Discord, it requires TLS 1.2, so when you try to sign in on a device running Jellybean or KitKat, it just shows a loading icon for a few seconds then goes back to the login screen. This explains more of it in further detail - https://quizlet.com/blog/working-with-tls-1-2-on-android-4-4-and-lower

Describe the solution you'd like
I'd like to see GMS's TLS 1.2 implementation for older devices implemented into microG if possible.

Describe alternatives you've considered
I've considered just giving up and flashing GApps on the phone I used to discover all of this (which is a Motorola Milestone 3 running Android 4.2.1 Jellybean), however this phone never went past Gingerbread officially, so it's pretty low end for a Jellybean device, and while it runs fine on stock CyanogenMod 10.1, with GApps, the phone's performance completely dies, and the phone becomes unusably slow, unable to even open most apps.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no files, tests, or entry points; start by reading the linked Quizlet article and investigating how microG currently handles TLS on Android 4.2–4.4. Done means TLS 1.2 works for affected apps on older devices without GMS, including the described Discord sign-in case.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
mobile
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.