Two Factor Authentication
George Mikhailovsky
Posts: 5
George Mikhailovsky replied the code: Two Factor Authentication
Bruce
I deploy to localhost, i.e., to the same server where I ran my C/S application that works fine. But after your message, I checked system time on my server and it is exactly the same as on my IPhone. Moreover, I ran the modified generatepin() function triple:
Pin1 = generatepin ( key, CurrentInterval - 1)
Pin2 = generatepin ( key, CurrentInterval )
Pin3 = generatepin ( key, CurrentInterval + 1)
for previous, current and next 30 seconds but none of the Pins matched with the token on my IPhone.
Thank you very much for your help!
I will let you know if find a solution,
George
I deploy to localhost, i.e., to the same server where I ran my C/S application that works fine. But after your message, I checked system time on my server and it is exactly the same as on my IPhone. Moreover, I ran the modified generatepin() function triple:
Pin1 = generatepin ( key, CurrentInterval - 1)
Pin2 = generatepin ( key, CurrentInterval )
Pin3 = generatepin ( key, CurrentInterval + 1)
for previous, current and next 30 seconds but none of the Pins matched with the token on my IPhone.
Thank you very much for your help!
I will let you know if find a solution,
George
Please Log in or Create an account to join the conversation.
Bruce Armstrong
CODE AUTHOR
Posts: 55
Bruce Armstrong replied the code: Two Factor Authentication
Verify that the time and timezone are correct on the server you're deploying to. If it's off by more than 30 seconds, you likely won't get the correct PIN values because they use the current UTC unix epoch time as part of the calculation. Part of the powerscript code is calculating that value based on the date/time/timezone of the machine the code is running on.
Last Edit: 4 years 2 months ago by Bruce Armstrong .
Please Log in or Create an account to join the conversation.
George Mikhailovsky
Posts: 5
George Mikhailovsky replied the code: Two Factor Authentication
Bruce,
I created both these functions and call them in generatepin(key, counter) function instead of longtobytearray() and counterBlob():
//Convert the counter to byte array and then to blob
of_copylongtobytes( counter, counterBytes )
counterBlob = of_blob( counterBytes )
//longtobytearray ( counter, counterBytes )
//counterBlob = Blob ( counterBytes )
After this generatepin() began return 6-digits pin instead of '000000' but each time these 6 digits are the same and doesn't match digits in DioMobile on my IPhone, At the same, hashBytes array is popuilated with 20 elements.
In C/S application with longtobytearray() and counterBlob() functions everything worked fine. By the way, I have the latest PowerServer 2020.
I would be very appreciated for any ideas,
George
I created both these functions and call them in generatepin(key, counter) function instead of longtobytearray() and counterBlob():
//Convert the counter to byte array and then to blob
of_copylongtobytes( counter, counterBytes )
counterBlob = of_blob( counterBytes )
//longtobytearray ( counter, counterBytes )
//counterBlob = Blob ( counterBytes )
After this generatepin() began return 6-digits pin instead of '000000' but each time these 6 digits are the same and doesn't match digits in DioMobile on my IPhone, At the same, hashBytes array is popuilated with 20 elements.
In C/S application with longtobytearray() and counterBlob() functions everything worked fine. By the way, I have the latest PowerServer 2020.
I would be very appreciated for any ideas,
George
Please Log in or Create an account to join the conversation.
George Mikhailovsky
Posts: 5
George Mikhailovsky replied the code: Two Factor Authentication
Thank you a lot Bruce,
I will try this workarounds,
George
I will try this workarounds,
George
Please Log in or Create an account to join the conversation.