Support of Java client compatible with Javascript math implementation

Issue #1 resolved
Bernard Wittwer created an issue

Hello,

We would like to be able to have two SRP clients: one javascript (using your lib) and one java (based on nimbus SRP6ClientSession); both client communicating with the same sever.

Currently the nimbus client implementation is using the java constructor "public BigInteger(byte[] val)", which is not portable across languages. For this reason it is not possible yet to have two clients, one java and one javascript using the same back-end.

Basically if I register with the JS client, I won't be able to authenticate using the java client and vice-versa.

Would it be possible to have a write a java version of the javascript session that share that same mathematical algorithm ?

Thank you, Bernard.

Comments (2)

  1. simon repo owner

    Hi Bernard, I have created a feature branch "issue1" which has a first cut of the solution which is shown in JavaClientTests. I had to modify an Nimbus file as there is a missing extension point for the nimbus client session which is in the nimbus server session (it doesn't call the "hashedKeysRoutine" which is available in the parent class which is an oversight). I committed a patched Nimbus class directly onto the branch. I wont merge that back to my trunk but will setup a pull request to get the class patched in Nimbus. When they accept the fix and release then I will be able to release the feature. In the meanwhile you can checkout that branch and build a jar to try out the feature as an experimental pre-release version. Simon

  2. Log in to comment