sábado, 14 de marzo de 2015

criptografía - criptosistemas simétricos

KASUMI, también llamado A5/3, es una unidad de cifrado por bloques utilizada en algoritmos de confidencialidad (f8) e integridad (f9) para Telefonía móvil3GPP. KASUMI fue diseñado por el grupo SAGE (Security Algorithms Group of Experts en inglés), que forma parte del organismo de estándares europeos ETSI. En lugar de inventar un cifrado desce cero, SAGE seleccionó un algoritmo existente llamado MISTY1. Para su implementación en hardware, se le realizaron algunas optimizaciones. De allí que MISTY1 y KASUMI sean muy similares, de manera que los análisis disponibles sobre uno se adaptan fácilmente al otro (kasumi en japonés es neblina, "misty" en inglés).
KASUMI tiene un tamaño de bloque de 64 bits y un tamaño de clave de 128 bits. Es una unidad de cifrado por bloque de tipo Cifrado Feistel con ocho vueltas y, al igual que MISTY1 y MISTY2, tiene una estructura recursiva, con subcomponentes de tipo similar a Feistel.
En 2001, Kühn presentó un ataque diferencial imposible en seis vueltas de KASUMI.



MAGENTA es un algoritmo de cifrado simétrico por bloques desarrollado por Deutsche Telekom. El nombre MAGENTA es un acrónimo para Multifunctional Algorithm for General-purpose Encryption and Network Telecommunication Applications (el color magenta es también parte del color corporativo de dicha empresa). El cifrador fue propuesto para convertirse en el AES, pero no avanzó más allá de la primera ronda. Debilidades criptográficas fueron descubiertas y se comprobó que era uno de los cifradores más lentos remitidos [1].
MAGENTA tiene un tamaño de bloque de 128 bits y un tamaño de clave de 128, 196 y 256 bits. Es un cifrador Feistel con 6 rondas.
Después de la presentación del algoritmo a las primeras conferencias de AES, varios criptógrafos encontraron inmediatamente vulnerabilidades [2], que fueron compiladas y presentadas a la segunda conferencia (Biham, 1999).


