GPG (PGP) problema de velocidad de descifrado

5

Somos nuevos en el uso de GPG y tenemos un problema muy extraño con la velocidad de descifrado cuando usamos pares de llaves RSA, que se generan al usar diferentes herramientas (GPG para Windows, DidiSoft OpenPGP Library para .NET y SecureBlackbox).

Tenemos 3 pares de claves públicas / privadas RSA que tienen las mismas propiedades (hash / compresión, cifrado) y tamaño de clave de 2048 bits y obtuvimos los siguientes resultados:

100 operaciones de descifrado para cada clave privada / pública:

  1. Claves RSA generadas por GPG para Windows:

    DidiSoft: descifrado de 90 ms / 1
    SecureBlackbox: ~ 420 ms / 1 descifrado

  2. Claves RSA generadas por DidiSoft lib:

    DidiSoft: 38 ms / 1 descifrado
    SecureBlackbox: 40 ms / 1 descifrado

  3. Claves RSA generadas por SecureBlackbox lib:

    DidiSoft: 39 ms / 1 descifrado
    SecureBlackbox: 39 ms / 1 descifrado

Todas las pruebas utilizan el mismo código C # con solo el nombre del archivo cambiado para cambiar las claves públicas / privadas. ¿Por qué hay tanta diferencia en el tiempo de ejecución y cuál podría ser la causa?

Frase de contraseña: qwerty

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v2

mQENBFYP1skBCAC3CoaV+MiROdkvH6Ilcq/eXXV8ckteyp+urhKqCyyPRuKVcdb9
nIuC79b7xqrfx+SNWFiD2WVPtoD2NelPHe15mQjImKyYhBN9z79PiijtXHHB6hH6
Z6wkXyWUzLXAsySUKdFQc2lr+7vcVD/Oc4rUUuIYqpyTlZxiLlT3h73ta9S1wwJn
Q+6iPPd88Mc7cEUysghGmFDLmAIXSjwTxPSG234QDKyNFK4X8fP7BQ2Yp9v3yG81
zWeKFG0fOQgVa4ReWjq/OwC+WoirDFuwY610nrxjEO5HwSaniHEjSRcTbSGN8AmS
dOv9mjakQ1a0U/wFIUBOT9/DRQVgI8T56UW5ABEBAAG0KWdwZ3dpbmRvd3N0ZXN0
IDxncGd3aW5kb3dzdGVzdEBlbWFpbC5jb20+iQE5BBMBAgAjBQJWD9bJAhsDBwsJ
CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQT+WOTX/34l3ZzAf+LsiTeFHxdHDj
p+rokuitS6HL98gVAiLwx7wj901MGbvOJL6aUtt1KGffpqZuRisPB6ATK5qT+YUU
I2uu5az6ISDxLYbKGpoiWdLPK+39R6KOgGJ45OmgKLNKX/biHzzJplaoK75pQBmK
0+bBZPabQOO9xY7Xi9OZONYvjrnpeX6haIZrg1j6wnj9M13M/D/BmCGMm3UJAKhw
rHYLjDlc0gOUY8kDBqqIz5uczEJp6iyc6RmUgKLgS0fIOGMf0vFwznxV43DMoUWL
kmZkpm0RfvgfU0dv/VLmAlUtwXGIQy626jiTo0F6oKdfxpUwZzZ7jCId9ViyAtiM
DKDqfSEl37kBDQRWD9bJAQgAoUnwPIU/Js8u4PsFr0BBd1tTDU5u+MdtHbFCeUJV
iHtaOe01/PEgZFehKtPU2oDwAlaRs71AaK8NK6hTrqP11wO3eOYXzt2n0195q1Ud
3LYQCCi6jnIXkJ3PO+Ur8P0gE5jAjAqnf/C3V42sbV8XvZIFdCsDO/xvqW1tDSUJ
Fg7qQz4YQKhFTjYNM9ME0l5DGz/+i8lCeKy7fWjV0oUuKkAu2e/V6g4c//sf3n+o
UFvLHn+N5SMxAkol3US7F0qi8I6Z+PU6EkApLIblogI2lJ7AY1gGE+hXR9USzqJS
dBaQFA94xP7T1j7rOBsJn8n+WiDtTZ1H1Lwt7uEG9tR30QARAQABiQEfBBgBAgAJ
BQJWD9bJAhsMAAoJEE/ljk1/9+JdaEoIAIzSTLV0Bk9D8gI1YqO62g8Cajyr1JjJ
IsZk9A1KHn7fHK9YpnoT3ivL1ktB4xaAN64jEbxTWuhVUnZ92JJ+mw+0i0zRjUf0
BGtGOIPizBerYKBS5rlYXe/eWNHkIr0Qt2uwxSNp0x9MF0bYTSOS+SlSsVwEHUKI
t4FJq61zdvZdgzCmXXNkUymSjJkFgDl3znzlLzIcG2vQP8T6pdy99SxxcKPnCOZq
wn/h5jKOLemYsoyN+5tuok0KaTUa1juKnzbASXGrDOuQCXM05h5mQ0rsw8GVWKbC
l1cncYyDfXHHrXo1KrN4w0V2UGD9TK+Lo5XXDKrNg18jqRt+P9OQoYw=
=Ofoe
-----END PGP PUBLIC KEY BLOCK-----


