Skip to content

Instantly share code, notes, and snippets.

@etorox
etorox / nodejs-private-http-example.js
Created March 8, 2020 16:12
An example for http request in nodejs
const request = require('request');
const apiKey = '825805c3-45d6-4fab-9b05-0844395ff3ef';
const privateKey = `-----BEGIN ENCRYPTED PRIVATE KEY-----
MIIC3TBXBgkqhkiG9w0BBQ0wSjApBgkqhkiG9w0BBQwwHAQIgiEmpW3i8ccCAggA
MAwGCCqGSIb3DQIJBQAwHQYJYIZIAWUDBAEqBBDtIerHEx69L1zC6FG3UDJ6BIIC
gJ/cU/utsW6FuQ3QFvQjOLyeErn18p8Jer/v1ejLEuZ741h3Tt79MjlvHkAfL+4r
mUQbO+MotpzoehI7oKfdSvC8Vi6x6R9QRmr4PLtUaUZrbM82ZwvWpaVqoSRAnL+r
Xvsyy7bNRyCjbPmMd+x3c111Q3ZVJro+3p89n/x3R987vM+J7+wabgRhntlSMB1p
I+cbesfJaQPbZ+qYAreef2Tzy4gk0NJOwNhjWjvICBsaZI8sxNwDmA3sZ01nkh9g
@etorox
etorox / convert-pkcs8-native-readme.md
Last active January 2, 2022 10:11
Convert pkcs8 to pkcs1 using openssl native

We provide only pkcs8 keys, if you cannot use pkcs8 you can use the pkcs1 encoding, use openssl to convert

The following command was tested on the version 2.6.5

$ openssl version
LibreSSL 2.6.5

When prompet to enter password, don't enter a password, just press the enter or return key on you keyboard

$ openssl pkcs8 -in pkcs1_pk.pem -out pkcs1_pk.pem
@etorox
etorox / signature-process.js
Created March 5, 2020 14:11
Nodejs Signature process example with dummy values
const apiKey = '825805c3-45d6-4fab-9b05-0844395ff3ef';
const privateKey = `-----BEGIN ENCRYPTED PRIVATE KEY-----
MIIC3TBXBgkqhkiG9w0BBQ0wSjApBgkqhkiG9w0BBQwwHAQIgiEmpW3i8ccCAggA
MAwGCCqGSIb3DQIJBQAwHQYJYIZIAWUDBAEqBBDtIerHEx69L1zC6FG3UDJ6BIIC
gJ/cU/utsW6FuQ3QFvQjOLyeErn18p8Jer/v1ejLEuZ741h3Tt79MjlvHkAfL+4r
mUQbO+MotpzoehI7oKfdSvC8Vi6x6R9QRmr4PLtUaUZrbM82ZwvWpaVqoSRAnL+r
Xvsyy7bNRyCjbPmMd+x3c111Q3ZVJro+3p89n/x3R987vM+J7+wabgRhntlSMB1p
I+cbesfJaQPbZ+qYAreef2Tzy4gk0NJOwNhjWjvICBsaZI8sxNwDmA3sZ01nkh9g
GC8yBIgJsPaMoix7wvTScd+5YFXlNO5EWWndeD6eNt1c2ui7UdmvOhGND+s9I2b/
G6I1agW7vyd3M6MO4BBDqHk0BxQ20J4ORRuBvGFPfHScMCbAdd2SrKxD0GZd6F/n
@etorox
etorox / step1-prepare.cs
Last active April 7, 2020 13:15
C# SignalR step by step example
var apiKey = "ed8f179d-cd8a-4dcc-9e9a-120d44787d86";
//Private key must be without -----BEGIN ENCRYPTED PRIVATE KEY----- and -----END ENCRYPTED PRIVATE KEY-----
var privateKey = @"MIIC3TBXBgkqhkiG9w0BBQ0wSjApBgkqhkiG9w0BBQwwHAQIgiEmpW3i8ccCAggA
MAwGCCqGSIb3DQIJBQAwHQYJYIZIAWUDBAEqBBDtIerHEx69L1zC6FG3UDJ6BIIC
gJ/cU/utsW6FuQ3QFvQjOLyeErn18p8Jer/v1ejLEuZ741h3Tt79MjlvHkAfL+4r
mUQbO+MotpzoehI7oKfdSvC8Vi6x6R9QRmr4PLtUaUZrbM82ZwvWpaVqoSRAnL+r
Xvsyy7bNRyCjbPmMd+x3c111Q3ZVJro+3p89n/x3R987vM+J7+wabgRhntlSMB1p
I+cbesfJaQPbZ+qYAreef2Tzy4gk0NJOwNhjWjvICBsaZI8sxNwDmA3sZ01nkh9g
GC8yBIgJsPaMoix7wvTScd+5YFXlNO5EWWndeD6eNt1c2ui7UdmvOhGND+s9I2b/
G6I1agW7vyd3M6MO4BBDqHk0BxQ20J4ORRuBvGFPfHScMCbAdd2SrKxD0GZd6F/n
@etorox
etorox / step1-prepare.js
Last active April 7, 2020 13:16
Node.js SignalR step by step example
const webSocketsHost = 'sdf92342s....etorox.com';
const apiKey = '825805c3-45d6-4fab-9b05-0844395ff3ef';
const privateKey = `-----BEGIN ENCRYPTED PRIVATE KEY-----
MIIC3TBXBgkqhkiG9w0BBQ0wSjApBgkqhkiG9w0BBQwwHAQIgiEmpW3i8ccCAggA
MAwGCCqGSIb3DQIJBQAwHQYJYIZIAWUDBAEqBBDtIerHEx69L1zC6FG3UDJ6BIIC
gJ/cU/utsW6FuQ3QFvQjOLyeErn18p8Jer/v1ejLEuZ741h3Tt79MjlvHkAfL+4r
mUQbO+MotpzoehI7oKfdSvC8Vi6x6R9QRmr4PLtUaUZrbM82ZwvWpaVqoSRAnL+r
Xvsyy7bNRyCjbPmMd+x3c111Q3ZVJro+3p89n/x3R987vM+J7+wabgRhntlSMB1p
I+cbesfJaQPbZ+qYAreef2Tzy4gk0NJOwNhjWjvICBsaZI8sxNwDmA3sZ01nkh9g
GC8yBIgJsPaMoix7wvTScd+5YFXlNO5EWWndeD6eNt1c2ui7UdmvOhGND+s9I2b/
@etorox
etorox / get-balance.js
Last active January 2, 2022 10:10
API Authentication example
const request = require('request');
const crypto = require('crypto');
const fs = require('fs')
const pem = `YOUR_PRIVATE_KEY`
const apiKey = 'YOUR_API_KEY';
const nonce = 100510; //<-- Random number cannot repeat
const timestamp = Date.now();