partial implement client app
This commit is contained in:
@@ -4,7 +4,7 @@ use tokio::sync::Mutex;
|
||||
use std::sync::Arc;
|
||||
use uuid::Uuid;
|
||||
use opaque_ke::{CredentialFinalization, CredentialRequest, RegistrationRequest};
|
||||
use crate::models::opaque::{LoginSession, NKodeCipherSuite, NKodeServerSetup, PasswordFile, RegisterSession};
|
||||
use crate::models::opaque::{LoginSession, NKodeCipherSuite, NKodeServerSetup, OpaqueSessionKey, PasswordFile, RegisterSession};
|
||||
use crate::opaque::client::{ClientAuthError, ServerConnectionLogin, ServerConnectionRegister};
|
||||
use crate::opaque::server::{OpaqueAuth, CredKind, Key, Code};
|
||||
use crate::repository::opaque::in_memory::in_memory_auth_repo::InMemoryAuthRepo;
|
||||
@@ -77,15 +77,15 @@ where
|
||||
&mut self,
|
||||
session_id: &Uuid,
|
||||
message: &CredentialFinalization<NKodeCipherSuite>,
|
||||
) -> Result<(), ClientAuthError> {
|
||||
) -> Result<OpaqueSessionKey, ClientAuthError> {
|
||||
// Server computes its own session key too; we just need it to validate and complete.
|
||||
let _server_session_key = self
|
||||
let key = self
|
||||
.auth
|
||||
.login_finish::<K>(session_id, message.clone())
|
||||
.await
|
||||
.map_err(|e| ClientAuthError::Transport(e))?;
|
||||
|
||||
Ok(())
|
||||
Ok(key)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -151,12 +151,12 @@ where
|
||||
&mut self,
|
||||
session_id: &Uuid,
|
||||
message: &CredentialFinalization<NKodeCipherSuite>,
|
||||
) -> Result<(), ClientAuthError> {
|
||||
) -> Result<OpaqueSessionKey, ClientAuthError> {
|
||||
let mut guard = self.inner.lock().await;
|
||||
let _ = guard
|
||||
let key = guard
|
||||
.login_finish::<K>(session_id, message.clone())
|
||||
.await
|
||||
.map_err(ClientAuthError::Transport)?;
|
||||
Ok(())
|
||||
Ok(key)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user