# ToCoNet\_bRegisterAesKey()

## 解説

通信時に用いる暗号化鍵を設定します。

この処理はシステム起動時の [`E_EVENT_START_UP` イベント](https://sdk.twelite.info/twelite-net-api-ref/yzaibento/ibento)に記述します。稼働途中での変更はできません。

{% hint style="warning" %}
鍵自体を暗号化する事は出来ません。EEPROM への保管・ファームウェア読み出しにより解析されてしまうことを防ぎたい場合は、鍵の秘匿化のためのアルゴリズムを含めるようにしてください。

暗号化については AES128 を利用していますが、詳細は非公開です。

復号化のための確認として 16bit のチェックサムをパケットのデータ中に追加します。このため格納できるデータ量は２バイト少なくなりますが、パケットの識別性は高くなります。
{% endhint %}

## 引数

| 型               | 名前           | 詳細               |
| --------------- | ------------ | ---------------- |
| `uint8 *`       | `pu8Key`     | １６バイトの鍵データへのポインタ |
| `tsCryptDefs *` | `sCryptDefs` | 予約(`NULL`を指定します) |

## 戻り値

| 型        | 詳細                                   |
| -------- | ------------------------------------ |
| `bool_t` | `TRUE`: 鍵が登録できた。 `FALSE`: 鍵の登録に失敗した。 |

## サンプル

```c
const char *pu8enckey = "abcd1234VWXY7890";
ToCoNet_bRegisterAesKey(pu8enckey, NULL);
```
