GELI Keyfile-Größe

TCM

Well-Known Member
Hi,

wieviel von einem Keyfile nimmt GELI eigentlich? Wie groß muss das Keyfile mindestens sein? Die Manpage ist darüber nervigerweise nichtssagend. Einmal nehmen sie in den Beispielen 64B, dann gleich 32KB. Warum und weshalb, kein Wort.

Code:
           # dd if=/dev/random of=/mnt/pendrive/da2.key bs=64 count=1
           # geli init -s 4096 -K /mnt/pendrive/da2.key /dev/da2
Code:
           # dd if=/dev/random of=/boot/keys/da0.key0 bs=32k count=1
           # dd if=/dev/random of=/boot/keys/da0.key1 bs=32k count=1
           # dd if=/dev/random of=/boot/keys/da0.key2 bs=32k count=1
           # geli init -b -K /boot/keys/da0.key0 -K /boot/keys/da0.key1 -K /boot/keys/da0.key2 da0

Blick in den Source sagt mir gar nichts.

Weiß jemand Näheres?
 
pjd@ hat sich (auf Nachfrage) dazu mal geäußert. So richtig schlau bin ich nicht daraus geworden, aber vielleicht hilft dir das schon weiter. Ein beherztes "grep MAXKEYLEN /usr/src/sys/geom/eli/g_eli.h" lässt darauf schließen, dass nicht mehr als 64 Bytes verwendet werden.
 
pjd@ hat sich (auf Nachfrage) dazu mal geäußert. So richtig schlau bin ich nicht daraus geworden, aber vielleicht hilft dir das schon weiter.
Stimmt, so richtig schlau werd ich daraus auch nicht, was jetzt das Keyfile konkret angeht.

Ein beherztes "grep MAXKEYLEN /usr/src/sys/geom/eli/g_eli.h" lässt darauf schließen, dass nicht mehr als 64 Bytes verwendet werden.

Das halte ich für zu schnell geschossen. Das würde ich daraus nicht schließen.

Ich bin aber weiterhin am gucken.
 
in sbin/geom/class/eli/geom_eli.c gibts eine Funktion eli_genkey_files(), in der steht:

Code:
while ((done = read(fd, buf, sizeof(buf))) > 0)
        g_eli_crypto_hmac_update(ctxp, buf, done);

buf hat die Größe MAXPHYS.

Heißt das also, der liest stückchenweise jeweils MAXPHYS Bytes aus dem Keyfile und füttert damit g_eli_crypto_hmac_update()? Das würde zumindest schonmal heißen, dass das gesamte Keyfile reinzählt.

Meine Vermutung wäre jetzt, dass das File mindestens MAXPHYS Bytes groß sein muss?
 
Zurück
Oben