AES ko'rsatmalar to'plami - AES instruction set

An Kengaytirilgan shifrlash standarti ko'rsatmalar to'plami hozirda ko'plab protsessorlarga birlashtirilgan. Ko'rsatmalar to'plamining maqsadi tezlikni yaxshilash (shuningdek, qarshilikni kuchaytirish) yon kanal hujumlari ) yordamida shifrlash va parol hal qilishni amalga oshiruvchi dasturlar Kengaytirilgan shifrlash standarti (AES). Ular ko'pincha bir xil AES turini amalga oshiruvchi ko'rsatmalar va oxirgi tur uchun biroz boshqacha uslubga ega bo'lgan maxsus versiya sifatida amalga oshiriladi.

x86 arxitektura protsessorlari

AES-NI (yoki Intel Kengaytirilgan shifrlash standarti yangi ko'rsatmalar; AES-NI) birinchi yirik dastur bo'ldi. AES-NI - kengaytmasi x86 ko'rsatmalar to'plami arxitekturasi uchun mikroprotsessorlar dan Intel va AMD Intel tomonidan 2008 yil mart oyida taklif qilingan.[1]

Ko'rsatmalar

Yo'riqnomaTavsif[2]
AESENCAES shifrlash oqimining bir turini bajaring
AESENCLASTAES shifrlash oqimining so'nggi turini bajaring
AESDECAES parolini hal qilish oqimining bir turini bajaring
QARShIAES parolini hal qilish oqimining so'nggi turini bajaring
AESKEYGENASSISTAES dumaloq kalitlarini yaratishda yordam berish[eslatma 1]
AESIMCAES-da yordam berish Teskari aralash ustunlar

Intel

Quyidagi Intel protsessorlar AES-NI ko'rsatmalar to'plamini qo'llab-quvvatlaydi:[3]

  • G'arbiy asoslangan protsessorlar, xususan:
    • Westmere-EP (a.k.a.) Gulftown Xeon 5600 seriyali DP server modeli) protsessorlari
    • Klarkdeyl protsessorlar (Core i3, Pentium va Celeron tashqari)
    • Arrandale protsessorlar (Celeron, Pentium, Core i3, Core i5-4XXM tashqari)
  • Qumli ko'prik protsessorlar:
    • Ish stoli: barchasi Pentium, Celeron, Core i3[4][5]
    • Mobil: barcha Core i7 va Core i5. Bir nechta sotuvchilar jo'natib yuborishdi BIOS kengaytma o'chirilgan konfiguratsiyalar;[6] ularni yoqish uchun BIOS yangilanishi talab qilinadi.[7]
  • Ayvi ko'prigi protsessorlar
    • Barcha i5, i7, Xeon va i3-2115C[8] faqat
  • Xasuell protsessorlar (barchasi i3-4000m dan tashqari,[9] Pentium va Celeron)
  • Broadwell protsessorlar (barchasi Pentium va Celerondan tashqari)
  • Silvermont / Airmont protsessorlar (Bay Trail-D va Bay Trail-M tashqari)
  • Goldmont (va keyinchalik) protsessorlar
  • Skylake (va keyinchalik) protsessorlar

AMD

Bir nechta AMD protsessorlar AES ko'rsatmalarini qo'llab-quvvatlaydi:

Boshqa arxitekturalarda apparatni tezlashtirish

Imtiyozsiz protsessor ko'rsatmalariga ega bo'lgan AES-ni qo'llab-quvvatlash ham so'nggi versiyada mavjud SPARC protsessorlar (T3, T4, T5, M5 va oldinga) va eng so'nggi versiyada ARM protsessorlar. The SPARC T4 2011 yilda ishlab chiqarilgan protsessorda AES turlarini amalga oshiruvchi foydalanuvchi darajasidagi ko'rsatmalar mavjud.[11] Ushbu ko'rsatmalar yuqori darajadagi shifrlash buyruqlaridan tashqari. The ARMv8-A 2011 yilda e'lon qilingan protsessor arxitekturasi, shu jumladan ARM Cortex-A53 va A57 (lekin oldingi v7 protsessorlari emas Cortex A5, 7, 8, 9, 11, 15[iqtibos kerak ]) shuningdek, AES turlarini amalga oshiradigan foydalanuvchi darajasidagi ko'rsatmalarga ega.[12] 2012 yil avgust oyida, IBM e'lon qilindi[13] keyin kelgusi Power7 + arxitektura AES-ni qo'llab-quvvatlaydi. Ushbu arxitekturadagi buyruqlar to'g'ridan-to'g'ri AES-NI buyruqlariga teng emas, lekin shunga o'xshash funktsiyalarni amalga oshiradi.

