5a Esp8266 Sdk Ssl User Manual Cn V1.4

User Manual:

Open the PDF directly: View PDF PDF.
Page Count: 18

Download5a-esp8266 Sdk Ssl User Manual Cn V1.4
Open PDF In BrowserView PDF
ESP8266 SSL
Version 1.4
Espressif Systems IOT Team
http://bbs.espressif.com/
Copyright © 2016

"

"

Espressif Systems

ESP8266 SSL User Manual
"

URL
“

”

Wi-Fi

Wi-Fi
© 2016

Espressif Systems

2 /18

April 22, 2016

"

"

1.
2.

Espressif Systems

...................................................................................................................4
ESP8266
2.1.

3.

ESP8266 SSL User Manual
"

ESP8266
3.1.

4.
4.1.
4.2.
4.3.
4.4.
4.5.
4.6.
4.7.
4.8.
4.9.
4.10.
4.11.
4.12.
4.13.

Espressif Systems

SSL server ............................................................................5
........................................................................................5
SSL client ............................................................................. 9
........................................................................................9
.....................................................................................................10
espconn_secure_ca_enable........................................................10
espconn_secure_ca_disable .......................................................11
espconn_secure_cert_req_enable ..............................................12
espconn_secure_cert_req_disable .............................................12
espconn_secure_set_default_certificate ..................................... 13
espconn_secure_set_default_private_key .................................. 13
espconn_secure_accept .............................................................14
espconn_secure_delete ..............................................................15
espconn_secure_set_size ...........................................................15
espconn_secure_get_size ...........................................................16
espconn_secure_connect ...........................................................17
espconn_secure_send ................................................................17
espconn_secure_disconnect ......................................................18

3 /18

April 22, 2016

"

"

Espressif Systems

ESP8266 SSL User Manual
"

1.
ESP8266_NONOS_SDK
SSL server

ESP8266

SSL

ESP8266

SSL client

SSL

SSL

(espconn_secure_set_size)
SSL

SSL

8KB

22KB

espconn_secure_set_size

3072

SSL
SSL

Espressif Systems

test_cert_and_creat_information

4 /18

TLS_BiDirectVerif_Demo

April 22, 2016

"

"

Espressif Systems

2.

ESP8266 SSL User Manual
"

ESP8266
ESP8266

private_key.h

SSL server
IOT_Demo

SSL server
SSL

cert.h
SSL

#define SERVER_SSL_ENABLE

server
CA

espconn_secure_ca_enable

CA

2.1.
(1)

“makefile.sh”

lubuntu

lubuntu

Espressif BBS
•

http://bbs.espressif.com/viewtopic.php?f=21&t=86

(2)
•

Espressif Systems

“LXTerminal”

5 /18

April 22, 2016

"

"

Espressif Systems

•

./mount.sh

•

espressif

ESP8266 SSL User Manual
"

(3)

Espressif Systems

6 /18

April 22, 2016

"

"

Espressif Systems

ESP8266 SSL User Manual
"

./makefile.sh ,

(4)

cert.h

private_key.h

IOT_Demo

•

Espressif Systems

makefile.sh

IP

server IP

7 /18

April 22, 2016

"

"

Espressif Systems

•

makefile.sh

makefile.sh

•

ESP8266 SSL User Manual
"
1024

1024

512

512

ESP8266_NONOS_SDK_V1.4.0
espconn_secure_set_default_certificate
espconn_secure_set_default_private_key

•

makefile.sh
CA
client

3.1

SSL server

Espressif Systems

makefile.sh
“make_cacert.py”

CA

TLS.ca_x509.cer
CA

SSL

esp_ca_cert.bin

Flash
Espressif Systems

8 /18

April 22, 2016

"

"

Espressif Systems

3.

ESP8266 SSL User Manual
"

ESP8266
IOT_Demo

ESP8266

SSL client
SSL client

#define CLIENT_SSL_ENABLE

SSL client

CA

CA

