C++ Login problem "<error>Failed to decrypt authorization blob</error>"

Added by Victor almost 7 years ago

Hej! Jag försöker ansluta till Nordnet Next med c++. Får för tillfället följande svar:


<hash>
<error>Failed to decrypt authorization blob</error>
</hash>

När jag skickar:

POST: https://api.nordnet.se/next/1/login?service=NEXTAPI_TEST&auth=BLOB
och till:
POST: https://api.test.nordnet.se/next/1/login?service=NEXTAPI_TEST&auth=BLOB

BLOB:en är alltså, enligt instruktioner:
url(
base64(
RSA (
base64(
base64(utf8(användarnamn)):base64(utf8(lösenord)):base64(utf8(time stamp millisecond)))
)
)
)
)

Där användarnamn och lösenord är samma som jag loggar in på den vanliga hemsidan med.
Har alltså även konverterat tecken i den färdiga BLOB:en till url-anpassat för att inte ha några förbjuda tecken när det skickas.

Vidare är nyckeln jag använder (från filbiblioteket på hemsidan):

<RSAKeyValue>
<Modulus>
5td/64fAicX2r8sN6RP3mfHf2bcwvTzmHrLcjJbU85gLROL+IXclrjWsluqyt5xtc/TCwMTfC/NcRVIAvfZdt+OPdDoO0rJYIY3hOGBwLQJeLRfruM8dhVD+/Kpu8yKzKOcRdne2hBb/mpkVtIl5avJPFZ6AQbICpOC8kEfI1DHrfgT18fBswt85deILBTxVUIXsXdG1ljFAQ/lJd/62J74vayQJq6l2DT663QB8nLEILUKEt/hQAJGU3VT4APSfT+5bkClfRb9+kNT7RXT/pNCctbBTKujr3tmkrdUZiQiJZdl/O7LhI99nCe6uyJ+la9jNPOuK5z6v72cXenmKZw==
</Modulus>
<Exponent>
AQAB
</Exponent>
</RSAKeyValue>

Är det något av detta som verkar fel? All hjälp uppskattas.

Tack på förhand, Victor


Replies (9)

RE: C++ Login problem "<error>Failed to decrypt authorization blob</error>" - Added by Victor almost 7 years ago

Detaljer om skickningen, förtydligar eventuellt detta lite:

---- Sending ----
POST /next/1/login HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Host: api.test.nordnet.se
Content-Length: 417

service=NEXTAPI&auth=Blob

---- Received ----
HTTP/1.1 401 Authorization Required
Date: Fri, 30 Nov 2012 12:59:42 GMT
Server: Apache
Cache-Control: no-cache
Content-Length: 108
Status: 401
Content-Type: application/xml; charset=utf-8
Connection: close


<hash>
<error>Failed to decrypt authorization blob</error>
</hash>

RE: C++ Login problem "<error>Failed to decrypt authorization blob</error>" - Added by Nordnet Simon almost 7 years ago

Hej, service ska vara NEXTAPI. Username/password ska vara samma som du använder till det här forumet. Du ska INTE använda din användare som du använder på Nordnet web.

RE: C++ Login problem "<error>Failed to decrypt authorization blob</error>" - Added by Victor almost 7 years ago

Hej!
Tack för svaret! Dessa åtgärder är korrigerade med det är fortfarande problem att avkryptera login-strängen:

---- Sending ----
POST /next/1/login HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Host: api.test.nordnet.se
Content-Length: 425

service=NEXTAPI&auth=BLOB

---- Received ----
HTTP/1.1 401 Authorization Required
Date: Sun, 02 Dec 2012 10:34:36 GMT
Server: Apache
Cache-Control: no-cache
Content-Length: 108
Status: 401
Content-Type: application/xml; charset=utf-8
Connection: close


<hash>
<error>Failed to decrypt authorization blob</error>
</hash>

RE: C++ Login problem "<error>Failed to decrypt authorization blob</error>" - Added by Nordnet Simon almost 7 years ago

Hej, svårt att säga.

Kopiera variablen PUBLIC_KEY i https://api.test.nordnet.se/projects/api/wiki/Code_examples#Login-example-in-C till din kod och prova med den. Jag testade just med den C# koden så den nyckeln fungerar.

Om det inte fungerar kan du posta din loginkod så kan vi titta. Ange gärna om det är Visual C++ eller annan version så är det enklare för oss.

RE: C++ Login problem "<error>Failed to decrypt authorization blob</error>" - Added by Victor almost 7 years ago

Hej,
Det är den nyckeln jag använder. Koden jag skickar, alltså min BLOB är följande:

I HTML-format (den som skickas):

Bara base64 (innan formatering):

Går denna att avkoda för er? Ser det rätt ut annars?

Vi använder C++11, inte visual C++.

/ Victor

RE: C++ Login problem "<error>Failed to decrypt authorization blob</error>" - Added by Nordnet Simon almost 7 years ago

Hej, jag menade C++ koden för skapandet av strängen. Den krypterade strängen är vansklig att göra något med.

RE: C++ Login problem "<error>Failed to decrypt authorization blob</error>" - Added by Victor almost 7 years ago

Hej Simon,

Jag förstår. Bifogar genom länken nedan. Vi använder ett externt bibliotek som heter Chilkat. Det återfinns på följande adress: http://www.chilkatsoft.com/refdoc/cpp.asp.

Koden för inloggning nedan:

https://www.dropbox.com/s/x1qvbceypk5yyo9/nordnet%20login.cpp

Tack på förhand, uppskattar verkligen din tid!

/ Victor

RE: C++ Login problem "<error>Failed to decrypt authorization blob</error>" - Added by Nordnet Simon almost 7 years ago

Hej, jag är tyvärr lite ringrostig på C++ och har aldrig sett Chilkat förut - jag kan inte få den koden att fungera.

Däremot så fixade jag ett login exempel för C++ https://api.test.nordnet.se/projects/api/wiki/Code_examples#Login-example-in-GNU-C . Det använder libssl och libcurl för kryptering och kommunikation.

libcurl-dev och libssl-dev finns som färdiga paket i Ubuntu och antagligen dom flesta Linux distributioner.

RE: C++ Login problem "<error>Failed to decrypt authorization blob</error>" - Added by Victor almost 7 years ago

Exemplet är en stor tillgång och jag hoppas på att lösa problemet.

(1-9/9)