string[] variants = { "Камень", "Ножницы", "Бумага" };
var key = new byte[128];
var pc = new byte[4];
var gen = RandomNumberGenerator.Create();
gen.GetBytes(key);
gen.GetBytes(pc);
var hmac = new HMACSHA256(key);
var ipc = BitConverter.ToUInt32(pc, 0) % (variants.Length);
var hash = hmac.ComputeHash(Encoding.UTF8.GetBytes(variants[ipc]));
Console.WriteLine("Компьютер сделал ход\nHMAC : " + (BitConverter.ToString(hash, 0)));
Console.WriteLine("Ваш выбор:\n0 : Выход");
for (int i = 0; i < variants.Length; i++)
Console.WriteLine((i + 1) + " : " + variants[i]);
int player = 0;
if (!int.TryParse(Console.ReadLine(), out player) || player < 0 || player > variants.Length)
{
Console.WriteLine("Некорректный ввод");
return;
}
else if (player == 0) return;
player -= 1;
if (ipc == player)
Console.WriteLine("Ничья");
else if (((ipc + player) % 2 == 0 && ipc > player)
|| ((ipc + player) != 0 && player > ipc))
Console.WriteLine("Вы выйграли!");
else
Console.WriteLine("Вы проиграли!");
Console.WriteLine("Ключ : " + (BitConverter.ToUInt32(key, 0)));
Console.ReadLine();
Вывод ключа неверный, в чем может быть проблема?
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Программа на С# загружает динамическую библиотеку написанную на том же С#Соответственно dll выполняет одну только функцию
Не могу решить проблемуПри создании игрового объекта из префаба по высчитанным точкам рисуется треугольник (рисуется ровно и правильно)...
Есть ответ от сервера вида {"name":"Jonh","lastName":"Smith"},{"name":"Rick","lastName":"Grimes"}И т