Preguntas separadas por materias en sistema generador de exámenes y calificaciones

Generador de exámenes con calificaciones automáticas

En el post de hoy te voy a mostrar un generador de exámenes o pruebas para imprimir. No solo te permitirá crear exámenes e imprimir uno por cada alumno o estudiante, también podrás:

  • Agregar y modificar las preguntas, marcando la respuesta correcta
  • Ver la vista previa de impresión
  • Imprimir exámenes
  • Calificar examen generado ingresando solo las respuestas
  • Imprimir la hoja de respuestas
  • Imprimir clave del examen según respuestas correctas
  • Generar hojas de respuesta calificadas
  • Mostrar e imprimir portadas calificadas
  • Generar resultados y gráficas

Básicamente podrás generar exámenes, imprimir cada uno por cada alumno, registrar las calificaciones de manera rápida gracias a la hoja de respuestas generada automáticamente y luego dejar que el programa calcule las calificaciones.

Por cierto, el programa que te mostraré es totalmente gratis y tiene más cosas como el registro de asistencias y tareas que ya mostré en un post anterior:

Software para control de asistencia y tareas escolares – Gratuito

Veamos cómo usarlo.

(más…)

Firma digital con RSA y Dart aplicable a Flutter

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.

Firma digital con RSA y Dart aplicable a Flutter

Firma digital con RSA y Dart aplicable a Flutter

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.

(más…)

Firma digital con Golang y RSA

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.

(más…)

Ejercicio resuelto en Python - Agenda con nombre y teléfono en diccionario

Python: ejercicio de agenda

Hoy vamos a resolver un ejercicio simple con Python. Se trata de una agenda donde el usuario podrá introducir contactos hasta que diga que no desea insertar más y entonces mostrar todos los valores introducidos por pantalla.

No podrá guardar nombres repetidos. Esta agenda será un diccionario cuya clave será el nombre de los contactos y cuyo valor serán sus teléfonos.

Entonces usaremos diccionarios, funciones y ciclos en el lenguaje de programación Python.

(más…)

Encriptar y desencriptar información con JavaScript usando AES

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.

Encriptar y desencriptar información con JavaScript usando AES

Encriptar y desencriptar información con JavaScript usando AES

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.

(más…)

Abrir base de datos SQLite3 cifrada

Abrir base de datos SQLite3 cifrada

En este post te mostraré cómo abrir una base de datos de SQLite3 cifrada o protegida por contraseña (obviamente tomando en cuenta que cuentas con la clave de cifrado).

Suele pasar que intentamos abrir una base de datos de SQLite 3 cifrada, pero al abrirla con el programa DB Browser for SQLite3 nos marca el error de: file is not a database.

Esto sucede porque no se reconoce como una base de datos normal, ya que está cifrada. Así que hoy te enseñaré a explorar una base de datos de SQLite3 cifrada usando DB4S.

(más…)

Por parzibyte, hace
Simulando cajero automático en C++

C++ | Simulador de cajero automático

Siguiendo con los ejercicios de programación en C++ vamos a ver la solución a otro de ellos. En este caso se trata de simular un cajero automático de manera muy simple. El ejercicio dice así:

Realice un programa en C++ el cual simule todas las transacciones que realiza un cajero automático. El mismo debe desplegar el menú, indicar cuando la clave es incorrecta y enviar el mensaje cuando no hay suficientes fondos.

(más…)

Python: ordenar arreglo especificando clave

En este post te mostraré cómo ordenar un arreglo o lista en Python especificando la clave de comparación. Es decir, ordenar un arreglo complejo especificando cómo comparar los valores para ordenarlos.

Esto también es conocido como ordenar una lista especificando una función de comparación o compare function, solo que presta atención, aquí vamos a especificar la clave, cosa que al final tendrá el mismo resultado para ordenar un arreglo de manera personalizada.

(más…)

Python: recorrer lista con índice

En este post te mostraré cómo obtener o llevar cuenta del índice actual al recorrer una lista en el lenguaje de programación Python.

Normalmente en Python iteramos una lista a través del valor que tiene, pero en ocasiones vamos a querer acceder al índice numérico; y es lo que te mostraré hoy.

(más…)

Obtener clave de red WPA2 con Aircrack-ng

Hackear WPA2 con aircrack

Este no es un post falso ni con clickbait. Realmente te mostraré cómo puedes obtener la clave de una red WiFi que esté protegida con WPA2 usando aircrack.

Recuerda que para que esto funcione debes contar con aircrack-ng instalado. Si usas Debian o uno de sus derivados simplemente ejecuta sudo apt-get install aircrack-ng

También necesitas tener un adaptador inalámbrico (tarjeta de red, antena, como le llames) que soporte el modo monitor.

Recuerda que todo esto no es simple magia, hay varios factores que intervienen. Por cierto, yo solo te muestro esto con fines educativos y no me hago responsable de lo que puedas llegar a hacer con esto.

(más…)