Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
SHA256 for Authentication
Message
From
21/12/2021 17:13:54
 
 
To
21/12/2021 11:40:49
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Miscellaneous
Thread ID:
01683030
Message ID:
01683049
Views:
62
Likes (1)
HI Antonio,

That is so awesome, it works now. I've been cracking my brain on this and tried so hard even at the C#.
I cannot thank you enough!
Thanks so much

Joy Tan

******************

Joy,

Using the foxCryptoNG class at https://github.com/cwollenhaupt/foxCryptoNG:
LOCAL Crypto AS foxCryptoNG
LOCAL Seed AS String
LOCAL ApiKey AS String
LOCAL ApiPin AS String
LOCAL PreHash AS String
LOCAL ApiHash AS String
LOCAL Result64 AS String
LOCAL ExpectedResult64 AS String

m.ExpectedResult64 = "X2ZDelgwdDB2UDMxMFZuMHJLelZFaWo0elNCYjdnMGo6czIvMzIxNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkw" + ;
	"LzAwMzVhMjJhNjU1MDllMTE4MTE5YjgwOWNhMDI4MDg3ZTQzMDdjNDUyZWZiNmFiNzk2NTViYTQ0ZDc5ZDFmOGM="

m.Crypto = CREATEOBJECT("foxCryptoNG")

m.Seed = "321456789012345678901234567890"
m.ApiKey = "_fCzX0t0vP310Vn0rKzVEij4zSBb7g0j"
m.ApiPin = "J105251T"

m.PreHash = m.ApiKey + m.Seed + m.ApiPin
m.ApiHash = "s2/" + m.Seed + "/" + LOWER(m.Crypto.Hash_sha256(m.PreHash))

m.Result64 = STRCONV(m.ApiKey + ":" + m.ApiHash, 13)

IF m.Result64 == m.ExpectedResult64

	MESSAGEBOX("Success!")

ELSE

	MESSAGEBOX("Fail...")

ENDIF
>HI All,
>
>Just wondering if anyone ever coded the authentication header for USAePay API.
>I tried using vfpencryption.fll but the results did not come out correct.
>
>Here is the javascript code that works:
>var seed = "321456789012345678901234567890";
>var apikey = "_fCzX0t0vP310Vn0rKzVEij4zSBb7g0j";
>var apipin = "J105251T";
>var prehash = apikey + seed + apipin;
>var apihash = 's2/'+ seed + '/' + SHA256(prehash);
>var authKey = new Buffer(apikey + ":" + apihash).toString('base64');
>var authKey2 = (apikey + ":" + apihash).toString('base64');
>console.log("Authorization: Basic " + authKey);
>
>https://onecompiler.com/javascript/3xh8rx8pr
>
>My attempts to replicate this in VFP did not work.
>
>Thanks
>Joy Tan
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform