VIA PadLock - VIA PadLock - Wikipedia

VIA PadLock je centrální procesorová jednotka (PROCESOR) instrukční sada rozšíření do x86 mikroprocesor architektura sady instrukcí (ISA) nalezený na procesorech vyráběných společností VIA Technologies a Zhaoxin. Představený v roce 2003 s VIA Centaur CPU, další pokyny poskytují hardwarově akcelerované generování náhodných čísel (RNG), Advanced Encryption Standard (AES), SHA-1, SHA256, a Montgomeryho modulární násobení.[1][2]

Instrukce

Sadu instrukcí PadLock lze rozdělit do čtyř podmnožin:[1]

  • Generování náhodných čísel (RNG)
    • XSTORE: Uložit dostupné náhodné bajty (aka XSTORERNG)
    • REP XSTORE: Uložení náhodných bajtů ECX
  • Pokročilý kryptografický engine (ACE) - pro AES krypto; dvě verze
  • SHA hash engine (PHE)
    • REP XSHA1: Hash funkce SHA-1
    • REP XSHA256: Hash funkce SHA-256
  • Montgomeryho multiplikátor (PMM)
    • REP MONTMUL

Schopnost visacího zámku je indikována pomocí a CPUID instrukce s EAX = 0xC0000000. Pokud je výslednice EAX> = 0xC0000001, CPU si je vědom funkcí Centaurů. Další požadavek s EAX = 0xC0000001 pak vrátí podporu PadLock dovnitř EDX. Schopnost visacího zámku lze zapnout nebo vypnout pomocí MSR 0X1107.[1]

U některých nalezen nástroj VIA PadLock Zhaoxin CPU mají SM3 hashování a SM4 přidána bloková šifra.[3]

CPU s PadLock

  • Všechny procesory VIA Nano podporují SHA, AES a RNG.
  • Všechny procesory VIA Eden od roku 2003 (C3 Nehemiah) podporují AES a RNG. Všechny tyto vydané od roku 2006 podporují AES, RNG, SHA a PMM.
  • Všechny procesory VIA C7 podporují AES, RNG, SHA a PMM.

Podpůrný software

Viz také

Reference

  1. ^ A b C „Průvodce programováním VIA PadLock“. 4. srpna 2005.
  2. ^ „VIA PadLock - rychlé rychlé šifrování“. www.logix.cz.
  3. ^ „Čtyřjádrový procesor řady Kaixian ZX-C +“. Shanghai Zhaoxin Semiconductor Co., Ltd..
  4. ^ „Podpora VIA PadLock pro Linux“. www.logix.cz.
  5. ^ visací zámek (4) – FreeBSD Rozhraní jádra Manuál
  6. ^ „openssl / engine / e_padlock.c“. GitHub.
  7. ^ „Přidány nové pokyny pro další verzi jádra VIA PadLock. · Bminor / binutils-gdb @ 30d1c83“. GitHub.