espconn_secure_ca_enable

ESP8266

SSL client

espconn_secure_cert_req_enable

SSL

“TLS_BiDirectVerif_Demo”

3.1.
(1)
(2)
(3)

makefile.sh
CA

TLS.ca_x509.cer

SSL client

TLS.x509_1024.cer

SSL client

(4)
(5)

CA

TLS.key_1024

“make_cacert.py”

CA

TLS.ca_x509.cer

“make_cacert.py”

CA

esp_ca_cert.bin

esp_ca_cert.bin

espconn_secure_ca_enable

TLS.x509_1024.cer

(6)
TLS.key_1024

private_key.key_1024
make_cert.py

(7)
(8)

certificate.cer

make_cert.py

esp_cert_private_key.bin esp_cert_private_key.bin

espconn_secure_cert_req_enable

Espressif Systems

9 /18

April 22, 2016

"

"

Espressif Systems

ESP8266 SSL User Manual
"

4.
SSL

TCP

SDK

SSL
•

espconn_secure_XXX

•

espconn_regist_XXX

•

espconn_port

espconn_regist_write_finish

ESP8266

espconn_secure_XXX

“2C-ESP8266__SDK__API Guide”
SSL

BBS

4.1.

Demo http://bbs.espressif.com/viewtopic.php?f=21&t=389

espconn_secure_ca_enable
:
SSL CA

•

CA

•

esp_ca_cert.bin

•

SSL
espconn_secure_accept (ESP8266

TCP SSL server)

espconn_secure_connect (ESP8266

TCP SSL client)

:
bool espconn_secure_ca_enable (uint8 level, uint32 flash_sector)
:
uint8 level :

ESP8266 SSL server/client
0x01

Espressif Systems

SSL client

10/18

April 22, 2016

"

"

Espressif Systems

ESP8266 SSL User Manual
"

0x02

SSL server

0x03

SSL client

uint32 flash_sector :

CA

SSL server
(esp_ca_cert.bin)

0x3B

Flash

Flash 0x3B000

:
true

:

false

:

espconn_secure_ca_disable

4.2.

:
SSL CA

•

CA
:

bool espconn_secure_ca_disable (uint8 level)
:
uint8 level :

ESP8266 SSL server/client
0x01

SSL client

0x02

SSL server

0x03

SSL client

SSL server

:
true

:

false

:

Espressif Systems

11/18

April 22, 2016

"

"

Espressif Systems

ESP8266 SSL User Manual
"

espconn_secure_cert_req_enable

4.3.

:
ESP8266

SSL client

•
•

espconn_secure_connect
:

bool espconn_secure_cert_req_enable (uint8 level, uint32
flash_sector)
:
uint8 level :

0x01 ESP8266

uint32 flash_sector :

SSL client

(esp_cert_private_key.bin)

0x3A

Flash

Flash 0x3A000

:
true

:

false

:

4.4.

espconn_secure_cert_req_disable
:
ESP8266

SSL client

•
:
bool espconn_secure_ca_disable (uint8 level)

Espressif Systems

12/18

April 22, 2016

"

"

Espressif Systems

ESP8266 SSL User Manual
"

:
uint8 level :

0x01 ESP8266

SSL client

:
true

:

false

:

4.5.

espconn_secure_set_default_certificate
:
ESP8266

•

SSL server

ESP8266_NONOS_SDK\examples\IoT_Demo

•

espconn_secure_accept
:

bool espconn_secure_set_default_certificate (const uint8_t*
certificate, uint16_t length)
:
const uint8_t* certificate :
uint16_t length :
:

4.6.

true

:

false

:

espconn_secure_set_default_private_key
:
ESP8266

Espressif Systems

SSL server

13/18

April 22, 2016

"

"

Espressif Systems
•

ESP8266 SSL User Manual
"

ESP8266_NONOS_SDK\examples\IoT_Demo

•

espconn_secure_accept
:

