sábado, 18 de abril de 2020

Refinamiento

En las empresas de desarrollo de software, suele existir la figura del analista, experto encargado de hablar con el cliente, observar la forma en que este trabaja y formular las preguntas adecuadas para que el proceso de especificación sea lo más correcto posible.
En empresas pequeñas, es posible que no exista la figura del analista y es habitual que los programadores independientes no tengan tanta experiencia a la hora de identificar las necesidades del cliente. En estos casos, una segunda lectura pormenorizada de la especificación puede contribuir a afinar los detalles inicialmente ambiguos. Por ejemplo, para el programa del apartado anterior, se podrían detectar las siguientes carencias:

  • ¿No se podrán consultar los datos si no se hace una búsqueda?
  • ¿Qué datos de cada persona que se encuentre a través de las búsquedas de texto deben mostrarse?
  • ¿Qué datos de cada persona que cumpla años deben mostrarse?
  • ¿Los datos se guardarán automáticamente?
  • ¿Es necesario guardar los datos en fichero?
  • ¿No será necesario modificar ni borrar datos?
Así, en la realización de un proyecto real, es cada vez más habitual repetir varias veces la secuencia análisis-diseño-implementación-verificación, proceso que incluye reuniones con el cliente entre una secuencia y otra con el fin de que los errores y las carencias del programa puedan ser detectadas cuanto antes.

Análisis

1.1 Características del análisis de requisitos
Si se desea crear un programa en un tiempo limitado y con unos costes limitados, el primer paso consiste en pensar qué tareas debe realizar. En el caso de una aplicación creada por encargo, este se convierte en un paso de mucha relevancia.
Crear una lista con los requisitos que debe cumplir el programa favorece la orientación del trabajo, la determinación de qué tareas son más importantes y de cuáles no deben hacerse, así como el establecimiento del momento en el que el proyecto se podrá dar por terminado. Este último aspecto es muy importante en un proyecto a medida, pues permite evitar que el programa crezca indefinidamente por el hecho de que el cliente o usuario desee añadir nuevas características cada cierto tiempo.
Una vez que se ha estimado el tiempo necesario y se ha aprobado el presupuesto del proyecto, las características nuevas que el cliente desee deben anotarse para la realización de una versión posterior del proyecto, lo que conllevará volver a calcular el tiempo y los recursos necesarios para añadirlas.

1.2 Especificación

Es habitual elaborar un documento en el que se recopilen los requisitos que debe cumplir el programa. En una primera aproximación, estos requisitos podrían reflejarse, sencillamente, en una "lista de cosas que el programa debe hacer". Sin embargo para una aplicación real, es habitual distinguir al menos entre los requisitos funcionales y los requisitos técnicos.

  • El programa será una agenda de contactos que permitirá guardar datos de personas para poder consultarlos más adelante.
  • Deberá almacenar, para cada persona, el nombre, los apellidos, la fecha de nacimiento, el domicilio y el correo electrónico. El único dato obligatorio será el nombre.
  • Permitirá guardar una cantidad elevada de datos.
  • Los datos deberán guardarse en fichero para que se pueda disponer de ellos cada vez que se acceda al programa.
  • Permitirá buscar datos a partir de cualquier palabra introducida en la búsqueda.
  • Buscará personas que cumplan años en los próximos 30 días.
  • El programa deberá haberse creado en C++ y permitirá trabajar en modo texto

lunes, 10 de febrero de 2020

TEMA 5 PROGRAMACION ESTRUCTURADA

T.5 PROGRAMACION ESTRUCTURADA 

1.LENGUAJES COMPILADORES E INTERPRETES

1.1 LENGUAJES DE ALTO Y BAJO NIVEL  

UN PROGRAMA; SECUENCIA DE INSTRUCIONES.
UN LENGUAJE DE PROGRAMACION; SE CONOCE COMO ALGORITMO O SECUENCIA DE PASOS PARA RESOLVER UN PROBLEMA 

 EXISTEN 2 TIPOS DE LENGUAJE

ALTO NIVEL: PARECIDO AL CODIGO MAQUINA (CEROS Y UNOS) , DIFICIL DE ENTENDER 

BAJO NIVEL: PARECIDO AL DE LOS HUMANOS , FACIL DE ENTENDER 

1.2 COMPILADORES E INTERPRETES

COMPILADORES; SON LAS HERRAMEINTAS ENCARGADAS DE CONVERTIR NUESTRO PROGRAMA ESCRITO EN LENGUAJE DE ALTO NIVEL 8PROGRAMA DE FUENTE) A CODIGO MAQUINA A TRAVES DEL CUAL SE OBTIENE UN RPGRAMA EJECUTABLE 

