The same thing.
byte y;
byte *ptr1; // reserve the memory for the address (pointer variable)
ptr1 = &y; // assign the y address to it
byte *ptr2 = &y; // reserver the memory for the address (pointer variable) and assign it the y address to it
Serial.printf ("p&y = %p\n", &y);
Serial.printf ("ptr1 = %p\n", ptr1); // the same address
Serial.printf ("ptr2 = %p\n", ptr2); // the same address
So the sequence of compilation (put in brackets) should be considered as { byte *ptr2 } = &y and not byte { *ptr2 = &y }. The latter even doesn't make sense. You can not make the assignment to *ptr before ptr is even declared.