The Sha204Personalizer has been converted to a SecurityPersonalizer. It takes care of generation and storage of keys and data to both ATSHA204A and nonvolatile storage (EEPROM). Library has been updated to read any software security related data from the corresponding EEPROM locations. The effect this has is that any node using any security feature has to execute the personalizer at least once to store appropriate values. The benefit of this is that the software no longer contain sensitive data such as HMAC or AES keys. Whitelists still are stored in software as they are variable in size.
62 lines
2.2 KiB
Plaintext
62 lines
2.2 KiB
Plaintext
/**
|
|
* The MySensors Arduino library handles the wireless radio link and protocol
|
|
* between your home built sensors/actuators and HA controller of choice.
|
|
* The sensors forms a self healing radio network with optional repeaters. Each
|
|
* repeater and gateway builds a routing tables in EEPROM which keeps track of the
|
|
* network topology allowing messages to be routed to nodes.
|
|
*
|
|
* Created by Henrik Ekblad <henrik.ekblad@mysensors.org>
|
|
* Copyright (C) 2013-2015 Sensnology AB
|
|
* Full contributor list: https://github.com/mysensors/Arduino/graphs/contributors
|
|
*
|
|
* Documentation: http://www.mysensors.org
|
|
* Support Forum: http://forum.mysensors.org
|
|
*
|
|
* This program is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU General Public License
|
|
* version 2 as published by the Free Software Foundation.
|
|
*/
|
|
/*
|
|
* This file contains settings that for various reasons are unsuitable to store in git
|
|
* Rename it by removing the .sample extension and place it in the sketch folder and include
|
|
* it in the sketch:
|
|
* #include "MyPrivateConfig.h"
|
|
* Make sure to include it before
|
|
* #include <MySensor.h>
|
|
* Then adapt the contents to your personal preference.
|
|
*/
|
|
|
|
#ifndef MyPrivateConfig_h
|
|
#define MyPrivateConfig_h
|
|
|
|
/**********************************
|
|
* Node identification Settings
|
|
***********************************/
|
|
//#define MY_NODE_ID 1
|
|
|
|
/**********************************
|
|
* Message Signing Settings
|
|
***********************************/
|
|
// Pin used for random generation in soft signing (do not connect anything to this when enabled)
|
|
#define MY_SIGNING_SOFT_RANDOMSEED_PIN 7 // A7 -
|
|
|
|
// Enable node whitelisting
|
|
//#define MY_SIGNING_NODE_WHITELISTING {{.nodeId = GATEWAY_ADDRESS,.serial = {0x09,0x08,0x07,0x06,0x05,0x04,0x03,0x02,0x01}}}
|
|
|
|
/**********************************
|
|
* NRF24L01 Driver Defaults
|
|
***********************************/
|
|
// Enables RF24 encryption (all nodes and gateway must have this enabled)
|
|
//#define MY_RF24_ENABLE_ENCRYPTION
|
|
|
|
/**********************************
|
|
* RFM69 Driver Defaults
|
|
***********************************/
|
|
// Default network id. Use the same for all nodes that will talk to each other
|
|
#define MY_RFM69_NETWORKID 100
|
|
|
|
// Enable this for encryption of packets
|
|
//#define MY_RFM69_ENABLE_ENCRYPTION
|
|
|
|
#endif
|