Manifest platformy důvěry File Formát
Uživatelská příručka
Nadview
Manifest file je navržen tak, aby zprostředkovával jedinečné informace o skupině zabezpečených subsystémů, včetně jedinečného ID (např. sériové číslo), veřejných klíčů a certifikátů. Toto bylo primárně vyvinuto pro bezpečné prvky Crpy to Authentication™ (aktuálně ATECC508A, ATECC608A a ATECC608B). Je však strukturován tak, aby fungoval i pro jiné zabezpečené subsystémy.
Manifest files poskytují způsob, jak propojit skutečné bezpečnostní zařízení Microchip Trust s prostředím infrastruktury, ke kterému se potřebuje připojit. Tyto files jsou kritickým aspektem vývojových prostředí Microchip Trust&GO, Trust FLEX a volitelně Trust CUSTOM. Ať už se připojíte ke cloudu IoT, síti LoRaWAN® nebo potenciálně k jakékoli jiné infrastruktuře nebo prostředí, manifest file jedinečně váže dané zařízení k tomuto prostředí.
Při práci s produkty Microchip Trustor, Trust FLEX nebo Trust CUSTOM, manifest file budou generovány pro skupinu zařízení, která jsou zajišťována prostřednictvím zajišťovacích služeb Microchip Just-In-Time. Každá položka objektu v manifestu file je známý jako podepsaný zabezpečený prvek a je podepsán soukromým klíčem Microchip Elliptic Curve Cryptography (ECC) k ověření jeho pravosti. Celkový manifest se skládá z více podepsaných zabezpečených prvků.
Specifické informace spojené s výrobcem, zabezpečeným produktovým zařízením a konkrétní informace o jednotlivých zařízeních jsou součástí informací spojených s daným podepsaným zabezpečeným prvkem.
Manifest file je bezpečným způsobem k dispozici pouze zákazníkovi, který si skupinu zařízení objedná. Přístup k těmto manifestům files je součástí toku vývoje a poskytování poskytovaných prostřednictvím Microchip. Jakmile je zřizování pro skupinu produktů dokončeno, manifest file je k dispozici ke stažení.
Manifestní generace
Manifest zařízení Trust FLEX a Trust&GO lze vygenerovat ve dvou scénářích. Jedna je prostřednictvím zajišťovacích služeb Microchip Just-In-Time (vytvořená Microchipem) a druhá je vlastní generování pomocí poskytnutých skriptů (samogenerované).
V obou případech budou mít zařízení Trust&GO, Trust FLEX a Trust CUSTOM odlišné informace kvůli rozdílům v jejich konfiguraci.
Následující části poskytují manifest file rozdíly mezi:
- Mikročip a vlastní generovaný files
– Manifestní podpis - Trust&GO a Trust FLEX files
- Prototypové a výrobní zařízení files
1.1 Mikročip vs. Samogenerovaný Files
Manifest file formát a postupy generování jsou veřejnými informacemi; proto je mohou generovat uživatelé.
Vzhledem k této povaze a při dodržení postupů budou stále existovat drobné rozdíly mezi Microchip a self-generated files.
Manifestní podpis
V manifestu file, je každý prvek podepsán, aby byla zajištěna integrita obsahu. Pro manifest generovaný mikročipem file, operaci podpisu provádí společnost Microchip pomocí své certifikační autority (CA). Odpovídající certifikát CA lze stáhnout z Microchip webmísto. Tento certifikát lze použít k ověření pravosti mikročipu generovaného files.
Tip:
- Certifikáty MCHP Manifest Signer (na kartě Dokumentace)
- Přímý odkaz ke stažení
Pro manifest, který si sami vytvořili file, není možné nechat podepsat každý prvek Microchip CA, protože uživatelé nemají přístup k soukromému klíči CA. K provádění operací podpisu je nutné vygenerovat/použít místního CA. V tomto případě musí uživatelé sdílet ověřovací certifikát spolu s manifestem file ostatním. To jim umožňuje ověřit obsah před jeho dalším použitím.
Mezi další rozdíly patří:
- Trust&GO – Obsah zůstává stejný, protože data zařízení jsou neměnná, ale podpisové a ověřovací certifikáty se liší, protože samogenerované skripty používají vlastní CA.
- Důvěřujte FLEXU
A. Certifikáty zařízení a podpisu se mohou lišit, pokud je během generování prostředků vybrána vlastní PKI.
b. Sloty 1-4, 13-15 se liší podle dalších generací klíčů v rámci generování zdrojů v místě uživatele.
C. Podpisové a ověřovací certifikáty se liší, protože samogenerované skripty používají vlastní CA.
1.2 Trust&GO vs. Trust FLEX vs. Trust CUSTOM Files
Manifest fileobsahují pouze veřejné informace o zařízení, jako je jeho sériové číslo, certifikáty a veřejné informace o slotech. V závislosti na rozdílech v konfiguraci budou informace v Trust&GO, Trust FLEX a Trust CUSTOM files se liší následovně:
Trust&GO | Důvěřujte FLEXU | Důvěřujte CUSTOM |
• Informace o veřejném klíči slotu 0 (neměnné) • Certifikáty zařízení a podpisu podepsané Microchip CA (neměnné) |
• Informace o veřejném klíči slotu 0 (neměnné) • Certifikáty zařízení a podpisu podepsané společností Microchip nebo zákaznickou CA na základě vlastního výběru PKI • Informace o veřejném klíči slotu 1-4 • Informace o veřejném klíči slotu 13-15 |
• Vlastní informace díky jedinečné konfiguraci |
Sloty pro certifikáty v zařízeních Trust FLEX
Když se uživatel rozhodne vytvořit vlastní řetězec certifikátů na zařízení Trust FLEX, certifikáty poskytnuté výrobcem budou přepsány. Skripty/notebook Trust Platform Design Suite umožňují uživateli zálohovat výchozí certifikáty do místní složky před přepsáním vlastních certifikátů na zařízení. Pokud však deska po zřízení změní majitele, nový uživatel nebude mít záložní certifikáty a nebude se moci vrátit k továrnímu nastavení.
1.3 Prototyp vs. výrobní zařízení Files
Prototypová zařízení jsou určena pro vlastní použití pro výzkum a vývoj; proto tato zařízení nepřicházejí s manifestem file generované v továrně. Tato zařízení však budou mít klíč slotu 0 vygenerovaný spolu s certifikáty zařízení a podpisu vygenerovanými během továrního zřizování. Je nutné, aby se manifest vytvořil sám files pro prototyp zařízení Trust&GO a Trust FLEX.
Trust Platform Design Suite poskytuje požadované skripty/nástroje pro samogenerování manifestu files.
Tip:
- Trust&GO skripty pro generování manifestů
- Trust FLEX pro generování skriptů manifestu (s generováním dev klíče)
U produkčních zařízení si uživatelé mohou manifest vždy stáhnout file z portálu mikročip DIRECT pod jejich osobním přihlášením. Tyto files jsou k dispozici pouze po poskytnutí zařízení a odeslání zákazníkovi.
Obrázek 1-1. Portál Microchip DIRECT Manifest
Struktura a formát manifestu File
2.1 Úvod
Základní formát je pole objektů JavaScript Object Notation (JSON). Každý objekt představuje jeden zabezpečený prvek a je podepsán, aby bylo možné kryptograficky ověřit jeho původ. Formát je záměrně „zploštělý“ s běžnými informacemi opakujícími se pro každý zabezpečený prvek. To má usnadnit paralelní zpracování manifestů a případně umožnit rozdělení položek do menších manifestů.
Tento formát využívá k reprezentaci klíčů sadu standardů JavaScript Object Signing and Encryption (JOSE) (JSON Web Klíč – JWK), certifikáty (člen x5c v JWK) a podepisování (JSON Web Podpis – JWS). V definicích objektů mohou být hodnoty členů název jiného objektu JSON nebo jen example hodnotu.
2.2 Binární kódování
JSON nemá žádný nativní formát binárních dat, takže k reprezentaci binárních dat se používá řada kódování řetězců v závislosti na kontextu.
ZÁKLAD64URL
Toto je kódování base64 pomocí a URL-bezpečná abeceda, jak je popsáno v RFC 4648 sekci 5, s odstraněnými koncovými znaky (“=”).
Toto je kódování používané standardy JOSE a lze jej nalézt v použitých objektech JWS, JWK a JWE. To je zdokumentováno v RFC 7515, oddíl 2.
Toto kódování se také používá v několika dalších nečlenech JOSE, aby byla zachována konzistence.
ZÁKLAD64
Toto je standardní kódování base64, jak je popsáno v RFC 4648, oddíl 4, a zahrnuje koncové výplňové znaky („=“).
To se používá pro kódování certifikátů (členové JOSE x5c), pravděpodobně proto, aby se více shodovalo s běžným kódováním PEM, ve kterém se certifikáty často nacházejí.
HEX
V některých případech jsou krátké binární hodnoty vyjádřeny jako malé hexadecimální řetězce. Účelem je sladit konvence s tím, jak jsou tyto hodnoty obvykle vnímány a jak se s nimi pracuje.
2.3 Objekt manifestu zabezpečeného prvku
Na nejvyšší úrovni je formát manifestu prvku Secure Element pole JSON objektů Signed Secure Element, kde každý prvek představuje jeden prvek zabezpečení.
[
SignedSecureElement,
SignedSecureElement,
…
]
2.4 Podepsaný objekt zabezpečeného prvku
Objekt Signed Secure Element je objekt JWS (RFC 7515) používající sloučenou syntaxi serializace JSON (část 7.2.2).
{
"užitné zatížení": BASE64URL(UTF 8(SecureElement)) ,
"chráněno": BASE64 URL(UTF8(SignedSecureElementProtectedHeader)),
"záhlaví" : {
“uniqueId” : “0123f1822c38dd7a01”
},
"podpis": ZÁKLAD 64URL(Podpis JWS)
}
RFC 7515 sekce 7.2.1 poskytuje definice pro kódování a obsah členů JWS používaných v tomto objektu. Níže jsou uvedeny některé rychlé souhrny a další podrobnosti o těchto členech a konkrétních používaných funkcích.
užitečné zatížení
Kódovaný objekt SecureElement, který je primárním podepisovaným obsahem. Zde jsou uvedeny všechny informace o bezpečnostním prvku.
chráněný
Kódovaný objekt SignedSecureElementProtectedHeader, který popisuje, jak ověřit podpis.
záhlaví
JWS nechráněná hlavička. Tento objekt obsahuje jedinečný člen ID opakující se z objektu SecureElement v datové části. Nechráněná hlavička není součástí podepsaných dat v JWS; proto nemusí být kódován a je zahrnut pro usnadnění prohledávání manifestu v prostém textu bez nutnosti dekódování datové části.
podpis
Zakódovaný podpis JWS užitečného zatížení a chráněných členů.
2.4.1 Objekt SignedSecureElementProtectedHeader
Objekt SignedSecureElementProtectedHeader je chráněná hlavička JWS, která popisuje, jak ověřit podpis. Zatímco RFC 7515 sekce 4.1 uvádí dostupné členy záhlaví pro JWS, budou použity pouze ty zde uvedené.
{
"alg": "ES256",
"dítě": BASE64URL(Identifikátor klíče předmětu) ,
"x5t#S256" : BASE64 URL(Miniatura certifikátu SHA-256)
}
alg
Popisuje typ klíče použitý k podepsání datové části. Viz RFC 7518 část 3.1. Budou použity pouze algoritmy veřejného klíče.
dítě
Kódovaný identifikátor klíče předmětu (RFC 5280, sekce 4.2.1.2) klíče použitého k podepsání datové části. Toto je BASE64URL kódování hodnoty identifikátoru klíče předmětu, nikoli úplné přípony. Slouží k identifikaci klíče pro ověření. kid je pole ve volném formátu ve standardu JWS (viz RFC 7515 část 4.1.4), takže tato definice platí pouze pro objekt SignedSecureElement.
x5t#S256
SHA-256 otisk (také znám jako otisk prstu) certifikátu pro veřejný klíč potřebný k ověření podpisu. Stejně jako dítě může být také použit k identifikaci klíče pro ověření. Viz RFC 7515, část 4.1.8.
2.5 Objekt SecureElement
Objekt SecureElement obsahuje všechny informace o prvku SecureElement.
{
"verze": 1,
"model" : "ATECC608A",
"partNumber" : "ATECC608A-MAHDA-T",
"výrobce": EntityName,
"poskytovatel" : EntityName ,
"distributor" : EntityName ,
"groupId" : "359SCE55NV38H3CB",
„provisioningTimestamp“ : “2018-01-15T17:22:45.000Z” ,
"uniqueId" : "0123f1822c38dd7a01",
“publicKeySet” : {
„klíče“ : [ PublicJWK , … ] },
“encryptedSecretKeySet” : {
“klíče” : [ EncryptedSecretJWK , … ] }
„modelInfo“: ModelInfo
}
verze
Verze objektu SecureElement jako celé číslo. Aktuální verze je 1. Následující verze se budou snažit zachovat zpětnou kompatibilitu s předchozími verzemi, kde to bude možné.
model
Název základního modelu zabezpečeného prvku. Aktuální možnosti jsou ATECC508A, ATECC608A a ATECC608B z rodiny Crypto Authentication.
partNumber
Vyplňte číslo dílu zřízeného prvku zabezpečení.
výrobce
Objekt EntityName, který identifikuje výrobce prvku zabezpečení.
proviant
Objekt EntityName, který identifikuje, kdo provedl zřízení/programování zabezpečeného prvku.
distributor
Objekt EntityName, který identifikuje, kdo distribuoval zřízené prvky zabezpečení.
V mnoha případech se bude jednat o stejnou entitu, která generuje zde popsaná data manifestu.
groupld
Zabezpečené prvky mohou být organizovány do skupin identifikovaných jedním ID. Pokud je prvek zabezpečení součástí skupiny, jedná se o jedinečné ID této sady. ID skupiny by měla být globálně jedinečná.
poskytování Timestamp
Datum a čas, kdy byl prvek zabezpečení zřízen v UTC. Formátování odpovídá RFC 3339.
unikátní ID
Jedinečný identifikátor pro prvek zabezpečení. U zařízení Crypto Authentication se jedná o 9bajtové sériové číslo zařízení ve formě hexadecimálního řetězce s malými písmeny.
publicKeySet
Objekt představující všechny veřejné klíče (a řetězce certifikátů, jsou-li k dispozici) odpovídající soukromým klíčům drženým prvkem zabezpečení. Tento objekt je JSON Web Sada klíčů (JWK Set) podle RFC 7517 sekce 5, kde klíče jsou pole veřejných objektů JWK.
encryptedSecretKeySet
Objekt představující všechny tajné klíče (symetrické klíče) a data držená bezpečnostním prvkem, které jsou označeny pro export. Člen klíče je pole objektů EncryptedSecretJWK. Všimněte si, že se nepoužívá šifrovaná sada JWK, takže metadata o jednotlivých klíčích (číslo a ID klíčů) lze číst bez dešifrování.
informace o modelu
Pokud je třeba předat další nekryptografické informace o zabezpečeném prvku, může tento objekt Modulino obsahovat informace specifické pro daný model.
2.6 Objekt EntityName
Objekt EntityName se používá k identifikaci entity zodpovědné za nějakou část prvku zabezpečení. Členové v tomto objektu jsou variabilní a musí být stejné jako atributy definované v částech 6.4.1 Název organizace a 6.4.2 Název organizační jednotky ITU-T X.509 (ISO/IEC 9594-6). I když není vyžadován žádný z členů, musí existovat alespoň jeden.
{
„název organizace“ : „Microchip Technology Inc“,
„organizationalUnitName“ : „Skupina bezpečných produktů“,
}
Název organizace
Název organizace subjektu (např. název společnosti).
OrganizationUnitName Volitelný název jednotky v rámci organizace, na kterou se entita konkrétně vztahuje.
2.7 Veřejný objekt JWK
Tento objekt představuje asymetrický veřejný klíč a k němu přidružené certifikáty. Toto je objekt JWK, jak je definován v RFC 7517. Některé specifikace členů JWK jsou zopakovány níže pro snadnou referenci spolu s očekáváním konkrétních modelů bezpečnostních prvků.
Následující definice se týká veřejných klíčů eliptických křivek podporovaných rodinou bezpečnostních prvků Crypto Authentication.
{
"dítě" : "0" ,
"kty" : "EC" ,
"crv" : "P-256",
"x": BASE64URL(X) ,
"y": BASE64URL(Y),
“x5c” : [ BASE 64(cert) , … ] }
Následující pole JWK vyžadovaná pro veřejné klíče eliptické křivky jsou definována v RFC 7518, sekci 6.2.1:
dítě
Řetězec ID klíče. Jednoznačně identifikuje tento klíč na prvku zabezpečení. U bezpečnostních prvků Crypto Authentication to bude číslo slotu odpovídajícího soukromého klíče.
kty
Typ klíče. Zabezpečené prvky CryptoAuthentication podporují pouze veřejné klíče EC, jak je definováno v RFC 7518, oddíl 6.1.
crv
U kláves eliptických křivek se jedná o název křivky. Zabezpečené prvky CryptoAuthentication podporují pouze křivku P-256, jak je definována v RFC 7518, oddíl 6.2.1.1.
x
U klíčů eliptických křivek se jedná o kódovaný veřejný klíč X celé číslo, jak je definováno v RFC 7518, oddíl 6.2.1.2.
y
U klíčů eliptických křivek se jedná o zakódované celé číslo veřejného klíče Y, jak je definováno v RFC 7518, oddíl 6.2.1.3.
x5c
Pokud je k veřejnému klíči přidružen certifikát, bude tento certifikát nalezen na první pozici v tomto poli.
Následující certifikáty v poli budou certifikáty CA použité k ověření předchozího. Certifikáty budou kódovány BASE64 (nikoli BASE64URL) řetězce certifikátu DER. Toto je definováno v RFC 7517, oddíl 4.7.
2.8 EncryptedSecretJWK Object
Tento objekt představuje tajný klíč (symetrický klíč) nebo tajná data v zabezpečeném prvku, který je pro příjemce manifestu zašifrován.
Je to JSON Web Objekt šifrování (JWE), jak je definován v RFC 7516. Užitečné zatížení JWE bude serializace JSON (nikoli kompaktní serializace) objektu JWK, jak je definováno v RFC 7517, s typem klíče oktet („kty“:“oct“ ). Podrobnosti o symetrickém klíči JWK viz RFC 7518, část 6.4. Tato technika je popsána v RFC 7517, oddíl 7.
2.9 Objekt ModelInfo
Tento objekt uchovává další informace specifické pro model o zabezpečeném prvku, které nejsou zachyceny ostatními kryptografickými členy. Nemá žádné konkrétní členy, ale závisí na modelu zabezpečeného prvku.
V současné době mají objekt ModelInfo definován pouze modely CryptoAuthentication (ATECC508A a ATECC608A).
2.9.1 Objekt ModelInfo CryptoAuthentication
Členové ModelInfo definované pro modely CryptoAuthentication (ATECC508A nebo ATECC608A):
{
"deviceRevision" : "00006002",
“publicData” : [ CryptoAuthPublicDataElement , … ] }
revize zařízení
4bajtové číslo revize zařízení vrácené příkazem Info (Mode = 0x00). Kódováno jako hexadecimální řetězec s malými písmeny.
veřejná data
Pole objektů CryptoAuthPublicDataElement, které definuje umístění a veřejná data v tomto umístění.
2.9.1.1 Objekt CryptoAuthPublicDataElement
Tento objekt definuje umístění a obsah veřejného datového prvku v zabezpečených prvcích CryptoAuthentication.
{
"zone" : "data" ,
"slot": 14,
"offset" : 0 ,
"data" : BASE64URL(data)
}
zóna
CryptoAuthentication zóna, kde jsou data nalezena. Možnosti jsou „data“ pro jeden ze slotů, „otp“ pro zónu OTP nebo „config“ pro zónu konfigurace.
slot
Pokud je zóna „data“, jedná se o index slotu (0-15), kde lze data nalézt.
offset
Byte offset do zóny/slotu, ve kterém lze data nalézt.
data
Aktuální data na místě určeném ostatními členy. Tato data budou BASE64URL zakódované (s odstraněnými výplňovými znaky („=“)).
Manifest File Example a Dekódování
Následující pododdíly poskytují napřampmanifestu file záznam, certifikát CA manifestu a kód Python napřample, který lze použít k dekódování manifestu file. Tyto files lze stáhnout z Microchip webmísto na Manifest Example Files. Obsah stahování file je zobrazen níže.
Manifest Files Přample
ExampleManifest.json | Projev jediného prvku file ve formátu json. |
ExampleManifestMCHP_CA.crt | Bývalýample výrobního certifikátu CA od společnosti Microchip. |
ExampleManifestDecode.py | Skript Python, který přečte example Manifest json file a dekódovat jej do příslušných prvků. |
3.1 Projev Přample
Tohle je exampsoubor objektu Secure Element Manifest s jedním záznamem SignedSecureElement:
[
{
"užitné zatížení":
“eyJ2ZXJzaW9uIjoxLCJtb2RlbCI6IkFURUNDNjA4QSIsInBhcnROdW1iZXIiOiJBVEVDQzYwOEEtTUFIMjIiLCJtYW51Z
mFjdHVyZXIiOnsib3JnYW5pemF0aW9uTmFtZSI6Ik1pY3JvY2hpcCBUZWNobm9sb2d5IEluYyIsIm9yZ2FuaXphdGlvbmF
sVW5pdE5hbWUiOiJTZWN1cmUgUHJvZHVjdHMgR3JvdXAifSwicHJvdmlzaW9uZXIiOnsib3JnYW5pemF0aW9uTmFtZSI6I
k1pY3JvY2hpcCBUZWNobm9sb2d5IEluYyIsIm9yZ2FuaXphdGlvbmFsVW5pdE5hbWUiOiJTZWN1cmUgUHJvZHVjdHMgR3J
vdXAifSwiZGlzdHJpYnV0b3IiOnsib3JnYW5pemF0aW9uTmFtZSI6Ik1pY3JvY2hpcCBUZWNobm9sb2d5IEluYyIsIm9yZ
2FuaXphdGlvbmFsVW5pdE5hbWUiOiJNaWNyb2NoaXAgRGlyZWN0In0sImdyb3VwSWQiOiIzNTlTQ0U1NU5WMzhIM0NCIiw
icHJvdmlzaW9uaW5nVGltZXN0YW1wIjoiMjAxOS0wMS0yNFQxNjozNToyMy40NzNaIiwidW5pcXVlSWQiOiIwMTIzZjE4M
jJjMzhkZDdhMDEiLCJwdWJsaWNLZXlTZXQiOnsia2V5cyI6W3sia2lkIjoiMCIsImt0eSI6IkVDIiwiY3J2IjoiUC0yNTY
iLCJ4IjoieDhUUFFrN2g1T3ctY2IxNXAtVEU2SVJxSFFTRVRwUk5OYnU3bmwwRm93TSIsInkiOiJ1eDN1UDhBbG9VbThRb
k5ueUZMNlIwS0taWXhGQ0l0VV9RTGdzdWhYb29zIiwieDVjIjpbIk1JSUI5VENDQVp1Z0F3SUJBZ0lRVkN1OGZzdkFwM3l
kc25uU2FYd2dnVEFLQmdncWhrak9QUVFEQWpCUE1TRXdId1lEVlFRS0RCaE5hV055YjJOb2FYQWdWR1ZqYUc1dmJHOW5lU
0JKYm1NeEtqQW9CZ05WQkFNTUlVTnllWEIwYnlCQmRYUm9aVzUwYVdOaGRHbHZiaUJUYVdkdVpYSWdSall3TURBZ0Z3MHh
PVEF4TWpReE5qQXdNREJhR0E4eU1EUTNNREV5TkRFMk1EQXdNRm93UmpFaE1COEdBMVVFQ2d3WVRXbGpjbTlqYUdsd0lGU
mxZMmh1YjJ4dloza2dTVzVqTVNFd0h3WURWUVFEREJnd01USXpSakU0TWpKRE16aEVSRGRCTURFZ1FWUkZRME13V1RBVEJ
nY3Foa2pPUFFJQkJnZ3Foa2pPUFFNQkJ3TkNBQVRIeE05Q1R1SGs3RDV4dlhtbjVNVG9oR29kQklST2xFMDF1N3VlWFFXa
kE3c2Q3ai9BSmFGSnZFSnpaOGhTK2tkQ2ltV01SUWlMVlAwQzRMTG9WNktMbzJBd1hqQU1CZ05WSFJNQkFmOEVBakFBTUE
0R0ExVWREd0VCL3dRRUF3SURpREFkQmdOVkhRNEVGZ1FVcy9HcVpRNk1BYjd6SC9yMVFvNThPY0VGdVpJd0h3WURWUjBqQ
kJnd0ZvQVUrOXlxRW9yNndiV1NqODJyRWRzSlBzOU52dll3Q2dZSUtvWkl6ajBFQXdJRFNBQXdSUUlnTkxUeks1NmI1VVl
FSGU5WXdxSXM2dVRhbm14Mk9yQjZoL1FZRHNJT1dzTUNJUUNMMURzbHhnVXU4OHhveXlnTVNnTDlYOGxjSDVCejlSQURKY
W1JZi91UUtnPT0iLCJNSUlDQlRDQ0FhcWdBd0lCQWdJUWVRcW4xWDF6M09sdFpkdG1pM2F5WGpBS0JnZ3Foa2pPUFFRREF
qQlBNU0V3SHdZRFZRUUtEQmhOYVdOeWIyTm9hWEFnVkdWamFHNXZiRzluZVNCSmJtTXhLakFvQmdOVkJBTU1JVU55ZVhCM
GJ5QkJkWFJvWlc1MGFXTmhkR2x2YmlCU2IyOTBJRU5CSURBd01qQWdGdzB4T0RFeU1UUXhPVEF3TURCYUdBOHlNRFE1TVR
JeE5ERTVNREF3TUZvd1R6RWhNQjhHQTFVRUNnd1lUV2xqY205amFHbHdJRlJsWTJodWIyeHZaM2tnU1c1ak1Tb3dLQVlEV
lFRRERDRkRjbmx3ZEc4Z1FYVjBhR1Z1ZEdsallYUnBiMjRnVTJsbmJtVnlJRVkyTURBd1dUQVRCZ2NxaGtqT1BRSUJCZ2d
xaGtqT1BRTUJCd05DQUFSMlIwRndzbVBubVZTOGhic1M2ZjV3REZ1TjFOYVRSWmpDS2Fkb0FnNU9DMjFJZGREdG9lNzJYN
UZmeHJFV1JzV2h5bU1mWWxWb2RFZHB4ZDZEdFlscW8yWXdaREFPQmdOVkhROEJBZjhFQkFNQ0FZWXdFZ1lEVlIwVEFRSC9
CQWd3QmdFQi93SUJBREFkQmdOVkhRNEVGZ1FVKzl5cUVvcjZ3YldTajgyckVkc0pQczlOdnZZd0h3WURWUjBqQkJnd0ZvQ
VVldTE5YmNhM2VKMnlPQUdsNkVxTXNLUU9Lb3d3Q2dZSUtvWkl6ajBFQXdJRFNRQXdSZ0loQU1Zd01lbXBpekJPYUg0R3h
UbDVLc1Y2WEFGTk1CZmUzTko5MVIzTmhqZi9BaUVBeHFJc2JyR3VYNFdSU2N0ZDUzZUxvL01MNlQyYmdHK1V2ejJRcFlSN
Flkdz0iXX0seyJraWQiOiIxIiwia3R5IjoiRUMiLCJjcnYiOiJQLTI1NiIsIngiOiIyT2huZTl2MGFUU0NkclpObVh2dE9
XaXI1RVRnUmhudmVjSkRYUEh6RnBnIiwieSI6ImhjUDkxQ01UQUt2amR6Nl9pTldPNDZnNXVQalJ2Smt1dVFfNlRIY2tGL
UEifSx7ImtpZCI6IjIiLCJrdHkiOiJFQyIsImNydiI6IlAtMjU2IiwieCI6IkVFRXhpUmYwVEJYd1BrTGloSlZSdGVTWTN
oVS1JR1RMbFVPLUZSTUpaRmciLCJ5IjoiTnVib2F3NFdfYTNLd2kwbFZlRzlwNGg0Mkk0bTd2bUs1UDQ5U1BlYkZ2TSJ9L
Hsia2lkIjoiMyIsImt0eSI6IkVDIiwiY3J2IjoiUC0yNTYiLCJ4IjoiaktCOERrY2k1RXhSemcwcXREZEFqcFJJSFNoeFl
PTjgyWVoyLWhhamVuWSIsInkiOiJOWU1KOUR0YkN0Nk9wbmoyZzQzQWhrMnB4UXU5S1JkTXkzbTBmLUpfclJFIn0seyJra
WQiOiI0Iiwia3R5IjoiRUMiLCJjcnYiOiJQLTI1NiIsIngiOiJMVFUwSUdoM3ltQXpXbFdtWjg0ZmhYN1lrQjRaQ21tbFY
tWU9ORHREYURVIiwieSI6ImN2TnIyVEpEV1hmNFhPNlB6eWJSV29FY1FMVDRGM05WUDhZajItWDhxYncifV19fQ” ,
"chráněný" :
“eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsImtpZCI6IjdjQ0lMbEFPd1lvMS1QQ2hHdW95VUlTTUszZyIsIng1dCNTM
jU2IjoiVEVjNDZTVDJSREZfQU92QnRvQ1lhODM4VldJUGZOVl8yalRxTmE0ajVSNCJ9” ,
"záhlaví" : {
“uniqueId” : “0123f1822c38dd7a01”
},
“signature” : “7btSLIbS3Yoc6yMckm7Moceis_PNsFbNJ6iktVKl86IuxZ6cU_yVZuLSgLCstMs4_EBFpvsyFy7lj5rM9oMDw”
}
] Dekódování chráněného člena poskytne následující SignedSecureElementProtectedHeader:
{
"typ" : "JWT",
"alg" : "ES256",
„kid“ : „7cCILlAOwYo1-PChGuoyUISMK3g“,
“x5t#S256” : “TEc46ST2RDF_AOvBtoCYa838VWIPfNV_2jTqNa4j5R4”
}
Dekódování člena užitečného zatížení poskytuje následující SecureElement:
{
"verze": 1,
"model" : "ATECC608A",
"partNumber" : "ATECC608A-MAH22",
"výrobce" : {
„název organizace“ : „Microchip Technology Inc“,
„organizationalUnitName“ : „Skupina zabezpečených produktů“
} ,
"poskytovatel" : {
„název organizace“ : „Microchip Technology Inc“,
„organizationalUnitName“ : „Skupina zabezpečených produktů“
} ,
"distributor" : {
„název organizace“ : „Microchip Technology Inc“,
"organizationalUnitName" : "Microchip Direct"
} ,
"groupId" : "359SCE55NV38H3CB",
„provisioningTimestamp“ : “2019-01-24T16:35:23.473Z” ,
"uniqueId" : "0123f1822c38dd7a01",
“publicKeySet” : {
"klíče": [
{
"dítě": "0" ,
"kty": "EC" ,
"crv": "P-256",
“x”: “x8TPQk7h5Ow-cb15p-TE6IRqHQSETpRNNbu7nl0FowM” ,
“y”: “ux3uP8AloUm8QnNnyFL6R0KKZYxFCItU_QLgsuhXoos” ,
"x5c": [
MIIB9TCCAZugAwIBAgIQVCu8fsvAp3ydsnnSaXwggTAKBggqhkjOPQQDAjBPMSEwHwYDVQQKDBhNaWNyb2NoaXAgVGVja
G5vbG9neSBJbmMxKjAoBgNVBAMMIUNyeXB0byBBdXRoZW50aWNhdGlvbiBTaWduZXIgRjYwMDAgFw0xOTAxMjQxNjAwMDB
aGA8yMDQ3MDEyNDE2MDAwMFowRjEhMB8GA1UECgwYTWljcm9jaGlwIFRlY2hub2xvZ3kgSW5jMSEwHwYDVQQDDBgwMTIzR
jE4MjJDMzhERDdBMDEgQVRFQ0MwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAATHxM9CTuHk7D5xvXmn5MTohGodBIROlE0
1u7ueXQWjA7sd7j/AJaFJvEJzZ8hS+kdCimWMRQiLVP0C4LLoV6KLo2AwXjAMBgNVHRMBAf8EAjAAMA4GA1UdDwEB/
wQEAwIDiDAdBgNVHQ4EFgQUs/GqZQ6MAb7zH/
r1Qo58OcEFuZIwHwYDVR0jBBgwFoAU+9yqEor6wbWSj82rEdsJPs9NvvYwCgYIKoZIzj0EAwIDSAAwRQIgNLTzK56b5UYE
He9YwqIs6uTanmx2OrB6h/QYDsIOWsMCIQCL1DslxgUu88xoyygMSgL9X8lcH5Bz9RADJamIf/uQKg==” ,
“MIICBTCCAaqgAwIBAgIQeQqn1X1z3OltZdtmi3ayXjAKBggqhkjOPQQDAjBPMSEwHwYDVQQKDBhNaWNyb2NoaXAgVGVja
G5vbG9neSBJbmMxKjAoBgNVBAMMIUNyeXB0byBBdXRoZW50aWNhdGlvbiBSb290IENBIDAwMjAgFw0xODEyMTQxOTAwMDB
aGA8yMDQ5MTIxNDE5MDAwMFowTzEhMB8GA1UECgwYTWljcm9jaGlwIFRlY2hub2xvZ3kgSW5jMSowKAYDVQQDDCFDcnlwd
G8gQXV0aGVudGljYXRpb24gU2lnbmVyIEY2MDAwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAR2R0FwsmPnmVS8hbsS6f5
wDFuN1NaTRZjCKadoAg5OC21IddDtoe72X5FfxrEWRsWhymMfYlVodEdpxd6DtYlqo2YwZDAOBgNVHQ8BAf8EBAMCAYYwE
gYDVR0TAQH/BAgwBgEB/
wIBADAdBgNVHQ4EFgQU+9yqEor6wbWSj82rEdsJPs9NvvYwHwYDVR0jBBgwFoAUeu19bca3eJ2yOAGl6EqMsKQOKowwCgY
IKoZIzj0EAwIDSQAwRgIhAMYwMempizBOaH4GxTl5KsV6XAFNMBfe3NJ91R3Nhjf/AiEAxqIsbrGuX4WRSctd53eLo/
ML6T2bgG+Uvz2QpYR4Ydw=”
] },
{
"dítě": "1" ,
"kty": "EC" ,
"crv": "P-256",
„x“: „2Ohne9v0aTSCdrZNmXvtOWir5ETgRhnvecJDXPHzFpg“,
“y”: “hcP91CMTAKvjdz6_iNWO46g5uPjRvJkuuQ_6THckF-A”
},
{
"dítě": "2" ,
"kty": "EC" ,
"crv": "P-256",
„x“: „EEExiRf0TBXwPkLihJVRteSY3hU-IGTLlUO-FRMJZFg“,
“y”: “Nuboaw4W_a3Kwi0lVeG9p4h42I4m7vmK5P49SPebFvM”
},
{
"dítě": "3" ,
"kty": "EC" ,
"crv": "P-256",
“x”: “jKB8Dkci5ExRzg0qtDdAjpRIHShxYON82YZ2-hajenY” ,
“y”: “NYMJ9DtbCt6Opnj2g43Ahk2pxQu9KRdMy3m0f-J_rRE”
},
{
"dítě": "4" ,
"kty": "EC" ,
"crv": "P-256",
“x”: “LTU0IGh3ymAzWlWmZ84fhX7YkB4ZCmmlV-YONDtDaDU” ,
“y”: “cvNr2TJDWXf4XO6PzybRWoEcQLT4F3NVP8Yj2-X8qbw”
}
]}
}
The SignedSecureElement example výše lze ověřit pomocí následujícího certifikátu:
—–ZAČÁTEK CERTIFIKÁT—-MIIBxjCCAWygAwIBAgIQZGIWyMZI9cMcBZipXxTOWDAKBggqhkjOPQQDAjA8MSEw
HwYDVQQKDBhNaWNyb2NoaXAgVGVjaG5vbG9neSBJbmMxFzAVBgNVBAMMDkxvZyBT
aWduZXIgMDAxMB4XDTE5MDEyMjAwMjc0MloXDTE5MDcyMjAwMjc0MlowPDEhMB8G
A1UECgwYTWljcm9jaGlwIFRlY2hub2xvZ3kgSW5jMRcwFQYDVQQDDA5Mb2cgU2ln
bmVyIDAwMTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABEu8/ZyRdTu4N0kuu76C
R1JR5vz04EuRqL4TQxMinRiUc3Htqy38O6HrXo2qmNoyrO0xd2I2pfQhXWYuLT35
MGWjUDBOMB0GA1UdDgQWBBTtwIguUA7BijX48KEa6jJQhIwreDAfBgNVHSMEGDAW
gBTtwIguUA7BijX48KEa6jJQhIwreDAMBgNVHRMBAf8EAjAAMAoGCCqGSM49BAMC
A0gAMEUCIQD9/x9zxmHkeWGwjEq67QsQqBVmoY8k6PvFVr4Bz1tYOwIgYfck+fv/
pno8+2vVTkQDhcinNrgoPLQORzV5/l/b4z4=
--KONEC
OSVĚDČENÍ--
3.2 Dekódování Python Example
Toto je skript Python example pro ověření podepsaných záznamů a dekódování obsahu. Skript je testován na Pythonu 2.7 a Pythonu 3.7. Požadované balíčky lze nainstalovat pomocí pipu správce balíčků Pythonu:
pip install python-jose[cryptography] # (c) 2019 Microchip Technology Inc. a její dceřiné společnosti.
#
# V souladu s těmito podmínkami můžete používat software Microchip
# a jakékoli deriváty výhradně s produkty Microchip. Je to vaše
# odpovědnost za dodržování licenčních podmínek třetích stran, které se na vás vztahují
# použití softwaru třetích stran (včetně softwaru s otevřeným zdrojovým kódem), který může
# doprovází software Microchip.
#
# TENTO SOFTWARE DODÁVÁ SPOLEČNOST MICROCHIP „TAK, JAK JE“. ŽÁDNÉ ZÁRUKY
# VÝSLOVNÉ, PŘEDPOKLÁDANÉ NEBO ZÁKONNÉ, VZTAHUJTE SE NA TENTO SOFTWARE, VČETNĚ VŠECH PŘEDPOKLÁDANÝCH
# ZÁRUKY NEPORUŠENÍ, OBCHODOVATELNOSTI A VHODNOSTI PRO A
# URČITÝ ÚČEL. V ŽÁDNÉM PŘÍPADĚ NEBUDE MICROCHIP ODPOVĚDNÁ ZA ŽÁDNÉ NEPŘÍMÉ,
# ZVLÁŠTNÍ, TRESTUJÍCÍ, NÁHODNÉ NEBO NÁSLEDNÉ ZTRÁTY, ŠKODY, NÁKLADY NEBO NÁKLADY
# JAKÉHOKOLI DRUHU JAKOUKOLIV SOUVISEJÍCÍ SE SOFTWAREM, AŤ JAK ZPŮSOBIL, I KDYŽ
# MICROCHIP BYL UPOZORNĚN NA MOŽNOST, NEBO JSOU ŠKODY
# PŘEDvídatelné. V NEJVYŠŠÍM ROZSAHU POVOLENÉM ZÁKONEM, CELKOVÁ MIKROCHIP
# ODPOVĚDNOST ZA VŠECHNY NÁROKY V JAKÉKOLI SOUVISEJÍCÍ S TÍMTO SOFTWAREM NEPŘEKROČÍ
# VÝŠE POPLATKŮ, ZA KTERÉ JSTE ZAPLATILI PŘÍMO MIKROCHIPU
# TENTO SOFTWARE.
importovat JSON
z base64 importovat b64decode , b16encode
z argparse import ArgumentParser
import jose . jws
od jose. utils import base64url_decode , base64url_zakódovat
z importu kryptografie x509
z kryptografie. hazmat . backends import default_backend
z kryptografie. hazmat . primitiva import hash, serializace
z kryptografie. hazmat . primitivové. asymetrický import ec
parser = ArgumentParser (
description = 'Ověřit a dekódovat manifest zabezpečeného prvku'
)
analyzátor . přidat_argument (
'–manifest',
pomoc = 'Projev file zpracovat',
nargs =1,
typ = str ,
povinné = Pravda,
metavar ='file’
)
analyzátor . přidat_argument (
'–cert',
help = 'Ověřovací certifikát file ve formátu PEM“,
nargs =1,
typ = str ,
povinné = Pravda,
metavar ='file’
)
args = analyzátor . parse_args ()
# Vyjmenujte povolené ověřovací algoritmy pro JWS. Pouze povoluje
# ty založené na veřejném klíči.
ověřovací_algoritmy = [
'RS256' , 'RS384' , 'RS512' , 'ES256' , 'ES384' , 'ES512'
] # Načíst manifest jako JSON
s otevřeným (args. manifest [0], 'rb') jako f:
manifest = json . zatížení (f)
# Načtěte ověřovací certifikát ve formátu PEM
s otevřeným ( args . cert [ 0 ], 'rb' ) jako f :
ověřovací_cert = x509 . load_pem_x509_certificate (
data =f. číst (),
backend = default_backend ()
)
# Převeďte veřejný klíč ověřovacího certifikátu do formátu PEM
authentic_public_key_pem = ověřovací_certifikát . public_key ().public_bytes (
kódování = serializace . Kódování. PEM,
formát = serializace . PublicFormat . SubjectPublicKeyInfo
). dekódovat ('ascii')
# Získejte základnu64url zakódovaný identifikátor klíče předmětu pro ověřovací certifikát
ski_ext = ověření_cert . rozšíření . get_extension_for_class (
extclass =x509. SubjectKeyIdentifier
)
authentic_cert_kid_b64 = base64url_encode (
ski_ext . hodnota . strávit
). dekódovat ('ascii')
# Získejte základnu64url zakódovaný otisk sha-256 pro ověřovací certifikát
authentic_cert_x5t_s256_b64 = base64url_encode (
ověřovací_certifikát . otisk prstu ( hash . SHA256 ())
). dekódovat ('ascii')
# Zpracujte všechny položky v manifestu
for i , sign_se in enumerate ( manifest ):
tisk ( " )
print ( 'Zpracování záznamu {} z {}:' . formát ( i +1 , len(manifest )))
print ( 'uniqueId: {}' . format (
sign_se [ 'header' ][ 'uniqueId' ] ))
# Dekódujte chráněnou hlavičku
protected = json . zatížení (
základ 64url_decode (
sign_se [ 'chráněno' ]. kódovat ('ascii')
)
)
if protected [ 'kid' ] != certificate_cert_kid_b64 :
zvýšit ValueError ( 'dítě neodpovídá hodnotě certifikátu' )
pokud je chráněno [ 'x5t#S256' ] != certificate_cert_x5t_s256_b64 :
zvýšit ValueError ( 'x5t#S256 neodpovídá hodnotě certifikátu' )
# Převeďte JWS do kompaktní podoby podle požadavků python-jose
jws_compact = '.' . připojit ([
sign_se [ 'protected' ],
sign_se [ 'payload' ],
sign_se [ 'signature' ] ])
# Ověřte a dekódujte užitečné zatížení. Pokud se ověření nezdaří, dojde k výjimce
# být vychován.
se = json. zatížení (
jose . jws . ověřit (
token =jws_compact,
klíč = verifikace_public_key_pem ,
algorithms = ověřovací_algoritmy
)
)
if se [ 'uniqueId' ] != sign_se [ 'header' ][ 'uniqueId' ]:
zvýšit ValueError (
(
'uniqueId v záhlaví „{}“ neodpovídá verzi v' +
' užitečné zatížení „{}“'
). formát (
sign_se [ 'header'][ 'uniqueId' ] ,
se [ 'uniqueId' ] )
)
tisk ( 'Ověřeno')
tisknout ( 'SecureElement = ' )
print ( json . dumps ( se , indent =2 ))
# Dekódujte veřejné klíče a certifikáty
zkus:
public_keys = se [ 'publicKeySet' ][ 'keys' ] kromě KeyError :
public_keys = [] pro jwk v public_keys :
print ( 'Veřejný klíč ve slotu {}:' . formát ( int ( jwk['kid' ])))
if jwk [ 'kty' ] != 'EC' :
zvýšit ValueError (
'Nepodporováno {}' . formát ( json . dumps ({ 'kty' : jwk['kty' ]}))
)
if jwk [ 'crv' ] != 'P-256' :
zvýšit ValueError (
'Nepodporováno {}' . formát ( json . dumps ({ 'crv' : jwk['crv' ]}))
)
# Dekódujte x a y celá čísla
# Použití int.from_bytes() by bylo v pythonu 3 efektivnější
x = int (
b16encode (base64url_decode ( jwk[ 'x' ]. encode ('utf8' ))),
16
)
y = int (
b16encode (base64url_decode ( jwk[ 'y' ]. encode ('utf8' ))),
16
)
veřejný_klíč = ec . EllipticCurvePublicNumbers (
křivka = ec. SECP256R1 (),
x = x,
y = y
). veřejný_klíč ( default_backend ())
tisknout ( public_key . public_bytes (
kódování = serializace . Kódování . PEM,
formát = serializace . PublicFormat . SubjectPublicKeyInfo
). dekódovat ('ascii'))
# Dekódujte všechny dostupné certifikáty
pro cert_b64 v jwk . get( 'x5c' , []):
cert = x509. load_der_x509_certificate (
data =b64decode ( cert_b64 ),
backend =default_backend ()
)
tisknout ( cert . public_bytes (
kódování = serializace . Kódování . PEM
). dekódovat ('ascii'))
Historie revizí
Doc Rev. | Datum | Popis |
A | 02/2022 | První vydání tohoto dokumentu |
Mikročip Webmísto
Microchip poskytuje online podporu prostřednictvím našeho webmísto na www.microchip.com/. Tento webmísto se používá k výrobě files a informace snadno dostupné zákazníkům. Některý dostupný obsah zahrnuje:
- Produktová podpora – datové listy a errata, aplikační poznámky a sampprogramy, zdroje návrhů, uživatelské příručky a dokumenty podpory hardwaru, nejnovější verze softwaru a archivovaný software
- Obecná technická podpora – často kladené otázky (FAQ), požadavky na technickou podporu, online diskusní skupiny, seznam členů programu designérských partnerů společnosti Microchip
- Business of Microchip – průvodce pro výběr produktů a objednávky, nejnovější tiskové zprávy Microchip, seznam seminářů a akcí, seznamy prodejních kanceláří Microchip, distributorů a zástupců továren
Služba upozornění na změnu produktu
Služba oznamování změn produktů společnosti Microchip pomáhá zákazníkům udržovat aktuální informace o produktech společnosti Microchip. Předplatitelé obdrží e-mailové upozornění, kdykoli dojde ke změnám, aktualizacím, revizím nebo chybám souvisejícím s konkrétní produktovou řadou nebo vývojovým nástrojem, který je zajímá.
Chcete-li se zaregistrovat, přejděte na www.microchip.com/pcn a postupujte podle pokynů k registraci.
Zákaznická podpora
Uživatelé produktů Microchip mohou získat pomoc prostřednictvím několika kanálů:
- Distributor nebo zástupce
- Místní prodejní kancelář
- Embedded Solutions Engineer (ESE)
- Technická podpora
Zákazníci by měli kontaktovat svého distributora, zástupce nebo ESE s žádostí o podporu. Zákazníkům jsou k dispozici také místní prodejní kanceláře. V tomto dokumentu je uveden seznam prodejních kanceláří a míst.
Technická podpora je k dispozici prostřednictvím webmísto na: www.microchip.com/support
Funkce ochrany kódem zařízení Microchip
Všimněte si následujících podrobností o funkci ochrany kódu na produktech Microchip:
- Produkty Microchip splňují specifikace obsažené v jejich konkrétním datovém listu Microchip.
- Společnost Microchip věří, že její řada produktů je bezpečná, pokud se používají zamýšleným způsobem, v rámci provozních specifikací a za normálních podmínek.
- Microchip si cení a agresivně chrání svá práva duševního vlastnictví. Pokusy o porušení funkcí ochrany kódu produktu Microchip jsou přísně zakázány a mohou porušovat zákon Digital Millennium Copyright Act.
- Společnost Microchip ani žádný jiný výrobce polovodičů nemůže zaručit bezpečnost svého kódu. Ochrana kódem neznamená, že garantujeme, že produkt je „nerozbitný“. Ochrana kódu se neustále vyvíjí. Společnost Microchip se zavázala neustále zlepšovat funkce ochrany kódu našich produktů.
Právní upozornění
Tato publikace a zde uvedené informace mohou být použity pouze s produkty Microchip, včetně návrhu, testování a integrace produktů Microchip s vaší aplikací. Použití těchto informací jakýmkoli jiným způsobem porušuje tyto podmínky. Informace týkající se aplikací zařízení jsou poskytovány pouze pro vaše pohodlí a mohou být nahrazeny aktualizacemi. Je vaší odpovědností zajistit, aby vaše aplikace odpovídala vašim specifikacím. Obraťte se na místní obchodní zastoupení Microchip pro další podporu nebo získejte další podporu na www.microchip.com/en-us/support/design-help/client-support-services.
TYTO INFORMACE POSKYTUJE SPOLEČNOST MICROCHIP „TAK JAK JSOU“. MICROCHIP NEPOSKYTUJE ŽÁDNÁ PROHLÁŠENÍ ANI ZÁRUKY JAKÉHOKOLI DRUHU, AŤ UŽ VÝSLOVNÉ ČI PŘEDPOKLÁDANÉ, PÍSEMNÉ NEBO ÚSTNÍ, ZÁKONNÉ NEBO JINÉ, TÝKAJÍCÍ SE INFORMACÍ VČETNĚ, ALE NE OMEZENÍ, JAKÝCHKOLI PŘEDPOKLÁDANÝCH ZÁRUK, ZÁRUK NEPORUŠENÍ TNCH OBCHODU KONKRÉTNÍ ÚČEL NEBO ZÁRUKY VZTAHUJÍCÍ SE K JEHO STAVU, KVALITĚ NEBO VÝKONU.
V ŽÁDNÉM PŘÍPADĚ NEBUDE MICROCHIP ODPOVĚDNÁ ZA ŽÁDNÉ NEPŘÍMÉ, ZVLÁŠTNÍ, TRESTNÉ, NÁHODNÉ NEBO NÁSLEDNÉ ZTRÁTY, ŠKODY, NÁKLADY NEBO NÁKLADY JAKÉHOKOLI DRUHU, JAKKOLI SOUVISEJÍCÍ S INFORMACÍ NEBO JEJICH POUŽITÍM, JAKKOLI BY BYLO UVEDENO, JAK BY BYLO ZPŮSOBeno, MOŽNOST NEBO ŠKODY JSOU PŘEDVÍDAJÍCÍ. CELKOVÁ ODPOVĚDNOST SPOLEČNOSTI MICROCHIP ZA VŠECHNY NÁROKY SOUVISEJÍCÍ S INFORMACEMI NEBO JEJICH POUŽITÍM NEPŘEKROČÍ V NEJVYŠŠÍM ROZSAHU POVOLENÉM ZÁKONEM, KTERÉ JSTE ZA INFORMACE ZAPLATILI PŘÍMO SPOLEČNOSTI MICROCHIP.
Použití zařízení Microchip v aplikacích na podporu života a/nebo v bezpečnostních aplikacích je zcela na riziko kupujícího a kupující souhlasí s tím, že bude Microchip bránit, odškodnit a chránit před všemi škodami, nároky, žalobami nebo výdaji vyplývajícími z takového použití. Žádné licence nejsou poskytovány, implicitně ani jinak, v rámci jakýchkoli práv duševního vlastnictví společnosti Microchip, pokud není uvedeno jinak.
ochranné známky
Název a logo Microchip, logo Microchip, Adaptec, Any Rate, AVR, logo AVR, AVR Freaks, Bestie, Bit Cloud, Crypto Memory, CryptoRF, dsPIC, flexPWR, HELDO, IGLOO, JukeBlox, KeeLoq, Kleer, LANCheck, LinkMD , maXStylus, maXTouch, MediaLB, megaAVR, Microsemi, logo Microsemi, MOST, logo MOST, MPLAB, OptoLyzer, PIC, picoPower, PICSTART, logo PIC32, PolarFire, Prochip Designer, QTouch, SAM-BA, SenGenuity, SSTNIC, S Logo, SuperFlash, Symmetricom, Sync Server, Tachyon, TimeSource, tinyAVR, UNI/O, Vectron a XMEGA jsou registrované ochranné známky společnosti Microchip Technology Incorporated v USA a dalších zemích.
AgileSwitch, APT, ClockWorks, The Embedded Control Solutions Company, EtherSync, Flashtec, Hyper Speed Control, Hyper Light Load, IntelliMOS, Libero, motorBench, mTouch, Powermite 3, Precision Edge, ProASIC, ProASIC Plus, logo ProASIC Plus, Quiet-Wire , Smart Fusion, Sync World, Temux, TimeCesium, TimeHub, TimePictra, TimeProvider, TrueTime, WinPath a ZL jsou registrované ochranné známky společnosti Microchip Technology Incorporated v USA
Potlačení přilehlého klíče, AKS, Analog-for-the-Digital Age, Libovolný kondenzátor, Jakýkoli vstup, Jakýkoli výstup, Rozšířené přepínání, Blue Sky, Body Com, Code Guard, CryptoAuthentication, Crypto Automotive, Crypto Companion, Crypto Controller, dsPICDEM, dsPICDEM .net, Dynamic Average Matching, DAM, ECAN, Espresso T1S, EtherGREEN, Grid Time, Ideal Bridge, In-Circuit Serial Programming, ICSP, INICnet, Intelligent Paralleling, Inter-Chip Connectivity, JitterBlocker, Knob-on-Display, max Crypto , max View, paměť Brain, Mindi, MiWi, MPASM, MPF, MPLAB Certified logo, MPLIB, MPLINK, MultiTRAK, NetDetach, NVM Express, NVMe, Omniscient Code Generation, PICDEM, PICDEM.net, PI Ckit, PI Ctail, Power Smart, PureSilicon, QMatrix, REAL ICE, Ripple Blocker, RTAX, RTG4, SAMICE, Serial Quad I/O, simpleMAP, SimpliPHY, SmartBuffer, Smart HLS, SMART-IS, storClad, SQI, SuperSwitcher, SuperSwitcher II, Switchtec, SynchroPHY, Total Endurance, TSHARC , USB Check, VariSense, Vector Blox, VeriPHY, ViewSpan, WiperLock, XpressConnect a ZENA jsou ochranné známky společnosti Microchip Technology Incorporated v USA a dalších zemích.
SQTP je servisní značka společnosti Microchip Technology Incorporated v USA
Logo Adaptec, Frequency on Demand, Silicon Storage Technology, Symmcom a Trusted Time jsou registrované ochranné známky společnosti Microchip Technology Inc. v jiných zemích.
GestIC je registrovaná ochranná známka společnosti Microchip Technology Germany II GmbH & Co. KG, dceřiné společnosti Microchip Technology Inc., v jiných zemích.
Všechny ostatní ochranné známky uvedené v tomto dokumentu jsou majetkem příslušných společností.
©2022, Microchip Technology Incorporated a její dceřiné společnosti. Všechna práva vyhrazena.
ISBN: 978-1-5224-9757-8
Systém managementu kvality
Informace týkající se systémů řízení kvality společnosti Microchip naleznete na adrese www.microchip.com/quality.
Celosvětový prodej a servis
AMERIKY | ASIE/PACIFIK | ASIE/PACIFIK | EVROPA |
Kancelář společnosti 2355 West Chandler Blvd. Chandler, AZ 85224-6199 tel: 480-792-7200 Fax: 480-792-7277 Technická podpora: www.microchip.com/support Web Adresa: www.microchip.com Atlanta Duluth, GA tel: 678-957-9614 Fax: 678-957-1455 Austin, TX tel: 512-257-3370 Boston Westborough, MA tel: 774-760-0087 Fax: 774-760-0088 Chicago Itasca, IL tel: 630-285-0071 Fax: 630-285-0075 Dallas Addison, TX tel: 972-818-7423 Fax: 972-818-2924 Detroit Novi, MI tel: 248-848-4000 Houston, TX tel: 281-894-5983 Indianapolis Noblesville, IN tel: 317-773-8323 Fax: 317-773-5453 tel: 317-536-2380 Los Angeles Mise Viejo, CA tel: 949-462-9523 Fax: 949-462-9608 tel: 951-273-7800 Raleigh, NC tel: 919-844-7510 New York, NY tel: 631-435-6000 San Jose, CA tel: 408-735-9110 tel: 408-436-4270 Kanada – Toronto tel: 905-695-1980 Fax: 905-695-2078 |
Austrálie – Sydney Tel: 61-2-9868-6733 Čína – Peking Tel: 86-10-8569-7000 Čína – Čcheng-tu Tel: 86-28-8665-5511 Čína – Chongqing Tel: 86-23-8980-9588 Čína – Dongguan Tel: 86-769-8702-9880 Čína – Guangzhou Tel: 86-20-8755-8029 Čína – Chang-čou Tel: 86-571-8792-8115 Čína – SAR Hong Kong Tel: 852-2943-5100 Čína – Nanjing Tel: 86-25-8473-2460 Čína – Čching-tao Tel: 86-532-8502-7355 Čína – Šanghaj Tel: 86-21-3326-8000 Čína – Shenyang Tel: 86-24-2334-2829 Čína – Shenzhen Tel: 86-755-8864-2200 Čína – Suzhou Tel: 86-186-6233-1526 Čína – Wuhan Tel: 86-27-5980-5300 Čína – Xian Tel: 86-29-8833-7252 Čína – Xiamen Tel: 86-592-2388138 Čína – Zhuhai Tel: 86-756-3210040 |
Indie – Bangalore Tel: 91-80-3090-4444 Indie – Nové Dillí Tel: 91-11-4160-8631 Indie - Pune Tel: 91-20-4121-0141 Japonsko – Ósaka Tel: 81-6-6152-7160 Japonsko – Tokio Tel: 81-3-6880- 3770 Korea – Daegu Tel: 82-53-744-4301 Korea – Soul Tel: 82-2-554-7200 Malajsie - Kuala Lumpur Tel: 60-3-7651-7906 Malajsie – Penang Tel: 60-4-227-8870 Filipíny – Manila Tel: 63-2-634-9065 Singapur Tel: 65-6334-8870 Tchaj-wan – Hsin Chu Tel: 886-3-577-8366 Tchaj-wan – Kaohsiung Tel: 886-7-213-7830 Tchaj -wan - Tchaj -pej Tel: 886-2-2508-8600 Thajsko – Bangkok Tel: 66-2-694-1351 Vietnam – Ho Či Min Tel: 84-28-5448-2100 |
Rakousko – Wels Tel: 43-7242-2244-39 Fax: 43-7242-2244-393 Dánsko – Kodaň Tel: 45-4485-5910 Fax: 45-4485-2829 Finsko – Espoo Tel: 358-9-4520-820 Francie – Paříž Tel: 33-1-69-53-63-20 Fax: 33-1-69-30-90-79 Německo – Garching Tel: 49-8931-9700 Německo – Haan Tel: 49-2129-3766400 Německo – Heilbronn Tel: 49-7131-72400 Německo – Karlsruhe Tel: 49-721-625370 Německo – Mnichov Tel: 49-89-627-144-0 Fax: 49-89-627-144-44 Německo – Rosenheim Tel: 49-8031-354-560 Izrael – Ra'anana Tel: 972-9-744-7705 Itálie – Milán Tel: 39-0331-742611 Fax: 39-0331-466781 Itálie – Padova Tel: 39-049-7625286 Nizozemsko – Drunen Tel: 31-416-690399 Fax: 31-416-690340 Norsko – Trondheim Tel: 47-72884388 Polsko – Varšava Tel: 48-22-3325737 Rumunsko – Bukurešť Tel: 40-21-407-87-50 Španělsko - Madrid Tel: 34-91-708-08-90 Fax: 34-91-708-08-91 Švédsko – Göteborg Tel: 46-31-704-60-40 Švédsko – Stockholm Tel: 46-8-5090-4654 Velká Británie – Wokingham Tel: 44-118-921-5800 Fax: 44-118-921-5820 |
© 2022 Microchip Technology Inc. a její dceřiné společnosti
Rodinná referenční příručka
Dokumenty / zdroje
![]() |
Manifest důvěryhodné platformy MICROCHIP File Formát [pdfUživatelská příručka Manifest platformy důvěry File Formát, manifest File Formát |