SlideShare ist ein Scribd-Unternehmen logo
1 von 14
Downloaden Sie, um offline zu lesen
aesaes

хеш функция с общо
  предназначение
хеш функция
хеш функция с общо
  предназначение
   (non-cryptographic,
    general purpose)
Hash tables,
         Caches,
      Bloom filters,
Finding duplicate records
MurmurHash3

        популярна такава
   бърза, добро разпределение

https://code.google.com/p/smhasher/
aesaes

       наше откритие
по-бърза, също толкова добра

http://packetscale.com/aesaes
Скорост
Разпределение
неразличимо от случайно

1M 128-битови стойности
в 2М кофи

~224000 кофи с колизии
максимална дълбочина = 7
Псевдокод
state = 0

for b in blocks
       tmp = b
       tmp = tmp.SubBytes.ShiftRows.MixColumns
       tmp = tmp.SubBytes.ShiftRows.MixColumns
       state = state XOR tmp

return state[0]



(прилича на 2 рунда от AES-128; ползва същите примитиви)
IA32 разширение - AES-NI

                 2008
(почти) всички нови процесори от Intel
                и AMD
Лиценз

2-clause BSD
Зов за помощ
сайт и инструменти за разработчици

други варианти на функцията

“avalanche” и “bit bias” тестове

         aesaes@packetscale.com
Благодаря!
(c) 2011, Packetscale

uint32_t
aesaes_string(void *_data, int size)
{
        __m128i                 *v = (__m128i*)_data;
        union __ZZ              tmp, state, key;

       state.v = key.v = _mm_setzero_si128();

       while (size > 0)
       {
               tmp.v = *v;

               v++;
               size -= sizeof( *v );

               tmp.v = _mm_aesenc_si128( tmp.v, key.v );
               tmp.v = _mm_aesenc_si128( tmp.v, key.v );

               state.v ^= tmp.v;
       }

       return state.vals[0];
}

Weitere ähnliche Inhalte

Andere mochten auch

Hum2310 sp2016 annotated study guide
Hum2310 sp2016 annotated study guideHum2310 sp2016 annotated study guide
Hum2310 sp2016 annotated study guide
ProfWillAdams
 
Hum2220 sm2015 proust questionnaire
Hum2220 sm2015 proust questionnaireHum2220 sm2015 proust questionnaire
Hum2220 sm2015 proust questionnaire
ProfWillAdams
 
Cssbestpracticesjstyleguidejandtips 150830184202-lva1-app6892
Cssbestpracticesjstyleguidejandtips 150830184202-lva1-app6892Cssbestpracticesjstyleguidejandtips 150830184202-lva1-app6892
Cssbestpracticesjstyleguidejandtips 150830184202-lva1-app6892
Deepak Sharma
 
Hum2310 fa2014 exam 4 study guide
Hum2310 fa2014 exam 4 study guideHum2310 fa2014 exam 4 study guide
Hum2310 fa2014 exam 4 study guide
ProfWillAdams
 
Eerste sessie ondernemersforum Unizo 21 01-2014
Eerste sessie ondernemersforum Unizo 21 01-2014Eerste sessie ondernemersforum Unizo 21 01-2014
Eerste sessie ondernemersforum Unizo 21 01-2014
Paul Verwilt
 
Product Ownership~NTTデータと楽天それぞれの文脈でのサービスづくり、人づくり、チームづくりの取り組み
Product Ownership~NTTデータと楽天それぞれの文脈でのサービスづくり、人づくり、チームづくりの取り組みProduct Ownership~NTTデータと楽天それぞれの文脈でのサービスづくり、人づくり、チームづくりの取り組み
Product Ownership~NTTデータと楽天それぞれの文脈でのサービスづくり、人づくり、チームづくりの取り組み
shibao800
 

Andere mochten auch (20)

Kimia Terapan - Cassace (Cassava Rice/Nasi Singkong)
Kimia Terapan - Cassace (Cassava Rice/Nasi Singkong)Kimia Terapan - Cassace (Cassava Rice/Nasi Singkong)
Kimia Terapan - Cassace (Cassava Rice/Nasi Singkong)
 
I benefici dell'utilizzo dell'Olea europaea (Olivo) in medicina
I benefici dell'utilizzo dell'Olea europaea (Olivo) in medicinaI benefici dell'utilizzo dell'Olea europaea (Olivo) in medicina
I benefici dell'utilizzo dell'Olea europaea (Olivo) in medicina
 
Update on Institutional Identity Management Priorities at SFU
Update on Institutional Identity Management Priorities at SFUUpdate on Institutional Identity Management Priorities at SFU
Update on Institutional Identity Management Priorities at SFU
 
My day Jordi
My day JordiMy day Jordi
My day Jordi
 
Hum2310 sp2016 annotated study guide
Hum2310 sp2016 annotated study guideHum2310 sp2016 annotated study guide
Hum2310 sp2016 annotated study guide
 
Deborap
DeborapDeborap
Deborap
 
Hum2220 sm2015 proust questionnaire
Hum2220 sm2015 proust questionnaireHum2220 sm2015 proust questionnaire
Hum2220 sm2015 proust questionnaire
 
Christmas 2011
Christmas 2011Christmas 2011
Christmas 2011
 
Cssbestpracticesjstyleguidejandtips 150830184202-lva1-app6892
Cssbestpracticesjstyleguidejandtips 150830184202-lva1-app6892Cssbestpracticesjstyleguidejandtips 150830184202-lva1-app6892
Cssbestpracticesjstyleguidejandtips 150830184202-lva1-app6892
 
