lunes, 18 de junio de 2012

Técnica sencilla para passwords seguros

Hola,

Hoy les traigo una técnica sencilla pero efectiva para asegurar nuestros passwords. Contendrá la mayoría de los requisitos para los "strongspasswords", será fácil de memorizar y además única para cada sitio o aplicación a la que tengamos que configurar usuario y contraseña ¿Genial no?

Pues bien, comúnmente, por flojera, costumbre, "mala memoria" o lo que sea, "se nos hace fácil" ponerle el mismo password a todas nuestras cuentas, a la de Google, a la Twitter, Facebook, a la computadora personal, y peor aún: PayPal y cuentas bancarias. ¡Esto es un error gravísimo! Si alguién "adivinara" o nos "hackeara" el password estaríamos perdidos, podría entrar a todas nuestras cuentas ¡y acceder a toda nuestra información!

La mayoría de los sitios cuentan con un verificador de "fortaleza" de la contraseña, pero aunque nuestro password sea fuerte, si lo usamos en todas nuestras cuentas corremos un gran riesgo.

No obstante, con tantos y tantos servicios de hoy en día, tener una contraseña para cada uno se vuelve una pesadilla, y es mucho más sencillo tener una "clave maestra", sin embargo, el riesgo es grande.

Pues bien, como una alternativa tenemos este algoritmo.

1. Toma tu "clave maestra", supongámos que es pachoncito.

2. Ahora la transformamos a lenguaje "l33t" básico, sustituyendo vocales por números, quedaría p4ch0nc1t0.

3. Ahora la "entrecomillamos" con un caracter especial de tu elección, como *, % ó $ (ó más de uno, si lo deseas). Nos quedaría así: *p4ch0nc1t0*. Esta será nuestra clave maestra básica.

4. Ahora, para hacerla única para cada sitio, repetimos la misma operación, con el nombre de cada sitio y se la agregaremos a la "clave maestra cifrada".Por ejemplo, para nuestro correo de Gmail, tomamos la palabra gmail y la pasamos a "l33t": gm41l.

5. Luego la entrecomillamos con un caracter especial (otro, por supuesto) de nuestra elección. Yo prefiero los paréntesis o corchetes como [], {} o (). Eligiendo los cuadrados nos queda [gm41l]

6. Ahora se la agregamos a la "clave maestra cifrada" como prefijo o sufijo, como quieran. Como sufijo nos queda: *p4ch0nc1t0*[gm41l]

7. Y listo, tenemos una clave bastante fuerte (letras, números, caracteres especiales y algo larga), fácil de recordar (siempre es la misma base), maestra y personalizada para cada sitio o aplicación.

Este password obtuvo 100% en el passwordmeter.
Podemos hacer lo mismo con cada sitio o aplicación que tengamos usuario y contraseña, y con esto asegurar aún más nuestros datos, tan importantes hoy en día.

Aunque alguien adivien nuestra contraseña maestra mediante social engineering y conociera que utilizas este pequeño algorito (algo ya difícil de saber) tendría que pasarla a "l33t" (bueno, no es tan difícil), adivinar también el caracter especial para entrecomillarla, pasar a l33t la segunda palabra (según el sitio que quiera acceder a tu información) y adivinar el segundo caracter especial. Algo no tan sencillo de hacer, además de que tendría que adivinar si es sufijo o prefijo.

Asimismo, los robots utilizados para creackear los passwords basados en palabras de diccionario y en generador de claves aleatorias no podrían crackear la contraseña fácilmente, por la longitud y diversificación de caracteres posibles.

Puede ser algo difícil acostumbrarse al principio, pero una vez que se tiene dominada la técnica uno lo hace naturalmente.

Espero que le sirva, y si no, al menos consideren fortalecer la seguridad de sus contraseñas.

sábado, 16 de junio de 2012

Objetivos, Estrategias, Indicadores y Metas Cuantitativas


a) Los Objetivos

Una vez que conocemos la situación actual, nos será más sencillo elaborar este importante artefacto. Deberemos plasmar de forma clara, todos y cada uno de los objetivos que tenga la organización, incluyendo los objetivos de calidad.