IBM z9 yoki undan keyingi asosiy protsessorlar AES-ni bitta opkodli (KM, KMC) AES ECB / CBC ko'rsatmalari sifatida IBM-ning CryptoExpress apparati orqali qo'llab-quvvatlaydi.[14] Shuning uchun ushbu bitta buyruqli AES versiyalaridan foydalanish Intel NI versiyalariga qaraganda osonroq, ammo AES yumaloq funktsiyalariga asoslangan boshqa algoritmlarni (masalan, Girdob va Grostl xash funktsiyalari).

X86 protsessorlarini qo'llab-quvvatlash

VIA x86 protsessorlari, AMD Geode va Marvell Kirkvud (Linuxdagi ARM, mv_cesa) o'rniga haydovchiga asoslangan tezlashtirilgan AES boshqaruvidan foydalaniladi. (Qarang Kripto API (Linux).)

AES apparati tezlanishini qo'llab-quvvatlagan holda quyidagi chiplar AES-NI-ni qo'llab-quvvatlamaydi:

ARM arxitekturasi

Dasturlash to'g'risidagi ma'lumot quyidagi manzilda mavjud ARMv8-A arxitektura profiliga oid ARM Architecture Reference Manual ARMv8 ("Armv8 Cryptographic Extension" A2.3-bo'lim).[20]

  • ARMv8-A arxitekturasi
    • ARM Cortex-A30 / 50/70 yadrolarida ixtiyoriy ravishda qo'llab-quvvatlanadigan ARM kriptografik kengaytmalari
  • Kriptografik apparat tezlatgichlari / dvigatellari

RISC-V arxitekturasi

  • Ikki yadroli RISC-V 64 bitli Sipeed-M1 AES va SHA256 ni qo'llab-quvvatlaydi.[26]
  • RISC-V arxitekturasi ESP32 -C (ESP32 kabi Xtensa emas), AES, SHA, RSA, RNG, HMAC, raqamli imzo va XTS 128 flesh uchun.[27]

Boshqa arxitekturalar

  • Atmel XMEGA[28] (buyruq emas, balki parallel ijro bilan chipdagi tezlatgich)
  • SPARC T3 va undan keyingi protsessorlar bir nechta kriptografik algoritmlarni, shu jumladan AESni qo'shimcha qo'llab-quvvatlashga ega.
  • Cavium Octeon MIPS[29] Barcha Cavium Octeon MIPS-protsessorlari bir nechta kriptografik algoritmlarni, shu jumladan, maxsus koprotsessor 3 ko'rsatmalaridan foydalangan holda AES-ni qo'llab-quvvatlaydi.

Ishlash