2005 annual report
2005 annual report2005 annual report
2005 annual report
 
Spring Day | Spring 3.1 in a Nutshell | Sam Brannen
Spring Day | Spring 3.1 in a Nutshell | Sam BrannenSpring Day | Spring 3.1 in a Nutshell | Sam Brannen
Spring Day | Spring 3.1 in a Nutshell | Sam Brannen
 
Hum2310 fa2014 exam 4 study guide
Hum2310 fa2014 exam 4 study guideHum2310 fa2014 exam 4 study guide
Hum2310 fa2014 exam 4 study guide
 
Eerste sessie ondernemersforum Unizo 21 01-2014
Eerste sessie ondernemersforum Unizo 21 01-2014Eerste sessie ondernemersforum Unizo 21 01-2014
Eerste sessie ondernemersforum Unizo 21 01-2014
 
Using Open Source technologies to create Enterprise Level Cloud System
Using Open Source technologies to create Enterprise Level Cloud SystemUsing Open Source technologies to create Enterprise Level Cloud System
Using Open Source technologies to create Enterprise Level Cloud System
 
KTI Perkembangan Smartphone di Jember
KTI   Perkembangan Smartphone di JemberKTI   Perkembangan Smartphone di Jember
KTI Perkembangan Smartphone di Jember
 
Arh1000 sp2016 syllabus
Arh1000 sp2016 syllabusArh1000 sp2016 syllabus
Arh1000 sp2016 syllabus
 
Poultry Planner July 2012
Poultry Planner July 2012Poultry Planner July 2012
Poultry Planner July 2012
 
How to suck at presenting (and how to avoid it)
How to suck at presenting (and how to avoid it)How to suck at presenting (and how to avoid it)
How to suck at presenting (and how to avoid it)
 
Nickerson east aurora sept 4, 2012
Nickerson east aurora sept 4, 2012Nickerson east aurora sept 4, 2012
Nickerson east aurora sept 4, 2012
 
Product Ownership~NTTデータと楽天それぞれの文脈でのサービスづくり、人づくり、チームづくりの取り組み
Product Ownership~NTTデータと楽天それぞれの文脈でのサービスづくり、人づくり、チームづくりの取り組みProduct Ownership~NTTデータと楽天それぞれの文脈でのサービスづくり、人づくり、チームづくりの取り組み
Product Ownership~NTTデータと楽天それぞれの文脈でのサービスづくり、人づくり、チームづくりの取り組み
 

Mehr von OpenFest team

Виртуализирано видеонаблюдение под FreeBSD
Виртуализирано видеонаблюдение под FreeBSDВиртуализирано видеонаблюдение под FreeBSD
Виртуализирано видеонаблюдение под FreeBSD
OpenFest team
 
Why kernelspace sucks?
Why kernelspace sucks?Why kernelspace sucks?
Why kernelspace sucks?
OpenFest team
 

Mehr von OpenFest team (19)

Embedding FreeBSD: for large and small beds
Embedding FreeBSD: for large and small bedsEmbedding FreeBSD: for large and small beds
Embedding FreeBSD: for large and small beds
 
Why you can charge for open source software
Why you can charge for open source softwareWhy you can charge for open source software
Why you can charge for open source software
 
Microinvest Warehouse Open
Microinvest Warehouse OpenMicroinvest Warehouse Open
Microinvest Warehouse Open
 
Backbone.js
Backbone.jsBackbone.js
Backbone.js
 
Как да правим по-добър бизнес с услуги около софтуера с отворен код
Как да правим по-добър бизнес с услуги около софтуера с отворен кодКак да правим по-добър бизнес с услуги около софтуера с отворен код
Как да правим по-добър бизнес с услуги около софтуера с отворен код
 
Pf sense 2.0
Pf sense 2.0Pf sense 2.0
Pf sense 2.0
 
Електронни пари: Пътят до BitCoin и поглед напред
Електронни пари: Пътят до BitCoin и поглед напредЕлектронни пари: Пътят до BitCoin и поглед напред
Електронни пари: Пътят до BitCoin и поглед напред
 
Node.social
Node.socialNode.social
Node.social
 
Виртуализирано видеонаблюдение под FreeBSD
Виртуализирано видеонаблюдение под FreeBSDВиртуализирано видеонаблюдение под FreeBSD
Виртуализирано видеонаблюдение под FreeBSD
 
RFID технологии и проблеми със сигурността им
RFID технологии и проблеми със сигурността имRFID технологии и проблеми със сигурността им
RFID технологии и проблеми със сигурността им
 
Redis the better NoSQL
Redis the better NoSQLRedis the better NoSQL
Redis the better NoSQL
 
initLab
initLabinitLab
initLab
 
Свободни PLC
Свободни PLCСвободни PLC
Свободни PLC
 
Distributed WPA PSK security audit
Distributed WPA PSK security auditDistributed WPA PSK security audit
Distributed WPA PSK security audit
 
Why kernelspace sucks?
Why kernelspace sucks?Why kernelspace sucks?
Why kernelspace sucks?
 
Направи си сам суперкомпютър
Направи си сам суперкомпютърНаправи си сам суперкомпютър
Направи си сам суперкомпютър
 
Свободни курсове за обучение
Свободни курсове за обучениеСвободни курсове за обучение
Свободни курсове за обучение
 
Emacs reborn
Emacs rebornEmacs reborn
Emacs reborn
 
Behaviour-Driven Development, Ruby Style
Behaviour-Driven Development, Ruby StyleBehaviour-Driven Development, Ruby Style
Behaviour-Driven Development, Ruby Style
 

Aesaes