Los objetivos son la expresión de los resultados que necesitamos para el cumplimiento de la Misión y la Visión. Para encontrarlos, debemos responder a la pregunta: ¿Qué quiera lograr la organización? El resultado deberá ser la finalidad a la cual debe dirigir sus esfuerzos para cumplir sus propósitos.

Los objetivos tienen las siguientes características:

  • Son asequibles: Puesto que debemos poder conseguirlos, ¿No nos vamos a poner objetivos imposibles, verdad?.
  • Son significativos: Por que importan, nos son provechosos, ¿No nos vamos a poner objetivos inútiles, verdad?
  • Son generales: Por que les falta detalle, no se preocupen por ahora, ya llegaremos a eso.
  • Establecen directivas claras: Nos dicen que hacer, simple y llanamente.
  • Buscan cumplir con la misión y/o visión de la organización: ¿Ven por que es importante establecerlas primero? Los objetivos deben estar orientados a cumplir el propósito de la organización y a posicionarla en el mercado.
  • Son observables: Son notorios, podemos monitorear su avance, caso contrario, resultaría inútil el tenerlos.
  • Conllevan actividades implícitamente: Nos dicen que hacer y podemos inferir que tendrémos que hacer para lograrlo.
  • Son organizacionales: Estos comunmente se relacionan con Incrementar los Ingresos y Reducir los Costos, para Maximizar la Utilidad. Todos los objetivos de derivan de esto.

Ejemplos de objetivos son:
  1. Incrementar las ventas con relación al año anterior.
  2. Aumentar la eficiencia del proceso de desarrollo para reducir los tiempos de entrega.
  3. Abrir una nueva área de mercado, integrando más productos y servicios a nuestro catálogo.


¿Que no son objetivos?
Sentencias como: “Ser una empresa líder en el ramo” ó “Brindar a nuestros clientes el mayor grado de satisfacción”. Enunciados como los anteriores pertenecen a la misión y/o a la visión, no a los objetivos, ya que son demasiado generales y aunque establecen un propósito organizacional no cumplen con todas las caracterísitcas arriba citadas.

Es altamente recomendable enumerar e identificar por clave cada objetivo específico, y priorizarlos por orden de importancia para al organización.


b) Las Estrategias

Si los objetivos son el que, las estrategias son el cómo. Debemos tener bien definidos los objetivos para poder determinar las estrategias, es lógico, debemos saber que tenemos que hacer para después ponernos a pensar cómo vamos a hacer para lograr cumplir con los objetivos.

Para obtenerla, debemos realizarnos la pregunta ¿Cómo puedo conseguir mis objetivos?, y responderla para cada uno de los objetivos en particular.

Es altamente recomendable enumerar e identificar a las estrategias por clave, tal y como con los objetivos y establecer una tabla de referencias cruzadas entre las estrategias y los objetivos.


c) Los indicadores

Un indicador es una magnitud que se utiliza para medir en concreto un resultado obtenido cuantitativamente y nos permite calificar un concepto abstracto. En español plano, es la unidad de medida del éxito de nuestros objetivos.

En el ejemplo de incremento de las ventas, el indicador principal será el total de facturación, independientemente de la cantidad de ventas realizadas, por ejemplo.

Para obtenerlos, simplemente nos haremos la pregunta ¿Qué usaremos para medir nuestro éxito? Debemos establecer al menos un indicador para cada objetivo que hayamos establecido.

Asimismo, es conveniente enumerar e identificar por clave a nuestros indicadores, y establecer una referencia cruzada con nuestros objetivos. Esta manera de “mapear” la información nos será muy útil.


d) Las metas


Las metas son la cuantificación de nuestros objetivos. Nos permiten medir la eficacia de nuestras estrategias.

Una vez que tenemos determinados nuestros indicadores, establacemos la meta de manera cuantitativa con los mismos.

En nuestro ejemplo, el indicador para incremento de ventas es el total de facturación. Entonces, le ponemos número a este factor, ya sea directamente o en porcentaje, ejemplo:

Nuestra meta para el total de facturación de este año deberá ser de $ 500,000.00.

ó

El total de facturación deberá ser 20% mayor que el año anterior.

Es vital establecer cuantitativamente las metas y establecerlas lo mas claro posible. Es altamente recomendable enumerarlas e identificarlas por clave, así como establecer una tabla de referencias cruzadas con nuestros objetivos.