INTERPRETE: ES OTRO TIPO DE TRADUCTOR , PERO ESTOS NO CREAN NINGUN PROGRAMA EJECUTABLE CAPAZ DE FUNCIONAR POR SI MISMO 


POR LO TANTO , UN RPGRAMA INTERPRETADO COMENZARA A FUNCIONAR ANTES QUE UN RPGRAMA COMPILADO (PUES NO ES NECESERIO TRADUCIR TODO EL PRGRAMA PARA EMPEZAR) PUES SERA MAS LENTO EN LOS PRGRAMAS DE CALCULO INTENSIVO (PORQUE CADA ORDEN SE TIENE QUE TRADUCIR TANTAS VECES COMO SE EJECUTE.

1.3 PSEUCODIGO

A PESAR DE LOS LENGUAJES DE ALTO NIVEL SE ASEMEJAN AL LENGUAJE NATURAL QUE LOS SERES HUMANOS EMPLEAMOS PARA HABLAR , ES HABITUAL NO UTILIZAR NINGUN LENGUAJE DE PROGRAMACION CONCRETO CUANDO QUEREMOS PLANTEAR INICIALMENTE PARA RESOLVER UN PRGRAMA SINO EMPLEAR UN LENGUAJE DE PROGRAMACION FICTICIO , NO TAN ESCRITO Y A VECES ESCRITO EN LENGUA CASTELLANA , ESTE LENGUAJE RECIBE EL CODIGO DE PSEUCODIGO  

EJ: 
PEDIR NUMERO 1 
PEDIR NUMERO 2 
SI NUMERO <> 0 
     ESCRIBIR " SU DIVISION ES  " NUMERO1/NUMERO2 
SI NO ESCRIBIR "NO SE PUEDE DIVIDIR ENTRE 0" 

domingo, 2 de febrero de 2020

SEGURIDAD EN LAS COMUNICACIONES INALAMBRICAS


  • REDES INALAMBRICAS; COMPARTEN INFORMACION SIN CABLE. LOS MAS UTILIZADOS SON WIFI Y BLUETOOTH 
  •  SEGURIDAD EN BLUETOOH
  •            1) ES LA ESPAECIFICACION QUE DEFINE UN ESTANDAR GLOBAL DE COMUNICACIONES INALAMBRICAS QUE PERMITEN LA TRNSMICION DE VOZ Y DATOS  
  •            2) ALCANCE 10 M 
  •            3) ATAQUES QUE SE REALIZAN A TRAVES DE BLUETOOH: BLUEJACKING ENVIO DE SPAM AL USUARIO -BLUESNARFIN: APROVECHA LAS VULNEBARILIDADES DEL PROTOCOLO PATRA OBTENER INFORMACION DEL DISPOSITIVO BLUEBUGGING: UTILIZA TECNICAS PARA QUE LA VICTIMA ACEPTE Y CONTROLAR EL DISPOSITIVO CON UN MALWARE DE CONTROL 

2.- SEGURIDAD EN REDEES SOCIALES: 

LAS REDESWIFI UTILIZAN UNA TECNOLOGIA INALAMBRICA QUE REALIZA LA CONEXION ENTRE DISPOSITIVOS SITUADOS EN UNA AREA RELATIVAMENTE PEQUEÑA COMO UNA HABITACION , OFICINA ETC.. , TIENE UNA SEGURIDAD DE 100 M ALGUNAS DE LAS MEDIDA DE SGURIDAD SON LAS SIGUIENTES ; 
  • PERSONALIZAR LA CONTRASEÑA DE ACCESO; 
  • CAMBIAR EL SSID; 
  • REVISAR EL CIFRADO;
  • DESACTIVAR EL ACCESO DE WPS ;
  • ACTUALIZAR EL FIRMEWARE :
  • COMPROBAR EL HISTORIAL DE ACTIVIDAD ;
  • UTILIZAR SOFTWARE DE AUDITORIA;  

FORMA ELECTRONICA Y CERTIFICADO DIGITAL

FIRMA ELECTRONICA:
   
   -DEFINICION
  
SE DEFINE  COMO UN CONJUNTO DE DATOS ASOCIADOS A UN DOCUMENTO ELECTRONICO QUE PERMITE: 

-IDENTIFICAR AL FIRMANTE DE MANRTA EQUIVOCA , REQUIERE UNA CLAVE PRIVADA

-ASEGURAR LA INTEGRIDAD

-NO REPUDIO.CERTFICAQUE LOS DATOS INTRODUCIDOS POR EL FIRMANTE SON UNICOS.

FIRMA DOCUMENTOS ELECTRONICOS

