Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
104 changes: 104 additions & 0 deletions boards/risc-v/esp32c3/esp32c3-devkit/configs/dropbear/defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
#
# This file is autogenerated: PLEASE DO NOT EDIT IT.
#
# You can use "make menuconfig" to make any modifications to the installed .config file.
# You can then do "make savedefconfig" to generate a new defconfig file that includes your
# modifications.
#
# CONFIG_NDEBUG is not set
# CONFIG_NSH_ARGCAT is not set
# CONFIG_NSH_CMDOPT_HEXDUMP is not set
CONFIG_ALLOW_BSD_COMPONENTS=y
CONFIG_ARCH="risc-v"
CONFIG_ARCH_BOARD="esp32c3-devkit"
CONFIG_ARCH_BOARD_COMMON=y
CONFIG_ARCH_BOARD_ESP32C3_DEVKIT=y
CONFIG_ARCH_CHIP="esp32c3"
CONFIG_ARCH_CHIP_ESP32C3=y
CONFIG_ARCH_INTERRUPTSTACK=2048
CONFIG_ARCH_IRQ_TO_NDX=y
CONFIG_ARCH_MINIMAL_VECTORTABLE_DYNAMIC=y
CONFIG_ARCH_NUSER_INTERRUPTS=17
CONFIG_ARCH_RISCV=y
CONFIG_ARCH_STACKDUMP=y
CONFIG_BOARD_LOOPSPERMSEC=15000
CONFIG_BUILTIN=y
CONFIG_DEV_URANDOM=y
CONFIG_DRIVERS_IEEE80211=y
CONFIG_DRIVERS_WIRELESS=y
CONFIG_ESPRESSIF_SPIFLASH=y
CONFIG_ESPRESSIF_SPIFLASH_SPIFFS=y
CONFIG_ESPRESSIF_WIFI=y
CONFIG_EXAMPLES_RANDOM=y
CONFIG_FS_PROCFS=y
CONFIG_FSUTILS_PASSWD=y
CONFIG_FSUTILS_PASSWD_PATH="/data/passwd"
CONFIG_IDLETHREAD_STACKSIZE=2048
CONFIG_INIT_ENTRYPOINT="nsh_main"
CONFIG_INIT_STACKSIZE=8192
CONFIG_INTELHEX_BINARY=y
CONFIG_IOB_BUFSIZE=128
CONFIG_IOB_NBUFFERS=160
CONFIG_IOB_THROTTLE=24
CONFIG_LIBC_PERROR_STDOUT=y
CONFIG_LIBC_STRERROR=y
CONFIG_NETDB_DNSCLIENT=y
CONFIG_NETDEV_LATEINIT=y
CONFIG_NETDEV_PHY_IOCTL=y
CONFIG_NETDEV_WIRELESS_IOCTL=y
CONFIG_NETUTILS_DROPBEAR=y
CONFIG_NETUTILS_DROPBEAR_HOSTKEY_PATH="/data/dropbear_ecdsa_host_key"
CONFIG_NETUTILS_DROPBEAR_LISTEN_RETRY_MAX=120
CONFIG_NETUTILS_DROPBEAR_LISTEN_RETRIES=0
CONFIG_NETUTILS_DROPBEAR_STACKSIZE=65536
CONFIG_NSH_DROPBEAR=y
CONFIG_PSEUDOTERM=y
CONFIG_PSEUDOTERM_SUSV1=y
CONFIG_PSEUDOTERM_RXBUFSIZE=1024
CONFIG_PSEUDOTERM_TXBUFSIZE=2048
CONFIG_NETINIT_DHCPC=y
CONFIG_NETINIT_WAPI_ALG_CCMP=y
CONFIG_NETINIT_WAPI_AUTHWPA_WPA2=y
CONFIG_NETINIT_WAPI_CIPHERMODE_CCMP=y
CONFIG_NETINIT_WAPI_PASSPHRASE="mypasswd"
CONFIG_NETINIT_WAPI_SSID="myssid"
CONFIG_NETINIT_WAPI_STAMODE_INFRA=y
CONFIG_NETUTILS_IPERF=y
CONFIG_NETUTILS_NETINIT=y
CONFIG_NET_BROADCAST=y
CONFIG_NET_ETH_PKTSIZE=1514
CONFIG_NET_ICMP_SOCKET=y
CONFIG_NET_TCP=y
CONFIG_NET_TCP_DELAYED_ACK=y
CONFIG_NET_TCP_WRITE_BUFFERS=y
CONFIG_NET_UDP=y
CONFIG_NFILE_DESCRIPTORS_PER_BLOCK=6
CONFIG_NSH_ARCHINIT=y
CONFIG_NSH_BUILTIN_APPS=y
CONFIG_NSH_FILEIOSIZE=512
CONFIG_NSH_READLINE=y
CONFIG_NSH_STRERROR=y
CONFIG_PREALLOC_TIMERS=0
CONFIG_PTHREAD_MUTEX_TYPES=y
CONFIG_RR_INTERVAL=200
CONFIG_SCHED_BACKTRACE=y
CONFIG_SCHED_LPWORK=y
CONFIG_SCHED_WAITPID=y
CONFIG_SIG_DEFAULT=y
CONFIG_START_DAY=29
CONFIG_START_MONTH=11
CONFIG_START_YEAR=2019
CONFIG_SYSTEM_DHCPC_RENEW=y
CONFIG_SYSTEM_DUMPSTACK=y
CONFIG_SYSTEM_NSH=y
CONFIG_SYSTEM_PING=y
CONFIG_TESTING_GETPRIME=y
CONFIG_TESTING_OSTEST=y
CONFIG_TLS_TASK_NELEM=4
CONFIG_TTY_SIGINT=y
CONFIG_TTY_SIGINT_CHAR=0x03
CONFIG_UART0_SERIAL_CONSOLE=y
CONFIG_WIRELESS=y
CONFIG_WIRELESS_WAPI=y
CONFIG_WIRELESS_WAPI_CMDTOOL=y
CONFIG_WIRELESS_WAPI_INITCONF=y
30 changes: 30 additions & 0 deletions crypto/chachapoly.c
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,36 @@ void chacha20_crypt(caddr_t key, FAR uint8_t *data)
CHACHA20_BLOCK_LEN);
}

