diff --git a/package.json b/package.json index 0c14a74f..7e0c2849 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@internxt/sdk", "author": "Internxt ", - "version": "1.20.1", + "version": "1.20.2", "description": "An sdk for interacting with Internxt's services", "repository": { "type": "git", diff --git a/src/auth/index.ts b/src/auth/index.ts index b519de47..1a9c7c7b 100644 --- a/src/auth/index.ts +++ b/src/auth/index.ts @@ -11,7 +11,6 @@ import { PrivateKeys, RecoveryKeys, RegisterDetails, - RegisterOpaqueDetails, RegisterPreCreatedUser, RegisterPreCreatedUserResponse, SecurityDetails, @@ -39,65 +38,6 @@ export class Auth { this.apiUrl = apiUrl; } - /** - * Runs the first phase (out of 2) of opaque registation of a new user - * @param email - The user email. - * @param registrationRequest - The opaque registration request. - * @returns The opaque sign up response. - */ - public registerOpaqueStart( - email: string, - registrationRequest: string, - ): Promise<{ - signUpResponse: string; - }> { - return this.client.post( - '/register-opaque/start', - { - email, - registrationRequest, - }, - this.basicHeaders(), - ); - } - - /** - * Runs the second phase (out of 2) of opaque registation of a new user - * @param registrationRecord - The opaque registration record. - * @param registerDetails - The user registration details. - * @param startLoginRequest - The opaque start login request. - * @returns The opaque login response. - */ - public registerOpaqueFinish( - registrationRecord: string, - registerDetails: RegisterOpaqueDetails, - startLoginRequest: string, - ): Promise<{ - loginResponse: string; - }> { - return this.client.post( - '/register-opaque/finish', - { - name: registerDetails.name, - lastname: registerDetails.lastname, - email: registerDetails.email, - registrationRecord, - keys: { - ecc: { - publicKey: registerDetails.keys.ecc.publicKey, - privateKey: registerDetails.keys.ecc.privateKey, - }, - kyber: { - publicKey: registerDetails.keys.kyber.publicKey, - privateKey: registerDetails.keys.kyber.privateKey, - }, - }, - startLoginRequest, - }, - this.basicHeaders(), - ); - } - /** * Tries to register a new user * @param registerDetails @@ -245,60 +185,6 @@ export class Auth { return this.client.put('users/unblock-account', { token }, this.basicHeaders()); } - /** - * Runs the first phase (out of 2) of opaque log for the given user - * @param email - The user email. - * @param startLoginRequest - The opaque start login request. - * @param tfa - The two factor auth code. - * @returns The opaque login response. - */ - public async loginOpaqueStart( - email: string, - startLoginRequest: string, - ): Promise<{ - loginResponse: string; - }> { - return this.client.post<{ - loginResponse: string; - }>( - '/auth/login-opaque/start', - { - email, - startLoginRequest, - }, - this.basicHeaders(), - ); - } - - /** - * Runs the second phase (out of 2) of opaque log for the given user - * @param email - * @param finishLoginRequest - */ - public async loginOpaqueFinish( - email: string, - finishLoginRequest: string, - tfa: string | undefined, - ): Promise<{ - sessionID: string; - user: UserSettings; - token: string; - }> { - return this.client.post<{ - sessionID: string; - user: UserSettings; - token: string; - }>( - '/auth/login-opaque/finish', - { - email, - finishLoginRequest, - tfa, - }, - this.basicHeaders(), - ); - } - /** * Tries to log in a user given its login details * @param details @@ -444,7 +330,6 @@ export class Auth { .post<{ sKey: string; tfa: boolean | null; - useOpaqueLogin: boolean | null; }>( '/auth/login', { @@ -456,7 +341,6 @@ export class Auth { return { encryptedSalt: data.sKey, tfaEnabled: data.tfa === true, - useOpaqueLogin: data.useOpaqueLogin === true, }; }); } diff --git a/src/auth/types.ts b/src/auth/types.ts index 18b8284e..3a3ea8fe 100644 --- a/src/auth/types.ts +++ b/src/auth/types.ts @@ -22,17 +22,6 @@ export type UserKeys = { }; }; -export interface RegisterOpaqueDetails { - name: string; - lastname: string; - email: Email; - mnemonic: string; - keys: UserKeys; - captcha: string; - referrer?: string; - referral?: string; -} - export interface RegisterDetails { name: string; lastname: string; @@ -76,7 +65,6 @@ export class UserAccessError extends Error {} export interface SecurityDetails { encryptedSalt: string; tfaEnabled: boolean; - useOpaqueLogin: boolean; } export interface TwoFactorAuthQR { diff --git a/src/drive/users/index.ts b/src/drive/users/index.ts index 36d79385..7d31bcd7 100644 --- a/src/drive/users/index.ts +++ b/src/drive/users/index.ts @@ -19,7 +19,6 @@ import { VerifyEmailChangeResponse, } from './types'; -import { UserKeys } from '../../auth/types'; export * as UserTypes from './types'; export class Users { @@ -160,60 +159,6 @@ export class Users { ); } - /** - * Runs the first phase (out of 2) of the password change. - * @param hmac - The HMAC to authenticate request. - * @param sessionID - The current session ID. - * @param registrationRequest - The opaque registration request. - * @returns {Promise} A promise that returns opaque registration response. - */ - public changePwdOpaqueStart( - hmac: string, - sessionID: string, - registrationRequest: string, - ): Promise<{ registrationResponse: string }> { - return this.client.patch( - '/users/password-opaque/start', - { - hmac, - sessionID, - registrationRequest, - }, - this.headers(), - ); - } - - /** - * Runs the second phase (out of 2) of the password change. - * @param hmac - The HMAC to authenticate request. - * @param sessionID - The current session ID. - * @param registrationRecord - The opaque registration record. - * @param mnemonic - The user's encrypted mnemonic. - * @param keys - The user's encrypted keys. - * @param startLoginRequest - The opaque start login request. - * @returns {Promise} A promise that returns opaque login response. - */ - public changePwdOpaqueFinish( - hmac: string, - sessionID: string, - registrationRecord: string, - mnemonic: string, - keys: UserKeys, - startLoginRequest: string, - ): Promise<{ loginResponse: string }> { - return this.client.patch( - '/users/password-opaque/finish', - { - hmac, - sessionID, - keys, - mnemonic, - registrationRecord, - startLoginRequest, - }, - this.headers(), - ); - } /** * Pre registers an email * @param email diff --git a/test/auth/index.test.ts b/test/auth/index.test.ts index d04173dd..d0e81b5d 100644 --- a/test/auth/index.test.ts +++ b/test/auth/index.test.ts @@ -3,7 +3,7 @@ import { emptyRegisterDetails } from './registerDetails.mother'; import { basicHeaders, headersWithToken } from '../../src/shared/headers'; import { ApiSecurity, AppDetails } from '../../src/shared'; import { HttpClient } from '../../src/shared/http/client'; -import { Auth, CryptoProvider, Keys, LoginDetails, Password, RegisterDetails, Token } from '../../src'; +import { Auth, CryptoProvider, Keys, LoginDetails, RegisterDetails, Token } from '../../src'; describe('# auth service tests', () => { beforeEach(() => { @@ -24,8 +24,7 @@ describe('# auth service tests', () => { registerDetails.keys.ecc.publicKey = '8'; registerDetails.keys.kyber.privateKeyEncrypted = '9'; registerDetails.keys.kyber.publicKey = '10'; - registerDetails.keys.revocationCertificate = '11'; - registerDetails.captcha = '12'; + registerDetails.captcha = '11'; const postCall = vi.spyOn(HttpClient.prototype, 'post').mockResolvedValue({}); const { client, headers } = clientAndHeaders(); @@ -93,8 +92,7 @@ describe('# auth service tests', () => { registerDetails.keys.ecc.publicKey = '8'; registerDetails.keys.kyber.privateKeyEncrypted = '9'; registerDetails.keys.kyber.publicKey = '10'; - registerDetails.keys.revocationCertificate = '11'; - registerDetails.captcha = '12'; + registerDetails.captcha = '11'; const postCall = vi.spyOn(HttpClient.prototype, 'post').mockResolvedValue({}); const { client, headers } = clientAndHeaders(); @@ -152,8 +150,7 @@ describe('# auth service tests', () => { registerDetails.keys.ecc.publicKey = '8'; registerDetails.keys.kyber.privateKeyEncrypted = '9'; registerDetails.keys.kyber.publicKey = '10'; - registerDetails.keys.revocationCertificate = '11'; - registerDetails.captcha = '12'; + registerDetails.captcha = '11'; const mockInvitatioId = 'invitationId'; @@ -224,8 +221,7 @@ describe('# auth service tests', () => { registerDetails.keys.ecc.publicKey = '8'; registerDetails.keys.kyber.privateKeyEncrypted = '9'; registerDetails.keys.kyber.publicKey = '10'; - registerDetails.keys.revocationCertificate = '11'; - registerDetails.captcha = '12'; + registerDetails.captcha = '11'; const mockInvitatioId = 'invitationId'; @@ -289,11 +285,8 @@ describe('# auth service tests', () => { }; const cryptoProvider: CryptoProvider = { encryptPasswordHash: () => '', - generateKeys: (password: Password) => { + generateKeys: () => { const keys: Keys = { - privateKeyEncrypted: '', - publicKey: '', - revocationCertificate: '', ecc: { publicKey: '', privateKeyEncrypted: '', @@ -325,11 +318,8 @@ describe('# auth service tests', () => { }; const cryptoProvider: CryptoProvider = { encryptPasswordHash: () => '', - generateKeys: (password: Password) => { + generateKeys: () => { const keys: Keys = { - privateKeyEncrypted: '', - publicKey: '', - revocationCertificate: '', ecc: { publicKey: '', privateKeyEncrypted: '', @@ -366,7 +356,7 @@ describe('# auth service tests', () => { }; const cryptoProvider: CryptoProvider = { encryptPasswordHash: (password, encryptedSalt) => password + '-' + encryptedSalt, - generateKeys: (password: Password) => { + generateKeys: () => { const keys: Keys = { ecc: { publicKey: 'pub', @@ -434,7 +424,7 @@ describe('# auth service tests', () => { }; const cryptoProvider: CryptoProvider = { encryptPasswordHash: (password, encryptedSalt) => password + '-' + encryptedSalt, - generateKeys: (password: Password) => { + generateKeys: () => { const keys: Keys = { ecc: { publicKey: 'pub', @@ -492,7 +482,7 @@ describe('# auth service tests', () => { }; const cryptoProvider: CryptoProvider = { encryptPasswordHash: () => '', - generateKeys: (password: Password) => { + generateKeys: () => { const keys: Keys = { ecc: { publicKey: '', @@ -560,7 +550,6 @@ describe('# auth service tests', () => { hasKeys: true, sKey: 'gibberish', tfa: true, - useOpaqueLogin: true, }); const { client, headers } = clientAndHeaders(); const email = 'my@email.com'; @@ -579,7 +568,6 @@ describe('# auth service tests', () => { expect(body).toEqual({ encryptedSalt: 'gibberish', tfaEnabled: true, - useOpaqueLogin: true, }); }); @@ -600,7 +588,6 @@ describe('# auth service tests', () => { expect(body).toEqual({ encryptedSalt: 'gibberish', tfaEnabled: false, - useOpaqueLogin: false, }); }); });