-----BEGIN PGP PRIVATE KEY BLOCK-----
Version: GnuPG v2

lQO+BFYP1skBCAC3CoaV+MiROdkvH6Ilcq/eXXV8ckteyp+urhKqCyyPRuKVcdb9
nIuC79b7xqrfx+SNWFiD2WVPtoD2NelPHe15mQjImKyYhBN9z79PiijtXHHB6hH6
Z6wkXyWUzLXAsySUKdFQc2lr+7vcVD/Oc4rUUuIYqpyTlZxiLlT3h73ta9S1wwJn
Q+6iPPd88Mc7cEUysghGmFDLmAIXSjwTxPSG234QDKyNFK4X8fP7BQ2Yp9v3yG81
zWeKFG0fOQgVa4ReWjq/OwC+WoirDFuwY610nrxjEO5HwSaniHEjSRcTbSGN8AmS
dOv9mjakQ1a0U/wFIUBOT9/DRQVgI8T56UW5ABEBAAH+AwMCeugZ5cGb/hnHv7KW
vJiuyWitARpF5YQt1qdLeUA1ilHGCrnwz/nDEBtbjm6u8/w+r40US/rvW7/m6Fuz
AQcbtU13OSEwqQcjl406SBML2L68u8JK06YdUaHm5HCUBf6HFbEdrlt+khLqZhGk
Pj0axtCnOLIT+tVk/C0DrX2R+cmATEpzhc8h31jg4CqBSagr2qIvvmw8Sca9fh/8
0u8oHcWck1kaqJ8zymwLPmLwR2mSOKZhFtYyQr3lwQNURw4eBGvp0h4Ba6pvtekt
9HHKC/KCe7kSNhX+9rRPA1zBBYki2GrvI97Up0drLya1i2+yHS7W8tiI8xxBmyXY
ij7fIfrjwYQOO6VAv5+Bxn6pY3//uzLuYv6aRBs/InN5m2ltw1rD0xSaMAIyJCcd
T754PLte/NduOPL1EdoiQbULUWubSx090UlfZz5yn6NdRmByq8zw5Q0/4l38erwg
OV3fdHHw8n3b0oFONXg+nyMgrL73pXqgnE5RGdgGtZJ8tqRqiGMCQ1/XxnlQhdMy
tJXbvAMFTsSYnb/3iMWIOozw+uY1+xCJ7wppwpdd7cy5J5Ijng0UF3VLkhuOyjum
o49+LRSKYo9/PiVpjA2FNrGwzmmX3zMpiklqRCdIxcGzvzGBwO2+sg4Kg5uUuJBI
coGZEx2XxIZnPzmkBYFJCXjerSccK1cuC/Y7HkbmmbdIDKr57q2jWQX42dTUkYR4
1aLI5eLTP2SfeIcONxOTctCZIDMBDzjKSDFIq3AOJS5mL7ikmKVlkR3yf2+HEvIX
FwlAPBDweV6EsJ5mFt+5nyFU+ONABivll6+md8Ko83D4jUD+mqBmL4KFHf6u+Ge5
bYlh5F0Y0880GlqT9HlNIM6/4okz0pUtW6V/6WFlpEJX3iv5lX6CrxusjWb0MpZV
RLQpZ3Bnd2luZG93c3Rlc3QgPGdwZ3dpbmRvd3N0ZXN0QGVtYWlsLmNvbT6JATkE
EwECACMFAlYP1skCGwMHCwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRBP5Y5N
f/fiXdnMB/4uyJN4UfF0cOOn6uiS6K1Locv3yBUCIvDHvCP3TUwZu84kvppS23Uo
Z9+mpm5GKw8HoBMrmpP5hRQja67lrPohIPEthsoamiJZ0s8r7f1Hoo6AYnjk6aAo
s0pf9uIfPMmmVqgrvmlAGYrT5sFk9ptA473FjteL05k41i+Ouel5fqFohmuDWPrC
eP0zXcz8P8GYIYybdQkAqHCsdguMOVzSA5RjyQMGqojPm5zMQmnqLJzpGZSAouBL
R8g4Yx/S8XDOfFXjcMyhRYuSZmSmbRF++B9TR2/9UuYCVS3BcYhDLrbqOJOjQXqg
p1/GlTBnNnuMIh31WLIC2IwMoOp9ISXfnQO+BFYP1skBCAChSfA8hT8mzy7g+wWv
QEF3W1MNTm74x20dsUJ5QlWIe1o57TX88SBkV6Eq09TagPACVpGzvUBorw0rqFOu
o/XXA7d45hfO3afTX3mrVR3cthAIKLqOcheQnc875Svw/SATmMCMCqd/8LdXjaxt
Xxe9kgV0KwM7/G+pbW0NJQkWDupDPhhAqEVONg0z0wTSXkMbP/6LyUJ4rLt9aNXS
hS4qQC7Z79XqDhz/+x/ef6hQW8sef43lIzECSiXdRLsXSqLwjpn49ToSQCkshuWi
AjaUnsBjWAYT6FdH1RLOolJ0FpAUD3jE/tPWPus4Gwmfyf5aIO1NnUfUvC3u4Qb2
1HfRABEBAAH+AwMCeugZ5cGb/hnHHwZjlQmuJaRqwYw3sfipiQptXjyQ9omPBo7t
yEqo/a/FtvRBTxlo2Dc+BpXBNuLmq3i7jSugrsVkVZ5lmz/R6wGFP1Mjc13VzFDV
psQXE3Zuaxjy0umfSaSb3AD0XVAmD2WIb/sP+DhyS5Cfx6sPrl9mXKsFtezplytt
ZVlUQImKeTDZy2MUkK/qGkXUCqM/lmW4pJsPVdE9ZicZoib9mub7LNh+n/9+p+Tq
Y/pe8XJ0K4PD5QI7EaM4uUDDnxBGNoU7wcnWpcu0LmPKLn7+muuxfkhE9xTgeHyW
I4OIhtaUjWgtm/qbHme4v4qB9AeBY1N8Aklmqmhxbd2epqmj3bA+/QH92kTatub2
v3sWAV8WVL40U9hLzbcnuXxa0/S8NRotcTRCSD7TZhxIlL+WqTxn6NsFdbqabUGX
hlDClJv02H7BPWbQTVP4+yxY4W+fVPFiajs5fAbA/9o5B5Re0MJZU1FXmKuMXInL
FCFu/dAPghkOs7ShYEKQu1EDVNmgQbI56jaCKnS/oyS/iYjMKHxgZUt/svGah91p
UFh07npfqYpIqcnQCmuiGqS5xbTbDB7LauOeXxWJV2x9Xgljk4YOXg6XLS94d7Jl
EYLurBgdKWE2kyCuCS8bpMfOCSV3s4NGckdO2XWWBAlv/t6Fm531Lz3COBZEa0a0
Wyc9DL1Ha4gJI0Sffbklnsw10OiJEPVHz8WT3bW55mLaS8TxlyVV3h85IhkRnrXD
zGqgsJOS1lzw19myDLIvTt6TTZ5AhB/2LPGzo8rOFh5K7eEPQf0EQBT0o45CEHU7
5Yz0Qz2xq8J0GmKIo5ZYGmGL0IF4Pq0FpTTI00RMzYpXPyHWkcX51hLMoE1w44qM
TT2SbrZiXhMaP1a7hc0RW6Rvn1+7wTlbb4kBHwQYAQIACQUCVg/WyQIbDAAKCRBP
5Y5Nf/fiXWhKCACM0ky1dAZPQ/ICNWKjutoPAmo8q9SYySLGZPQNSh5+3xyvWKZ6
E94ry9ZLQeMWgDeuIxG8U1roVVJ2fdiSfpsPtItM0Y1H9ARrRjiD4swXq2CgUua5
WF3v3ljR5CK9ELdrsMUjadMfTBdG2E0jkvkpUrFcBB1CiLeBSautc3b2XYMwpl1z
ZFMpkoyZBYA5d8585S8yHBtr0D/E+qXcvfUscXCj5wjmasJ/4eYyji3pmLKMjfub
bqJNCmk1GtY7ip82wElxqwzrkAlzNOYeZkNK7MPBlVimwpdXJ3GMg31xx616NSqz
eMNFdlBg/Uyvi6OV1wyqzYNfI6kbfj/TkKGM
=1WOu
-----END PGP PRIVATE KEY BLOCK-----
    
