CFB1, CFB8 e CFB128: é o tamaño da realimentación, non o da clave
O número que segue a CFB é un paso de realimentación, non unha lonxitude de clave: CFB1, CFB8 e CFB128 usan un bloque de 128 bits. Leia os nomes herdados sen inventar claves febles.
Un nome como AES-256-CFB1 leva dous números, e responden a preguntas distintas. O 256 é a lonxitude da clave AES. O 1 é a realimentación, ou o tamaño do segmento, de CFB: unha propiedade de como o modo avanza o seu estado. Se o 1 se le como unha lonxitude de clave, o nome parece unha configuración catastrófica, e por iso a pregunta volve unha e outra vez.
Decida cal das tres cantidades está a mirar antes de xulgar o nome: tamaño de clave, tamaño de bloque ou tamaño de segmento. Só a primeira é un parámetro de seguridade no sentido habitual.
Tres números, tres cantidades
AES acepta claves de 128, 192 ou 256 bits e ten un bloque de 128 bits elixa o que elixa. O tamaño do bloque pertence a AES, non ao modo. O sufixo CFB é a terceira cantidade: canta información consume e devolve o modo en cada paso. A documentación de OpenSSL sobre AES enumera explicitamente eses tamaños de desprazamento para as variantes CFB.
CFB1 devolve un bit cada vez, CFB8 un byte, CFB128 un bloque completo. Os tres usan internamente o mesmo cifrado de bloque de 128 bits; o que cambia é cantos bits de cada bloque calculado se usan por operación. Por iso o sufixo move o custo e o comportamento de búfer, non a forza da clave.
| Name | Key | AES block | Feedback |
|---|---|---|---|
| AES-256-CFB1 | 256 bits | 128 bits | 1 bit |
| AES-256-CFB8 | 256 bits | 128 bits | 8 bits |
| AES-256-CFB128 | 256 bits | 128 bits | 128 bits |
Por que o tamaño do bloque nunca cambia
AES é un cifrado de bloque cun bloque fixo de 128 bits, e os modos son construcións ao seu redor. Ningún deles reduce o bloque para axustalo ao tamaño do segmento. Unha implementación de CFB1 segue calculando un bloque AES completo e toma un bit do resultado. Os demais bits descártanse nese paso, e aí está exactamente o custo de eficiencia.
Así que unha realimentación dun bit non implica unha clave dun bit, e un nome non se pode ordenar polo seu sufixo. CFB128 non é catro veces máis forte que CFB32; procesa segmentos máis grandes.
Que cambia realmente o tamaño do segmento
O tamaño do segmento cambia canto texto cifrado se devolve en cada paso e canto texto claro pode transportar cada paso. Tamén cambia a propagación de erros e o comportamento de búfer, o que importa para un uso semellante a un fluxo. Os segmentos orientados a bytes aliñanse cos búferes; os orientados a bits, non.
Na práctica, o modo escolle o protocolo, non o operador. Un canal de datos de VPN usa a construción que especifica o seu protocolo, coa súa propia protección de integridade, e unha listaxe de biblioteca só di que nomes existen.
Ler unha etiqueta CFB sen cualificar
Unha etiqueta CFB sen cualificar precisa o contexto da súa implementación. Nas cabeceiras de OpenSSL 1.0.2, EVP_aes_128_cfb é unha macro para EVP_aes_128_cfb128, con alias correspondentes para claves de 192 e 256 bits. É unha convención de nomes de API dunha rama, non a afirmación de que cada biblioteca, formato de ficheiro ou GUI expanda a abreviatura do mesmo xeito. Comprobe a cabeceira ou a documentación da versión que ten diante.
Se un perfil antigo di CFB e o par o acepta, os parámetros negociados rexístranse nalgún sitio: un rexistro, un volcado de configuración, unha resposta de API. Lea eses en lugar de deducir o tamaño do segmento a partir dunha cadea de pantalla.
O que non lle di un nome de modo
O nome describe o comportamento do cifrado e nada máis. Unha VPN segue necesitando protección de integridade, derivación de claves e autenticación do par, e CFB non achega ningunha. Cambiar CFB8 por CFB1 tampouco é un cambio estético: o comportamento na rede difire e ambos os extremos deben admitir a mesma construción. Nin un nome nunha biblioteca demostra que a pasarela despregada o acepte para o seu canal de datos.
Para calquera cousa mantida, use o conxunto completo de protección do protocolo e a política do operador, e rexistre as versións de biblioteca e pasarela, a opción exacta e o resultado negociado. O nome antigo explica que está a ler; non xustifica revivir a configuración.