Entender la Situación Actual


La situación actual abarca factores tanto externos como internos. Para ello echamos mano del análisis FODA. ¿Qué es el FODA? Es un documento en donde plasmamos nuestras:
  • Fortalezas
  • Oportunidades
  • Debilidades
  • Amenazas

Podemos representarla fácilmente mediante esta matriz

Situación actual
Factores Externos
Factores Internos
Oportunidades
Amenazas
Fortalezas
Debilidades
1
2
3
1
2
3
1
2
3
1
2
3
...

Para determinar las oportunidades debemos tomar en cuenta:
El mercado: Detectar oportunidades es más sencillo si ya se tienen clientes, mediante estudios de semáforo, para determinar sus necesidades. Si no se cuenta con una cartera establecida de clientes, la cosa se complica, pero no es imposible, mediante el estudio de las tendencias y la demanda en servicios de tecnologías de información.

Para determinar las amenazas debemos tomar en cuenta:
A la competencia: Un buen estudio de benchmarking nos arrojará información valiosa para compararnos con nuestros competidores en precio, servicio, calidad y oferta.
A nuestros clientes: Una buena encuesta de grado de satisfacción nos podrá alertar si algún cliente desea prescindir de nuestros servicios.

Para detectar nuestras fortalezas debemos tomar en cuenta:
  1. Nuestros objetivos.- De nada nos sirve una ventaja que no esté orientada a cumplir con nuestros objetivos
  2. Métricas.- Debemos determinar de manera cuantitativa nuestra ventaja.

Debemos plasmar claramente cuáles son nuestros puntos fuertes.

Para detectar nuestras debilidades debemos tomar en cuenta:
Métricas.- Determinar objetivamente en que estamos fallando
Clientes.- De nuevo, hechando mano de un estudio de semáforo, podemos averiguar nuestros puntos débiles desde el mejor punto de vista: El de nuestros clientes.
Evaluaciones externas.- Las evaluaciones de un tercero son buena referencia también, ya que podemos encontrar en ellas nuestras áreas de oportunidad de mejora.

Misión, Visión y Valores


Teníamos que comenzar con esto, ¿cierto? Es un clásico en las implementaciones de los procesos de calidad, por supuesto, pero hay una razón para ello: Si comenzamos por el principio, es este: ¿Por qué existe la organización? ¿Cuál es su propósito? ¿A dónde se quiere llegar?

Estas preguntas deben ser respondidas en la misión y en la visión. La misión es la razón de ser de la organización.

La misión debe ser congruente con la organización, válida y funcional. Debe dejar plasmados que hace la organización, cómo lo hace y debe llevar el nombre de la organización. Por ejemplo:

La misión de “Empresa X” es desarrollar software de calidad para las empresas del sector financiero, proporcionando servicios de desarrollo de clase mundial, confiables robustos y versátiles, que permitan a nuestros clientes potenciar sus negocios mediante el uso de tecnología de punta.

La visión es la posición en el mercado que desea obtener la organización. La visión determina las pretenciones de la organización, está claramente ligada a los requerimientos y necesidades de los clientes y a las características que tiene la organización para satisfacer dichas necesidades.

Por ejemplo:

La visión de “Empresa X” es ser una compañía líder en el campo de desarrollo de software para el sector financiero, reconocida a nivel internacional por el cumplimiento eficiente, efectivo y eficaz de nuestros proyectos, así como nuestra orientación a la satisfacción de nuestros clientes.

Los valores determinan las actitudes y políticas que deben respetar todos los miembros de la organización, expresados en forma de cualidades y virtudes. Por ejemplo:

Los valores de la “Empresa X” son Honestidad, Responsabilidad, Entrega, Liderazgo y Proactividad.

No se debe tomar a la ligera este primer paso, es decir, no se deben redactar misión, visión y valores de forma bonita solo para cumplir la norma, por el contrario, se debe ser honesto y plasmar la realidad en ellos, poner por escrito nuestro propósito, nuestros deseos y nuestros ideales, y asegurarnos que todas nuestras acciones posteriores sean congruentes con estos.

La Gestión de Negocios


