BTKEY(1) | General Commands Manual | BTKEY(1)

# NAME

`btkey` —
Bluetooth Link Key management utility

# SYNOPSIS

`btkey` | [`-CcRrWw`] [`-k` key] `-a` address `-d` device

`btkey` | `-Ll` [`-d` device]

# DESCRIPTION

The `btkey` program is used to manage Bluetooth Link Key storage. Keys are normally handled by the bthcid(8) daemon which caches them in the /var/db/bthcid.keys file and provides them as required when Bluetooth connections need to be authenticated.

These keys are required for connections between remote devices and the specific controller (not the Operating System) and so for multi-boot systems where it may not always be possible to specify the same key across all OS's it can be better to have the Bluetooth controller provide the keys directly from its semi-permanent memory once devices are paired. `btkey` will read, write or clear keys in device memory or the key cache as required.

Note that without the bthcid(8) daemon running users will be unable to supply PINs, and Link Keys resulting from new pairings will not be stored. If no new pairings are expected and the keys are stored in the controller then bthcid(8) is not required.

The options are as follows:

`-a` address
  Specify the remote device address. May be given as a BDADDR or a name.
`-C`
  Clear key from device.
`-c`
  Clear key from file.
`-d` device
  Specify the local device address. May be given as a BDADDR or a name.
`-k` key
  Supply a Link Key as a string of hexadecimal digits. Up to 32 digits will be processed and the resulting key will be zero padded to 16 octets.
`-L`
  List keys stored in device.
`-l`
  List keys stored in file.
`-R`
  Read key from device.
`-r`
  Read key from file.
`-W`
  Write key to device.
`-w`
  Write key to file.

Super-user privileges are required to read or write link keys.

# FILES

- /var/db/bthcid.keys

# EXIT STATUS

The `btkey` utility exits 0 on success, and >0 if an error occurs.

# EXAMPLES

Read key for mouse at ubt0 from file and write to device

`btkey -d ubt0 -a mouse -rW`

Write new key for keyboard at ubt0 to file

`btkey -d ubt0 -a keyboard -k 92beda6cd8b8f66ebd2af270d55d70ec -w`

Clear key for phone at bt3c0 from file and device

`btkey -d bt3c0 -a phone -cC`

# SEE ALSO

btpin(1), btconfig(8), bthcid(8)

# AUTHORS

Iain Hibbert

November 8, 2007 | NetBSD 9.4