Tropicsquare


Česká společnost (člen skupiny SatoshiLabs [groups]) – dodavatel polovodičů, který vyvíjí auditovatelné obvody, odolné proti neoprávněné manipulaci – bezpečnostní prvky pro IoT, hardwarové kryptopeněženky, digitální identitu a zabezpečenou decentralizovanou infrastrukturu.

Stavíme bezpečnost na transparentnosti a spolupráci. Naše čipy jsou auditovatelné a testované zákazníky, odborníky a open-source komunitou, aby byla zajištěna ověřitelná důvěra a spolehlivost. Ve věrnosti transparentnosti poskytujeme úplné zveřejnění nezávislých testovacích výsledků, aby si je mohl kdokoli ověřit sám. Naším cílem je podporovat inovace díky otevřenému přístupu, abychom mohli dodávat bezpečná řešení, jako je TROPIC01 – bezpečnostní prvek pro aplikace, kde je bezpečnost nepodkročitelným požadavkem.

TROPIC01

TROPIC01 je bezpečnostní prvek s otevřenou architekturou, který slouží jako základní bezpečnostní komponenta pro vestavěné systémy – poskytuje hardwarový „kořen důvěry“ (Root of Trust) k zajištění bezpečnosti.

Uvnitř svého zabezpečeného prostředí umožňuje TROPIC01 správu kryptografických klíčů, digitální identitu a bezpečné ukládání dat pro kritické aplikace.

TROPIC01 nabízí transparentnost díky zpřístupnění detailů bezpečnostního designu, zdrojových souborů a dokumentace pro nezávislý bezpečnostní audit.

Použití tohoto bezpečnostního prvku umožňuje implementaci funkcí, jako je bezpečné spouštění (secure boot), aktualizace firmwaru, správa klíčů a identita zařízení.


PUF (Fyzikálně neklonovatelná funkce) je technologie využívající přirozené fyzické variace v polovodičových součástkách k vytvoření jedinečných a nepředvídatelných hodnot (klíčů). Funguje jako hardwarová identita, kterou nelze snadno duplikovat ani odhadnout.

Security Highlights
Tamper Resistance

Features
Onchip RISC-V IBEX Controller Core


přehled základních příkazů API TROPIC01 spolu se stručným popisem, rozdělených do dvou kategorií – příkazy na L2 úrovni (pro základní komunikaci a správu) a příkazy na L3 úrovni (pro konkrétní operace a konfiguraci):

L2 příkazy (Request/Response rámce):
Get_Info_Req – Příkaz pro získání informací o zařízení (např. X.509 certifikát, chip ID nebo verze firmware).
Handshake_Req – Inicializace zabezpečeného kanálu výměnou klíčů mezi host MCU a TROPIC01.
Encrypted_Cmd_Req – Odeslání zašifrovaného L3 příkazu přes navázaný zabezpečený kanál.
Encrypted_Session_Abt – Ukončení aktuálního zabezpečeného kanálu (abort – přechod do režimu Idle).
Resend_Req – Požadavek na opětovné zaslání poslední odpovědi.
Sleep_Req – Příkaz k uvedení TROPIC01 do režimu spánku nebo hlubokého spánku.
Startup_Req – Resetování zařízení (běžný restart nebo maintenance reboot pro start-up režim).
Mutable_FW_Update_Req – Aktualizace mutable firmware (pouze ve start-up módu).
Mutable_FW_Erase_Req – Vymazání mutable firmware (pouze ve start-up módu).
Get_Log_Req – Získání logovacích dat běžícího firmware na RISCV CPU.

L3 příkazy (Command/Result pakety):
Ping – Testovací příkaz pro ověření komunikace; vrací zpět zaslaná data (echo).
Pairing_Key_Write – Zápis veřejného klíče do určeného slotu pro párování.
Pairing_Key_Read – Čtení veřejného klíče z vybraného párovacího slotu.
Pairing_Key_Invalidate – Invalidační příkaz, který vymaže uložený párovací klíč.
R_Config_Write – Zápis konfigurační hodnoty do paměti R-Config.
R_Config_Read – Čtení konfigurační hodnoty z paměti R-Config.
R_Config_Erase – Vymazání celé R-Config (reset do výchozího stavu).
I_Config_Write – Jednosměrný zápis (přechod z 1 na 0) jednoho bitu v I-Config.
I_Config_Read – Čtení hodnoty z I-Config paměti.
R_Mem_Data_Write – Zápis dat do uživatelské části paměti R-Memory.
R_Mem_Data_Read – Čtení dat z uživatelské části paměti R-Memory.
R_Mem_Data_Erase – Vymazání datového slotu v R-Memory.
Random_Value_Get – Získání náhodných čísel generovaných TRNG.
ECC_Key_Generate – Generování ECC klíče a jeho uložení do vybraného slotu.
ECC_Key_Store – Uložení ECC klíče do slotu (import již existujícího klíče).
ECC_Key_Read – Čtení veřejného ECC klíče z určeného slotu.
ECC_Key_Erase – Vymazání ECC klíče ze slotu.
ECDSA_Sign – Podepsání hashe zprávy pomocí ECDSA algoritmu.
EDDSA_Sign – Podepsání zprávy pomocí EdDSA algoritmu.
MCounter_Init – Inicializace monotónního čítače na zadanou hodnotu.
MCounter_Update – Aktualizace (dekrementace) monotónního čítače.
MCounter_Get – Získání aktuální hodnoty monotónního čítače.
MAC_And_Destroy – Vykonání sekvence MAC-and-Destroy pro zajištění integrity dat.
Serial_Code_Get – Získání unikátního identifikátoru čipu.


github.com/octopusengine/tropic01_examples | github.com/petrkr/pytropicsquare/tree/develop

 crackstation.net/ | CyberChef | onetimesecret.com | https://cyphr.me/