Siempre es bueno comenzar por aquí, por varias razones. La primera es que realmente todo se inicia por la gestión de negocios, la organización fue comenzada por alguien quien puso su dinero y esfuerzo en dedicarse a producir y vender software, así tuvo que empezar todo, así que es bueno que comience por aquí.

Otra razón importante es que los administradores suelen delegar las actividades operativas, aburridas y monótonas, a los subordinados, y la implementación de un modelo de calidad suena irremediablemente aburrido.

Por ello, comenzado por la gestión de negocios, nos aseguramos de que se involucre directamente a la administración, lo cual es mandatorio para la implementación del modelo.

Implementación del Modelo


Los procesos son efectuados por miembros de la organización, los cuales tienen roles específicos. Los roles son responsabilidades de los miembros para llevar a cabo actividades especificas.

Cada proceso debe tener un responsable, que adquirirá el rol de responsable de proceso. Existen muchos otros roles, según las actividades que tengan que realizarse en cada proceso, por ejemplo: clientes, analistas, testers, etc. Los roles implican función.

Durante una implementación, cada miembro de la organización deberá llevar a cabo uno o más roles. Los roles que serán evaluados serán los responsables de proceso (el responsable de la gestión de negocios, el responsable de la gestión de procesos, etc).

Aunque se dan casos en empresas muy pequeñas de que una sola persona sea responsable por dos o más procesos, esto no es recomendable.

Pues bien, ¿por dónde empezar? Es recomendable comenzar desde arriba, por la Gestión de Negocios, seguida de la de procesos, proyectos, recursos y finalmente las áreas operativas como Administración de Proyectos específicos y Desarrollo y Mantenimiento de Software. No obstante, nuestro primer paso debe ser preparar el terreno.


La base de conocimientos

¿Qué necesitaremos? Si vamos a implementar un proceso de calidad, necesitaremos un lugar para archivar y administrar correctamente la información, un repositorio. Llamaremos a este lugar, físico o lógico, Base de Conocimientos.

Aunque existe un proceso completo sobre este tema, recomendamos preparar este repositorio antes de comenzar a documentar. Asimismo, aunque existe software especializado para llevar a cabo esta labor, disponible a la venta en la entidad dictaminadora (NYCE), recomendamos utilizar un repositorio propio para la primera vez que se implementa la norma.

Recomendaciones:
  • Tener un servidor de archivos, ya sea mediante carpetas compartidas o por protocolo FTP.
  • Establecer un directorio como principal, con el nombre de “BaseDeConocimientos[Empresa]”.
  • Dentro del directorio principal, tener un subdirectorio para cada uno de los procesos.
  • Dentro de cada subdirectorio, guardar los documentos pertenecientes a cada proceso.
  • Llevar una bitácora de implementación y minutas de cada reunión.

TIP
Esto nos servirá para mantener ordenada nuestra documentación. Uno de los principales puntos a evaluar en la dictaminación es precisamente tener ordenada y a la mano la documentación necesaria. A medida que avancemos, y sobre todo al llegar al proceso de Conocimiento de la organización, nos extenderemos en este tema.

Por el momento, damos por hecho que se tiene acceso a un servidor de archivos, y que él se encuentran los subdirectorios correspondientes a cada proceso. Ahora sí, podemos comenzar con la implementación y la documentación. Comenzaremos por el principio, todo comienza con la Gestión de Negocios

Comenzando con Moprosoft

Piensa en Moprosoft como un “check list” de todo lo que debes cumplir para producir software de calidad, pero desde un punto de vista organizacional.

Ello implica que se aplica el principio administrativo, es decir, que gira en torno al ciclo de la administración: Planeación, Organización, Ejecución y Control.

Moprosoft primero se organiza, se estructura en categorías, procesos y roles. Luego, a cada proceso aplica el principio administrativo: Planeación, Preparación para la implementación (la Ejecución) y Evaluación y Control (el Control) para sus actividades.

También implica que toda la organización será evaluada, desde el gerente general hasta el programador, e implica que el o los responsables de la implementación dentro de cada empresa deben ser administradores (gestores, supervisores, encargados, etc) no desarrolladores.