pregunta Nikola Tesla 30.09.2015 - 19:51
fuente

1 respuesta

3

Para aquellos que no están familiarizados con OpenPGP, primero debo aclarar que la clave RSA (y el algoritmo) tienen un impacto de rendimiento de tiempo limitado sobre la velocidad de descifrado, porque el formato de archivo OpenPGP tiene este aspecto:

clave de sesión-RSA cifrada || datos cifrados con un algoritmo simétrico (por ejemplo, AES) por la clave de sesión

Entonces, básicamente, la velocidad depende (especialmente en grandes cantidades de datos) de qué algoritmo simétrico se utilizó para cifrar los datos de entrada. Una parte interesante de OpenPGP es que las claves pueden contener preferencias de algoritmo simétricas en su interior, y el proceso de encriptación puede tenerlas en cuenta cuando se empaquetaron los datos.

Teniendo en cuenta el párrafo anterior, los datos cifrados con la clave RSA de GPG pueden haberse cifrado con un algoritmo simétrico diferente al de la clave de la biblioteca DidiSoft OpenPGP para .NET y Eldos. Para probar las claves por igual, deberá especificar explícitamente el algoritmo de cifrado simétrico, o asegurarse de que todas las claves tengan solo la misma preferencia de clave de cifrado simétrico preferida.

    
respondido por el Peter Kalef ' DidiSoft 31.10.2015 - 21:19
fuente

Lea otras preguntas en las etiquetas