Monitorear cámara web con Telegram y JavaScript

Hace algún tiempo te enseñé a tomar fotos con cualquier cámara y en cualquier dispositivo usando JavaScript. Hoy te voy a enseñar cómo tomar una foto de la cámara y enviarla a Telegram desde cualquier dispositivo, sea móvil o de escritorio. Vas a aprender a tener un tipo de cámara de vigilancia fácil, configurable y ejecutable en cualquier teléfono o computadora, todo gracias al poder de JavaScript en el navegador web y la API de Bot de Telegram. Por mencionar algunas ventajas: las fotos tomadas serán almacenadas en la nube de manera segura, puedes tenerlas en privado o compartirlas con un grupo o canal, no hay límite de almacenamiento en la nube y puedes usar cualquier dispositivo con cámara sin instalar nada. ...

mayo 22, 2024 · 6 min · 1162 palabras · Parzibyte

¿Cómo almacenar contraseñas en bases de datos?

El día de hoy te voy a compartir un poco de mi experiencia como programador al guardar contraseñas en bases de datos, sin importar lenguaje de programación ni motor de base de datos. Te daré algunos consejos para almacenar passwords en una base de datos y que obviamente queden seguras para que ni siquiera tú sepas cuál es la contraseña pero puedas resetearla en caso de ser necesario. ...

noviembre 26, 2022 · 6 min · 1105 palabras · Parzibyte

Firma digital con Dart y RSA

El día de hoy vamos a ver cómo firmar un mensaje de manera digital con Dart. Al hacerlo con Dart vamos a poder aplicar esto con Flutter más adelante, y así podremos firmar digitalmente en Android y cualquier otra plataforma soportada por Dart. Recuerda que vamos a necesitar un par de claves: la privada y la pública. Ambas necesitan funcionar con la encriptación RSA. Por cierto, toma en cuenta que vamos a firmar, no a encriptar. Lo que vamos a hacer es verificar la autenticidad de un mensaje, pero no vamos a esconder ni proteger nada. ...

noviembre 25, 2022 · 4 min · 819 palabras · Parzibyte

Firma digital con Go y RSA

El día de hoy vamos a ver cómo firmar y verificar un mensaje con Golang y un par de claves RSA. Es decir, por un lado veremos cómo firmar digitalmente un mensaje usando una clave privada y por otro lado vamos a ver cómo comprobar la autenticidad de dicho mensaje. Recordemos que las firmas digitales tienen el propósito de comprobar la autenticidad de un mensaje, no de ocultarlo (de eso se encarga la criptografía). Veamos entonces cómo firmar y verificar firmas con Go. ...

noviembre 25, 2022 · 7 min · 1312 palabras · Parzibyte

Generar par de claves RSA con OpenSSL (privada y pública)

En el corto tutorial de hoy vamos a ver cómo generar una clave pública y privada para el sistema criptográfico RSA. Técnicamente hablando usaremos openssl para generar una clave privada RSA y luego vamos a derivar la clave pública de esta misma. ...

noviembre 24, 2022 · 3 min · 466 palabras · Parzibyte

Leer código de barras con cámara y enviarlo a página web

En este post te mostraré cómo leer un código de barras con una cámara usando JS (desde un teléfono, tableta o computadora con cámara web) y además enviarlo a una página web. Esto nos va a permitir: Usar la webapp expuesta aquí como una API, sin que tu sitio necesite HTTPS Saltar la seguridad del acceso a la cámara solo en HTTPS, pues puedes leer el código de barras con la cámara y luego enviarlo a tu verdadero sitio web Al final esta aplicación web será como una API gratuita para leer un código de barras y enviarlo a tu sitio web. Veamos los detalles a continuación. ...

octubre 6, 2022 · 3 min · 490 palabras · Parzibyte

Imprimir en red usando plugin para impresora térmica

En este post te mostraré cómo imprimir en red local usando mi plugin para impresión en impresoras térmicas desde JavaScript. Te enseñaré a saltarte las limitaciones de seguridad del navegador para poder invocar http desde https en cualquier lenguaje de programación y plataforma. ...

mayo 29, 2022 · 3 min · 459 palabras · Parzibyte

Encriptación con JavaScript del lado del cliente usando la Web Crypto API

En este post de programación con JavaScript en el navegador veremos cómo encriptar y desencriptar datos usando una API nativa, segura y confiable. Vamos a usar la interfaz Crypto a través de window.crypto. Al final podremos encriptar y desencriptar archivos usando una contraseña, derivando una clave de la misma y usando AES para el cifrado de datos. Nota: voy a usar cifrado y encriptado como sinónimos para referirme a la encriptación de información. Por cierto, usaremos la encriptación simétrica aunque también es posible usar la asimétrica con claves públicas y privadas. ...

febrero 14, 2022 · 5 min · 980 palabras · Parzibyte

The request client is not a secure context and the resource is in more-private address space local.

Recientemente (al momento de escribir este post) Chrome se ha actualizado para ser más seguro, y en ocasiones nos va a lanzar el error que dice: Access to fetch at ‘dominio’ from origin ‘otro_dominio’ has been blocked by CORS policy: The request client is not a secure context and the resource is in more-private address space local. Es un error de CORS pero no de los errores que conocemos. Este es nuevo, y dice: The request client is not a secure context and the resource is in more-private address space local. Así que en este post te mostraré de qué va ese error y por qué me interesa. ...

octubre 1, 2021 · 2 min · 358 palabras · Parzibyte

PHP - Login con límite de intentos usando MySQL

En este artículo de programación con PHP y MySQL te mostraré cómo implementar un login, autenticación o inicio de sesión con límite de intentos, teniendo a MySQL como base de datos. Con el límite de intentos me refiero a que cuando el usuario coloque la contraseña incorrecta, se irá aumentando un contador de errores o de intentos fallidos. Si llega a determinado número, se bloqueará el acceso hasta que el contador se reinicie. Este ejemplo completo de código que te mostraré tiene el módulo de login, de creación de usuarios y de usuarios en donde se pueden borrar los intentos fallidos de cualquier usuario. Además, solo los usuarios que hayan iniciado sesión pueden acceder a la administración de usuarios del sistema. Recuerda que para guardar todos los datos vamos a usar MySQL y vamos a usar PHP como lenguaje de programación. ...

enero 21, 2021 · 8 min · 1689 palabras · Parzibyte