1
0
mirror of https://github.com/bitwarden/mobile synced 2025-12-17 16:53:26 +00:00

PM-3349 PM-3350 Enabled argon2id and fixed one issue with the Uris when getting the icon image

This commit is contained in:
Federico Maccaroni
2023-12-14 17:32:43 -03:00
parent 8fc1e9a3b9
commit 741214a1cc
3 changed files with 13 additions and 14 deletions

View File

@@ -41,13 +41,13 @@ namespace Bit.Droid.Services
JavaSystem.LoadLibrary("argon2"); JavaSystem.LoadLibrary("argon2");
int keySize = 32; int keySize = 32;
var key = new byte[keySize]; var key = new byte[keySize];
//argon2id_hash_raw(iterations, memory, parallelism, argon2id_hash_raw(iterations, memory, parallelism,
// password, password.Length, salt, salt.Length, key, key.Length); password, password.Length, salt, salt.Length, key, key.Length);
return key; return key;
} }
//[DllImport("argon2", EntryPoint = "argon2id_hash_raw")] [DllImport("argon2", EntryPoint = "argon2id_hash_raw")]
//private static extern int argon2id_hash_raw(int timeCost, int memoryCost, int parallelism, private static extern int argon2id_hash_raw(int timeCost, int memoryCost, int parallelism,
// byte[] pwd, int pwdlen, byte[] salt, int saltlen, byte[] hash, int hashlen); byte[] pwd, int pwdlen, byte[] salt, int saltlen, byte[] hash, int hashlen);
} }
} }

View File

@@ -40,7 +40,7 @@ namespace Bit.App.Utilities
string image = null; string image = null;
if (cipher.Login.HasUris) if (cipher.Login.HasUris)
{ {
foreach (var uri in cipher.Login.Uris) foreach (var uri in cipher.Login.Uris.Where(u => u.Uri != null))
{ {
var hostnameUri = uri.Uri; var hostnameUri = uri.Uri;
var isWebsite = false; var isWebsite = false;

View File

@@ -1,8 +1,7 @@
using Bit.Core.Abstractions; using System.Runtime.InteropServices;
using Bit.Core.Abstractions;
using Bit.Core.Enums; using Bit.Core.Enums;
using Foundation; using Foundation;
using System;
using System.Runtime.InteropServices;
namespace Bit.iOS.Core.Services namespace Bit.iOS.Core.Services
{ {
@@ -48,8 +47,8 @@ namespace Bit.iOS.Core.Services
var passwordData = NSData.FromArray(password); var passwordData = NSData.FromArray(password);
var saltData = NSData.FromArray(salt); var saltData = NSData.FromArray(salt);
//argon2id_hash_raw(iterations, memory, parallelism, passwordData.Bytes, passwordData.Length, argon2id_hash_raw(iterations, memory, parallelism, passwordData.Bytes, passwordData.Length,
// saltData.Bytes, saltData.Length, keyData.MutableBytes, keyData.Length); saltData.Bytes, saltData.Length, keyData.MutableBytes, keyData.Length);
var keyBytes = new byte[keyData.Length]; var keyBytes = new byte[keyData.Length];
Marshal.Copy(keyData.Bytes, keyBytes, 0, Convert.ToInt32(keyData.Length)); Marshal.Copy(keyData.Bytes, keyBytes, 0, Convert.ToInt32(keyData.Length));
@@ -61,8 +60,8 @@ namespace Bit.iOS.Core.Services
private static extern int CCKeyCerivationPBKDF(uint algorithm, IntPtr password, nuint passwordLen, private static extern int CCKeyCerivationPBKDF(uint algorithm, IntPtr password, nuint passwordLen,
IntPtr salt, nuint saltLen, uint prf, nuint rounds, IntPtr derivedKey, nuint derivedKeyLength); IntPtr salt, nuint saltLen, uint prf, nuint rounds, IntPtr derivedKey, nuint derivedKeyLength);
//[DllImport("__Internal", EntryPoint = "argon2id_hash_raw")] [DllImport("__Internal", EntryPoint = "argon2id_hash_raw")]
//private static extern int argon2id_hash_raw(int timeCost, int memoryCost, int parallelism, IntPtr pwd, private static extern int argon2id_hash_raw(int timeCost, int memoryCost, int parallelism, IntPtr pwd,
// nuint pwdlen, IntPtr salt, nuint saltlen, IntPtr hash, nuint hashlen); nuint pwdlen, IntPtr salt, nuint saltlen, IntPtr hash, nuint hashlen);
} }
} }