RC5 es una unidad de cifrado por bloques notable por su simplicidad. Diseñada por Ronald Rivest en 1994RC son las siglas en inglés de "Cifrado de Rivest". El candidato para AESRC6, estaba basado en RC5.A diferencia de muchos esquemas, RC5 tiene tamaño variable de bloques (32, 64 o 128 bits), con tamaño de clave (entre 0 y 2040 bits) y número de vueltas (entre 0 y 255). La combinación sugerida originalmente era: bloques de 64 bits, claves de 128 bits y 12 vueltas.
Una característica importante de RC5 es el uso de rotaciones dependientes de los datos; uno de los objetivos de RC5 era promover el estudio y evaluación de dichas operaciones como primitivas de criptografía. RC5 también contiene algunas unidades de sumas modulares y de Puertas O-exclusivo (XOR). La estructura general del algoritmo es una red tipo Feistel. Las rutinas de cifrado y descifrado pueden ser especificadas en pocas líneas de código, pero la programación de claves es más complicada. La simplicidad del algoritmo junto con la novedad de las rotaciones dependientes de los datos han hecho de RC5 un objeto de estudio atractivo para los criptoanalistas.RC5 12-vueltas (con bloques de 64 bits) está sujeto a un ataque diferencial usando 244 textos escogidos (Biryukov y Kushilevitz, 1998). Se recomienda utilizar entre 18 y 20 vueltas.
La empresa RSA Security, que posee la patente de los algoritmos (patente #5,724,428 USA), ofrece una serie de premios de 10.000 dólares para quienes logren descifrar textos cifrados con RC5. Se han obtenido hasta ahora resultados mediante laprogramación distribuida, para claves de 56 y 64 bits. Actualmente (febrero de 2010) se trabaja en romper cifrados con claves de 72 bits.
RC5 InfoBox Diagram.png

La mayoría de los sistemas de audio y video están equipados con un control remoto infrarrojo. Un protocolo estándar utilizado común para la comunicación de datos por infrarrojos es el código RC5, originalmente desarrollado por Phillips. Este código tiene un conjunto de instrucciones de 2.048 instrucciones diferentes y se divide en 32 direcciones de cada 64 instrucciones. Cada tipo de equipos utilice su propio correo electrónico, así que esto hace que sea posible cambiar el volumen de la TV sin cambio el volumen del equipo de música. El código transmitido es un wich palabra de datos se compone de 14 bits y se define como: . 2 startbits para el control automático de ganancia en el receptor de infrarrojos 1 bit de conmutación (cambio cada vez cuando se presiona un nuevo botón en el transmisor IR) 5 bits de dirección para el SystemAddress 6 instructionbits para la tecla pulsada






La imagen debajo son las formas de onda de mi osciloscopio digital de las códigos RC5 con botones empujados 1,2,3,4. Usted puede ver el bien los startbits y el bit de conmutación (Estas son señales invertidas porque fueron capturados directamente en la TSOP1836). Leer más para obtener más información.

El código RC5 utiliza la técnica de modulación BIFASE que significa que cada bit se compone de 2 partes que no son nunca la misma.
Así que un poco es siempre una alta / baja o un / alta transisition baja. Por el código RC5 un 1 es un alto transisition bajo
y un 0 es alta bajo transisition. Para todos los bits del bit más significativo se transmite primero.
Recuerde también que la se~nal de salida de los receptores integrados se invierte:
La detección de una señal de IR de la salida del receptor integrado será 0V.
El tiempo de duración de cada bit es igual a 1778 ms, y el tiempo total de un código RC5 completo es 24.778 ms.
El espacio entre dos códigos de transmisión es de 50 tiempos de bit o 88,889ms.
Para mejorar la eliminación de ruido de los pulsos se modulan en una frequence portador
La frecuencia portadora del código RC5 es de 36 kHz para que tome siempre un receptor con una respuesta
frecuencia de 36 kHz.
Hay un montón de detectores para recibir el flujo de bits de un mando a distancia IR, pero la mejor
He utilizado es el TSOP1836 de VISHAY. Hoja de datos disponibles en mi sitio web).
El TSOP1836 es un dispositivo de 3 pines que recibe las ráfagas de infrarrojos y da a cabo el flujo de bits en la salida demodulada. El código RC5 es un protocolo fácil de decodificar con un mircrocontroller pic. Voy a mostrar un ejemplo para controlar su PC cuando esté terminado
Encuentra más información sobre mis otras páginas

RC5 Basics


Introduction

The RC5 protocol was developed by Philips as consumer IR (infrared) remote control communication protocol for consumer electronics.

Data Format

The RC5 code is 14 bits long. Each code includes 2 start bits, 1 toggle bit, a 5 bit address (or system) and a 6 bit command. This allows for 32 systems (like TV, CD, video, etc.) and 64 commands per system.
RC5 Data Format
The two start bit indicate the start of the RC5 frame.
Note: 
After some time 64 commands per system didn't seem to be enough though, so an extra command bit was added to allow 128 commands. To maintain backward compatibility with the standard RC5, the format itself was left unchanged. The second start bit (S2) was replaced by C6. The resulting format is called Extended RC5.
The toggle bit T changes each time a new command is transmitted. It allows detection if the same key is pressed twice. Since a code is being sent as long as the key is pressed, a short release of the button and again pressing it again would otherwise not be recognized.
The address bits A5..A0 specifies the system (or device) the command shall be sent to, e.g. TV, CD, Video, etc.
Finally, the command bits specify the command to be performed.

Modulation

RC5 uses Manchester coding. Manchester coding has a transition in the middle of a bit.
A logical 1 is coded as a 0 in the first half of the bit and a 1 in the second half of the bit.
A logical 0 is coded as a 1 in the first half of the bit and a 0 in the second half of the bit.
RC5 Modulation
Important hint: 
Most of the IR-Receivers (e.g. the SFH5110 or TSOP1736) have an inverted output! So a logical 1 at the output of the IR-Receiver will be represented by a 1 in the first half of the bit and a 0 in the second half, a logical 0 will be represented by 0 in the first half of the bit and a 1 in the second half.

RC5 Example

In the example below an example of an RC5 code which shows how the information is coded. In this example the toggle bit is 0, the address is also 0 and the command is 9, i.e. key '9' has been pressed.
RC5 Code Example

No hay comentarios:

Publicar un comentario