-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Unterschiede zur Python/Bitbucket-Implementierung #7
Comments
Vielen dank für die Anmerkung. Ein paar (nicht normative :) ) Anmerkungen: 1: Das ist uns intern auch schon aufgefallen. Da es in der Spezifikation keine festlegung hinsichtlich einer Variante gibt sollten sowohl Server als auch Client mit beiden Varianten umgehen können. Die, bei Ihnen wahrscheinlich auch, aufgefallenen Unterschiede in den Nachrichten sind zwar vorhanden blockieren aber die Funktion nicht. Daher: passt so. |
Hallo @Chratho, du hast den Unterschied zwischen der aktuellen BC Implementierung (wie wir sie momentan verwenden) und der letzten veröffentlichten Version von Kyber (3.0.2) schon angemerkt. Im letzten Kommentar hast Du geschrieben, dass Du eine erfolgreiche Anpassung geschafft hast. |
Hi, ja, gern. Aus meiner Sicht:
Das Ergebnis aus 4. sollte dann mit dem Round 3 Ergebnis ident sein. Im zitierten Thread findet sich auch ein Unit-Test mit dem man das Ergebnis validieren kann. lg, Christian |
Hallo @Chratho, wir haben gerade eine neue Version der lib-vau released. Damit sollte der Unterschied zwischen Python & Java in den Punkten 2. & 3. aus der ursprünglichen Frage behoben sein. Siehe Release Notes |
Hi, vielen Dank für die schnellen Änderungen! Ich habe meine Analyse jetzt fortgesetzt und bin nun noch auf einen letzten Punkt gestoßen: In A_24608 heißt es bzgl. des Ergebnisses der HKDF: Liebe Grüße |
Auch das kann ich bestätigen. Den Bug scheint es auch schon in der Python-Implementierung zu geben, nächstes Release kommt bald. Danke für den Hinweis. |
Vielen Dank für das weitere Finding @Chratho!!! Btw.: Beim nächsten Finding gern ein neues Issue aufmachen. Dann bekomme ich das eher mit 👍 . |
Hi, das sollte es hoffentlich schon gewesen sein! Fraglich bleibt für mich nur mehr der Punkt bzgl. der CBOR-Serialisierung von Maps. Ich denke zumindest hinsichtlich der Server-Responses wäre es möglicherweise vorteilhaft eine Darstellungsform vorzugeben - einfach weil ich nun doch schon manche CBOR-Library gesehen habe die nur eine Darstellung unterstützt, was potentiell dazu führen kann dass Interoperabilitätsprobleme am Client erst sehr spät entdeckt würden. Aber das muss anderweitig diskutiert werden. Danke und liebe Grüße |
Hi,
da die Readme auf Deutsch ist halte ich es hier auch mal auf Deutsch.
Mir sind gegenüber [1] einige Unterschiede in der Implementierung aufgefallen und ich würde diese gern auf kurzem Wege kommunizieren:
Kyber768_PK
in M1 hat hier eine Länge von 1208 bytes gegenüber 1184 bytes in [1]. Das ist denke ich eine klare Inkompatibilität. Gemäß [3] sollten 1184 bytes richtig sein. Möglicherweise resultieren die zusätzlichen 24 bytes aus irgendeinem ASN1-Overhead.Weiter konnte ich bislang nicht analysieren. Was die Kyber-Implementierung angeht habe ich den Code nur mal überflogen, hierzu eine Frage
Liebe Grüße
[1] https://bitbucket.org/andreas_hallof/vau-protokoll/src/master/minimal/
[2] https://datatracker.ietf.org/doc/html/rfc8949#section-3.2.2
[3] https://pq-crystals.org/kyber/
The text was updated successfully, but these errors were encountered: