# ToCoNet\_bRegisterAesKey()

## 解説

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

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

{% 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);
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://sdk.twelite.info/twelite-net-api-ref/twelite-net-guan-shu/toconet_bregisteraeskey.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
