-
Notifications
You must be signed in to change notification settings - Fork 11k
Description
Hello,
I am trying to connect from node.js script to external grpc API using TLS with self signed cert (please see below) but during the handshake grpc terminates with following error:
E0527 09:49:28.689000000 4712 ssl_transport_security.c:945] Handshake failed with fatal error SSL_ERROR_SSL: error:1000006b:SSL routines:OPENSSL_internal:BA
D_ECC_CERT.
E0527 09:49:28.689000000 4712 handshake.c:241] Handshake failed with error TSI_PROTOCOL_FAILURE
E0527 09:49:28.689000000 4712 secure_channel_create.c:99] Secure handshake failed with error 1.
{ [Error] code: 14, metadata: Metadata { _internal_repr: {} } }
I am running Node.js (v.4.4.5 LTS) under win 7 (x64bit) with GRPC package (v. 0.14.1) installed via npm install grpc --save.
The script I am running is this:
var fs = require('fs');
var path = require('path');
var os = require('os');
process.env['GRPC_SSL_CIPHER_SUITES'] = 'HIGH+ECDSA';
var grpc = require('grpc');
var protoDescriptor = grpc.load('./api.proto');
var walletrpc = protoDescriptor.walletrpc;
var cert = fs.readFileSync('rpc.cert');
var creds = grpc.credentials.createSsl(cert);
var client = new walletrpc.WalletService('127.0.0.1:9110', creds);
var request = {
account_number: 0,
required_confirmations: 1
};
client.balance(request, function(err, response) {
if (err) {
console.error(err);
} else {
console.log('Spendable balance:', response.spendable);
}
})
Certificate file is standard certificate:
-----BEGIN CERTIFICATE----- MIICkzCCAfWgAwIBAgIRAMtVW1yCGKIrJBcbmqYVu3owCgYIKoZIzj0EAwQwPDEl MCMGA1UEChMcZGNyd2FsbGV0IGF1dG9nZW5lcmF0ZWQgY2VydDETMBEGA1UEAxMK bm9uYW1lMi1QQzAeFw0xNjA0MjUyMTIwMTJaFw0yNjA0MjQyMTIwMTJaMDwxJTAj BgNVBAoTHGRjcndhbGxldCBhdXRvZ2VuZXJhdGVkIGNlcnQxEzARBgNVBAMTCm5v bmFtZTItUEMwgZswEAYHKoZIzj0CAQYFK4EEACMDgYYABAASZVcgIuql7ho9aGv0 X0DuHVcAKBmBbegMi7fPbaXRNmIDFQ3XKaj/lbNGYXX5AyEhaTckZQn0KZip6onh qG2SFgEpy4uaUULC84m5axEX21X4c74moLHkbklYkRQWRRIBfVqfKPc0QUPUwn7r PQnmAUARq9Nndlh8EDTEGZATSU3gYKOBlDCBkTAOBgNVHQ8BAf8EBAMCAqQwDwYD VR0TAQH/BAUwAwEB/zBuBgNVHREEZzBlggpub25hbWUyLVBDgglsb2NhbGhvc3SH BH8AAAGHEAAAAAAAAAAAAAAAAAAAAAGHBMCoAWSHEP6AAAAAAAAArEkF3rly3muH BAoEE9KHEP6AAAAAAAAA/XXG85N81M+HBMCoOAEwCgYIKoZIzj0EAwQDgYsAMIGH AkIBX6FOBzDM0kUGIXNfNljng0T4aIk/xCHACdSa56iaqQxM25CmZSri2lT0rMIV WX7FcrQLYUN3GXMy4nmTGOwG2mgCQUhutDgUjTslkie+5QM9HGAtNKg09e9yGyQ0 NYR99j5FNVmNvvS3kRF33XncGvundj21SEKWo/ykYMpIWYW8F/fl -----END CERTIFICATE-----
Please help me with this error - where is the problem/how should I debug it ? Is it cert problem - GRPC problem ?
Thank you very much in advance for any help!