hardware-address is only used for BOOTP. For DHCP you'll need to use client-identifier. Some devices (like Cisco switches) will send a very long hex string for the client identifier but most devices (like a PC) will just send it's MAC address prepend...