¿Cómo se validan los certificados contra la tienda de confianza predeterminada? -- security campo con certificates campo con https camp android Relacionados El problema

How are certs validated against default trust store?


1
vote

problema

Español

A través de alguna lectura, tengo una comprensión bastante difícil sobre cómo funciona HTTPS con aplicaciones de Android, especialmente cómo se realizan las validaciones de certificados. Algunos de los recursos que mencioné para obtener esta comprensión serían:

validating certs en Android

SSL en aplicaciones de Android

validando SSL - Android

Según mi comprensión, podría decir que las aplicaciones pueden validar:

  1. El Tienda de confianza predeterminada que proporciona Android, que tiene una lista de todos los certificados de CA que son de forma predeterminada de confianza por el sistema operativo y, por lo tanto, el navegador y la aplicación en sí. Esta es la misma lista de CAS que también se puede ver en Configuración - & GT; Seguridad - & gt; Credenciales de confianza (en JB +) o sistema / etc / seguridad / cacerts.bks (en Android & LT; JB)

o

  1. Los desarrolladores pueden optar por definir sus propios almacenes de claves personalizados y hacer que un SSLSAck -Factory sea con ellos para confiar en su tienda de confianza personalizada.

Mi pregunta gira alrededor del primer caso descrito anteriormente. En la mayoría de los lugares que pude leer al respecto, descubrí que mencioné que para validar los certificados contra la tienda de confianza predeterminada, el desarrollador no necesita hacer nada explícitamente. Simplemente presione el punto final de HTTPS y juegue con el objeto HTTPSURLCONNECTORIJO devuelto.

La validación del certificado en sí misma es internamente (de forma predeterminada) atendida por el sistema operativo Android.

Ahora me gustaría saber cómo se hace exactamente lo anterior (resaltado)? ¿Cuál es la API / MÉTODO INTERNO / CUALQUIER CUALQUIER otra cosa que llame a Android para hacer esta validación de certificados? ¿Dónde puedo encontrar esta información? Un enfoque que puedo pensar es pasar por la propia fuente de Android, pero no tengo ni idea de qué parte del código lo hace (y más serían muchos esfuerzos).

por favor conseje.

Original en ingles

Through some reading, I have a fairly rough understanding about how https works with Android apps, especially how are certificate validations done. Some of the resources that I referred to for gaining this understanding would be :

Validating certs in Android

SSL in Android apps

Validating SSL - Android

As per my understanding, I could roughly say that apps can validate against :

  1. The default Trust Store that Android provides - which has a list of all the CA certificates that are by default trusted by the OS and hence by the browser and the app itself. This is the same list of CAs that can also be seen in Settings -> Security -> Trusted credentials (in JB+) or system/etc/security/cacerts.bks (in Android < JB)

OR

  1. Developers can choose to define their own custom keystores and make an SSLSocketFactory with them to trust their custom trust store.

My question revolves around the first case described above. In most of the places that I could read about it, I discovered it mentioned that for validating the certificates against the default Trust Store, the developer does not really need to do anything explicitly. Just hit the https end point and play on with the HttpsUrlConnection object returned.

The certificate validation itself is internally (by default) taken care of by Android OS.

Now I would like to know how exactly is the above (highlighted) done ? What is the API/internal method/anything else that Android actually calls to do this certificate validation ? Where can I find this information ? One approach I can think of is to go through the Android source itself, but I have no clue which part of the code does it (and plus it would be a lot of efforts).

Please advice.

        

Lista de respuestas

Relacionados problema

5  ¿Por qué mi tableta NVIDIA está buscando servidores chinos (Baidu.com)?  ( Why is my nvidia tablet looking for chinese serversbaidu com ) 
No estoy seguro de si este es el área correcta para la pregunta, o si es incluso un gran problema, pero aquí voy. Cuando se usa por NVIDIA Tablet para desarro...

0  Evitar que la imagen no autorizada parpadee  ( Prevent unauthorized image flashing ) 
Me pregunto si hay una manera de evitar que alguien use fastboot para flashear un dispositivo Android. De hecho, mientras que uno debe ser capaz de encend...