Yilda AES-NI samaradorligi tahlil qilindi, Patrik Shmid va Axim Roos "Intelning AES-NI imkoniyatlaridan foydalanish uchun optimallashtirilgan bir nechta dasturlarning ta'sirchan natijalarini" topdilar.[30] Yordamida ishlash tahlili Kripto ++ xavfsizlik kutubxonasi ishlab chiqarish hajmi bir bayt uchun taxminan 28,0 tsikldan 3,5 tsiklgacha o'sishini ko'rsatdi AES /GCM a ga qarshi Pentium 4 hech qanday tezlashmasdan.[31][32][tekshirib bo'lmadi ][yaxshiroq manba kerak ]

Dasturiy ta'minotni qo'llab-quvvatlash

Ko'pgina zamonaviy kompilyatorlar AES ko'rsatmalarini chiqarishi mumkin.

Ko'pgina xavfsizlik va kriptografiya dasturlari quyidagi asosiy infratuzilmani o'z ichiga olgan AES ko'rsatmalar to'plamini qo'llab-quvvatlaydi:

Shuningdek qarang

Izohlar

  1. ^ Yo'riqnoma ning 4 ta parallel pastki ifodalarini hisoblab chiqadi AES tugmachalarini kengaytirish ikkita bitli to'rtta 32-bitli so'zlarda (aka SSE registri) X bitlarda [127: 96] uchun va X [63:32] uchun faqat. Ikki parallel AES S-qutisini almashtirish va AES-256 va 2 subspressionlarda ishlatiladi va AES-128, AES-192, AES-256 da ishlatiladi.

Adabiyotlar

  1. ^ "Intel dasturiy ta'minot tarmog'i". Intel. Arxivlandi asl nusxasi 2008 yil 7 aprelda. Olingan 2008-04-05.
  2. ^ Shay Gueron (2010). "Intel Advanced Encryption Standard (AES) ko'rsatmasi Oq qog'oz" (PDF). Intel. Olingan 2012-09-20.
  3. ^ "Intel mahsulot spetsifikatsiyasining kengaytirilgan qidiruvi". Intel ARK.
  4. ^ Shimpi, Anand Lal. "Sandy Bridge sharhi: Intel Core i7-2600K, i5-2500K va Core i3-2100 sinovdan o'tkazildi".
  5. ^ "Intel mahsulot spetsifikatsiyasini taqqoslash".
  6. ^ "TrueCrypt-da AES-NI-ni qo'llab-quvvatlash (Sandy Bridge muammosi)".
  7. ^ "Ba'zi mahsulotlar protsessor konfiguratsiyasini yangilash bilan AES yangi ko'rsatmalarini qo'llab-quvvatlashi mumkin, xususan, i7-2630QM / i7-2635QM, i7-2670QM / i7-2675QM, i5-2430M / i5-2435M, i5-2410M / i5-2415M. Iltimos eng so'nggi protsessor konfiguratsiyasi yangilanishini o'z ichiga olgan BIOS uchun OEM bilan bog'laning ".
  8. ^ "Intel Core i3-2115C protsessori (3M kesh, 2,00 gigagertsli) Mahsulot xususiyatlari".
  9. ^ "Intel Core i3-4000M protsessori (3M kesh, 2,40 gigagertsli) Mahsulot xususiyatlari".
  10. ^ "Ko'rsatmalarga rioya qilish". AMD. 2010 yil 22-noyabr. Arxivlangan asl nusxasi 2010 yil 26 noyabrda. Olingan 2011-01-04.
  11. ^ Dan Anderson (2011). "SPARC T4 OpenSSL dvigateli". Oracle. Olingan 2012-09-20.
  12. ^ Richard Grisentvayt (2011). "ARMv8-A texnologiyasini oldindan ko'rish" (PDF). ARM. Arxivlandi asl nusxasi (PDF) 2018-06-10. Olingan 2012-09-20.
  13. ^ Timoti Priket Morgan (2012). "Big Blue-ning issiq chipidagi barcha souslar: Power7 + da ko'proq". Ro'yxatdan o'tish. Olingan 2012-09-20.
  14. ^ "IBM System z10 kriptografiyasi". IBM. Olingan 2014-01-27.
  15. ^ "AMD Geode LX protsessorining oilaviy texnik xususiyatlari". AMD.
  16. ^ "VIA Padlock Security Engine". VIA. Olingan 2011-11-14.
  17. ^ a b Kriptografik uskuna tezlatgichlari OpenWRT.org saytida
  18. ^ "VIA Eden-N protsessorlari". VIA. Arxivlandi asl nusxasi 2011-11-11 kunlari. Olingan 2011-11-14.
  19. ^ "VIA C7 protsessorlari". VIA. Olingan 2011-11-14.
  20. ^ "ARMvitektura bo'yicha qo'llanma ARMv8, ARMv8-A arxitektura profiliga" (PDF). ARM. 2019 yil 5-iyul.
  21. ^ "Xavfsizlik tizimi / Kripto dvigatelining drayveri holati". sunxi.montjoie.ovh.
  22. ^ "I.MX6 da Linux kriptografik tezlashuvi" (PDF). Linux fondi. Fevral 2017. Arxivlangan asl nusxasi (PDF) 2019-08-26. Olingan 2018-05-02.
  23. ^ "Snapdragon 805-dagi kriptografik modul FIPS 140-2 sertifikatiga ega". Qualcomm.
  24. ^ "RK3128 - Rockchip Wiki". Rockchip wiki. Arxivlandi asl nusxasi 2019-01-28 da. Olingan 2018-05-02.
  25. ^ "Samsung Exynos 7420 Deep Dive - Zamonaviy 14nm SoC ichida". AnandTech.
  26. ^ "Sipeed M1 - chekka hisoblash uchun sun'iy intellekt o'rnatilgan platformasi". electronics-lab.com. 2018-11-27. Olingan 2020-11-22.
  27. ^ "ESP32-C3 WiFi & BLE RISC-V protsessori pin-to-pin ESP8266 bilan mos keladi". CNX-dasturiy ta'minot. Olingan 2020-11-22.
  28. ^ "XMEGA o'rnatilgan AES tezlatgichidan foydalanish" (PDF). Olingan 2014-12-03.
  29. ^ "Cavium Networks sanoatning eng yangi va ikkita yadroli MIPS64® asosidagi OCTEON ™ protsessorlarining eng yangi liniyasini ishga tushiradi.. Arxivlandi asl nusxasi 2017-12-07 kunlari. Olingan 2016-09-17.
  30. ^ P. Shmid va A. Roos (2010). "AES-NI samaradorligi tahlil qilindi". Tomning uskuna. Olingan 2010-08-10.
  31. ^ T. Krovetz, V. Dai (2010). "Qanday qilib tezkor AES qo'ng'iroqlarini olish mumkin?". Kripto ++ foydalanuvchi guruhi. Olingan 2010-08-11.
  32. ^ "Kripto ++ 5.6.0 Pentium 4 mezonlari". Kripto ++ veb-sayti. 2009. Arxivlandi asl nusxasidan 2010 yil 19 sentyabrda. Olingan 2010-08-10.
  33. ^ "To'liq bo'lmagan SSH ma'lumotnomasi". Olingan 2020-04-09.
  34. ^ "NonStop cF SSL kutubxonasi uchun qo'llanma". Olingan 2020-04-09.
  35. ^ "BackBox H4.08Tape shifrlash opsiyasi". Olingan 2020-04-09.
  36. ^ "Intel Advanced Encryption Standard Instructions (AES-NI)". Intel. 2010 yil 2 mart. Arxivlandi asl nusxasidan 2010 yil 7 iyulda. Olingan 2010-07-11.
  37. ^ "Sandy Bridge tizimlarida NSS-ga AES-NI yaxshilanishlari". 2012-05-02. Olingan 2012-11-25.
  38. ^ "Tizimlarni boshqarish bo'yicha qo'llanma: xavfsizlik xizmatlari, 13-bob Solaris kriptografik asoslari (umumiy nuqtai)". Oracle. 2010 yil sentyabr. Olingan 2012-11-27.
  39. ^ "FreeBSD 8.2 versiyasiga oid eslatmalar". FreeBSD.org. 2011-02-24. Olingan 2011-12-18.
  40. ^ OpenSSL: CVS veb-interfeysi
  41. ^ "Kriptografik Backend (GnuTLS 3.6.14)". gnutls.org. Olingan 2020-06-26.
  42. ^ "Libsodyumdagi AES-GCM". libsodium.org.
  43. ^ "www.flam.de :: Mahsulotlar". flam.de.
  44. ^ "Uskuna tezlashishi". www.veracrypt.fr.
  45. ^ "aes - dasturlash tili borish". golang.org. Olingan 2020-06-26.
  46. ^ Shimpi, Anand Lal. "Klarkdeyl sharhi: Intelning Core i5 661, i3 540 & i3 530". www.anandtech.com. Olingan 2020-06-26.

Tashqi havolalar