Ir al contenido principal

Entradas

El problema de las contraseñas y por qué es buena idea el doble factor de autenticación

Allá por la década de los 60, Fernando José Corbató, científico de computación del MIT, tuvo la idea de emplear contraseñas para proteger el acceso a archivos en ordenadores compartidos. Por aquel momento, el uso de ordenadores estaba bastante poco extendido y las primeras redes eran más bien parcelas independientes que conectaban unos cuantos equipos dentro de alguna que otra universidad. Nada que ver con Internet, cuya existencia, dimensión y alcance eran, por aquel momento, inimaginables para la mayoría. En el diseño de aquellos sistemas la seguridad no fue una prioridad. La mayoría de los ataques informáticos comenzaron a surgir varias décadas más tarde cuando los primeros PCs empezaron a estar al alcance de todo el mundo e Internet empezó a tomar forma. No se rompieron mucho la cabeza para pensar en diseñar sistemas seguros contra amenazas que aún no habían sido inventadas. Esos cimientos que se contruyeron con la seguridad como última prioridad son los mismos sobre los que se asi
Entradas recientes

Generación procedimental desde 0 con Python

Los mundos procedimentales aparecen en númerosos videojuegos de bastante éxito, pero probablemente el ejemplo más emblemático sea Minecraft. En español, es habitual llamarlos procedurales como consecuencia de un error de traducción, pues viene del inglés "procedural", derivado de "procedure". Esta palabra, traducida al español, significa "procedimiento". ¿Por qué estoy llenando texto con comentarios sobre rigor lingüistico cuando lo único que quiere el lector es saber cómo crear mundos de forma automática? Pues porque la palabra "procedimiento" ya nos va aclarando de qué va este tema de la generación mágica y aleatoria. La generación procedimental se basa en un algoritmo (o procedimiento) que automatiza las reglas que un computador debe seguir a la hora de crear un mundo virtual. Esta técnica no se limita a mundos en videojuegos, se puede automatizar la generación computacional de prácticamente cualquier cosa: modelos 3D, personajes, animaciones,

Funciones hash: el invento que protege tus contraseñas de los hackers y te permite minar criptomonedas.

La criptografía es casi tan antigua como la necesidad de ocultar la información escrita. Son muy diversas las técnicas que se han empleado desde siglos atrás para transformar un texto en claro en uno cifrado, ilegible para quien no lo pueda descifrar. Uno de los ejemplos clásicos y más sencillos es el cifrado César, utilizado por Julio César para comunicarse con sus tropas durante la guerra contra los galos. Este mecanismo de cifrado se basa en sustituir cada letra del mensaje por aquella que se encuentra desplazada n posiciones en el alfabeto. Por ejemplo, si n = 2 , la sustitución alfabética sería la siguiente: Alfabeto en claro:  ABCDEFG HIJKLMNÑOPQRSTUVWXYZ   Alfabeto cifrado:  CDEFGHIJKLMNÑOPQRSTUVWXYZAB Y si cifrasemos la palabra HOLA  con n = 2  obtendríamos el siguiente resultado:  H -> J, O -> Q, L ->N, A -> C:  JQNC Lo que llamaríamos la clave de cifrado es, en este caso  n = 2 . Como es lógico, cualquiera que conozca la clave, podrá revertir el cifrado desplazan

Desarrollando Un Juego Para Android - Road Dash

Me he dedicado estos días a publicar el segundo juego completo que desarrollo para Android. Comenzaba a desarrollar Road Dash el pasado mes de marzo y durante los siguientes meses, me he dedicado a trabajar en el proyecto de forma intermitente según me permitían los estudios y la motivación. Finalmente, he terminado de pulir y depurar los últimos detalles durante este mes de septiembre y vengo a compartir en este texto aquellos aspectos que creo más interesantes del desarrollo del juego. Los enlaces de descarga son estos: Play Store:  https://play.google.com/store/apps/details?id=com.JorgeFernandezApps.Roaddash Amazon App Store:  https://www.amazon.es/Jorge-Fern%C3%A1ndez-Road-Dash/dp/B08JKZS7KV/ref=sr_1_1?__mk_es_ES=%C3%85M%C3%85%C5%BD%C3%95%C3%91&dchild=1&keywords=road+dash&qid=1601245278&sr=8-1 Road Dash consiste en controlar un coche a lo largo de una carretera recta infinita con el fin de esquivar los obstáculos que en ella se encuentran. Lleva la tarea adicional d

Hiking Simulator

Si hay un mercado en constante apogeo y que no decae es el de los juegos para móvil. Las tiendas de apps, ya sean Play Store, App Store de Apple o Amazon App Store entre otras muchas están siempre repletas de nuevos juegos y es que para pequeños desarrolladores sin grandes fondos para invertir es muy fácil publicar y monetizar su contenido de esta forma. Para poder publicar una app en Play Store sólo te exigen una tasa de 25 dólares para registrarte como desarrollador. Después podrás publicar tu contenido sin pagar más (previa revisión por su parte de cada app para garantizar que no distribuimos malware a todo el planeta). Amazon App Store ni tan siquiera exige esa tasa y publica las apps que subas en cuestión de minutos sin una revisión tan exhaustiva. Esto en cuanto a Android. Apple, como de costumbre, es más exigente económicamente y cobra a los desarrolladores una tasa anual de 99 dólares. En todo caso, publicar apps para móvil es relativamente fácil, sobretodo para

Comentarios en programación Java.

En la breve publicación de hoy vamos a tratar la importancia de añadir comentarios a nuestro código para facilitar la lectura y comprensión del mismo, tanto por otros programadores, como por nosotros mismos. Comentar el código es algo muy simple, que se tarda muy poco en hacer y que sin embargo marca una gran diferencia al comprenderlo. Un comentario debe ser breve, conciso y decriptivo, destacando lo relevante de un fragmento concreto de código, por ejemplo, qué dato almacena una variable, que función realiza un método específico (los métodos los trataremos más adelante) o simplemente información adicional como el autor / autores del código, la fecha en que se ha escrito o de qué versión del programa se trata. Básicamente consiste en añadir al código un texto escrito en lenguaje natural por nosotros mismos. Esto se puede hacer de dos formas: comentando una única línea, o varias a la vez. Comentario en una sola línea:  Se escribe //  e indica que todo lo que aparezca en la

PC Gaming por piezas por 500 euros. [2019]

Este ordenador por piezas de preseupuesto medio-bajo será capaz de correr con buena calidad gráfica y tasas de frames más que aceptables casi cualquier videojuego actual. Saldrá por menos de 500 euros (al menos en España), y podrá ser incluso más barato aprovechando ofertas de Black Friday.  Enlace a la configuración en pccomponentes: https://www.pccomponentes.com/configurador/398cA0522 Importante tener en cuenta que en la lista no incluyo el sistema operativo. Asumo que cada uno puede elegir el que prefiera. Eso sí, para quien esté interesado en adquirir Windows 10, se puede encontrar a precio muy asequible en Instant Gaming. Estos son los componentes (añado enlaces a la página española pccomponentes para más detalles y compra): Procesador:  Intel Core i3-9100F 3.6GHz. Cuatro núcleos y frecuencia de 3.6GHz llegando a 4.20GHz en overclock. https://www.pccomponentes.com/intel-core-i3-9100f-36ghz Placa base:  MSI B360M PRO-VDH. Cuenta con todas las funcionalidade