Binary ConfigMaps are now supported since Kubernetes version 1.10.0. From the readme notes:
ConfigMap objects now support binary data via a new binaryData field. When using kubectl create configmap –from-file, files containing non-UTF8 data will be placed in this new field in order to preserve the non-UTF8 data. Note that kubectl’s –append-hash feature doesn’t take binaryData into account. Use of this feature requires 1.10+ apiserver and kubelets. (#57938, @dims)
See the changelog for more details: https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.10.md#apps