Creo que la idea no es bloquear el teclado fisico (no creo que desde un navegador lo puedas hacer) sino permitirle al usuario ingresar texto sin usar el mismo.
No se mucho JS, pero se me ocurre que cada vez que un texto sea modificado usando el teclado, se podria borrar el mismo, con lo que obtendria una especie de "bloqueo".