1  Cómo detener las aplicaciones de la autoestima  ( How to stop apps from self installing ) 
Tengo un problema por bastante tiempo ahora. Una aplicación llamada XeroxService que no tiene ningún ícono, excepto el de las aplicaciones como Google Framewo...

2  Permitir inicio de sesión con múltiples contraseñas  ( Allow login with multiple passwords ) 
¿Es posible configurar múltiples contraseñas aceptadas para el inicio de sesión en Android? O tal vez un inicio de sesión seguro alternativo. (Nota: el recono...

0  Bloqueo de la tarjeta de memoria SDHC en Samsung Galaxy 2  ( Locking sdhc memory card on samsung galaxy 2 ) 
He almacenado un documento importante en la tarjeta SDHC en mi teléfono Samsung Galaxy 2 (para que pueda editarlo en la marcha). No quiero que otros accedan a...

0  Es la sincronización de fotos de Google Secure en WiFi público  ( Is google photos synchronisation secure on public wifi ) 
¿Puede alguien (propietario del NW o intruso del propietario) realiza al hombre en el ataque medio y roba las fotos mientras se sincronizan con WiFi público? ...

5  Cómo prevenir el seguimiento o la piratería de un teléfono usado  ( How to prevent tracking or hacking of a used phone ) 
El IMEI del teléfono usado está limpio, por lo que no está robado. Parece que su vendedor hizo un reinicio de fábrica antes de venderlo. Pero, ¿cómo me aseg...

8  ¿Cómo mejorar la seguridad en mi teléfono Android?  ( How to improve the security on my android phone ) 
Cuando uso Android en el negocio tengo algunos datos secretos en mi teléfono. Entonces, si pierdo mi teléfono, esto puede ser robado fácilmente. ¿Hay alguna...

1  Directorio Sospechoso ".mysecuritydata" en el almacenamiento interno  ( Suspicious directory mysecuritydata in internal storage ) 
Tengo un dispositivo Galaxy Note (N7000) que ejecuta Stock Android 4.1.2. Estaba navegando en el almacenamiento interno y noté un directorio llamado ".mysecur...

53  ¿Qué tan seguro es un bloqueo de patrones?  ( Just how secure is a pattern lock ) 
Recientemente tuve un teléfono robado. Ha sido reemplazado, he cambiado mis contraseñas, la compañía telefónica ha cerrado la conectividad para el robado ... ...

6  ¿Por qué las aplicaciones de la aplicación Locker necesitan tantos permisos? ¿Estoy a salvo?  ( Why do app locker apps need so many permissions am i safe ) 
He estado tratando de proteger con contraseña una aplicación, y parece que los permisos varían de la aplicación a la aplicación para los casilleros de la apli...

5  ¿Hay buenos firewalls disponibles? [cerrado]  ( Are there any good firewalls available ) 
cerrado. Esta pregunta es off-topic . Actualmente no está aceptando respuestas. ¿Quieres ...

7  ¿Cómo descifré los archivos en mi tarjeta SD que cifré usando la configuración?  ( How do i decrypt files on my sd card that i encrypted using the settings ) 
Tengo archivos que solía copiar desde mi tarjeta SD a mi PC utilizando la opción de almacenamiento masivo USB debajo de la ventana emergente "Conexión USB". R...

3  Samsung Galaxy S10E requiere contraseña cada pocos días, ¿es posible deshabilitar de manera segura?  ( Samsung galaxy s10e requires password every few days is it possible to disable ) 
Galaxy S10E, protegido por una contraseña larga y huellas dactilares. Findí específicamente por una contraseña muy larga con la intención de escribirlo solo d...

3  ¿Se puede instalar la aplicación en un teléfono Android sin confirmación, simplemente visitando o haciendo clic en los enlaces en la página?  ( Can application be installed on an android phone without confirmation just by v ) 
Fui a Putlocker y luego obtuve una ventana emergente que dice algo sobre el error del sistema y luego otro como este: En ese momento apagué mi teléfono. ...




© 2021 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos


Licensed under cc by-sa 3.0 with attribution required.