Un error común - y regularmente garrafal - que puede cometer la administración es encargar la implementación del modelo al departamento de desarrollo. Esto no debe ocurrir, la implementación del modelo debe ser responsabilidad de toda la organización. Claro, debe existir un líder de proyecto, pero su área de expertitud debe ser la gestión y los procesos de calidad, no el desarrollo de software.

Cómo está estructurado Moprosoft


La base del modelo de procesos es, lógicamente el proceso.

Entendemos por proceso el conjunto de actividades a efectuar para generar un producto.

Un producto puede ser cualquier elemento generado, desde un documento hasta todo un sistema informático.

Moprosoft organiza a los procesos en categorías. Estas son:
  1. Categoría de Alta Dirección (DIR)
  2. Categoría de Gerencia (GER)
  3. Categoría de Operación (OPE)

La Categoría de Alta Dirección (DIR) involucra los procesos de negocio, de alta dirección, es decir, a los dueños o socios y a los gerentes generales o administrativos. Es la categoría de jerarquía más alta.

La Categoría de Gerencia (GER) involucra, como su nombre lo indica, a los procesos de gerentes o jefes de departamento. Tiene una jerarquía media.

La Categoría de Operación (OPE) involucra a los procesos de operación, es decir a los trabajadores, los que realizan el software e incluye a los analistas, programadores, testers, etc.

La Categoría de Alta Dirección (DIR) manda y establece lineamientos, reglas a seguir por la Categoría de Gerencia (GER), ésta a su vez se encarga de que la Categoría de Operación (OPE) realice el trabajo y de comunicarle resultados a la Categoría de Alta Dirección (DIR).

Es como en cualquier empresa, y hasta podrían estar pensando “eso ya lo sé, lo hago todos los días” y tienen razón, no obstante, un punto muy importante en la implementación es que se deben llamar a las categorías, procesos y actividades por el nombre que la norma indica. Esto es vital para pasar las evaluaciones. Además, se trata establecer, documentar y seguir un modelo, no solamente de ejecutar la operación.

Muy bien, prosigamos con la estructura de Moprosoft y la organización de los procesos. Moprosoft evalúa que en la organización se lleven nueve procesos y estos son, clasificados por categorías:

  • Categoría de Alta Dirección (DIR)
    • 1. Gestión de Negocio
  • Categoría de Gerencia (GER)
    • 2. Gestión de Procesos
    • 3. Gestión de Proyectos
    • 4. Gestión de Recursos
      • 5. Recursos Humanos y Ambiente de Trabajo
      • 6. Bienes, Servicios e Infraestructura
      • 7. Conocimiento de la Organización
  • Categoría de Operación (OPE)
    • 8. Administración de Proyectos Específicos
    • 9. Desarrollo y Mantenimiento de Software


A continuación describiremos brevemente cada uno de los procesos. No son las definiciones de la norma, nos referiremos a las siguientes descripciones como funcionales.

Gestión de Negocios
Es el proceso administrativo, en el que se organiza a los demás procesos, se trazan objetivos, se establecen estrategias, se evalúan los resultados.

Gestión de Procesos
Este proceso se encarga de establecer y documentar los procesos. Se podría decir que es un “meta-proceso”.

Gestión de Proyectos
Como su nombre lo indica, gestiona los proyectos, se asegura de que se cumplan los objetivos, de que los proyectos se realicen.

Gestión de Recursos
Este proceso es el encargado de proveer los recursos necesarios a la organización y llevar un control sobre los mismos.

Recursos Humanos y Ambiente de Trabajo
Otro proceso con nombre bastante descriptivo, administra los recursos humanos y evalúa el ambiente de trabajo.

Bienes, servicios e infraestructura
Establece las actividades de adquisición de, como su nombre lo indica: Bienes, servicios e infraestructura.

Conocimiento de la organización
Establece los lineamientos para administrar la base de conocimientos de la organización (un repositorio de procesos y documentos, esencial para el cumplimiento del modelo).

Administración de proyectos específicos
Proceso que determina las actividades para ejecutar un proyecto en tiempo y forma.

Desarrollo y mantenimiento de software
Establece las actividades para la producción de software.

Pues bien, ya sabemos de qué se trata Moprosoft y cómo está estructurado, por tanto, en próximas entradas paseremos inmediatamente a la implementación.