EL FIRMANTE GENERA MEDIANTE UNA FUNCION HASH , UN RESUMEN QUE ES UTILIZABLE COMO HUELLA DIGITAL DEL MENSAJE. PARA COMPROBAR QUE EL DOCUEMNTO NO HA SIDO MODIFICADO DESDE SU CREACION SE CREA LA FUNCION CASH AL DOCUMENTO ORIGINAL POR MEEIO DE LA COMPROBACION DEL RESULTADO OBTENIDO CON EL RESUMEN CIFRADO QUE SE HA RECIBIDO.



miércoles, 22 de enero de 2020

  CODIGO CIFFRADO DE DESPLAZAMIENETO


DPGUHV   HUHV  OXB  WRPWR



UNA PEQUEÑA AYUDA DESPLAZAMIENTO X3 DEL ABECEDARIO

CIFRADO DE LA INFORMACION 
   

 ORIGENES: SE REMONTA AL USO DEL LENGUAJE HACIA EL SIGLO v A.c LOS GRIEGOS PARA LEER UN MENSAJE UTILIZABAN UN CILINDRO DE CUERON PARA ENROOLLAR EL MENSAJE. DURANTE LA SEGUNDA GUERRA MUNDIAl  LOS ALEMANES UTILIZABAN LA MAQUIINA ENIGMA PARA CIFRAR Y DESCIFRAR MENSAJES. NO ABSTANTE LA ERA DE LA MODERNA CAPTOGRAFIA EMPIEZA CON SHANOM


  2.- CRIPTOGRAFIA: 

ES LA DISCIPLINA CIENTIFICA DEDICADA AL ESTUDIO DE LA ESCRITA SECRETA ESTA COMPUESTA POR DOS TECNICAS ANTAGONISTAS:CRIPTOGRAFIA Y CRIPTOANALISIS ESTE ESTUDIA EL ANAALISIS DE LOS SISTEMAS CRIPTOGRAFICOS PARA ENCONTRAR DEBILIDADES Y QUEBRANTAR LA SEGURIDAD


CLAVE SIMETRICA , ENPLEA LA MISMA CLAVE PARA CIFRAR Y DESCIFRAR MENSAJES ES UAN TECNICA MUY RAPIDA PERO INSEGFURA YA QUE EL REMITENTE TIENE QUE ENVIAR TANTO EL MENSAJE CIFRADO COMO LA CLAVE POR LO QUE SI UNTACANTE CONSIGUE HACERSE CON AMBOS PODRA DESCIFRAR EL MENSAJE,.



CRIPTOGRAFIA DE CLAVE ASIMETRICA; LA CRIPTOGRAFIA UTILIZA DOS CLAVES , UNA PUBLICA Y OTRA PRIVADA UAN ES CONOCIDA POR TODOS LOS USUARIOS Y OTRA UNICA QUE SOLO LA CONOCE EL RPOPIETARIO CUANDO SE CIFRA UN MENSAJE CON LA CLAVE PUBLICA PUBLICA SOLO PUEDE CIFRASE UTILIZANDO LA CLAVE PRIVADA DE DICHA PERSONA

CRIPTOGRAFIA DE CLAVE PUBLICA NO ES COMPLETAMENTE SEGURA Y LA ASIMETRICA POR SUI PARTE RALENTIZA ESE PROCESO DE CIFRADO , PARA SOOLVERTAR ESTOS INCONVENIENTES , EL PROCESO HABITUAL PASA POR UTILIZAR UN CIFRADO DE CLAVE PUBLICA QUE COMBINE AMBOS CRIPTOGRAFIAS CON EL OBJETIVO DE OBTENER UNA GARANTIA PLENA DE CONFIDELIDAD


algunas imagenes relacionadas;


viernes, 17 de enero de 2020

ATAQUES A LOS SISTEMAS INFORMATICOS 

TIPOS:

 Interrupcion; ataque contra la disponibilidad de un sistema , el resultado de este ataque es un recurso destruido. 
Interceptacion;  ataque contra la confidelidad , consigue acceder a recursos para los que no tienen autorizacion.
 modificacion; ataque contra una identidad que ademas de acceder se manipula
 Suplantacion; ataque contra la autenticidad mediante el cual un atacante inserta objetos falsificados en el sistema 

INGENIERIA SOCIAL
ES UNA TECNICA UTILIZADA QUE NO EXPLOTA LA VULNEBABIRILADES SINO CIERTOS COMPORTAMIENTOS Y CONDUCTAS DE LOS SERES HUMANOS.  

ATAQUES REMOTOS 
 INYECCION DE CODIGO añade o borra informacion en sitios remotos 

 ESCANEO DE PUERTO  avrigua que puertos se encuentran abiertos para lanzar ataques 

 DENEGACION DE SERVICIO  satura los recursospara que deje de responder o lo haga con lentitud para que se considere no disponible y despues lanzar ataques
 ESCUCHAS DE RED 
 SPOOFING 
 FUERZA BRUTA 
 ELEVACION DE PRIVILEGIOS