Нельзя преобразовать строку base-64 в long
(или она может быть усечена, если она не помещается, так как long
использует только 8 байтов) ...
Этоможно преобразовать его в байтовый массив (что является « противоположной » операцией):
byte[] hash = new byte[] { 65, 66, 67, 68, 69 };
string string64 = Convert.ToBase64String(hash);
byte[] array = Convert.FromBase64String(string64);
Если ваш массив содержит не менее 8 байтов, вы можете получить длинное значение:
long longValue = BitConverter.ToInt64(array, 0);