Как правильно сохранять сессию в куки?
Неправильно.
Лучше не играйтесь с безопасностью, если не понимаете как это работает. Используйте стандартный sessionid, и ничего больше в куки не нужно писать.
php.net/manual/ru/session.examples.basic.php
Сделал вот такую авторизацию:<?php 
require '../libs/bd.php';
require '../libs/session.php';
$date = $_POST;
$errors = [];
if (isset($date['log_b'])) {
	if ($date['login'] == "") {
		$errors[] = 'Ошибка: Вы не ввели логин!';
	} else {
		$p_login = $date['login'];
		$ack = mysqli_query($connection, "SELECT * FROM `users` WHERE email = '$p_login'");
		$user = mysqli_fetch_assoc($ack);
	}
	if ($date['pass'] == "") {
		$errors[] = 'Ошибка: Вы не ввели пароль!';
	} else {
		$passh = password_verify($date['pass'], $user['password']);
	}

	if ($passh == false) {
		$errors[] = 'Ошибка: Вы ввели не верный логин или пароль!';
	}

	function generatePassword($length = 8){
  $chars = 'abdefhiknrstyzABDEFGHKNQRSTYZ23456789';
  $numChars = strlen($chars);
  $string = '';
  for ($i = 0; $i < $length; $i++) {
    $string .= substr($chars, rand(1, $numChars) - 1, 1);
  }
  return $string;
}

	if (empty($errors)) {
		$uuid = password_hash(generatePassword(8), PASSWORD_DEFAULT);
		setcookie("Auth", $uuid, time()+60*60*24*365*100 , "/");
		mysqli_query($connection, "UPDATE `users` SET `uuid`='$uuid'");
		$id = $user['id'];
		$_SESSION['Auth'] = $id;
		echo "Успешно";
	} else {
		echo array_shift($errors);
	}
}
?>