bool espconn_secure_set_default_private_key (const uint8_t* key,
uint16_t length)
:
const uint8_t* key :
uint16_t length :
:
true

:

false

:

espconn_secure_accept

4.7.

:
SSL TCP server

SSL

•

SSL server

SSL

client
•

SSL

espconn_secure_set_size

ESP8266
•

SSL

SSL server

espconn_reconnect_callback
espconn_secure_set_default_certificate

espconn_secure_set_default_private_key
:
sint8 espconn_secure_accept(struct espconn *espconn)
:
struct espconn *espconn :

Espressif Systems

14/18

April 22, 2016

"

"

Espressif Systems

ESP8266 SSL User Manual
"

:
0

:

Non-0

:
ESPCONN_ARG -

espconn

TCP

ESPCONN_MEM ESPCONN_ISCONN -

espconn_secure_delete

4.8.

:
ESP8266

SSL server

:
sint8 espconn_secure_delete(struct espconn *espconn)
:
struct espconn *espconn :
:
0

:

Non-0

:
ESPCONN_ARG ESPCONN_INPROGRESS -

espconn
espconn

SSL

espconn_secure_disconnect

espconn_secure_set_size

4.9.

:
(SSL)

•

2KBytes
‣

Espressif Systems

SSL

espconn_secure_accept (ESP8266

15/18

TCP SSL server)

April 22, 2016

"

"

Espressif Systems
‣

ESP8266 SSL User Manual
"

espconn_secure_connect (ESP8266

TCP SSL client)

:
bool espconn_secure_set_size (uint8 level, uint16 size)
:
uint8 level :

ESP8266 SSL server/client
0x01

SSL client

0x02

SSL server

0x03

SSL client

SSL server

uint16 size :

1 ~ 8192
2048

:

4.10.

true

:

false

:

espconn_secure_get_size
:
(SSL)
:
sint16 espconn_secure_get_size (uint8 level)
:
uint8 level :

ESP8266 SSL server/client
0x01

SSL client

0x02

SSL server

0x03

SSL client

SSL server

:
(SSL)

Espressif Systems

16/18

April 22, 2016

"

"

Espressif Systems

ESP8266 SSL User Manual
"

espconn_secure_connect

4.11.

:
(SSL)

•

TCP SSL server (ESP8266

ESP8266

TCP SSL client)

SSL client

espconn_secure_disconnect
•

SSL

SSL

espconn_secure_set_size

ESP8266

SSL

espconn_reconnect_callback

:
sint8 espconn_secure_connect (struct espconn *espconn)
:
struct espconn *espconn :
:
0

:

Non-0

:
ESPCONN_ARG -

espconn

TCP

ESPCONN_MEM ESPCONN_ISCONN -

4.12.

espconn_secure_send
:
(SSL)

espconn_sent_callback

Espressif Systems

17/18

April 22, 2016

"

"

Espressif Systems

ESP8266 SSL User Manual
"

:
sint8 espconn_secure_send (
struct espconn *espconn,
uint8 *psent,
uint16 length
)
:
struct espconn *espconn :
uint8 *psent :
uint16 length :
:
0

:

Non-0 :

ESPCONN_ARG -

espconn

TCP

espconn_secure_disconnect

4.13.

:
TCP

(SSL)

:
sint8 espconn_secure_disconnect(struct espconn *espconn)
:
struct espconn *espconn :
:
0

:

Non-0 :

Espressif Systems

ESPCONN_ARG -

18/18

espconn

TCP

April 22, 2016



Source Exif Data:
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
Linearized                      : No
Page Count                      : 18
PDF Version                     : 1.4
Title                           : 5A-ESP8266__SDK__SSL_User_Manual__CN_v1.4.pages
Producer                        : Mac OS X 10.11.4 Quartz PDFContext
Creator                         : Pages
Create Date                     : 2016:05:20 11:56:28Z
Modify Date                     : 2016:05:20 11:56:28Z
EXIF Metadata provided by EXIF.tools

Navigation menu