Hay un error en la documentación, y lo has copiado tal cual. Es en el momento de crear el hash_init(). El atributo meta_interactive() está mal escrito.
Tienes dos opciones: o indicas el nivel de interactividad después de crear el hash_init() con una sentencia como
Using perl Syntax Highlighting
$gnupg->options->meta_interactive( 0
);Coloreado en 0.001 segundos, usando
GeSHi 1.0.8.4
(como se indica en la sinopsis), o lo indicas en el mismo hash_init:
Using perl Syntax Highlighting
$gnupg->options->hash_init( armor
=> 1,
recipients
=> [
'0x6D2FF8B5',
],
meta_interactive
=> 1
,
);Coloreado en 0.001 segundos, usando
GeSHi 1.0.8.4
Falta una línea más, que muestre, al final, el texto cifrado:
Using perl Syntax Highlighting
print "@ciphertext\n";Coloreado en 0.001 segundos, usando
GeSHi 1.0.8.4
Si ejecuto el programa, sale:
- Código: Seleccionar todo
gpg: 9AD4066C: No hay seguridad de que esta clave pertenezca realmente
al usuario que se nombra
gpg: [stdin]: encryption failed: Unusable public key
El problema es el siguiente:
gpg no se fía de la validez de la clave que ha encontrado en el repositorio de claves, y primero nos avisa, y luego nos pregunta si queremos aceptarla o no. PERO esa pregunta no la vemos porque, en el programa, estamos usando la entrada estándar y la salida estándar para intercambiar información con
gpg de forma directa del texto que queremos codificar. No hemos hablado nada de que
gpg nos haga una pregunta y tengamos que responderle. Por eso,
gpg se muere con el último mensaje de error.
Si, en el programa, cambiamos el valor de meta_interactive de 0 a 1, entonces sí que nos lo pregunta:
- Código: Seleccionar todo
gpg: 9AD4066C: No hay seguridad de que esta clave pertenezca realmente
al usuario que se nombra
pub 2048g/9AD4066C 2003-10-17 Javier Barrio <[email protected]>
Huella de clave primaria: 1F42 1E88 A25C 6D5B F7EA 8B26 7A29 F65D 6D2F F8B5
Huella de subclave: 662A 98AE 3DA6 9351 0C84 78E6 FB2E B73C 9AD4 066C
No es seguro que la clave pertenezca a la persona que se nombra en el
identificador de usuario. Si *realmente* sabe lo que está haciendo,
puede contestar sí a la siguiente pregunta.
¿Usar esta clave de todas formas? (s/N) s
-----BEGIN PGP MESSAGE-----
Version: GnuPG v2.0.9 (GNU/Linux)
hQIOA/sutzya1AZsEAf/atGGWweGNDhHYdyC2owkCTrZXfQ9frr+Uq14XTGMkYLr
ag7eJbS6ZWWBFPnEVLD1vvWHNM8iCQhN6/Zf7kEyBHT1Yz/kspsz2pWfyDtXTCKu
IGvXZAjbDPK3CDAQ5ox1H5iH7UTc5eQVNr/8GyWX0Hd/cBQLH8Ykfyqdz+xrnGWS
apVyh8NSfmvLde2uNOAefd6SYDlTAkn9EMognVysrjF+SflDp0heuZzckGLNkyj0
3awObp6WN1NDw3LSydpkVYnqISGZfBD32D/TmDzPpirfeKTUUP9XgkVL/b334KoS
5qa+1ZbdjLEEGhGf/J8zDE3j1IQ7CSm/5ylUL1pSQAf+KXWr5GXh2GZ6ilzBijPd
/ymw9Fp3XpN3DWx1AhTuDv4a7bJPRKiFyTNlGouh+YDmgqzHVz2IlrPVb/3fbTuV
thX63qQUYCE4V3z+pIeckDw+LNzFcCui41MOX2qtb4X+LqYlf+3VrYvv6MqNkb+z
XNuuNfVNr4oIFabUTLheRyIh/guFubni3YF4X6xgkympnS9EcKZhvzYoPK13zevq
zgDnACtKY6AloDEiXtZ2TYeHx8gFcfFnOf9i8wcSZderHb2ODJF45Tq2r3T+BBXD
+vg3OPNe9kuIcdLRm85LXm5ve4cc0HDJUgqUnHQCO0B1993mMkuqQBkkTuNrxdJI
F9JBAZnit8OWHVixaLYkIxEwR3aVu9kxCBqYcA3OimSIV36e59NME7lqePfHWHig
dlCybWKiiH8cGLHTzaNbQ23r3jY=
=fP2L
-----END PGP MESSAGE-----
Más ideas.