Metadatos de WhatsApp
Datos estructurados almacenados en la base de datos msgstore.db de WhatsApp que registran información sobre cada mensaje: remitente, destinatario, marca temporal del servidor, estado de entrega, hash del medio y flag de reenvío.
TL;DR - Metadatos de WhatsApp
WhatsApp aparece con frecuencia en los procedimientos judiciales españoles con prueba digital, aunque la estadística pública no desglosa los asuntos por aplicación. Lo que casi nadie aprovecha es que la discusión suele quedarse en las capturas de pantalla, ignorando que la base de datos msgstore.db contiene decenas de campos de metadatos —identificadores de mensaje, marcas de recepción y lectura, indicadores de reenvío, referencias a la conversación de origen— que son más difíciles de falsificar que el propio texto del mensaje. Bien extraídos y con cadena de custodia documentada, esos metadatos son a menudo la diferencia entre una prueba que se impugna con éxito y una que resiste el contraste pericial.
| Dato clave | Valor |
|---|---|
| Campos por mensaje | 25+ en msgstore.db |
| Base de datos principal Android | msgstore.db (SQLite) |
| Base de datos principal iOS | ChatStorage.sqlite (SQLite) |
| Cifrado backup Android | AES-256-GCM (crypt15) |
| Marca temporal | Servidor WhatsApp (no dispositivo) |
| Estados de entrega | 0=enviado, 4=recibido, 5=leido, 6=reproducido |
| Recuperación tras borrado | Posible via WAL y slack space |
| Penetración de WhatsApp en España | 89,3 % de los internautas (ficha de Statista, 2025) — el INE no cuenta usuarios de una app concreta, y una cuota sobre internautas no equivale a un número absoluto de usuarios sin su denominador |
Definición en 30 segundos
Los metadatos de WhatsApp son la información que la aplicación registra automáticamente sobre cada mensaje: quién lo envió, cuándo lo envió, si se entregó, si se leyó y qué archivos se adjuntaron. En Android se almacenan en una base de datos SQLite llamada msgstore.db dentro del dispositivo. En iOS, la base de datos equivalente es ChatStorage.sqlite. A diferencia del contenido del mensaje (que puede capturarse con un screenshot manipulable), los metadatos incluyen marcas temporales de recepción y hashes de los archivos adjuntos generados por el sistema, lo que —bien adquiridos y con cadena de custodia— los convierte en evidencia forense de primer nivel en procedimientos judiciales. Según el Tribunal Supremo (STS 300/2015), cuando se impugna la autenticidad de una captura de pantalla la carga de acreditarla se desplaza a quien la aporta, y la prueba pericial —con los metadatos forenses— es el medio que mejor la sostiene.
Qué son los metadatos de WhatsApp y por que importan en juicio
Cuando un abogado presenta capturas de pantalla de WhatsApp como prueba, la parte contraria puede impugnarlas alegando manipulación. Y tiene razón: existen aplicaciones como WhatsFake que generan conversaciones falsas indistinguibles de las reales. En mi experiencia pericial, he analizado casos donde capturas presentadas como “prueba” eran fabricaciones completas. Sin embargo, los metadatos almacenados en la base de datos interna de WhatsApp son otra historia.
Los metadatos son la capa contextual que rodea a cada mensaje; la propia base de datos almacena además el contenido, en un campo aparte (data en el esquema legado, message.text_data en el moderno). Esa capa es la infraestructura probatoria del mensaje: cuándo se envió exactamente (con precisión de milisegundos), desde qué número, a qué número, si se entregó al servidor, si llegó al dispositivo del destinatario, si se leyó, si se reenvió desde otro chat, y el hash SHA-256 del archivo adjunto. Esta información es generada automáticamente por el sistema, no por el usuario, y por eso tiene un valor probatorio superior al contenido en sí.
El Tribunal Supremo español ha establecido que la prueba digital necesita elementos de autenticidad que vayan más allá de la simple captura de pantalla. La STS 629/2025, de 3 de julio (ROJ STS 3341/2025), confirma —no relaja— la línea de la STS 300/2015: la pericial se vuelve necesaria cuando la autenticidad se impugna con indicios concretos, no en todo caso. Los metadatos de WhatsApp, extraídos con una herramienta y versión identificadas, un método validado y cadena de custodia documentada, ayudan a satisfacer esa exigencia de autenticidad, sin que ninguna clase de metadato la cumpla de forma automática. La STS 603/2025 la matizó en sentido práctico: desestimó la nulidad que la defensa pedía contra unas capturas de WhatsApp —una impugnación genérica no basta para excluirlas— sin exigir formalidades como aportar el IMEI.
Los 25+ campos de metadatos en msgstore.db (Android)
La base de datos msgstore.db de WhatsApp utiliza SQLite y su esquema cambia entre versiones: el esquema legado concentra los datos en la tabla messages, mientras que el moderno los normaliza entre message y tablas relacionadas (message_media, message_location, chat, jid). Antes de cualquier consulta hay que inventariar sqlite_master y la versión de la app. Los campos siguientes son los relevantes para el análisis forense, con el nombre que reciben en uno u otro esquema:
Tabla de campos principales
| Campo | Descripción forense | Ejemplo |
|---|---|---|
_id | Identificador único del mensaje (autoincremental) | 48372 |
key_remote_jid | Número del contacto remoto (formato E.164 + @s.whatsapp.net) | 34624093796@s.whatsapp.net |
key_from_me | Dirección: 0 = recibido, 1 = enviado | 0 |
key_id | ID único del mensaje generado por WhatsApp | 3EB0A4F2C1D8 |
status | Estado de entrega (0=enviado, 4=recibido en servidor, 5=leído, 6=reproducido). Valores altos como 13 se han observado en mensajes revocados, pero la base no documenta su semántica: se valida por versión | 5 |
timestamp | Marca temporal del dispositivo (milisegundos Unix) | 1710432156000 |
received_timestamp | Marca temporal de recepción (su origen —servidor o dispositivo— y su semántica se validan por versión; el nombre no lo prueba) | 1710432157234 |
data | Contenido texto del mensaje | ”Nos vemos a las 5” |
media_wa_type | Tipo de medio: 0=texto, 1=imagen, 2=audio, 3=video, 4=contacto, 5=ubicación, 9=documento, 13=sticker | 1 |
media_size | Tamaño del archivo adjunto en bytes | 234567 |
media_mime_type | Tipo MIME del archivo | image/jpeg |
media_hash | Hash SHA-256 del archivo multimedia (base64) | aGVsbG8gd29ybGQ= |
media_duration | Duración en segundos (audio/video) | 45 |
media_url | URL de descarga del servidor WhatsApp (temporal, expira en ~30 días) | https://mmg.whatsapp.net/… |
media_caption | Texto que acompaña al archivo adjunto | ”Mira esta foto” |
latitude | Latitud de un mensaje de ubicación compartida (la localización de toma de una foto exige analizar su EXIF por separado) | 37.7749 |
longitude | Longitud de un mensaje de ubicación compartida | -3.7896 |
forwarded | Indicador de reenvío del mensaje recibido (no cuenta el número total de saltos ni acredita autoría) | 0 |
starred | Mensaje marcado como favorito | 0 |
quoted_row_id | ID del mensaje citado (si es respuesta) | 48370 |
mentioned_jids | Contactos mencionados en el mensaje | 34612345678@s.whatsapp.net |
edit_version | Marca de edición (en el esquema moderno la edición se registra en message_edit_info: referencias e instantes, no el texto anterior) | 0 |
original_timestamp | Instante original si el mensaje fue editado (no conserva el contenido previo) | null |
ephemeral_duration | Duración de mensaje temporal (segundos) | 86400 |
thumb_image | Miniatura del archivo multimedia (blob) | [BLOB] |
read_device_timestamp | Timestamp de lectura en dispositivo | 1710432200000 |
receipt_server_timestamp | Timestamp de confirmación del servidor | 1710432157500 |
message_type | Tipo de mensaje del protocolo (0=texto, 2=imagen, 7=sistema; se han observado 15 y 64, sin tabla que documente su semántica) | 0 |
chat_row_id | ID de la conversación a la que pertenece el mensaje | 127 |
Tabla de contactos (wa_contacts)
| Campo | Descripción |
|---|---|
jid | Identificador único del contacto (formato E.164@s.whatsapp.net) |
display_name | Nombre mostrado en la agenda del dispositivo |
number | Número de teléfono en formato local |
status | Estado/bio del contacto (texto “Acerca de”) |
status_timestamp | Cuando cambió el estado por última vez (milisegundos Unix) |
wa_name | Nombre puesto por el propio contacto en WhatsApp |
sort_name | Nombre usado para ordenar la lista de contactos |
Tabla de grupos (group_participants)
| Campo | Descripción |
|---|---|
gjid | ID del grupo (formato numérico@g.us) |
jid | ID del participante individual |
admin | Rol: 0=miembro, 1=admin, 2=superadmin (creador) |
pending | Invitación pendiente (0=miembro activo, 1=pendiente) |
sent_sender_key | Flag de distribución de clave de cifrado |
Tabla de llamadas (call_log)
| Campo | Descripción |
|---|---|
jid | Contacto de la llamada |
from_me | 0=recibida, 1=realizada |
timestamp | Cuando se inició la llamada |
duration | Duración en segundos |
video_call | 0=voz, 1=videollamada |
call_result | 0=contestada, 1=pérdida, 2=rechazada |
iOS: ChatStorage.sqlite y sus diferencias con msgstore.db
En dispositivos iOS, WhatsApp almacena los mensajes en una base de datos diferente: ChatStorage.sqlite. Aunque la estructura es distinta, contiene información equivalente. Como perito, es fundamental conocer ambas bases de datos ya que en muchos procedimientos se analizan dispositivos de ambas plataformas.
Mapeo de campos Android (msgstore.db) vs iOS (ChatStorage.sqlite)
| Concepto | Android (msgstore.db) | iOS (ChatStorage.sqlite) | Tabla iOS |
|---|---|---|---|
| Mensaje | messages._id | ZWAMESSAGE.Z_PK | ZWAMESSAGE |
| Remitente | key_remote_jid | ZWAMESSAGE.ZFROMJID | ZWAMESSAGE |
| Dirección | key_from_me | ZWAMESSAGE.ZISFROMME | ZWAMESSAGE |
| Timestamp | timestamp | ZWAMESSAGE.ZMESSAGEDATE (referencia Apple: 01/01/2001) | ZWAMESSAGE |
| Estado | status | ZWAMESSAGE.ZMESSAGESTATUS | ZWAMESSAGE |
| Contenido | data | ZWAMESSAGE.ZTEXT | ZWAMESSAGE |
| Tipo medio | media_wa_type | ZWAMESSAGE.ZMESSAGETYPE | ZWAMESSAGE |
| Ruta del medio | media_hash/ruta | ZWAMEDIAITEM.ZMEDIALOCALPATH (ruta local del medio, no un hash) | ZWAMEDIAITEM |
| Reenvio | forwarded | recuento de reenvío observado en el protobuf ZMETADATA (campo 17), según parser y versión | ZWAMESSAGE |
| Grupo | key_remote_jid (terminado en @g.us) | ZWAMESSAGE.ZTOJID | ZWAMESSAGE |
| Contacto | wa_contacts.jid | ZWACONTACT.ZJID | ZWACONTACT |
| Llamada | call_log | ZWACALLEVENT | ZWACALLEVENT |
Diferencia crítica de timestamps: Android usa milisegundos Unix (referencia 1 enero 1970), mientras que iOS usa el “Core Data timestamp” de Apple (referencia 1 enero 2001). Para convertir un timestamp iOS a formato legible hay que sumar 978307200 segundos al valor almacenado. Este es un error frecuente en peritajes que he visto corregir en ratificaciones judiciales.
Dónde se almacenan los metadatos: rutas completas
Rutas en Android
| Archivo | Ruta | Acceso requerido |
|---|---|---|
| msgstore.db (activa) | /data/data/com.whatsapp/databases/msgstore.db | Root o extracción física |
| msgstore.db (backup cifrado) | /sdcard/WhatsApp/Databases/msgstore.db.crypt15 | Acceso al almacenamiento |
| wa.db (contactos) | /data/data/com.whatsapp/databases/wa.db | Root o extracción física |
| axolotl.db (claves cifrado E2EE) | /data/data/com.whatsapp/databases/axolotl.db | Root o extracción física |
| chatsettings.db (configuración chats) | /data/data/com.whatsapp/databases/chatsettings.db | Root o extracción física |
| Medios recibidos | /sdcard/WhatsApp/Media/ | Acceso al almacenamiento |
| Logs internos | /data/data/com.whatsapp/files/Logs/ | Root o extracción física |
| Preferencias compartidas | /data/data/com.whatsapp/shared_prefs/ | Root o extracción física |
| Clave de cifrado (crypt15) | /data/data/com.whatsapp/files/encrypted_backup.key | Root o extracción física |
Rutas en iOS
| Archivo | Ruta | Acceso requerido |
|---|---|---|
| ChatStorage.sqlite | AppDomainGroup-group.net.whatsapp.WhatsApp.shared/ChatStorage.sqlite | Backup iTunes/iCloud descifrado |
| ContactsV2.sqlite | AppDomainGroup-group.net.whatsapp.WhatsApp.shared/ContactsV2.sqlite | Backup descifrado |
| CallHistory.sqlite | AppDomainGroup-group.net.whatsapp.WhatsApp.shared/CallHistory.sqlite | Backup descifrado |
| Medios | Message/Media/ dentro del dominio de app | Backup descifrado |
| Wallpapers | Library/ dentro del dominio de app | Backup descifrado |
Diferencia crítica de acceso: En Android, la base de datos activa (msgstore.db) solo es accesible con privilegios root o mediante extracción física. Los backups en /sdcard/ están cifrados (crypt15) y requieren la clave del backup, cuya custodia depende del modo de copia. En iOS, los datos son accesibles a través de un backup completo (con su contraseña) o mediante extracción física. La copia local de Apple no está cifrada por defecto: el usuario activa «Encrypt local backup» y crea una contraseña necesaria para restaurarla.
10 escenarios donde los metadatos prueban más que el contenido
1. Acoso laboral: timeline de mensajes fuera de horario
Los metadatos timestamp y received_timestamp pueden mostrar que un superior envió mensajes a las 23:47, 00:15 y 01:32 de forma sistemática durante meses. El contenido puede ser ambiguo («necesito el informe»), pero el patrón temporal —muchos registros en franja nocturna— es el elemento que un tribunal valora como indicio de acoso, por encima de un mensaje aislado.
2. Ciberbullying: frecuencia y volumen de mensajes
El campo _id autoincremental y los timestamp permiten reconstruir cuándo se envió cada mensaje sin entrar en su contenido: volumen diario, franjas horarias, persistencia a lo largo de semanas y reanudación tras cada bloqueo.
Pero el volumen por sí solo no es la prueba, y conviene no prometerlo. El Pleno de la Sala Segunda, en la STS 324/2017, exige que la conducta «altere gravemente el desarrollo de la vida cotidiana» de la víctima —«cambiar de teléfono, o modificar rutas, rutinas o lugares de ocio»— y que exista «la voluntad de imponer un patrón de conducta sistemático de acoso con vocación de cierta perpetuación temporal»: «no exige planificación, pero sí una metódica secuencia de acciones».
Ahí es donde los metadatos ganan valor sobre el recuento: lo que acreditan es el patrón —la regularidad, la insistencia tras la negativa, la escalada— que es justo el elemento que el tipo penal reclama y que un pantallazo aislado no puede mostrar.
3. Difamación: prueba de reenvío masivo
El campo forwarded indica que un mensaje fue reenviado y no escrito por quien lo tenía en su teléfono; la marca «reenviado muchas veces» señala una cadena de reenvío larga. No acredita, por sí sola, quién creó el contenido, el número total de saltos ni la audiencia. Es un indicio del carácter no original del mensaje, útil junto al resto de la prueba en casos de difamación (arts. 205-207 CP).
4. Estafa: timestamp del servidor vs timestamp del dispositivo
En fraudes donde el estafador alega “nunca envié ese mensaje”, contrastar las distintas marcas temporales del registro (envío y recepción) puede apoyar que el mensaje transitó por la infraestructura de WhatsApp. La procedencia y la fuerza probatoria de cada marca se validan para la versión analizada: el nombre de la columna no prueba por sí solo su origen ni su inmutabilidad.
5. Violencia de género: patrón de control
Los metadatos de mensajes enviados (key_from_me = 1) frente a recibidos (key_from_me = 0) pueden revelar una fuerte asimetría en el volumen. La Ley Orgánica 1/2004 incluye la violencia psicológica; un patrón de control ejercido por medios digitales puede aportar evidencia para su valoración, aunque el art. 1 no enumera literalmente el «control digital».
6. Propiedad intelectual: hash del archivo original
El campo media_hash vincula un archivo con un mensaje. Si la parte demandante envió un documento con hash X el 15 de enero y el demandado registró ese mismo hash el 20 de enero, la coincidencia apoya que ambos manejaron los mismos bytes —dentro de una adquisición y cadena de custodia documentadas—, no por sí sola la fecha ni la autoría. Según el NIST, SHA-256 ofrece 128 bits de resistencia a colisiones y 256 a preimagen: una coincidencia de hash apoya la igualdad de bytes, no la cronología o la autoría.
7. Despido improcedente: mensaje eliminado
Los mensajes revocados se localizan mediante las tablas presentes en la versión examinada (por ejemplo message_revoked); un valor de status o message_type no prueba por sí solo la modalidad de borrado. Los metadatos del mensaje eliminado suelen persistir (remitente, timestamp, tipo de medio) aunque el contenido se borre. Recuperar el contenido desde el WAL es una posibilidad condicionada a que sobrevivan las páginas relevantes, no un resultado seguro.
8. Divorcios: ubicación GPS en fotos compartidas
Los campos latitude y longitude corresponden a los mensajes de ubicación compartida. La ubicación donde se tomó una fotografía es cosa distinta: solo puede valorarse si el archivo conserva sus metadatos EXIF, que se analizan por separado. En procedimientos de divorcio, una y otra pueden ser relevantes, pero no deben confundirse.
9. Amenazas: edición de mensajes
Desde 2023, WhatsApp permite editar mensajes enviados (dentro de una ventana de 15 minutos). En el esquema moderno la edición se registra en message_edit_info, que conserva referencias e instantes pero no el texto anterior. Que un mensaje fue editado sí queda registrado; recuperar la versión previa depende de que sus páginas sobrevivan en el WAL, y no siempre es posible.
10. Mensajes temporales: evidencia de ocultación
El campo ephemeral_duration indica que el remitente configuró mensajes temporales (24 h, 7 días, 90 días). Activarlos tras una citación podría valorarse como conducta obstructiva, pero el art. 264 CP (daños informáticos) exige elementos propios —borrado no autorizado, grave y con resultado grave— que una función nativa no completa por sí sola; su encaje penal depende del caso.
Extracción forense de metadatos: proceso paso a paso
Adquisición del dispositivo con acta de cadena de custodia (ISO 27037). Documentar modelo, IMEI, estado de pantalla, nivel de batería, versión de WhatsApp instalada y si está activado el modo avión.
Extracción física mediante Cellebrite UFED o GrayKey. Genera imagen bit a bit del almacenamiento completo. Calcular hash SHA-256 de la imagen inmediatamente después de la adquisición.
Localización de la base de datos en la imagen forense. En Android:
/data/data/com.whatsapp/databases/msgstore.db. En iOS:ChatStorage.sqlitedentro del dominio de grupo de la app.Descifrado si es necesario. Los backups crypt15 de Android se descifran con la clave del backup (
encrypted_backup.key, o una representación de 64 caracteres). Su disponibilidad depende del modo de copia: en la copia cifrada de extremo a extremo con contraseña, WhatsApp declara conocer la existencia de la clave, no la clave misma. La herramienta open sourcewa-crypt-toolsde ElDavoo permite el descifrado con la clave extraída.Copia de trabajo: Nunca analizar la base de datos original. Crear una copia forense y trabajar sobre ella. Documentar el hash SHA-256 de la copia.
Consultas SQL sobre la base de datos extraída para recuperar los metadatos relevantes al caso. Documentar cada consulta ejecutada.
Correlación cruzada: Si se dispone de ambos dispositivos (emisor y receptor), comparar los
received_timestampdel servidor para verificar autenticidad cruzada.Documentación de cada consulta ejecutada, resultados obtenidos y hashes de verificación en el informe pericial. Incluir capturas de pantalla del entorno SQLite y de los resultados.
Consultas SQL forenses esenciales: 8 queries para el perito
Las 8 consultas siguientes están escritas para el esquema legado (messages, con campos como data, forwarded, latitude). En una base moderna hay que reescribirlas tras inspeccionar las tablas, usando las relaciones message–chat–jid–message_media–message_location: varias, tal cual, fallarían o atribuirían semánticas inexistentes. Cada query responde a una pregunta jurídica específica.
Query 1: Mensajes entre dos números en un rango de fechas
SELECT _id, key_remote_jid, key_from_me, status,
datetime(timestamp/1000, 'unixepoch', 'localtime') as fecha_envio,
datetime(received_timestamp/1000, 'unixepoch', 'localtime') as fecha_servidor,
data, media_wa_type, media_hash, forwarded, edit_version
FROM messages
WHERE key_remote_jid = '34612345678@s.whatsapp.net'
AND timestamp BETWEEN 1704067200000 AND 1706745600000
ORDER BY timestamp ASC;Uso judicial: Acreditar comunicación entre partes en un período concreto. La doble marca temporal (dispositivo y servidor) demuestra autenticidad.
Query 2: Mensajes eliminados (recuperables via metadatos)
SELECT _id, key_remote_jid, key_from_me,
datetime(timestamp/1000, 'unixepoch', 'localtime') as fecha,
media_wa_type, status, message_type
FROM messages
WHERE status = 13 OR message_type = 15
ORDER BY timestamp DESC;Uso judicial: Demostrar que existieron mensajes que el investigado intentó ocultar. El status 13 y message_type 15 capturan tanto mensajes eliminados “para mí” como “para todos”.
Query 3: Mensajes reenviados (difusión masiva)
SELECT _id, key_remote_jid,
datetime(timestamp/1000, 'unixepoch', 'localtime') as fecha,
data, forwarded
FROM messages
WHERE forwarded > 0
ORDER BY forwarded DESC;Uso judicial: Casos de difamación o distribución no autorizada de contenido. El campo forwarded cuantifica la cadena de reenvío.
Query 4: Archivos adjuntos con hash y geolocalización
SELECT _id, key_remote_jid, key_from_me,
datetime(timestamp/1000, 'unixepoch', 'localtime') as fecha,
media_mime_type, media_size, media_hash, media_duration,
latitude, longitude, media_caption
FROM messages
WHERE media_wa_type > 0
ORDER BY timestamp DESC;Uso judicial: Vinculación criptográfica de archivos con mensajes concretos. Las coordenadas GPS son relevantes en casos de custodia, violencia de género y propiedad intelectual.
Query 5: Patrón temporal de mensajes (acoso, control)
SELECT
strftime('%H', datetime(timestamp/1000, 'unixepoch', 'localtime')) as hora,
COUNT(*) as total_mensajes,
SUM(CASE WHEN key_from_me = 1 THEN 1 ELSE 0 END) as enviados,
SUM(CASE WHEN key_from_me = 0 THEN 1 ELSE 0 END) as recibidos
FROM messages
WHERE key_remote_jid = '34612345678@s.whatsapp.net'
GROUP BY hora
ORDER BY hora;Uso judicial: Demuestra patrón de comportamiento por franja horaria. Fundamental en casos de acoso laboral fuera de horario y violencia de género con control digital.
Query 6: Mensajes editados (posible manipulación)
SELECT _id, key_remote_jid, key_from_me,
datetime(timestamp/1000, 'unixepoch', 'localtime') as fecha_original,
datetime(original_timestamp/1000, 'unixepoch', 'localtime') as fecha_edicion,
data, edit_version
FROM messages
WHERE edit_version > 0
ORDER BY timestamp DESC;Uso judicial: Detecta mensajes que fueron modificados después de su envío. Si el contenido fue editado tras una denuncia o citación, evidencia posible manipulación de pruebas.
Query 7: Participantes de grupo y sus roles
SELECT gp.gjid as grupo, gp.jid as participante, gp.admin,
wc.display_name, wc.wa_name,
CASE gp.admin
WHEN 0 THEN 'Miembro'
WHEN 1 THEN 'Admin'
WHEN 2 THEN 'Superadmin (creador)'
END as rol
FROM group_participants gp
LEFT JOIN wa_contacts wc ON gp.jid = wc.jid
WHERE gp.gjid = '120363012345@g.us'
ORDER BY gp.admin DESC;Uso judicial: Identifica todos los participantes de un grupo, sus roles y quienes tenían capacidad de administrar (borrar mensajes ajenos, expulsar miembros).
Query 8: Historial de llamadas con duración
SELECT cl.jid,
wc.display_name,
datetime(cl.timestamp/1000, 'unixepoch', 'localtime') as fecha,
cl.duration as duracion_segundos,
CASE cl.from_me WHEN 1 THEN 'Realizada' ELSE 'Recibida' END as dirección,
CASE cl.video_call WHEN 1 THEN 'Video' ELSE 'Voz' END as tipo,
CASE cl.call_result WHEN 0 THEN 'Contestada' WHEN 1 THEN 'Pérdida' WHEN 2 THEN 'Rechazada' END as resultado
FROM call_log cl
LEFT JOIN wa_contacts wc ON cl.jid = wc.jid
ORDER BY cl.timestamp DESC
LIMIT 100;Uso judicial: Acredita llamadas realizadas o recibidas. En casos de acoso, las llamadas perdidas reiteradas a horas intempestivas son evidencia complementaria.
Consultas SQL equivalentes para iOS (ChatStorage.sqlite)
Para dispositivos iOS, las queries deben adaptarse a la estructura de ChatStorage.sqlite:
Mensajes entre dos contactos (iOS)
SELECT ZWAMESSAGE.Z_PK,
ZWAMESSAGE.ZFROMJID,
ZWAMESSAGE.ZISFROMME,
ZWAMESSAGE.ZMESSAGESTATUS,
datetime(ZWAMESSAGE.ZMESSAGEDATE + 978307200, 'unixepoch', 'localtime') as fecha,
ZWAMESSAGE.ZTEXT,
ZWAMESSAGE.ZMESSAGETYPE
FROM ZWAMESSAGE
WHERE ZWAMESSAGE.ZFROMJID LIKE '%34612345678%'
OR ZWAMESSAGE.ZTOJID LIKE '%34612345678%'
ORDER BY ZWAMESSAGE.ZMESSAGEDATE ASC;Medios adjuntos con ubicación (iOS)
SELECT ZWAMESSAGE.Z_PK,
datetime(ZWAMESSAGE.ZMESSAGEDATE + 978307200, 'unixepoch', 'localtime') as fecha,
ZWAMEDIAITEM.ZMEDIALOCALPATH,
ZWAMEDIAITEM.ZFILESIZE,
ZWAMEDIAITEM.ZLATITUDE,
ZWAMEDIAITEM.ZLONGITUDE,
ZWAMEDIAITEM.ZTITLE
FROM ZWAMESSAGE
JOIN ZWAMEDIAITEM ON ZWAMESSAGE.Z_PK = ZWAMEDIAITEM.ZMESSAGE
WHERE ZWAMEDIAITEM.ZLATITUDE != 0
ORDER BY ZWAMESSAGE.ZMESSAGEDATE DESC;Nota importante: En iOS, el timestamp se almacena como “Apple Epoch” (referencia 1 enero 2001). Sumar 978307200 segundos convierte al Unix Epoch estándar. He visto informes periciales con timestamps erróneos por no aplicar esta conversión, lo que invalida la prueba temporal.
Cifrado extremo a extremo vs metadatos locales
Una confusión frecuente: el cifrado extremo a extremo (E2EE) de WhatsApp, basado en el protocolo Signal (Double Ratchet + Curve25519 + AES-256 + HMAC-SHA256), protege el contenido de los mensajes en tránsito. Ni WhatsApp ni Meta pueden leer los mensajes mientras viajan entre dispositivos. Sin embargo, los metadatos locales almacenados en msgstore.db dentro del dispositivo no están protegidos por E2EE.
| Aspecto | Contenido del mensaje | Metadatos locales | Metadatos del servidor (Meta) |
|---|---|---|---|
| Protección E2EE | Sí (en tránsito) | No aplica (almacenamiento local) | No aplica |
| Almacenamiento | En msgstore.db (texto plano local) | En msgstore.db (texto plano local) | Servidores Meta (retención no publicada; ver abajo) |
| Acceso con extracción física | Si | Si | No (requiere comisión rogatoria) |
| Acceso remoto por Meta | No (E2EE impide) | No | Sí (IPs, timestamps, contactos) |
| Modificable por usuario | No directamente en BD | No directamente en BD | No |
| Valor probatorio | Alto (con extracción forense) | Muy alto (generado por sistema) | Alto (requiere cooperación judicial) |
Datos que Meta puede entregar a las autoridades según su guía oficial, «si están disponibles» y según el tipo de requerimiento (la guía distingue datos básicos de cuenta, información de grupos y agenda «si está disponible», y advierte que no almacena los mensajes una vez entregados):
- Datos de registro de la cuenta (número, fecha de creación, última conexión)
- Información del dispositivo y de conexión, cuando conste
- Información de grupos y agenda del usuario, si está disponible
- Datos de facturación (si aplica, WhatsApp Business)
La guía contempla además solicitudes de preservación (hasta 90 días, prorrogables) y la retención limitada de mensajes no entregados (hasta 30 días). No publica una retención ordinaria fija de «30–90 días» para todo el conjunto.
Lo que Meta NO puede entregar: Contenido de los mensajes (protegido por E2EE). Por eso la extracción forense del dispositivo es insustituible.
Herramientas de extracción y análisis
| Herramienta | Tipo | Capacidad metadatos | Coste |
|---|---|---|---|
| Cellebrite UFED | Extracción física + lógica | Completa (25+ campos, WAL recovery, timeline) | Licencia comercial (bajo presupuesto) |
| Magnet AXIOM | Análisis forense | Parsing automático msgstore.db + ChatStorage.sqlite + timeline integrada | Licencia comercial (bajo presupuesto) |
| Oxygen Forensics Detective | Extracción + análisis | Descifrado crypt15, cloud extraction (Google Drive, iCloud) | Licencia comercial (bajo presupuesto) |
| MSAB XRY | Extracción + análisis | Soporte WhatsApp Android + iOS + backups cloud | Licencia comercial (bajo presupuesto) |
| Belkasoft Evidence Center | Análisis forense | Parsing WhatsApp + 400 artefactos + SQLite Viewer | Licencia comercial (bajo presupuesto) |
| Autopsy | Análisis open source | Plugin WhatsApp básico, modular con plugins de terceros | Gratuito |
| DB Browser for SQLite | Visor base de datos | Consultas manuales SQL, exportación CSV | Gratuito |
| wa-crypt-tools | Descifrado | Descifrado crypt14/crypt15 con clave extraída | Gratuito (GitHub, ElDavoo) |
| whapa | Análisis WhatsApp | Parser especializado msgstore.db, generación de reportes HTML | Gratuito (GitHub, B16f00t) |
Escenario ilustrativo 1: metadatos como prueba principal en un despido
Escenario ilustrativo. Este ejemplo es una composición didáctica de patrones habituales, no un expediente concreto: los datos, las cifras y el desenlace son ficticios y no describen una resolución judicial identificable.
Situación: Un empleado es despedido por “bajo rendimiento”. El trabajador alega que el verdadero motivo es haber rechazado peticiones del jefe fuera de horario laboral. Las capturas de pantalla que presenta son impugnadas como “manipulables”.
Análisis forense de metadatos:
Del msgstore.db del dispositivo del trabajador, los metadatos podrían revelar:
| Metadato | Hallazgo | Significado |
|---|---|---|
timestamp | Numerosos mensajes del jefe entre las 22:00 y las 02:00 | Patrón sistemático fuera de horario |
key_from_me | Ratio 15:1 (jefe:empleado) | Comunicación unidireccional, control |
status | 95% con status=5 (leido) en menos de 3 min | Presión para respuesta inmediata |
read_device_timestamp | Lecturas a las 23:00-01:00 | Empleado forzado a estar disponible |
received_timestamp | Coincide con servidor WhatsApp | Autenticidad verificada |
edit_version | 12 mensajes editados por el jefe | Intento de sanitizar contenido |
ephemeral_duration | Activado 2 días después del despido | Posible destrucción de pruebas |
Qué aportarían los metadatos: un patrón temporal sistemático fuera de horario, la asimetría de la comunicación y las marcas de edición y de mensajes temporales, que un tribunal valoraría junto con el resto de la prueba. El desenlace depende de cada procedimiento; este escenario no atribuye ninguna resolución concreta.
Escenario ilustrativo 2: estafa romántica con WhatsApp Business
Escenario ilustrativo. Composición didáctica de patrones habituales; datos, cifras y desenlace ficticios, sin corresponder a un expediente identificable.
Situación: Una víctima de estafa romántica transfirió 28.000 EUR a un estafador que operaba a través de WhatsApp Business simulando ser un inversor financiero. El estafador negó toda comunicación y alegó que la víctima inventó la relación.
Análisis forense de metadatos:
Del msgstore.db y de la tabla business_catalog del dispositivo de la víctima, los metadatos podrían mostrar:
| Metadato | Hallazgo | Significado |
|---|---|---|
key_remote_jid | Número vinculado a WhatsApp Business con nombre comercial falso | Suplantación de entidad financiera |
timestamp (3 meses) | Miles de mensajes intercambiados, con una cadencia diaria alta | Relación prolongada y sistemática |
media_hash | 12 documentos PDF compartidos (supuestos contratos) | Documentos falsos con hashes verificables |
media_wa_type = 5 (ubicación) | 3 ubicaciones compartidas por estafador: todas falsas | Geolocalización fabricada |
auto_reply (Business) | Respuestas automáticas fuera de horario configuradas | Operación profesional, no casual |
label_id (Business) | Víctima etiquetada como “cliente premium” | Sistema de clasificación de víctimas |
Query ejecutada para reconstruir el timeline de transferencias:
SELECT datetime(timestamp/1000, 'unixepoch', 'localtime') as fecha,
data, media_wa_type
FROM messages
WHERE key_remote_jid = '44XXXXXXXXX@s.whatsapp.net'
AND (data LIKE '%transferencia%'
OR data LIKE '%bizum%'
OR data LIKE '%IBAN%'
OR data LIKE '%enviar dinero%')
ORDER BY timestamp ASC;Qué aportarían los metadatos: una cronología documentada de la relación y de los envíos, útil como base de una denuncia. Una eventual reclamación bancaria por fallos en los controles antifraude debe fundarse en la norma y el supuesto concretos aplicables; este escenario no atribuye un importe recuperado ni una resolución.
Escenario ilustrativo 3: grupo de WhatsApp y difamación empresarial
Escenario ilustrativo. Composición didáctica de patrones habituales; datos, cifras y desenlace ficticios, sin corresponder a un expediente identificable.
Situación: Un exempleado creó un grupo de WhatsApp con 87 personas (clientes de la empresa) y difundió información falsa sobre la calidad de los productos, causando la baja de 23 clientes y pérdidas estimadas de 180.000 EUR.
Análisis forense de metadatos:
| Metadato | Hallazgo | Significado |
|---|---|---|
group_participants | 87 JIDs, 23 coinciden con base de datos de clientes | Difusión dirigida a cartera de clientes |
admin = 2 (superadmin) | JID del exempleado es el creador del grupo | Autoría confirmada |
forwarded = 0 en los mensajes | No marcados como reenviados | Indicio de que no proceden de una cadena de reenvío (no prueba, por sí solo, la autoría) |
media_hash de documentos adjuntos | Hashes coinciden con documentos internos de la empresa | Filtración de información confidencial |
timestamp de creación del grupo | 48 horas después del despido | Motivación retaliativa |
Qué aportarían los metadatos: la identificación del creador del grupo, la composición de la audiencia y la coincidencia de los documentos difundidos con material interno, elementos que encajarían en la competencia desleal por denigración (art. 9 LCD) y la revelación de secretos (art. 13 LCD). La calificación y el desenlace dependen del procedimiento; este escenario no atribuye una condena ni un importe.
Marco legal: admisibilidad de metadatos de WhatsApp en juicio
Ley de Enjuiciamiento Civil (LEC)
- Art. 299.2 LEC: Los medios de reproducción de la palabra, sonido e imagen y los instrumentos que permiten archivar y conocer datos son medios de prueba admisibles.
- Art. 382 LEC: reproducción de la palabra, el sonido y la imagen.
- Art. 384 LEC: instrumentos que permiten archivar, conocer o reproducir palabras, datos, cifras y operaciones. Los metadatos de msgstore.db encajan en esta categoría, valorada según las reglas de la sana crítica.
Ley de Enjuiciamiento Criminal (LECrim)
- Art. 588 sexies a): Regula el registro de dispositivos informáticos. La extracción de metadatos de un dispositivo ajeno requiere autorización judicial.
- Art. 588 bis a): principios de especialidad, idoneidad, excepcionalidad, necesidad y proporcionalidad de las medidas de investigación tecnológica.
- Art. 588 sexies c): la resolución que autoriza el registro de un dispositivo fija sus términos y su alcance.
Jurisprudencia relevante
STS 300/2015 (Sala 2.ª, ponente Marchena, ROJ STS 2047/2015, texto íntegro): sentencia fundacional, y conviene citarla por lo que dice. El caso resolvía sobre Tuenti, con doctrina formulada para «cualquiera de los múltiples sistemas de mensajería instantánea», y la pericial no es un requisito general: la impugnación de la autenticidad «desplaza la carga de la prueba hacia quien pretende aprovechar su idoneidad probatoria», y «será indispensable en tal caso la práctica de una prueba pericial». En el propio pleito no llegó a practicarse ninguna: bastó que la víctima pusiera su contraseña a disposición del juez y que el interlocutor declarara en el plenario.
STS 629/2025 (Sala de lo Penal), de 3 de julio (ROJ STS 3341/2025): confirma la línea de la STS 300/2015 —no la relaja—: la pericial se vuelve necesaria cuando la autenticidad se impugna con indicios concretos. Los metadatos forenses ayudan a acreditar esa autenticidad, sin cumplir el estándar de forma automática.
STS 603/2025 (Sala 2.ª, 1 de julio, ROJ STS 3292/2025, texto íntegro): desestimó la nulidad que la defensa pedía contra unas capturas de WhatsApp —«no procede la nulidad interesada»— y precisó que no hay norma que obligue a aportar el IMEI, ni a transcribir en presencia de las partes, ni a leer los mensajes en sala si ya constan transcritos. La integridad de la transcripción la garantiza el letrado de la Administración de Justicia. (El epígrafe «Nulidad capturas de pantalla» de su ficha nombra el motivo alegado, no el fallo.)
STC 115/2013: el Pleno denegó el amparo ante el acceso policial a la agenda de contactos de un móvil sin autorización judicial. No sostiene que todo registro de un terminal la requiera: el acceso al contenido de las comunicaciones sí, por los arts. 588 ter y 588 sexies LECrim.
Código Penal
- Art. 197 CP: acceder a datos ajenos sin autorización y con la finalidad de descubrir secretos o vulnerar la intimidad puede constituir descubrimiento y revelación de secretos; no basta el mero acceso técnico sin ese elemento.
- Art. 264 CP: el borrado o la alteración de datos ajenos, sin autorización, de forma grave y con resultado grave, puede constituir daños informáticos; una función nativa como los mensajes temporales no lo completa por sí sola.
- Art. 270 CP: la distribución no autorizada de obra protegida con ánimo de beneficio económico y en perjuicio de tercero puede ser delito contra la propiedad intelectual; el hallazgo de un hash no acredita, por sí solo, esos elementos.
Preguntas relacionadas
1. ¿Los metadatos de WhatsApp pueden falsificarse?
SQLite no aporta una autenticación criptográfica del origen de la base: su integrity_check valida el formato y la coherencia estructural, pero una modificación lógica válida puede reescribir una base coherente. Aun así, falsificar metadatos de WhatsApp sin dejar rastro es difícil, porque exigiría hacer coherentes a la vez varias tablas interrelacionadas, el WAL, el journal, las secuencias de rowid y las marcas del sistema de archivos. La valoración de una posible manipulación no se apoya en un único «sello», sino en una adquisición reproducible, los hashes de los artefactos, la coherencia entre tablas y la corroboración externa, indicando siempre sus límites.
2. ¿WhatsApp Business tiene metadatos diferentes?
Sí. WhatsApp Business almacena metadatos adicionales en tablas específicas: etiquetas de cliente (labels, con campos label_id y color_id), mensajes automáticos (auto_reply, con horarios y textos configurados), catálogo de productos (business_catalog, con nombre, descripción, precio e imagen de cada producto) y estadísticas de mensajería empresarial. La base de datos sigue siendo msgstore.db pero con tablas adicionales como business_catalog, labels y quick_replies. Estos metadatos adicionales son especialmente relevantes en disputas comerciales, reclamaciones de consumidores (Ley General de Defensa de Consumidores) y casos de estafa donde el estafador opera bajo apariencia de negocio legítimo.
3. ¿Se pueden obtener metadatos de WhatsApp sin acceso físico al teléfono?
Parcialmente, pero con limitaciones significativas. Las opciones sin acceso físico son: (1) backup de Google Drive (requiere credenciales de la cuenta Google, el backup está cifrado con clave del servidor de WhatsApp), (2) backup de iCloud (requiere credenciales Apple o autorización judicial a Apple), (3) comisión rogatoria a Meta (solo entrega metadatos del servidor: IPs, timestamps, contactos, NO contenido de mensajes), (4) WhatsApp Web genera una copia parcial en el IndexedDB del navegador. Sin embargo, para un análisis forense completo admisible en juicio, la extracción del dispositivo con cadena de custodia documentada es lo que sostiene la prueba cuando se impugna — que es el supuesto en el que la STS 300/2015 sitúa la necesidad de pericial.
4. ¿Cuánto tiempo conserva WhatsApp los metadatos?
WhatsApp conserva los metadatos en el dispositivo indefinidamente mientras la aplicación esté instalada y no se borre la conversación. En el servidor, Meta no publica un periodo de retención ordinario; su guía para autoridades distingue mensajes no entregados (hasta 30 días), solicitudes de preservación (hasta 90 días) y datos de cuenta «si están disponibles». Los backups automáticos de Google Drive conservan los datos según la configuración del usuario (diario, semanal, mensual); la ayuda de WhatsApp permite restaurar la última copia correcta disponible, no un historial de copias antiguas. Si el usuario desinstala WhatsApp, los datos persisten en el almacenamiento del dispositivo hasta que se sobrescriben, lo que puede tardar semanas o meses dependiendo del uso del dispositivo.
5. ¿Los metadatos de grupos de WhatsApp son diferentes?
Los mensajes de grupo contienen metadatos adicionales críticos para el análisis forense. El campo key_remote_jid usa el formato de grupo (120363012345@g.us), remote_resource identifica al remitente específico dentro del grupo, y la tabla group_participants refleja los miembros con sus roles y, según la versión, eventos de incorporación/salida. Los mensajes de sistema (message_type = 7) documentan altas, bajas y cambios del grupo. Estos metadatos ayudan a reconstruir participantes y cambios administrativos; ahora bien, atribuir a un mensaje concreto quién lo recibió exige correlacionar la vigencia de la membresía, los destinatarios y la fecha: el listado actual no prueba por sí solo la entrega histórica a todos.
6. ¿Qué diferencia hay entre los metadatos de WhatsApp y los de Telegram?
WhatsApp almacena todos los metadatos localmente en el dispositivo (msgstore.db), lo que facilita la extracción forense con acceso físico. Telegram, en cambio, almacena la mayoría de datos en sus servidores en la nube (excepto los chats secretos, que usan cifrado E2EE y se almacenan solo en el dispositivo). WhatsApp guarda buena parte de los metadatos en el dispositivo, mientras que Telegram mantiene la mayoría en la nube (salvo los chats secretos). Cuál resulta más accesible al perito depende de la versión, el dispositivo, el tipo de adquisición y la jurisdicción; con frecuencia el acceso a los datos de servidor de una u otra exige cooperación de la empresa o comisión rogatoria. No es una regla universal que uno sea siempre «más fácil de peritar» que el otro. Para más detalle sobre Telegram, consulta mi guía de peritaje forense de Telegram.
¿Necesitas que una conversación aguante en un juicio?
Una captura se impugna en cuanto la otra parte quiere. La certificación forense preserva el mensaje con su origen, sus metadatos y su cadena de custodia documentada.
Referencias y fuentes
WhatsApp. WhatsApp Encryption Overview, versión 9 (actualizado el 25 de febrero de 2026). Documentación oficial del cifrado de extremo a extremo; la URL viva reemplaza versiones anteriores. Disponible en: https://www.whatsapp.com/security/WhatsApp-Security-Whitepaper.pdf
NIST SP 800-101 Rev. 1. “Guidelines on Mobile Device Forensics”. Instituto Nacional de Estándares y Tecnología, directrices para forense móvil. DOI: 10.6028/NIST.SP.800-101r1
Tribunal Supremo de España. STS 300/2015 (Sala 2.ª). La impugnación de la autenticidad desplaza la carga hacia quien aporta la prueba y hace indispensable, en ese caso, la pericial. ECLI:ES:TS:2015:2047.
Tribunal Supremo de España. STS 629/2025 (Sala de lo Penal), de 3 de julio — ponente Ana María Ferrer García, recurso 10645/2024 — ROJ STS 3341/2025 · ECLI:ES:TS:2025:3341. Confirma la línea de 2015: la pericial se vuelve necesaria cuando la autenticidad se impugna con indicios concretos.
STS 603/2025, de 1 de julio (Sala Segunda, ponente Eduardo de Porres Ortiz de Urbina, recurso 8127/2022) · ECLI:ES:TS:2025:3292. Localizable por su ECLI en el buscador del CENDOJ.
Ley 1/2000 de Enjuiciamiento Civil. Artículos 299, 382 y 384 sobre medios de prueba. BOE núm. 7, de 8 de enero de 2000.
Ley Orgánica 13/2015, de 5 de octubre, de modificación de la LECrim. Artículos 588 bis a y 588 sexies a-c sobre medidas de investigación tecnológica y registro de dispositivos. BOE núm. 239.
ISO/IEC 27037:2012. “Guidelines for identification, collection, acquisition and preservation of digital evidence”. Estándar internacional para adquisición de evidencia digital.
CGPJ. Memoria anual y estadística judicial — recoge actividad de los órganos judiciales (asuntos ingresados, resueltos y en trámite). No publica desglose por tipo de prueba, de modo que ninguna cifra sobre uso de prueba digital procede de esta fuente.
ElDavoo. (2022). “wa-crypt-tools: WhatsApp crypt14/crypt15 decryptor”. Repositorio GitHub para descifrado de backups WhatsApp. https://github.com/ElDavoo/wa-crypt-tools
Última actualización: 5 septiembre 2026 Categoría: Análisis Forense (FOR-045) Nivel técnico: Avanzado Relevancia: Muy alta (WhatsApp aparece con frecuencia en procedimientos judiciales con prueba digital)
Preguntas Frecuentes
Que metadatos almacena WhatsApp en msgstore.db?
WhatsApp almacena decenas de campos por mensaje en su base de datos SQLite, cuyo esquema varía entre versiones (la tabla messages del esquema legado y el moderno message con tablas relacionadas). Incluyen el identificador del contacto (key_remote_jid), marcas temporales, el estado de entrega, referencias al medio adjunto, el indicador de reenvío y, en los mensajes de ubicación, coordenadas.
Son los metadatos de WhatsApp mas fiables que el contenido del mensaje?
Los metadatos se almacenan en la base de datos SQLite del dispositivo y los genera la aplicación, no el usuario, lo que los hace más difíciles de manipular sin dejar rastro que una captura. Conviene precisar: el cifrado AES (crypt15) protege la copia de seguridad, no la base activa; y el nombre de una columna temporal no prueba por sí solo su origen (servidor o dispositivo), que debe validarse en la versión analizada.
Donde se almacenan los metadatos de WhatsApp en Android?
En Android se almacenan en /data/data/com.whatsapp/databases/msgstore.db (requiere root o extracción física). Los backups cifrados están en /sdcard/WhatsApp/Databases/msgstore.db.crypt15.
Se pueden recuperar metadatos de mensajes eliminados de WhatsApp?
A veces. Registros o páginas anteriores pueden sobrevivir temporalmente en el WAL (Write-Ahead Log) o en espacio no asignado, hasta que se hace checkpoint, se recicla o se sobrescribe. Una extracción física puede recuperar metadatos de mensajes borrados, pero no hay una ventana temporal fija: la recuperabilidad depende de cada imagen y se comprueba en ella.
Que herramientas se usan para extraer metadatos de WhatsApp?
Las principales herramientas son Cellebrite UFED y Magnet AXIOM (extracción y parsing, con cobertura dependiente del dispositivo, la versión y el método), Autopsy con plugin WhatsApp, y consultas SQL directas sobre la base de datos extraída.
Términos Relacionados
WhatsApp Forense
Conjunto de técnicas de análisis forense digital aplicadas a la extracción, verificación y certificación de conversaciones de WhatsApp para su uso como prueba judicial. Incluye análisis de la base de datos msgstore.db, verificación de metadatos, y recuperación de mensajes borrados.
Cadena de Custodia
Protocolo legal y técnico que documenta y sostiene la integridad y la autenticidad de la evidencia digital desde su hallazgo hasta su presentación en juicio. Un defecto en ella debilita la fuerza probatoria y abre la puerta a la impugnación, pero no produce por sí solo la inadmisión de la prueba.
Evidencia Digital
Información digital (archivos, logs, mensajes) con valor probatorio en juicio. Su peso depende de que se pueda sostener su autenticidad e integridad, y la licitud de la obtención se juzga aparte, por el art. 11.1 LOPJ.
¿Necesitas un peritaje forense?
Si necesitas ayuda profesional con análisis forense digital, estoy aquí para ayudarte.
Solicitar Consulta Gratuita