void chacha20_stream_setkey(FAR struct chacha20_stream_ctx *ctx,
FAR const uint8_t *key)
{
chacha_keysetup((FAR chacha_ctx *)ctx, key, CHACHA20_KEYSIZE * 8);
}

void chacha20_stream_ivctr64(FAR struct chacha20_stream_ctx *ctx,
FAR const uint8_t *iv, uint64_t counter)
{
uint8_t ctr[8];

ctr[0] = counter;
ctr[1] = counter >> 8;
ctr[2] = counter >> 16;
ctr[3] = counter >> 24;
ctr[4] = counter >> 32;
ctr[5] = counter >> 40;
ctr[6] = counter >> 48;
ctr[7] = counter >> 56;

chacha_ivsetup((FAR chacha_ctx *)ctx, iv, ctr);
}

void chacha20_stream_crypt(FAR struct chacha20_stream_ctx *ctx,
FAR const uint8_t *in, FAR uint8_t *out,
size_t len)
{
chacha_encrypt_bytes((FAR chacha_ctx *)ctx, in, out, len);
}

void chacha20_poly1305_init(FAR void *xctx)
{
FAR CHACHA20_POLY1305_CTX *ctx = xctx;
Expand Down
13 changes: 13 additions & 0 deletions include/crypto/chachapoly.h
Original file line number Diff line number Diff line change
Expand Up @@ -32,10 +32,23 @@ struct chacha20_ctx
uint8_t nonce[CHACHA20_NONCE];
};

struct chacha20_stream_ctx
{
uint32_t input[16];
};

int chacha20_setkey(FAR void *, FAR uint8_t *, int);
void chacha20_reinit(caddr_t, FAR uint8_t *);
void chacha20_crypt(caddr_t, FAR uint8_t *);

void chacha20_stream_setkey(FAR struct chacha20_stream_ctx *ctx,
FAR const uint8_t *key);
void chacha20_stream_ivctr64(FAR struct chacha20_stream_ctx *ctx,
FAR const uint8_t *iv, uint64_t counter);
void chacha20_stream_crypt(FAR struct chacha20_stream_ctx *ctx,
FAR const uint8_t *in, FAR uint8_t *out,
size_t len);

#define POLY1305_KEYLEN 32
#define POLY1305_TAGLEN 16
#define POLY1305_BLOCK_LEN 16
Expand Down
Loading