Come posso usare ECC 163?

0

Lavorerò con un dongle Sentinel . Nella terza scheda, dice che supporta ECC 163. Sarò sia criptare che decifrare con il dongle, così come su un server. Il server utilizza PHP, ma posso avvolgere qualsiasi file binario come necessario o shell_exec.

Naturalmente non intendo implementare ECC 163. Sto esaminando le giuste implementazioni esistenti fatte da esperti ma trovo difficile trovare informazioni al riguardo. Sembra che la curva ellittica Diffie-Hellman (ECDH) sia l'implementazione "normale" ma onestamente non ne ho idea. Secondo wiki di OpenSSL , OpenSSL supporta ECDH, ma è compatibile con ECC 163?

Quindi la mia domanda è: che cosa dovrei usare sul server per crittografare / decifrare con ECC 163?

    
posta 0xFF 01.02.2016 - 17:26
fonte

1 risposta

1

"ECC 163" non è uno schema di crittografia.

Ci sono alcuni algoritmi che funzionano con le curve ellittiche. Uno di questi è Elliptic Curve Diffie-Hellman (ECDH), che è uno schema di accordo chiave. ECDH può essere utilizzato come base per uno schema di crittografia asimmetrico accoppiandolo con un algoritmo di crittografia simmetrica: per crittografare un dato, si esegue un'istanza ECDH con la chiave pubblica ECDH del destinatario previsto e si utilizza il segreto condiviso risultante come digitare un sistema di crittografia simmetrica come AES.

Sebbene il principio sia abbastanza chiaro, dire "ECC 163" non è assolutamente sufficiente per specificare in concreto ciò che il dongle sta facendo in pratica. È più una dichiarazione di intenti che altro.

ECDH funziona in una curva ellittica. Mentre generare la curva ellittica casuale per la crittografia è fattibile, è complesso e costoso, quindi (quasi) nessuno lo fa. Invece, i sistemi che usano la curva ellittica (per ECDH, ECDSA ...) si basano su una manciata di curve standard che sono state generate una volta per tutte. Il NIST ha definito 15 curve standard , due delle quali con "163" nella loro nome: B-163 e K-163. È ipotizzabile che utilizzando la terminologia "ECC 163", il fornitore della chiave hardware in realtà intenda dire che il suo hardware supporta un algoritmo crittografico relativo alla CE utilizzando una di queste due curve.

Se vuoi interagire con quel dongle, hai bisogno di informazioni molto più dettagliate su ciò che fa. Tali informazioni sono ottenute attraverso la documentazione del venditore e / o analisi e prove, un processo noto come "reverse engineering" (ci possono essere sottigliezze legali per quanto riguarda il reverse engineering, a seconda del contesto e della giurisdizione, quindi la documentazione del fornitore è normalmente preferita inoltre, il reverse engineering può richiedere molto tempo e potrebbe non riuscire, soprattutto per un dongle fisicamente indurito).

    
risposta data 01.02.2016 - 17:47
fonte

Leggi altre domande sui tag