Próbuję rozpakować plik pkcs12 w mojej aplikacji Qt - ale bez powodzenia. Buduję aplikację konsolową Qt Console (GUI wyłączony).QSslCertificate :: importPkcs12 nie może przetworzyć pliku PFX
(ja po tej instrukcji: https://github.com/trueos/sysadm-ui-qt/blob/master/src-qt5/gui_client/SSLNotes.txt)
tworzenie pkcs12 polecenia:
"openssl req -newkey rsa:2048 -nodes -keyout test_key.pem"
"openssl req -key test_key -new -x509 -out test_crt.crt"
"openssl pkcs12 -inkey test_key.pem -in test_crt.crt -export -passout stdin -out new.pfx"
Kod Qt:
QString password="1234";
QFile pkcs("/Users/test/Desktop/certs/new.pfx");
pkcs.open(QFile::ReadOnly);
QSslKey key;
QSslCertificate cert;
QList<QSslCertificate> imported_certs;
static bool import=QSslCertificate::importPkcs12(&pkcs,&key,&cert,&imported_certs,QByteArray::fromStdString(password.toStdString()));
pkcs.close();
qDebug()<<import;
Ręczne wydobycie klucza oraz plik pracowałem przy użyciu poleceń openssl. Wiadomość
Błąd:
"Unimplemented Code."
Jakieś pomysły?
Jakiego błędu dostałeś? Czy możesz opisać "nie ma szczęścia"? – vcsjones
"Unimplemented code" and "false" ... qDebug() << import zwraca false. –
Jaką wersję Qt używasz? 'importPkcs12' został wprowadzony w Qt 5.4. – vcsjones