After two days searching and learning a lot about USB HID protocol I could not find if Arduino Leonardo and Due can support Boot protocol for USB keyboard.
Will appreciate if someone can tell me if this is possible with current Arduino.
PS It is possible using USB Host shield because there is library which is supporting boot protocol.
After some further digging in the Arduino source code found in HID.cpp following:
if (HID_GET_PROTOCOL == r)
//Send8(_hid_protocol); // TODO
GET_PROTOCOL has to be implemented according to boot protocol specification...
I guess this is answering my question - currently arduino is not supporting the boot protocol.
If any idea, happy to hear.