Función hash criptográfica
Les '''funciones hash criptográfiques''' son aquelles que cifren una entrada y actúen de forma asemeyada a les [[función hash|funciones hash]], yá que estrúin la entrada a una salida de menor llargor y son fáciles de calcular.

Llámense '''funciones hash criptográfiques''' a aquelles [[función hash|funciones hash]] que s'utilicen nel área de la [[criptografía]]. Esti tipu de funciones carauterizar por cumplir propiedaes que les faen aparentes pal so usu en sistemes que confíen na criptografía pa dotase de seguridá. Estes propiedaes facer resistentes frente ataques maliciosos qu'intenten romper esa seguridá.

== Propiedaes<ref>A. J. Menezes et all, "[http://www.cacr.math.uwaterloo.ca/hac/ Handbook of Applied Cryptography]", CRC Press 2011</ref><ref>Maike Massierer,"[https://web.archive.org/web/20110303044520/http://web.maths.unsw.edu.au/~jim/maikemassiererthesis.pdf Provably Secure Cryptographic Hash Function]",School of Mathematics,The University of New South Wales.2006</ref> ==
Fundamentalmente queremos pidir les siguientes propiedaes a estes funciones: que dada una ''x'' seya bien fácil calcular ''h(x)'', pero que, contrariamente, ''x'' seya malo de calcular dada una ''y=h(x)''. Amás pidimos que seya difícil atopar una pareya ''(x,y)'' con ''x≠y'' tal que ''h(x)=h(y)'', esto ye, que seya difícil producir choques.<ref>{{cita llibru |apellíu=Medina Rosas|nome=Jorge Alberto|enllaceautor=|títulu=Funciones Hash Criptográfiques|url=http://132.248.9.195/ptd2009/abril/0642039/Index.html|fechaaccesu=|añu=2009|editorial=|isbn=|editor=|ubicación=|páxina=23|idioma=|capítulu=}}</ref>

Establecer qué propiedaes tien que cumplir una función hash criptográfica ye difícil yá que son usaes n'aplicaciones criptográfiques bien diverses, y que por tanto riquen propiedaes distintes. Sicasí polo xeneral podemos dicir que ye necesariu que sían [[función hash#Determinista|deterministes]] (un mensaxe siempres tien el mesmu valor hash) y de [[función hash#So costu baxu costu]] (por que sían aplicables na práctica). Amás de normal suelse riquir que sían [[función hash#Uniforme|uniformes]] y con [[función hash#Continuidá. Efectu argayu|efectu argayu]] coles mires de que seya imposible predicir cualquier valor hash a partir d'otros valores hash prindaos.

Pa determinar les propiedaes riquíes p'asegurar la seguridá ye necesariu saber cuál ye l'oxetivu principal de la función. Podemos estremar dos tipos de funciones: les que tienen como oxetivu principal verificar la integridá, a les que se llamen '''[[Códigu de detección de modificaciones|Código de detección de cambeos]]''', y les que tienen como oxetivu principal la autenticación del orixe del mensaxe, a les que se llamen '''[[Códigu pa la autenticación de mensaxes|Códigos de autenticación de mensaxes]]'''.<ref>Bart Preenel,"Cryptographic Primitives for Information Authentication - State of the Art". Katholieke Universiteit Leuven</ref>Estos nomes nun son bien correutos una y bones estes funciones nun son [[Criptografía#Cifraos y Códigos|códigos]] y amás dambos tipos dexen la autenticación de mensaxes. Sicasí son los más llargamente aceptaos.

=== Códigu de detección de cambeos ===
: ''Vease tamién:'' [[Códigu de detección de cambeos]]
L'oxetivu d'estes funciones ye poder detectar si un mensaxe foi modificáu o non. Por tanto dexen la verificación de la integridá del mensaxe. El so funcionamientu consiste en calcular el valor hash del mensaxe y que esti sirva como prueba pa una posible verificación de si'l mensaxe foi modificáu. A les funciones hash diseñaes con esti oxetivu se les llapada '''[[Códigu de detección de modificaciones|Código de detección de cambeos]]''' o '''[[Códigu de detección de cambeos|MDC]]''' ( sigles del inglés ''Modification Detection Codes'')

Pa cumplir el so oxetivu la [[función hash]] tien que cumplir propiedaes que la faiga resistente frente ataques d'adversarios maliciosos que'l so oxetivu ye que la función nun cumpla'l so cometíu. Según la propiedá que s'envalore necesaria que cumpla puede dicise qu'hai dos tipos de [[Códigu de detección de modificaciones|Código de detección de cambeos]]:

* Les que riquen que la función hash seya [[función hash#Resistencia a choques (CRHF)|CRHF]]. Por tanto ye difícil atopar dos mensaxes col mesmu valor hash.

=== Códigu de autenticación de mensaxes ===
: ''Vease tamién:'' [[Códigu de autenticación de mensaxes]]
L'oxetivu d'estes funciones ye dexar comprobar, ensin usar nengún mecanismu adicional, l'autenticidá del orixe d'un mensaxe asegurando amás la integridá de dichu mensaxe. Por cuenta de esta funcionalidad se les llapada '''[[Códigu de autenticación de mensaxes|Códigos de Autenticación de Mensaxes]]''' o '''[[Códigu de autenticación de mensaxes|MAC]]''' (sigles del inglés ''Message Authentication Codes'').

Les [[Códigu de autenticación de mensaxes|MAC]] son funciones hash con clave, que caltienen de callao tanto'l que se quier autenticar como'l que verifica la autenticación. Por que seya resistente frente ataques ye necesariu que la función [[función hash#Compresión|estruya]] y que seya [[función hash#Resistencia a la computación de nuevos valores hash|resistente a la computación de nuevos valores hash]].

== Implementación ==
De siguío listamos la implementación de Azrael en [[Llinguaxe de programación Java|Java]], una '''función hash criptográfica''' iterativa construyida a la midida que devuelve una salida de 320 bits o 40 bytes pa entraes de llargor arbitrariu.<ref>{{cita web |url=https://github.com/jmedina2099/HashUniforme1.0/blob/master/src/hash/Azrael320.java|títulu=Función Hash Criptográfica Iterativa|fechaaccesu=2 d'avientu de 2017|autor=Jorge Alberto Medina Rosas|enllaceautor=|fecha=|sitiuweb=|editorial=|idioma=}}</ref>

== Ver tamién ==
* [[Función hash]]
* [[Códigu pa la detección de modificaciones|Código pa la detección de cambeos]]
* [[Códigos pa la autenticación de mensaxes]]

== Referencies ==
{{llistaref}}

{{Tradubot|Función hash criptográfica}}
{{control d'autoridaes}}
[[Categoría:Funciones Hash Criptográfiques]]

[[pl:Funkcja skrótu#Kryptograficzne funkcje skrótu]]
[[Categoría:Wikipedia:Páxines con enllaces interllingüísticos]]
Les funciones hash criptográfiques son aquelles que cifren una entrada y actúen de forma asemeyada a les funciones hash, yá que estrúin la entrada a una salida de menor llargor y son fáciles de calcular.

Llámense funciones hash criptográfiques a aquelles funciones hash que s'utilicen nel área de la criptografía. Esti tipu de funciones carauterizar por cumplir propiedaes que les faen aparentes pal so usu en sistemes que confíen na criptografía pa dotase de seguridá. Estes propiedaes facer resistentes frente ataques maliciosos qu'intenten romper esa seguridá.

 PropiedaesA. J. Menezes et all, "Handbook of Applied Cryptography", CRC Press 2011Maike Massierer,"Provably Secure Cryptographic Hash Function",School of Mathematics,The University of New South Wales.2006 
Fundamentalmente queremos pidir les siguientes propiedaes a estes funciones: que dada una x seya bien fácil calcular h(x), pero que, contrariamente, x seya malo de calcular dada una y=h(x). Amás pidimos que seya difícil atopar una pareya (x,y) con x≠y tal que h(x)=h(y), esto ye, que seya difícil producir choques.

Establecer qué propiedaes tien que cumplir una función hash criptográfica ye difícil yá que son usaes n'aplicaciones criptográfiques bien diverses, y que por tanto riquen propiedaes distintes. Sicasí polo xeneral podemos dicir que ye necesariu que sían deterministes (un mensaxe siempres tien el mesmu valor hash) y de función hash#So costu baxu costu (por que sían aplicables na práctica). Amás de normal suelse riquir que sían uniformes y con efectu argayu coles mires de que seya imposible predicir cualquier valor hash a partir d'otros valores hash prindaos.

Pa determinar les propiedaes riquíes p'asegurar la seguridá ye necesariu saber cuál ye l'oxetivu principal de la función. Podemos estremar dos tipos de funciones: les que tienen como oxetivu principal verificar la integridá, a les que se llamen Código de detección de cambeos, y les que tienen como oxetivu principal la autenticación del orixe del mensaxe, a les que se llamen Códigos de autenticación de mensaxes.Bart Preenel,"Cryptographic Primitives for Information Authentication - State of the Art". Katholieke Universiteit LeuvenEstos nomes nun son bien correutos una y bones estes funciones nun son códigos y amás dambos tipos dexen la autenticación de mensaxes. Sicasí son los más llargamente aceptaos.

 Códigu de detección de cambeos 
 Vease tamién: Códigu de detección de cambeos
L'oxetivu d'estes funciones ye poder detectar si un mensaxe foi modificáu o non. Por tanto dexen la verificación de la integridá del mensaxe. El so funcionamientu consiste en calcular el valor hash del mensaxe y que esti sirva como prueba pa una posible verificación de si'l mensaxe foi modificáu. A les funciones hash diseñaes con esti oxetivu se les llapada Código de detección de cambeos o MDC ( sigles del inglés Modification Detection Codes)

Pa cumplir el so oxetivu la función hash tien que cumplir propiedaes que la faiga resistente frente ataques d'adversarios maliciosos que'l so oxetivu ye que la función nun cumpla'l so cometíu. Según la propiedá que s'envalore necesaria que cumpla puede dicise qu'hai dos tipos de Código de detección de cambeos:

 Les que riquen que la función hash seya CRHF. Por tanto ye difícil atopar dos mensaxes col mesmu valor hash.

 Códigu de autenticación de mensaxes 
 Vease tamién: Códigu de autenticación de mensaxes
L'oxetivu d'estes funciones ye dexar comprobar, ensin usar nengún mecanismu adicional, l'autenticidá del orixe d'un mensaxe asegurando amás la integridá de dichu mensaxe. Por cuenta de esta funcionalidad se les llapada Códigos de Autenticación de Mensaxes o MAC (sigles del inglés Message Authentication Codes).

Les MAC son funciones hash con clave, que caltienen de callao tanto'l que se quier autenticar como'l que verifica la autenticación. Por que seya resistente frente ataques ye necesariu que la función estruya y que seya resistente a la computación de nuevos valores hash.

 Implementación 
De siguío listamos la implementación de Azrael en Java, una función hash criptográfica iterativa construyida a la midida que devuelve una salida de 320 bits o 40 bytes pa entraes de llargor arbitrariu.

 Ver tamién 
 Función hash
 Código pa la detección de cambeos
 Códigos pa la autenticación de mensaxes

 Referencies 

Categoría:Funciones Hash Criptográfiques

pl:Funkcja skrótu#Kryptograficzne funkcje skrótu
Categoría:Wikipedia:Páxines con enllaces interllingüísticos