2
0
mirror of https://github.com/esiur/esiur-js.git synced 2025-05-05 20:12:59 +00:00
This commit is contained in:
Ahmed Zamil 2024-06-24 19:45:19 +03:00
parent b34d3e57bf
commit aa44f93972
5 changed files with 10 additions and 10 deletions

View File

@ -19,6 +19,8 @@ import IIPAuthPacketIAuthDestination from '../../src/Net/Packets/IIPAuthPacketIA
import IIPAuthPacketIAuthFormat from '../../src/Net/Packets/IIPAuthPacketIAuthFormat.js';
import IIPAuthPacketHeader from '../../src/Net/Packets/IIPAuthPacketHeader.js';
import Codec from '../../src/Data/Codec.js';
import BinaryList from "../../src/Data/BinaryList.js";
import SHA256 from "../../src/Security/Integrity/SHA256.js";
const require = createRequire(import.meta.url);
@ -74,9 +76,8 @@ class MyMembership extends IMembership {
let remoteNonce = session.remoteHeaders.get(IIPAuthPacketHeader.Nonce);
let localNonce = session.localHeaders.get(IIPAuthPacketHeader.Nonce);
var hashFunc = SHA256.Create();
// local nonce + password or token + remote nonce
var challenge = hashFunc.ComputeHash(new BinaryList()
var challenge = SHA256.compute(new BinaryList()
.addUint8Array(remoteNonce)
.addUint8Array(Codec.compose(7, null)) // answer is 7
.addUint8Array(localNonce)

View File

@ -8,7 +8,6 @@
function authenticator(x)
{
debugger;
let challenge = prompt(x.clue);
if (challenge != null) {
return new Esiur.Core.AsyncReply(parseInt(challenge));

View File

@ -1,6 +1,6 @@
{
"name": "esiur",
"version": "2.2.14",
"version": "2.3.0",
"description": "Distributed Object Framework",
"main": "esiur.js",
"type": "module",

View File

@ -607,7 +607,7 @@ export default class DistributedConnection extends IStore {
this.#openReply?.triggerError(new AsyncException(ErrorType.Management, authPacket.errorCode, authPacket.message));
this.#openReply = null;
var ex = AsyncException(ErrorType.Management, authPacket.errorCode,
var ex = new AsyncException(ErrorType.Management, authPacket.errorCode,
authPacket.message);
this._emit("error", this, ex);

View File

@ -30,22 +30,22 @@ export default class AuthorizationRequest {
this.clue = headers.get(IIPAuthPacketIAuthHeader.Clue);
if (headers.has(IIPAuthPacketIAuthHeader.RequiredFormat))
requiredFormat = headers.get(IIPAuthPacketIAuthHeader.RequiredFormat);
this.requiredFormat = headers.get(IIPAuthPacketIAuthHeader.RequiredFormat);
if (headers.has(IIPAuthPacketIAuthHeader.ContentFormat))
contentFormat = headers.get(IIPAuthPacketIAuthHeader.ContentFormat);
this.contentFormat = headers.get(IIPAuthPacketIAuthHeader.ContentFormat);
if (headers.has(IIPAuthPacketIAuthHeader.Content))
content = headers.get(IIPAuthPacketIAuthHeader.Content);
this.content = headers.get(IIPAuthPacketIAuthHeader.Content);
if (headers.has(IIPAuthPacketIAuthHeader.Trials))
trials = headers.get(IIPAuthPacketIAuthHeader.Trials);
this.trials = headers.get(IIPAuthPacketIAuthHeader.Trials);
if (headers.has(IIPAuthPacketIAuthHeader.Issue))
this.issue = headers.get(IIPAuthPacketIAuthHeader.Issue);
if (headers.has(IIPAuthPacketIAuthHeader.Expire))
expire = headers.get(IIPAuthPacketIAuthHeader.Expire);
this.expire = headers.get(IIPAuthPacketIAuthHeader.Expire);
}
}